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

软件工程复试专业课-软件生命周期

文章目录

  • 软件过程模型
    • 瀑布模型
      • 模型图
      • 特点
      • 优缺点
      • 改进后的瀑布模型
    • 快速原型模型
      • 模型图
      • 优缺点
    • 增量模型(迭代-递增模型)
      • 原型图
      • 与瀑布和快速原型的区别
      • 优缺点
      • 风险更大的增量模型
    • 螺旋模型
      • 简介
      • 模型图
      • 优缺点
    • 喷泉模型
      • 模型图
      • 优缺点
    • 编码修补模型
    • 敏捷过程优缺点
    • Rational统一过程
      • 优点
    • 微软公司软件开发过程*

软件过程模型

瀑布模型

模型图

在这里插入图片描述

特点

1、阶段具有顺序性和依赖性
前一阶段结束,后一阶段开始,前一个阶段的输出文档是后一个阶段的输入文档。
2、推迟实现观点
编码前设置系统分析、系统设计,推迟程序物理实现,保证前期工作扎实。
3、质量保证
每阶段坚持两个做法:一、每阶段必须完成完整、准确的文档。二、每阶段结束前对文档评审。

优缺点

1、优点
提高软件质量,降低维护成本,缓解软件危机
2、
缺乏灵活性,无法解决需求不明确问题、用户不经过实践提出完整需求不切实际。

改进后的瀑布模型

在这里插入图片描述

快速原型模型

模型图

在这里插入图片描述

优缺点

优点:
1、确定需求上优于瀑布模型,通过原型与用户交互
2、提供学习手段,通过开发原型和演示原型对开发者和使用者了解系统都有积极作用
3、有的原型最后会成为最终产品的一部分

缺点:
快速建立的系统结构加连续修改可能导致产品质量低下,原型系统的内部的结构可能不好

增量模型(迭代-递增模型)

又称渐增模型

原型图

在这里插入图片描述

与瀑布和快速原型的区别

瀑布和快速模型是一次满足所有需求产品提交给用户

增量模型是分批向用户提交产品

优缺点

优点:
1、较短时间向用户提交可完成有用工作产品
2、用户有充裕时间学习适应产品
3、软件架构开放,方便向现有产品加入新构件

缺点:
第三点不容易做到

风险更大的增量模型

在这里插入图片描述

普通的增量模型在实现构件前完成总体的需求分析、规格说明和概要设计,相对风险较小

后面这种:确定用户需求后,各构件集并行构建

螺旋模型

简介

主要适用于内部开发的大规模软件项目

模型图

在这里插入图片描述

优缺点

优点:
大型软件开发项目有较好的风险控制

缺点:
1、需要风险评估的经验
2、契约开发通常需要事先指定过程模型和发布产品
3、普及不如前述模型

喷泉模型

在这里插入图片描述

模型图

在这里插入图片描述

优缺点

优点:
无缝,可同步开发,提高开发效率,节省开发时间,适应面向对象软件

缺点:
可能随时加各种信息、需求和资料,需严格管理文档,审核的难度加大

编码修补模型

当一个如软件在没有规格说明或主要设计的情况下被开发时,开发者往往不得不重新对产品编码多次直到得到正确稳定的产品

优点:
适用于不需要任何维护的小程序

缺点:
不适合重要程序

敏捷过程优缺点

把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态

优点:具有对变化和不确定的更敏捷,更快捷的反应特性,在快速的同时仍然能保持开发速度

缺点:由于其项目周期很长,所以很难保证开发的人员不更换,而没有文档就会造成在交接的过程中出现很大的困难

适用于商业竞争环境下对小型项目提出的有限资源,有限开发时间的约束

Rational统一过程

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

优点

优点:他是不断的迭代来完成一个软件开发的,不断的版本发布成为一种团队的日常工作的真正驱动力,将发现问题,制定方案和解决过程集成到下一次迭代。迭代开发降低风险

微软公司软件开发过程*

在这里插入图片描述

相关文章:

  • AndroidManifest.xml文件的作用
  • 网络运维学习笔记(DeepSeek优化版)005网工初级(HCIA-Datacom与CCNA-EI)链路层发现协议与VLAN技术
  • (一)未来学习什么语言或相关的AI、数据库知识进行技术迭代提升?
  • HO3D_v3(handposeX-json 格式)数据集-release >> DataBall
  • 小程序中头像昵称填写
  • android 新增native binder service 方式(一)
  • CST的UAV无人机RCS --- 双站, TLM求解器,各向异性Thin Panel,碳纤维复合材料CFRP
  • 【计算机网络协议02】详解传输层协议TCP/UDP
  • 深度优先搜索(DFS)在 Spark 中的应用与实现
  • 基于Javase的停车场收费管理系统
  • 视频编解码技术-3: H.264和VP9压缩效率和编码时延
  • 学习路程八 langchin核心组件 Models补充 I/O和 Redis Cache
  • API,URL,Token,XML,JSON是干嘛的
  • C#:泛型与类和结构的比较(接口,结构体,类,泛型)
  • 文件操作 -- IO [Java EE 初阶]
  • 浅谈C++/C命名冲突
  • MySQL的存储引擎
  • Postman接口测试工具使用
  • Redis 分布式锁
  • DeepSeek R1 简易指南:架构、本地部署和硬件要求
  • 代码网站推荐/百度搜索推广平台
  • 北京好用的h5建站/app拉新推广平台渠道商
  • 新疆网站建设一条龙服务/免费发布信息的网站平台
  • 用html做简单网站/竞价推广账户竞价托管费用
  • 备案个人网站做淘宝客/企业文化设计
  • 湖南网站建设公司 真好磐石网络/整合营销的特点有哪些