软件的开发模型
作者:互联网
瀑布模型
- 思想
从时间上按工序把问题化简,将功能实现与制作分开便于分工协作 - 优点
奠定了软件工程方法的基础
流水依赖,便于分工协作
推迟物理现象,易于修改文档,有复审质量保证 - 不足
与用户见面晚,成功率低,一般为25% - 适用范围
适用于系统要求明确的系统
各种应用软件的开发均可使用 - 开发方法
遵循软件生命期的划分,明确规定每个阶段的任务,上一阶段完成确定的任务后就产生一定格式的文档给下一阶段,不同阶段的任务一般有不同级别的软件人员承担。 - 开发特点
时间的持续性和依赖性
推迟实现的观点
质量保证的观点
快速原型模型
- 快速原型模型的第一步是构造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品
演化模型
该模型可以表示为:第一次迭代(需求->设计->实现->测试->集成)->反馈->第二次迭代(需求->设计->实现->测试->集成)->反馈->……
- 由于在项目研发的初始阶段人们对软件的需求认识常常不够清晰,因而 使得开发项目难于做到一次开发成功,出现返工再开发在所难免,做两次
- 第一次只是试验开发,其目标只是在于探索可行性,弄清软件要求
- 第二次则在此基础上获得较为满意的软件产品
渐增模型
- 基本思想
允许从部分需求出发,先建立一个不全面的系统,通过测试这个系统进一步使系统扩充和完善 - 优点
开发的始终开发人员和用户都要共同参与,有问题可以随时修改,从而很好的满足了用户的需求 - 适用范围
适用于那些知识型软件系统的开发 - 特点
从整体结构上不如瀑布型清晰
软件的文档不如瀑布型的划分严格
周期长,成本高
与用户见面快,开发效率高
螺旋模型
该模型是多次原型反复并增加风险评估的开发模型
- 螺旋模型沿着裸线螺旋,在四个象限上分别表达了四个方面的活动,即:
- 制定计划——确定软件目标,选定实施方案,弄清项目开发的限制条件
- 风险分析——分析所选方案,考虑如何识别和消除风险
- 实事工程——实施软件开发和验证
- 客户评估——评价开发工作,提出修正建议,制定下一步计划
螺旋模型由风险驱动,强调可选方案和束约条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中
喷泉模型
喷泉模型与传统的结构化生存期比较,具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部
认为软件的各个周期是相互重叠的和多次反复的
- 迭代
重复
演进 - 无间隙
各阶段间无明显边界
变换模型
- 思想
从软件需求的形式规格说明出发,经过一系列的程序变化,得到最终结果 - 特点
有严格的数学理论和形式化的技术支持,但目前在研究和实验阶段,不能实用
标签:迭代,模型,生存期,开发,原型,软件 来源: https://blog.csdn.net/mumuxi709/article/details/106468333