敏捷软件开发之敏捷实践

敏捷软件开发宣言

Good 胜过 Normal
个体和交互 过程和工具
可以工作的软件 面面俱到的文档
客户合作 合同谈判
响应变化 遵循计划
  1. 个体和交互胜过过程和工具
    人是获得成功的最为重要的因素。团队的构建要比环境的构建重要得多。许多团队和管理者就犯了先构建环境,然后期望团队自动凝聚在一起的错误。相反,应该首先致力于构建团队,然后再让团队基于需要来配置环境。
  2. 可以工作的软件胜过面面俱到的文档
    文档固然是有用的,但过多的文档可能会比过少的文档更糟。因为编制众多的文档需要大量的时间,同步这些文档同样需要大量的时间,一旦文档与代码失步,那么文档就会出现误导。最好的培训方式就紧挨着他们坐下来帮助他们,把知识传授给他们。所以最好的两份文档就是代码和团队。
  3. 客户合作胜过合同谈判
    成功的项目需要有序、频繁和客户反馈。不是依赖于合同或者关于工作的陈述,而是让软件的客户和开发团队密切地在一起工作,并尽量经常地提供反馈。
  4. 响应变化胜过遵循计划
    响应变化的能力常常决定着一个软件项目的成败。计划不能考虑得过远,因为商务环境随时可能变化,而且一旦客户看到系统的运作,需求可能会被修改。即使一切都确信不会改变,我们仍然不能很好地估算出开发需要的时间。最好的策略是:为下两周做详细的计划,为下三个月做粗略的计划,再以后就做极为粗糙的计划。

原则

  1. 我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意
  2. 即使到了开发的后期,也欢迎改变需求。敏捷过程利用变化来为客户创造竞争优势
  3. 经常性地交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好
  4. 在整个项目开发期间,业务人员和开发人员必须天天在一起工作
  5. 围绕被激励起来的个人来构建项目。给他们提供所需要的环境和支持,并且信任他们能够完成工作
  6. 在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈
  7. 工作的软件是首要的进度度量标准
  8. 敏捷过程提倡可持续的开发速度。责任人、开发者和用户应该能够保持一个长期的、恒定的开发速度
  9. 不断地关注优秀的技能和好的设计会增强敏捷能力
  10. 简单-使未完成的工作最大化的艺术-是根本的
  11. 最好的构架、需求和设计出自于自组织的团队
  12. 每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自已的行为进行调整

猜你喜欢

转载自blog.csdn.net/gzzhy/article/details/93737415