当前位置: 首页 > news >正文

软件生命周期模型:瀑布模型、螺旋模型、迭代模型、敏捷开发、增量模型、快速原型模型

目录

 1.软件生命周期

 2.软件生命周期模型

2.1瀑布模型

缺点【存在的问题】:

优点:

2.2 螺旋模型

特点:

2.3 迭代模型

优点:

2.4 敏捷开发

2.5 增量模型 

增量模型一般和迭代模型一起使用:

2.6 快速原型模型


 1.软件生命周期

 

 2.软件生命周期模型

2.1瀑布模型

它是最早提出的软件开发的过程模型。

缺点【存在的问题】:

  • 强调时间顺序非常严格,前面阶段不完成,后面阶段无法进行,缺乏灵活性
  • 将测试放在了编码之后,没有体现出测试贯穿软件生命周期的原则,测试应该从需求就开始参与进去–可以避免需求的问题一直延续到代码完成之后才暴露或被发现
  • 不适合用户需求的变化,因为不是从需求开始的,用户改了需求之后要编码完成才可以修改。
  • 各个阶段的划分完全固定,阶段产生大量的文档,增加工作负担。

  • 线性开发,用户等到整个过程的末期才能见到开发成果,从而增加了开发风险。

优点:

  • 为项目提供了按阶段划分的检查点,有一定的文档产出,可以从文档中去寻找问题。
  • 当前阶段完成后,只需要去关注后续阶段。

2.2 螺旋模型

螺旋模型是一种演化软件开发过程的模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化和严格监控。

特点:
  • 螺旋模型是一种演化软件开发过程模型,引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减少损失。

  • 螺旋模型更适合大型的昂贵的系统级的软件应用。

2.3 迭代模型

不断优化,不断深入,不断开发完善。

发布的软件就是可以运行的,在初级版本进行深入的研发,类型于更新。

在某种程度上、开发迭代是一次完整的经过所有工作流程的过程:需求分析、设计、实施、测试工作流程。

优点:
  • 降低了在一个增量上的开支风险

  • 降低了产品无法按照既定进度进入市场的风险

  • 加快了整个开发工作的进度

  • 迭代过程这种模式使适应需求的变化更容易些

为了早点上市场,先发布具备基本功能的产品,后续根据市场反应或者产品计划发布后续版本,即刚开始发布的就是一个稳定的、可运行的软件,可交给用户使用,随着后面的开发越来越深入

2.4 敏捷开发

快、灵活、以人为中心 

2.5 增量模型 

含义:把软件分割成独立的模块,分批次的完成和交付。

缺点:打破原有的软件结构和框架,可能会带来一定的风险。

增量模型是把软件的每个模块独立开来,每次交付/发行都交其中的一个模块,根据市场反馈,决定下一次交付哪个模块,可以不按照顺序

增量模型一般和迭代模型一起使用:
  • 软件增加了新功能
  • 优化了…功能
  • 修复了某些未知/已知bug

【增量模型是增加功能、迭代模型是更新优化模型】

2.6 快速原型模型

原型:模型(可以模拟操作/简单运行)

典型应用和工具:Axure:制作原型。

流程:产品经理画原型,交给用户体验,用户对原型进行评价,并让产品经理修改,等到无误就交给开发人员开发

http://www.dtcms.com/a/130019.html

相关文章:

  • JUC并发工具
  • ARM裸机开发——交叉编译器
  • IS-IS中特殊字段——OL过载
  • 大概解释一下:极值统计理论(Extreme Value Theory, EVT)
  • 【时频谱分析】小波分析
  • 07-算法打卡-链表-移除链表-leetcode(203)-第七天
  • try-with-resources 详解
  • java基础2
  • 深度探索 C 语言:指针与内存管理的精妙艺术
  • 记录一个虚拟机分配资源的问题
  • vue事假机制都有哪些
  • OceanBase企业版集群部署:oatcli命令行方式
  • C# 选择文件的路径、导出文件储存路径
  • # Shell脚本参数设计规范(DeepSeek指导)
  • leetcode 3504 回文+最长公共子数组
  • 利用阿里云企业邮箱服务实现Python群发邮件
  • 哈喽打车 小程序 分析
  • vue3 element-plus表单验证
  • 2025年七星棋牌跨平台完整源码解析(200+地方子游戏+APP+H5+小程序支持,附服务器镜像导入思路)
  • openssh 10.0在debian、ubuntu编译安装 —— 筑梦之路
  • Excel表格文件分组归并——通过sql
  • 在JAVA编程中什么是反射?
  • leetcode 198. House Robber
  • 一天时间,我用AI(deepseek)做了一个配色网站
  • 哈希表-算法小结
  • 01_通过调过api文字生成音频示例
  • 【C数据结构】 TAILQ双向有尾链表的详解
  • Vue2 老项目升级 Vue3 深度解析教程
  • [推荐]AI驱动的知识图谱生成器(AI Powered Knowledge Graph Generator)
  • 符号右移“ >>= “ 与 无符号右移“ >>>= “ 的区别