如何提升智能手表开发团队效率?
作者:空穴来风 发布时间:[ 2016/9/23 17:01:51 ] 推荐标签:团队效率 软件测试管理
智能手表,一个新兴的领域,充满了无限的可能,也许有,我们随处可见,像当今的智能手机一样。作为一类新兴的产品,市场上缺乏成熟的开发经验,我们摸着石头过河,不断的尝试,不断的改进,不断的提升。
1.困境
作为一家成熟的消费类产品公司,产品仅仅在软件研发领域一般包括下图的各类人员:
简单的分析上图中的结构,智能手表的开发貌似和常规的互联网产品类似,然而它的复杂性却没有看上去那么简单,我们先简单分析一下上图:
软件与4类人员有关联,两个强关联,两个弱关联。
交互与4类人员有关联,两个强关联,两个弱关联。
其他职能人员关联性都相对较少。
这里有一个实践的经验,强关联性的增加导致沟通成本以指数性的上升,弱关联的增加导致沟通成本以简单+1的形式上升。基于此,我们假设强关联的增加的指数上升为2的倍数(该值不一定合理,需要实际研发数据进行匹配调整),建立对应的沟通成本计算数学模型:强关联(2的n次方) + 弱关联数。使用该数学模型,我们计算出各个领域在软件研发领域的沟通成本:
运营:1+1=2
视觉:1+1=2
测试:2的1次方+1 = 3
规划:2的1次方+1 = 3
交互:2的2次方+2 = 6
软件:2的2次方+2 = 6
备注:部分领域也许还有其他的关联度,这里仅仅只考虑产品研发的主要场景。
基于该数学模型,我们基本上可以得出,交互和软件将是整个研发流程沟通过程中的核心瓶颈,然而这样计算正确了吗?交互和软件在沟通成本上只比其他领域多这么一点点吗?我们再把问题拆解得更细一些。
1.1.领域细分的副作用
软件技术的不断革新,促使软件领域增多,针对智能手表领域,它涉及到的软件领域包括:智能手表端、服务器端、android应用端、ios应用端、H5网页端。以下,是它们之间的沟通关系图:
备注:智能手表并不是所有的功能都涉及到上图的所有软件领域,上图仅仅列举了复杂时的情况。
基于上图,我们需要重新计算一下软件、交互与测试在复杂的情况下的沟通复杂度:
交互:2的6次方+2 = 66
测试:2的5次方+1 = 33
软件(watch):2的5次方+2 = 34
软件(server):2的6次方+2 = 66
软件(h5):2的3次方+4 = 12
软件(android):2的5次方+3 = 35
软件(ios):2的5次方+3 = 35
因此,软件、交互、测试在日常工作过程中,沟通成非常高。如此高的沟通成本,意味着研发效率的下降,产品复杂度的上升,以及信息不一致情况发生的概率增高。
1.2.总结
从本章的分析结果得出,仅仅在沟通成本这个层面上,智能手表的复杂度非常的高。即使与当下常见的互联网产品相比,在多引入了一个手表端的情况下,其复杂度指数性的提升一倍,也是不可估量的。从直观上看,它仅仅是多了一个手表端,应该和传统互联网产品功能复杂度差不多,但是却事与愿违。如果《后期限》一书中所说,我们需要将自身的经验模型化,这样才能更准确的评估软件开发情况。有的事情,还是需要严密的理论逻辑分析才能得出正确结论。
直觉总是告诉我们下面一根线被上面那根短一些,可以它们却实实在在是一样长。
2.个体效率与团队效率的纠缠
直觉告诉我们个体效率提高,团队效率会提高。人员的增多,团队效率也会提高。但是在没有背景前提下,这样的结论没有任何意义,如果我们所做的事情可以拆分成多个基本互不关联的事情,那么,这个结论基本成立。
例如:我们都听说过和尚挑水喝的故事,1个和尚挑水喝,2个和尚抬水喝,3个和尚没水喝,改为3个和尚都分别自己挑水。那么相对于1个和尚,效率提高三倍,如果单个和尚每天挑水的效率提高1.5倍,那么3个和尚相对于开始的一个和尚效率提高3*1.5=4.5倍,是不是很激动人心。
理想很丰满的,现实很骨感,软件行业可不能用和尚挑水来简单类比。这样的直觉错误,我们却经常再犯。原因在于我们在分析任何事情时,都是先由系统1(简单理解为直觉系统)处理,在系统1无法给出合理的解释时,系统2(简单理解为思维系统,可是它很懒)才会介入。软件行业的著作《人月神话》全面的阐释了软件不能简单增加开发人员来解决问题。因此,针对智能手表的研发,取得个体效率与团队效率的平衡至关重要。
产品研发像种果树,必须经历播种、施肥、灌溉等天逐渐的长大,不要企图通过多施肥等手段提前收获果实。种一个棵树好的时间是十年前,其次才是现在,所以想要新品早点上市,那么需要将需求整理提前,而不是过多的希望研发后端流程能更有效率。
2.1.如何提高个体效率
尽量减少被打扰的次数。
让个体身处于所在专业领域的团队中。
持续进行某个特定领域的研究。
同领域人员集中地点办公。
2.2.如何提高团队效率
加强团队成员沟通。
项目组成员集中成一个团队。
团队成员为多领域复合型人才。
同项目组成员集中地点办公。
2.3.矛盾与取舍
虽然大方向来说,需求提前才是促使新品上市的主要方式。但是,实际研发过程中,尤其是在迭代开发中,需求已经做到了提前,后端迭代速度偏慢,成了一个比较凸显的问题。多少人能做多少事,增加人员能否提高生产力,迭代速度是否存在极限,这些问题都有待研究和解决。
像爱因斯坦的相对论,人类无法突破光速有一个制约的因素,是速度越快,质量越大,接近光速时,质量趋于无穷大,也是说速度越快,加速的成本越高。一个软件开发的速度也许也受到其固有的软件复杂度等因素影响,存在一个迭代速度极限值,例如:一个功能点由一个人变为两个人来做,那么多一个人多了沟通成本,那么随着人数的激增,超过某个临界值时,增加人数反而会降低研发速度。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11