敏捷开发 知行合一

周末阅读了丛斌老师的《知行合一 实现价值驱动的敏捷和精益开发》一书,对敏捷开发有了更直观了认识,总结如下:


敏捷开发 知行合一_第1张图片



关于《敏捷开发宣言》

我们一直在实践中探寻更好的软件开发方法,
身体力行的同时也帮助他人。由此我们建立如下价值观:
个体和交互 胜过 过程和工具
可以工作的软件 胜过 面面俱到的文档
客户合作 胜过 合同谈判
响应变化 胜过 遵循计划
虽然右项也有价值,但是我们认为左项具有更大的价值。


关于敏捷开发12原则

1.尽早、持续交付有价值的软件是我们满足客户的最优先考虑。
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2.即使到了开发后期,也欢迎需求变更。敏捷过程利用变更为客户创造竞争优势。
Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

 
3. 频繁交付可以工作的软件,交付间隔越短越好,可以一两周到一两个月。
Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4.在整个项目开发期间,业务人员和开发人员必须可以天天随时沟通、一起解决问题。
Business people and developers must work together daily throughout the project.

5.围绕一群有动力的个人进行项目开发。给他们提供搜需要的环境和支持,并且相信他们会把事情做好。
Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. 对一个开发团队来说,面对面沟通是最高效的传递信息的方法。
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7.工作的软件是软件开发中兽药进展度量指标。
Working software is the primary measure of progress.
 
8. 敏捷过程提倡可持续的开发。产品的赞助者、开发者和用户应该能够保持一个长期的、恒定的开发节奏。
Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace

9. 不断关注卓越技术及优秀设计能增强敏捷力。
Continuous attention to technical excellence and good design enhances agility.

10. 简于形——是最大化地减少不必要工作的艺术——这是敏捷精髓。
Simplicity — the art of maximizing the amount of work not done — is essential.

11. 自我组织的开发团队能够逐步摸索出最适合的架构、需求和设计。
The best architectures, requirements, and designs emerge from self-organizing teams.
 
12.每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后对自己的做事方式进行必要调整。
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.



关于敏捷开发5个阶段

1.产品愿景阶段;确定产品的范围
2.推测阶段;建立产品发布计划
3.探索阶段;较短周期提交一个产品功能子集
4.调整阶段;需求进行调整
5.关闭阶段;总结



关于敏捷开发的3点注意


1.透明:所有人对标准理解一致;
2.审查:审查过程中的差异和问题
3.调整:及时调整Scrum视图


关于敏捷开发的流程及交付物


产品需求列表--->迭代计划--->每日站立会--->迭代评审--->迭代回顾
产品需求列表--->迭代需求列表--->燃尽图---->演示--->经验总结



关于敏捷开发的几个组成部分


3个角色
产品经理、过程经理、开发团队
3个文档
需求列表、迭代列表、燃尽图
5个会议
产品需求列表的细化会议:细化需求项(用户故事)
迭代计划会议:迭代计划列表
每日站立会:15分钟时间盒
迭代评审会议:实现产品审查和调整
迭代回顾会议:对迭代中的问题进行分析


关于极限编程(eXtreme Programming,XP)5个原则


1.快速反馈(rapid feedback)
2.简洁第一(assume simplicity)
3.微量变更(incremental change)增量
4.拥抱变更(embracing change)
5.质量至上(quality work)



关于敏捷开发的12条实践


计划活动
小版本
隐喻:一个简单通用的描述系统功能的故事
简单设计
测试
重构
结对编程
代码共享
持续集成:完成一个功能就集成上
不加班
现场客户
编码标准


关于迭代次数的计算


迭代次数 = 产品规模/团队速率



关于敏捷开发站立会


昨天完成?今天准备?遇到障碍?



你可能感兴趣的:(读书笔记,方法论)