什么是敏捷开发
敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方式,它并不是一门技术,而是一种开发方式,一种软件开发流程。指导我们用规定的环节一步一步去完成项目的开发,区别于软件的传统的开发模式(瀑布模式:需求分析到详细设计,从编码到测试,测试完成后再交付这么一个流程),而敏捷开发则是不要求非常完美的需求分析、设计、文档,而是在最短的一个时间内完成一个框架,然后不断迭代、测试,直至交付--------不指某种具体的过程或框架,而是一组价值观和原则,是应对快速变化的需求的一种软件开发能力。
敏捷开发的原则
敏捷开发的12条原则:
- 我们最重要的目标,是通过持续不段的及早交付有价值的软件使客户满意(价值大于一切)。
- 欣然面对需求变化,即使在开发后期也一样,为了客户的竞争优势,敏捷过程掌握变化。
- 经常交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。
- 业务人员和开发人员必须相互合作,项目当中的每一天都不例外(沟通)。
- 激发个体的斗志,以他们为核心搭建项目;提供所需的环境和支援,辅以信任,从而达成目标。
- 不论团队内外,传递消息效果最好效率也最高的方式是面对面的交谈,即face to face。
- 可工作的软件是进度的首要度要标准。
- 敏捷过程倡导可持续开发(即迭代),责任人、开发人员和用户要共同维持其步调稳定延续。