团队和流程

现在的编程离不开团队的合作,那么怎样的组合才能算是一个团队呢?首先,团队有一致的集体目标,团队要一起完成这目标。一个团队的成员不一定要同时工作,但一定要有共同的目标。另外团队成员有各自的分工,互相依赖合作,共同完成任务。

软件团队有各种形式,适用于不同的人员和需求。软件开发过程中有很多模式可以参考,例如,主治医师模式,明星模式,社区模式,业余剧团模式等等。这些模式使用于不同的场景和需求,我们要根据自己的实际需要来选择参考不同的模式。在一开始说过什么叫软甲年开发流程,即我们在开发、运营、维护软件的过程中有很多技术、做法、习惯和思想,将这些相关的技术和过程统一到一个体系中。最开始史蒂夫·麦克康奈尔提到的写了再改模式。这个模式虽然简单,但当面临一些“只用一次”的程序,“看过了就扔”的原型和一些不适用的演示程序,这个模式是很有用的。之后提出的相对成熟的瀑布模型。瀑布模型,顾名思义,是一种从上往下一步一步按顺序执行的过程。从瀑布模型开始的各种模型都有一个共同点:重计划,重事先设计,重文档表达。这一类的方法中集大成者要算RUP,Rational统一流程。最后一个很接近现在的迭代式开发流程,渐进交付的流程,MVP和MBP。在说明了这么多团队模式和流程后,优秀的模式和流程有什么共同点呢?CMU软件工程学院把这些共同点抽象总结为TSP的原则:

1.使用妥善定义的流程,流程中的每一步都是可以重复、可以衡量结果的。

2.团队的各个成员对团队的目标,角色,产品都有统一的理解。

3.尽量使用成熟的技术和做法。

4.尽量多地手机数据,并使用数据来帮助团队做出理性的决定。

5.制定切合实际的计划和承诺,团队计划要有负责具体执行的角色来制定。

6.增加团队的自我管理能力。

7.专注于提高质量,争取在软件的生命周期的早期发现问题。

这些原则虽然抽象,但是每个团队在做Postmortem的时候,可以对照检查,看看自己的团队在刚刚过去的软件生命周期到底提高了多少。

posted on 2017-05-07 13:41  XL4  阅读(221)  评论(0编辑  收藏  举报

导航