敏捷软件开发
敏捷软件开发 (Agile development) 敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。 在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 敏捷开发小组主要的工作方式可以归纳为:作为一个整体工作; 按短迭代周期工作; 每次迭代交付一些成果,关注业务优先级,检查与调整。 敏捷软件开发要注意项目规模,规模增长,团队交流成本就上去了,因此 敏捷软件开发暂时适合不是特别大的团队开发,比较适合一个组的团队使用 。 与增量开发区别是,敏捷开发需求不明确;与迭代开发区别是,敏捷开发不区分粗细和是否精致。 另:敏捷开发、增量开发、迭代开发区别 传统的 瀑布式开发 ,也就是从需求到设计,从设计到编码,从编码到测试,从测试到提交大概这样的流程,要求每一个开发阶段都要做到最好。特别是前期阶段,设计的越完美,提交后的成本损失就越少。 迭代式开发 ,不要求每一个阶段的任务做的都是最完美的,而是明明知道还有很多不足的地方,却偏偏不去完善它,而是把主要功能先搭建起来为目的,以最短的时间,最少的损失先完成一个“不完美的成果物”直至提交。然后再通过客户或用户的反馈信息,在这个“不完美的成果物”上逐步进行完善。 螺旋开发