什么是敏捷开发?
敏捷开发(Agile software development)是一种软件开发方法。核心是迭代开发,就是将一个大任务分解成许多流程相同的小任务,多次连续开发,逐步优化。
如何进行敏捷开发?
采用增量开发划分迭代。先发布一个最简版本,然后频繁发布,不断调整。每一次迭代都包含五个步骤:规划、设计、编码、测试、评估。每次迭代持续2-6周。
敏捷开发的优势
1.早期交付,降低成本
2.降低风险,及时了解市场需求
《敏捷软件开发宣言》原文摘录
价值观
程序员的主观能动性,以及程序员之间的互动,优于既定流程和工具。
软件能够运行,优于详尽的文档。
跟客户的密切协作,优于合同和谈判。
能够响应变化,优于遵循计划。
原则
1.通过早期和持续交付有价值的软件,实现客户满意度。
2.欢迎不断变化的需求,即使是在项目开发的后期。要善于利用需求变更,帮助客户获得竞争优势。
3.不断交付可用的软件,周期通常是几周,越短越好。
4.项目过程中,业务人员与开发人员必须在一起工作。
5.项目必须围绕那些有内在动力的个人而建立,他们应该受到信任。
6.面对面交谈是最好的沟通方式。
7.可用性是衡量进度的主要指标。
8.提倡可持续的开发,保持稳定的进展速度。
9.不断关注技术是否优秀,设计是否良好。
10.简单性至关重要,尽最大可能减少不必要的工作。
11.最好的架构、要求和设计,来自团队内部自发的认识。
12.团队要定期反思如何更有效,并相应地进行调整。
参考链接:阮一峰-敏捷开发入门教程