基本分类

如下所示,请阅读。

瀑布模型

基本思想

从制作时间上工序把问题化简;

将功能实现与制作分开便于分工协作。

优点

奠定了软件开发工程方法的基础;

流水依赖,便于分工协作;

推迟物理实现,易于修改文档,有复审质量保证。

不足

与用户见面晚,成功率比较低

适用范围

与系统要求明确的系统;

各种应用软件的开发均可以使用。

开发方法

遵循软件生命期的划分,明确规定每个阶段的任务;

上一阶段完成确定的任务后就产生一定格式的文档给下一阶段,不同阶段的任务一般有不同级别的软件人员承担。

开发特点

时间的顺序性和依赖性;

推迟实现的观点;

质量保证的观点。

图例


快速原型模型

图例

演化模型

由于在项目开发的初始阶段人们对软件的需求认识常常不够清晰,因而使得开发项目难于做到一次开发成功,出现返工再开发在所难免;

第一次只是试验开发,其目标只是在于探索可行性,弄清软件需求;

第二次则在此基础上获得较为满意的软件产品。

渐增模型

螺旋模型

基本思想

多次原型反复并增加风险评估的开发模型

特点

螺旋模型沿着螺线旋转,在四个象限上分别表达了四个方面的活动,即:

  • 制定计划一一确定软件目标,选定实施方案,弄清项目开发的限制条件。
  • 风险分析一一分析所选方案,考虑如何识别和消除风险。
  • 实施工程一一实施软件开发
  • 客户评估一一评价开发工作,提出修正建议。

图例

喷泉模型

基本思想

认为软件的各个周期是相互叠加和反复多次的。

特点

迭代、重复、演进;

无间隙、各个阶段无明显界限。

图例

原型(渐增型)

基本思想

允许从部分需求出发,先建立一个不全面的系统,通过测试这个系统,进一步使系统扩充和完善。

优点

开发的始终开发人员和用户都参与,有问题可以及时修改,更好的满足了用户的需求。

适用范围

知识型软件系统的开发。

特点

从整体结构上不如瀑布型清晰;

软件的文档不如瀑布型的划分严格;

周期长,成本高;

与用户见面快,开发效率高。

变化型

基本思想

从软件需求的形式规格说明出发,经过一系列的程序变化,得到最终结果。

特点

有严格的数学理论和形式化的技术支持,但目前在研究和实验阶段,不能实际使用。

写在最后

个人的学习笔记,有的内容或许有遗漏或者错误,还望斧正。

