一般来说,敏捷开发强调快速迭代,灵活开发,而传统软件工程强调严格周密,步步为营,那两者的具体区别究竟在哪?下面具体分析一下两种软件开发方法的区别。
(1)基本理念
传统软件工程:所要开发的系统需求基本固定,项目计划明确。
敏捷软件开发:软件需求变更快,通过迭代逐步完善软件。
(2)软件要素
传统软件工程:在文档中逐条明确规定。
敏捷软件开发:开发团队不断调整,是集体共识而非明文规定。
(3)开发模式
传统软件工程:瀑布模型、生命周期模型
敏捷软件开发:循环迭代模式
(4)质量控制
传统软件开发:项目计划和测试要求
敏捷软件开发:迭代测试,基本框架设计
(5)开发方向
传统软件开发:开发前规定
敏捷软件开发:迭代中随时变更
(6)软件测试
传统软件开发:系统开发完成后整体测试
敏捷软件开发:迭代循环测试
(7)适用项目
传统软件开发:大项目,需求相对固定
敏捷软件开发:中小项目,需求变动灵活