首页 > 代码库 > 《构建之法》——软工学习进度(5)
《构建之法》——软工学习进度(5)
敏捷流程
1.定义: 敏捷流程是一系列价值观和方法论的集合。流行做法的价值在得到肯定的同时,我们也发现敏捷的做法更能带来价值。
2. 敏捷开发的原则:
①.尽早并持续地交付有价值的软件以满足顾客的需求。
②.敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势。
③.经常发布可用的软件,发布间隔可用从几周到几个月,能短则短。
④.业务人员和开发人员在项目开发过程中应该每天共同工作。
⑤.以有进取心的人为项目核心,充分支持信任他们。
⑥.无论团队内外,面对面的交流始终是最有效的沟通方式。
⑦.可用的软件是衡量项目进展的主要指标。
⑧.敏捷流程应能保持可持续的发展。领导、团队和用户应该能按照目前的步调持续下去。
⑨.只有不断关注技术和设计,才能越来越敏捷。
⑩.保持简明——尽可能简化工作量的技艺——极为重要。
?.只有能自我管理的团队才能创造优秀的架构、需求和设计。
?.时时总结如何提高团队效率,并付诸行动。
3.敏捷开发的步骤:
①找出完成产品需要做的事情。分析、细化、理清相互关系、估计工作量等工作。
②决定当前的冲刺需要解决的事情。团队成员能主导任务的估计和分配,他们的能动性得到较大的发挥。
③冲刺。较好的平衡了“交流”和“集中注意力”的矛盾。冲刺期间,团队通过每日例会来进行面对面的交流,又称每日例会,强迫每个人向同伴报告进度,迫使大家把问题摆在明面上。
④得到软件增量版本,发布给用户。在此基础上进一步计划增量的新功能和改进。
4.敏捷流程的问题:
① 怎样在计划中体现依赖关系
② 把一个任务分解到一个可以执行的冲刺任务时,我们要考虑一系列的因素。
③ 定义好任务究竟是什么,任务的完成到底意味着什么。
④ 谁来验证增量是否满足了事先的计划,如果发现了新的问题,改进了原来的计划,这是好事还是坏事。
5.总结:
这一章的内容主要向我们介绍了什么是敏捷流程,以及它的特点和作用,以及相应的步骤。以我的理解,敏捷流程就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
敏捷开发认为对变化进行响应的价值重于始终遵循固定的计划。他们最终的焦点是向用户交付尽可能多的价值。除了最简单的项目以外,用户不可能知道他们所需要的所有功能的每个细节。不可避免地在过程中会产生新的想法,也许今天看起来是必需的功能,明天就会觉得不那么重要了。随着小组获得更多的知识和经验,他们的进展速度会比开始的时候期望值慢或者快。对敏捷开发来说,一个计划是从某个角度对未来的看法,而具有多个不同的角度看问题是有可能的。
《构建之法》——软工学习进度(5)