第五章主要讲述团队和流程。
书中提到:
1、软件团队的模式有:主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式、官僚模式;
2、开发流程包括:写了再改模式、瀑布模型、瀑布模型的变形(生鱼片模型、大瀑布带着小瀑布);
3、Rational Unified Process统一流程(RUP):包括业务建模、需求、分析和设计、实现、测试、部署、配置和变更管理、项目管理、环境;
4、RUP的四个阶段包括:初始阶段、细化阶段、构造阶段、交付阶段;
5、老版驱动的流程;渐进交付的流程;
6、MVP:最小可行产品,又称最小功能集;MBP:是指最美最强产品;
7、TSP(Team Software Process)的原则:1.使用妥善定义的流程,流程中的每一步都可以是重复的、可以衡量结果的;2.团队中的各个成员对团队的目标、角色、产品都有容易的理解;3.尽量使用成熟的技术和做法;4.尽量多的收集数据(也包括对团队不利的数据),并利用数据来帮助团队做出理性的决定;5.制定切合实际的计划和承诺,团队计划要由负责具体执行的角色来制定(而不是从上级而来);6.增加团队的自我管理能力;7.专注于提高质量,争取咋软件生命周期的早期发现问题。最有效提高质量的办法是做全面而细致的设计工作(而不是在后期匆忙修复问题);
第六章讲敏捷流程:
在软件工程范畴里,“敏捷流程”是一系列价值观和方法论的集合。敏捷是一股思潮,或者说是一种价值观,它涵盖了好几种软件开发的方法论;这些方法论又是建立在许多行之有效的最佳实践方法之上的。本章以敏捷流程的Scrum方法论而展开,SCRUM 是一个用于开发和维持复杂产品的框架。Scrum以经验性过程控制理论(经验主义)做为理论基础的过程。经验主义主张知识源于经验, 以及基于已知的东西做决定。Scrum 采用迭代、增量的方法来优化可预见性并控制风险。