敏捷宣言
- 个体交互胜过流程和工具
- 可工作的软件胜过面面俱到的文档
- 客户合作胜过合同谈判
- 响应变化胜过遵循计划
敏捷实践
站立会议+排序的工作列表+持续集成
迭代开发+持续集成+重构
站立会议+排序的工作列表+结对编程
聚焦客户价值
标识和消除软件开发中的浪费
交付刚刚好的系统
随时构建质量,不容忍缺陷
及时消除技术债务,持续保持快速响应
激发团队
管理者需要转变:
团队成员需要转变
适应变化
- 认清客户时逐步发现真正的需求
- 小批量是交付的关键
- 通过迭代计划不断调整以适应需求变化
- 应持续保持良好的软件架构
- 利用多层此反馈不断调整以逼近目标
迭代开发
迭代开发将整个软件生命周期分成多个小的迭代(2~4周),每一次迭代都有需求分析,设计,实现和测试再内的多个活动组成,每一次迭代都可以生成一个稳定和被验证过的软件版本
好处:
- 通过将高技术风险的需求在早期迭代例实现,有助于尽早地暴露问题和消除风险
- 通过提供功能渐增的