作为一个TEAM如何进行协作和分工?
例如,我们的TEAM负责了多个组件,这些组件并不关联,姑且以子系统贯名之,每个人均是按照组件来分配任务的;
其利在于从任务角度来说,一个人一个组件高度集中,扩展新需求较方便,从个人角度来说,知组件在系统中的框架全貌但熟悉过程较长;其弊在于对新需求的开发进度和质量,均受个人的任务冲突或是成熟度的影响。
组件可以划分为多个功能块,而子系统中的各个组件通常具有较大的相似度,所以每个组件划分出来的功能块也应具有较大的相似度。
回到前面的例子中,如果每个人是按照功能块进行任务的安排与分配,是否可以满足新需求的快速开发,并满足较高的质量要求?
应该是可以的,为什么这么说?一个人一个特性集中程度和熟练程度更高,则更易对该特性进行优化改进及提炼,总结出几个常用实现框架,所以开发一个新需求更易一些。
但有一个前提要求,就是在开发新需求时,需要同时给出SRS和协作流程及接口说明!