软件开发模型 -- 基本分类相关推荐

  1. 软件测试常见概念(软件生命周期、软件开发模型、软件质量模型、软件缺陷管理、软件测试概述、软件测试分类、软件测试与软件开发、软件测试原则、黑盒测试方法、白盒测试方法、性能测试)

    文章目录 1. 软件概述 1.1 软件生命周期 1.2 软件开发模型 1.2.1 瀑布模型 1.2.2 快速原型模型 1.2.3 迭代模型(增量模型或演化模型) 1.2.4 螺旋模型 1.2.5 敏捷 ...

  2. 一、软件/软件工程/软件开发模型概述

    文章目录 一.软件 1.软件的定义 2.软件的分类 3.软件危机 3.1软件危机的主要问题 3.2软件危机产生原因(6点) 二.软件工程 1.软件工程定义 2.软件工程目标(6点) 3.软件工程研究的 ...

  3. 软件开发模型、软件设计模式、软件架构风格

    一. 软件开发模型 1. 瀑布模型: 结构化方法.开发阶段性. 需求明确.文档齐全. 风险控制弱 .前一步的错误会延申到后一步: 2. 原型开发模型: 迭代方法. 有两种开发方式,分别是原先开发和目标 ...

  4. 软件工程-软件开发模型(瀑布/V/喷泉/原型/演化/螺旋/统一过程/敏捷)

    软件工程-软件开发模型(瀑布/V/喷泉/原型/演化/螺旋/统一过程/敏捷开发) 目录 软件工程-软件开发模型(瀑布/V/喷泉/原型/演化/螺旋/统一过程/敏捷开发) 瀑布模型 特性 优点 缺点 适用 ...

  5. 软件开发模型-瀑布模型、V形模型、原型模型、增量模型、快速开发、敏捷模型

    文章目录 0x01 边做边改模型 0x02 瀑布模型 0x03 V形模型 0x04 原型模型 0x05 增量模型 0x06 螺旋模型 0x07 快速应用程序开发模型 (RAD) 0x08 敏捷模型 0 ...

  6. 软件工程与软件开发模型、软件开发方法

    什么是软件工程? 软件工程一直以来都缺乏一个统一的定义. IEEE给出的定义是:软件工程是:1.将系统化的.严格约束的.可质量化的方法应用于软件的开发.运行和维护,即将工程化应用于软件:2.在1中所述 ...

  7. 2022年下半年 系统架构师,论文-软件开发模型(Software Development Model)

    软件开发模型(Software Development Model)是指软件开发全部过程.活动和任务的结构框架,软件开发过程包括需求.设计.编码和测试等阶段,有时也包括维护阶段.软件开发模型能清晰.直 ...

  8. 软件开发模型/原型法/瀑布模型/螺旋模型

    软件开发模型(Software Development Model)是指软件开发全部过程.活动和任务的结构框架.软件开发包括需求.设计.编码和测试等阶段,有时也包括维护阶段. 软件开发模型能清晰.直观 ...

  9. 软件开发模型介绍、总结归纳

    软件开发模型(SoftwareDevelopmentModel)是指软件开发全部过程.活动和任务的结构框架.软件开发包括需求.设计.编码和测试等阶段,有时也包括维护阶段. 软件开发模型能清晰.直观地表 ...

最新文章

  1. UNITY3D拓展编辑器 - 目录
  2. ML之MLiR:输入两个向量,得出两个向量之间的相关度
  3. HTML5 WebSockets学习
  4. android 紧急号码没记录,android – 当呼叫被隐瞒/未知时,来电号码是...
  5. LeetCode 205. 同构字符串(哈希map)
  6. grub shell 错误_各种情况GRUB损坏进不了系统的解决方案
  7. 第 7 节:前端面试指南 — 微信小程序篇(附面试题答案)
  8. 如何理解typedef void
  9. 一个cp命令引发的mongodb大量慢查询
  10. idea运行项目提示找不到或无法加载主类
  11. 计算机组成原理-总线(系统总线、总线仲裁、总线操作和定时)
  12. matplotlib画箱线图,添加非参数检验-秩和检验的结果
  13. 2、使用FTP客户端连接FTP服务器
  14. IDEA mybatisplus 代码生成器的配置
  15. 数据分析师必备技能之PowerBI教程
  16. 钟南山团队携手腾讯研发新冠重症AI预测模型,成果登上Nature子刊
  17. TI公司三大系列DSP内部结构之比较
  18. 【QT实现TCP和UDP协议通信(一)】
  19. python语言通过()来体现语句逻辑关系_【单选题】Python语言通过( )来体现语句之间的逻辑关系。...
  20. DOS界面下的翻译软件制作

热门文章

  1. hao123简介【百度百科】
  2. oracle使用tmpfs,使用tmpfs提高性能
  3. 山财计算机科学专业哪个好,山东财经大学什么档次?山东财经大学热门专业排名...
  4. jupyter使用技巧
  5. php strtotime 3天后,php strtotime 问题
  6. Apollo 开放平台 - 阿波罗开放平台
  7. 早教行业,前景可观的创业项目
  8. [原创]反调试技巧总结-原理和实现(1)(2)(3)(4)(5)(6)......
  9. MySQL的体系结构
  10. SAAS云平台搭建札记: (一)浅论SAAS多租户自助云服务平台的产品、服务和订单