软件工程第一次作业
2015-09-28 21:05
330 查看
题目:什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型、螺旋模型的优缺点,说明每种模型的使用范围。
软件生命周期模型:一般分为定义,开发,维护三大阶段,定义阶段有可行性论证和开发计划,需求分析,开发阶段有概要设计,详细设计和编码,维护阶段有测试,运行维护。
瀑布模型:
优点:1.强迫开发人员采用规范的开发方法。
2.严格规定每个阶段必须的文档
3.要求每个阶段交出的作品必须经过质量保证小组的验证
缺点:1.在软件开发初期,指定全部需求很难
2.最初版本开发周期长
3.完全依赖规格说明,导致不能满足用户需求
适用于中小型项目开发
快速原型模型:
优点:1.满足用户需求程度高
2.用户参与度大,返工现象少
缺点:1.不适用于大型软件开发
适用于小型项目开发
增量模型:
优点:1.在短期内可以交付满足部分用户需求的功能产品
2.逐步增加功能可以让用户去适应新产品
3.开放式软件维护性好
4.开始第一构建前,已经完成需求说明。
缺点:1.对现有产品造成很大程度的破坏
2.意义上的矛盾
适用于中型软件的开发
螺旋模型:
优点:1.集成了各种模型的优点
2.支持用户需求动态变化
3.需求分析与软件实现紧密联系相互依赖
4.原型作为形式的可执行的需求规格说明,既可以利于公户和开发人员共同理解,又可以作为后续开发的基础
5.为用户参与决策提供方便
6.提供目标软件的适应能力
7.降低风险
8.在大型软件开发过程中优势较大
缺点:1.迭代次数影响开发成本,延迟提价时间
2.找不到关键改进的方法,人力物力财力无谓损耗
3.成于风险分析,败于风险分许
适用于内部开发的大规模项目
软件生命周期模型:一般分为定义,开发,维护三大阶段,定义阶段有可行性论证和开发计划,需求分析,开发阶段有概要设计,详细设计和编码,维护阶段有测试,运行维护。
瀑布模型:
优点:1.强迫开发人员采用规范的开发方法。
2.严格规定每个阶段必须的文档
3.要求每个阶段交出的作品必须经过质量保证小组的验证
缺点:1.在软件开发初期,指定全部需求很难
2.最初版本开发周期长
3.完全依赖规格说明,导致不能满足用户需求
适用于中小型项目开发
快速原型模型:
优点:1.满足用户需求程度高
2.用户参与度大,返工现象少
缺点:1.不适用于大型软件开发
适用于小型项目开发
增量模型:
优点:1.在短期内可以交付满足部分用户需求的功能产品
2.逐步增加功能可以让用户去适应新产品
3.开放式软件维护性好
4.开始第一构建前,已经完成需求说明。
缺点:1.对现有产品造成很大程度的破坏
2.意义上的矛盾
适用于中型软件的开发
螺旋模型:
优点:1.集成了各种模型的优点
2.支持用户需求动态变化
3.需求分析与软件实现紧密联系相互依赖
4.原型作为形式的可执行的需求规格说明,既可以利于公户和开发人员共同理解,又可以作为后续开发的基础
5.为用户参与决策提供方便
6.提供目标软件的适应能力
7.降低风险
8.在大型软件开发过程中优势较大
缺点:1.迭代次数影响开发成本,延迟提价时间
2.找不到关键改进的方法,人力物力财力无谓损耗
3.成于风险分析,败于风险分许
适用于内部开发的大规模项目
相关文章推荐
- 数组的最大大小(堆和栈)
- Android--VideoView的简单使用
- 重构读书笔记
- 软件测试面试题2
- Android Service 双进程常驻后台(2)
- 利用ContentProvider实现查看、添加系统联系人
- ArcGIS学习—Basemap gallery
- POJ 1699 Best Sequence (DFS+预处理)
- 软件测试面试题
- ORACLE 在重要的表上限制某些IP、用户的恶意操作
- http://www.cnblogs.com/youring2/p/3979777.html Extjs的mvc模式
- Matlab通过mex调用CUDA的方法
- OC-NSARRAY-NSMUTABLEARRAY
- (php)mysql的int和float
- poj 2777线段树应用
- matlab中同一文件定义子函数的方法
- caffe简单理解
- 606第三周周六赛A - A + B Problem II
- JAVA i=i++,i=i+1的误区
- 有关字符串的全排列,组合 等问题