敏捷开发

敏捷宣言:

  1. 个体和交互        胜过 过程和工具
  2. 可以工作的软件 胜过 面面俱到的文档
  3. 客户合作            胜过 合同谈判
  4. 响应变化            胜过 遵循计划

敏捷开发遵循软件自底向上生长的过程,不断地进行迭代增量开发,最终交付符合客户价值的产品。

敏捷开发

1、“个体和交互”强调的是团队的作用,这个团队一定是包含设计、开发、测试、质量、PO,一起参与到开发过程中,提升沟通效率,激发团队潜能。

2、“可以工作的软件”强调的是交付对客户有价值的产品,而不是面面俱到的庞大产品。根据统计:某电路交换机的2000多个功能实际只使用1%。这是一种浪费。怎么才能做到聚焦客户价值呢?

3、“客户合作”强调的就是聚焦客户价值,每次迭代验收都让开发代表或真实客户参与进来,不停的确认客户的真实需求,就能做到聚焦客户价值

4、“响应变化”原因是软件开发是人类最复杂的工作之一,其具有四个属性:复杂性、一致性、可变性和不可见性。所以我们需要根据增量式的迭代和团队的实际交付能力,来不断调整开发计划,最终交付对客户有价值的产品

业界有很多优秀的敏捷实践,如scrum和XP,里面会包含很多的开发活动,每个项目可以根据自己的实际需要,选择相应的活动

敏捷开发

敏捷开发

其中Scrum偏重项目管理,XP偏重编程实践