软工Chapter Six
软工Chapter six
团队和流程
典型的软件团队模式和开发流程是:主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式;写了再改模式、瀑布模型、瀑布模型的各种变形、统一流程、老板驱动的流程、渐进交付的流程。
现在的编程离不开团队的合作,那么怎样的组合才能算是一个团队呢?首先,团队有一致的集体目标,团队要一起完成这目标。一个团队的成员不一定要同时工作,但一定要有共同的目标。另外团队成员有各自的分工,互相依赖合作,共同完成任务。
软件团队有各种形式,适用于不同的人员和需求。软件开发过程中有很多模式可以参考,例如,主治医师模式,明星模式,社区模式,业余剧团模式等等。这些模式使用于不同的场景和需求,我们要根据自己的实际需要来选择参考不同的模式。在一开始说过什么叫软甲年开发流程,即我们在开发、运营、维护软件的过程中有很多技术、做法、习惯和思想,将这些相关的技术和过程统一到一个体系中。最开始史蒂夫·麦克康奈尔提到的写了再改模式。这个模式虽然简单,但当面临一些“只用一次”的程序,“看过了就扔”的原型和一些不适用的演示程序,这个模式是很有用的。之后提出的相对成熟的瀑布模型。瀑布模型,顾名思义,是一种从上往下一步一步按顺序执行的过程。从瀑布模型开始的各种模型都有一个共同点:重计划,重事先设计,重文档表达。这一类的方法中集大成者要算RUP,Rational统一流程。最后一个很接近现在的迭代式开发流程,渐进交付的流程,MVP和MBP。在说明了这么多团队模式和流程后,优秀的模式和流程有什么共同点呢?CMU软件工程学院把这些共同点抽象总结为TSP的原则:
1.使用妥善定义的流程,流程中的每一步都是可以重复、可以衡量结果的。
2.团队的各个成员对团队的目标,角色,产品都有统一的理解。
3.尽量使用成熟的技术和做法。
4.尽量多地手机数据,并使用数据来帮助团队做出理性的决定。
5.制定切合实际的计划和承诺,团队计划要有负责具体执行的角色来制定。
6.增加团队的自我管理能力。
7.专注于提高质量,争取在软件的生命周期的早期发现问题。