敏捷开发基本思想

本文主要总结一下敏捷开发模式的基本思想

1、测试驱动开发(TDD):敏捷开发中,测试是在功能实现之前。就是要实现一个功能,首先根据业务需求,写出相应的测试,然后再写功能代码使得每个测试都可以通过。可以将每个功能做成一个Story,然后针对每个Story编写测试。

2、小版本发布(Frequent Releases):敏捷开发中,最重要的思想之一就是,尽可能短的时间内,发布可以运行的版本。这种思想的好处是,软件本身成为了客户和开发人员之间沟通的工具,这样,在用户使用发布的产品时,发现问题,及时反馈到开发人员,开发人员及时做出修改。同时,这样周期性的发布产品,也可以极大地提高开发人员的积极性和工作效率。同时,当发布的版本出现问题的时候,改动也并不是太大。

3、文档最少化(Minimal Documents):文档最少化,其实,个人觉得,还要根据项目的真实情况作调整。必要的文档还是需要的。

4、现场客户(Customer Engagement):敏捷开发中,客户需要和开发人员呆在一起。然而很多时候,这点很难办到。如果能说服客户和开发人员呆在一起,那么固然很好。

5、自动化测试(Automated Testing):自动化测试主要靠一些自动化测试工具的使用,同时可能要结合一些自动化测试脚本。

6、持续集成(Continuous Integration):敏捷开发中,集成将是一件极其平凡的事。也许一天需要集成几次或者几十次。由于集成的平凡性,当遇到冲突时,很容易定为冲突的位置。

7、结对编程(Pair Programming):敏捷开发中可提倡采用结对编程,就是两个人共用同一台电脑进行编程。一个人编写测试的时候,另一个思考,一个人编写功能的时候,另一个人思考。同时,结对的好处是,发现bug及时。

8、每日会议(Stand Up):每日会议的时间大约为15分钟,会议上,每个人回答三个问题:昨天做了什么?今天打算做什么?遇到了哪些困难?

9、迭代性的调整计划(Adaptive Planning):一个新版本的发布,意味着一个迭代的结束,另一个迭代的开始。在这里我们要有一个缓冲时间,在这个缓冲时间中,我们需要做的是确定下一个迭代的具体目标,并同时调整下一个迭代中的时间安排。

10、合作是敏捷成功的关键(Collaborative Focus):敏捷开发中,责任不是某一个人来担当,而是整个开发团队。每个功能不是属于所属的开发者,而是整个团队。每个人都不需要经过模块负责人的同意,而对代码进行重构。但这样,又存在团队之间的共识了。

猜你喜欢

转载自chenjie19891104.iteye.com/blog/899326
今日推荐