第六章、敏捷流程
在软件工程范畴里,“敏捷流程”是一系列价值观和方法论的集合。敏捷是一股思潮,或者说是一种价值观,它涵盖了好几种软件开发的方法论;这些方法论又是建立在许多行之有效的最佳实践方法之上的。本章以敏捷流程的Scrum方法论而展开,SCRUM 是一个用于开发和维持复杂产品的框架。Scrum以经验性过程控制理论(经验主义)做为理论基础的过程。经验主义主张知识源于经验, 以及基于已知的东西做决定。Scrum 采用迭代、增量的方法来优化可预见性并控制风险。
大概流程如下:
1、 第一步:找出完成产品需要做的事情 - Product Backlog。
2、第二步:决定当前的冲刺(Sprint)需要解决的事情--Sprint Backlog。
3、 第三步:冲刺(Sprint)。在冲刺阶段,外部人士不能直接打扰团队成员。冲刺期间,每天要开一个每日例会,每日例会强迫每个人向同伴报告进度,迫使大家把问题摆在明面上。同时,每日例会的构建启动,让大家都能看到一个逐渐完善的版本。
4、第四步:得到软件的一个增量版本、发布给用户。然后在此基础上又进一步计划增量的新功能和改进。
我个人觉得书本上有一点写的很好:用简明的图表展现整个项目的进度,如:燃尽图。此外,作者个人认为在实际实践过程中,以时间为度量的燃尽图更有效果。我也赞同这个观点,毕竟可以尽可能地减少项目拖延的可能性。此外,敏捷对团队有三个要求:自主管理、自我组织、多功能型。
第七章、MSF
MSF即微软解决方案框架,是微软推荐的软件开发方法。
MSF思想框架的九条基本原则:
1、推动信息共享与沟通
2、为共同的远景而工作
3、充分授权和信任
4、各司其职,对项目共同负责
5、交付增量的价值
6、保持敏捷,预期和适应变化
7、投资质量
8、学习所有的经验
9、与顾客合作
MSF也具有自己的敏捷开发模式
1、更强调与用户的交流
2、质量—防患于未然
3、重视在实战条件下的质量
4、精简过程,直奔主题
当我读到团队成员之间有矛盾是否正常时,作者说是正常的,毕竟利益产生了一定的冲突,多讨论多质疑多思考,换个角度看问题也是一个不错的团队合作的过程,因为没有一个团队能够做到百分百的完美,任何团队都有瑕疵。因此,我觉得团队合作应该直言无讳,找到平衡点,达到平衡,不要将矛盾扩大化。
我读完这两章内容有一点困惑,敏捷流程流派包含那么多值观和方法论,我们应该如何选择?