《构建之法》第五次读书笔记

时间:2022-06-17 19:40:47

团队与流程

第五章——团队和流程

    感受: 在第五章的团队和流程中,团队有共同的特点:团队有一致的集体目标,团队要一起完成目标。一个团队的成员不一定要同时工作,团队成员有各自的分工,互相依赖合作,共同完成任务。软件团队也有不同的模式。很多软件公司的团队最后都演变成功能团队,简而言之,就是具备不同能力的同事们平等协作,共同完成一个功能。在这个功能完成之后,这些人又重新组织,和别的角色一起去完成下一个功能。他们之间没有管理和被管理的关系。大型软件公司里的不少团队都是采用这种模式。小组内的交流比较频繁。我们在开发、运营、维护软件的过程中有很多技术、做法、习惯和思想。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”,软件开发流程的目的是为了提高软件开发、运营和维护的效率,以及提升用户满意度、软件的可靠性和可维护性。要完成一个复杂的软件项目,团队的各种成员要在不同阶段做不同的事情。

1、团队的模式

     窝蜂模式—例如小朋友刚开始T足球的时候,大家都一窝蜂地去抢球,球在哪里,人就在哪里。

     主治医师模式—在团队中存在一个首席程序员,负责处理主要模块地设计和编码,其他成员从不同地角度支持他。

     明星模式—主治医师模式运用到极点,其中团队一人地光芒超过了其余人的总和。

     社区模式—“社区”并不意味着“随意”,一些成功的社区项目,都有很严格的代码复审和签入的质量控制。

     业余剧团模式—在这样的团队中,不同的人会挑选不同的角色,而在下一个项目中,也可能会选择不同的角色。

     秘密团队—一些项目在秘密的状态下进行,没有人知道团队里面的人在做些什么。

     特工团队—一些团队由一些由特殊技能的专业人士组成,负责解决一些棘手而又紧迫性的问题。

     交响乐团模式—这样的团队具有交响乐团的特点。

     爵士乐模式—强调个性化的表达,强有力的互动,对变化的内容由创意的回应。

     功能团队模式—具备不同能力的同事们平等协作,共同完成一个功能。

     官僚模式—脱胎于大机构的组织构架,几个人报告给一个小头目,几个小头目报告给一个中头目,依次而上。

2、开发流程

     写了再改模式—与窝蜂团队模式十分的像,既有优点也有缺点,优点是不需要太多其他准备或者相关知识,上来就开始写代码,缺点是要写一个有实际用户、解决实际需求的软件时有很大的不足。

     瀑布模型—描述了单向的、不可逆的生产过程。

     瀑布模型的变化:1)生鱼片模型:各相邻模块像生鱼片那样部分重叠。

                            2)大瀑布带着小瀑布:为了解决不用子系统之间的进度不一,技术要求迥异,需要区别对待的问题,引入子瀑布模型。

3、Rational Unified Process统一流程(RUP)包括:

     业务建模、需求、分析和设计、实现、测试、部署、配置和变更管理、项目管理、环境。

     RUP四个阶段:初始阶段—细化阶段—构造阶段—交付阶段

     老板驱动流程以及渐进交付流程(MVP和MBP)。

4、TSP原则:

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

     2)团队的各个成员对团队的目标、角色、产品都有统一的理解;

     3)尽量使用成熟的技术和做法;

     4)尽量多的收集数据,并用数据来帮助团队做出理性的决定;

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

     6)增加团队的自我管理能力;

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

第五章节中讲述了团队的重要性以及几种不同的团队模式,每个模式都有其相应的优缺点,没有任何一个团队模式是完美的,在不同的情况下,我们也要选择不同的团队模式,这样我们才能高效的完成我们自身的任务,同时也体现了团队协作的重要性,个人的能力再强,毕竟也是有限的