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

软件工程-软件开发模型

传统开发模型

瀑布模型

问题定义——》可行性研究——》需求分析——》软件设计——》编码——》测试——》维护

|---------------计划时期---------------|---------------------------开发时期-------------------------|-运行时期-|

特点:

1、阶段间具有顺序性和依赖性:必须等前一阶段完成后才能进入下一阶段;前一阶段的成果将会成为下一阶段的启示输入内容。

2、推迟实现的观点:尽可能推迟了程序的物理实现,是按照瀑布模型开发软件的一条重要的指导思想。

3、质量保证的观点:1)每个阶段都必须完成规定的文档;2)每个阶段结束前都要完成评审。

瀑布模型是一个文档驱动的模型

快速原型模型

需求分析——》原型开发——》原型评价——》最终系统设计——》最终系统实现

↑______用户反馈__↓____________↓

根据用户反馈不停地迭代原型,直至用户满意。

适合需求模糊,中小型软件的开发。

特点:

1、快速开发

2、循环:原型的不断迭代

3、低成本

分类:

1、渐进型:利用最终版原型进行最终系统设计和实现

2、抛弃型:抛弃最终版原型,根据最终版原型的需求重新进行最终系统设计和实现。

演化开发模型

增量模型

增量模型也成为渐增模型,把软件产品作为一系列增量(小而可用的软件)构建来设计、编码、集成和设计。

最终交付的产品是一系列增量集成的结果。

特点:

1、在前面增量的基础上开发后面的增量

2、每个增量的开发可用瀑布或快速原型模型

3、迭代的思路:每个增量都需要进行多次迭代。

螺旋模型

基本思想是:使用原型及其他方法来尽量降低风险。可以将这个模型看作在每个阶段之前都增加了风险分析过程的快速原型模型。

螺旋模型的主要优势在于,它是风险驱动的。

特点:

1、瀑布模型+快速原型+风险分析

2、迭代

一个螺旋式周期(上述流程图):

1、确定目标、选择方案、选定完成目标的策略

2、风险角度分析该策略

3、启动一个开发阶段

4、评价前一步的结果,计划下一轮的工作

面向对象开发模型

构建集成模型

主要针对软件设计和开发阶段:

标识候选构件——》查找构件——》若存在则提取构件——》若不存在则构造构件——》将新构件存入库中——》进行下一次迭代

软件构件高度可重用。

特点:

1、面向对象

2、基于构件库

3、融合螺旋模型特征

4、支持软件开发的迭代方法

5、软件重用

形式化开发模型

转换模型

将高层次模型转换为低层次模型。如将UML模型转换为Java程序

净室模型

通过数学模型直接验证程序正确性。

CASE工具

计算机辅助软件工程(Computer Aided Software Engineering)

包括:

项目管理工具

需求分析工具

编程环境

软件测试工具


http://www.kler.cn/a/523525.html

相关文章:

  • FireFox | Google Chrome | Microsoft Edge 禁用更新 final版
  • c++:vector
  • css中的animation
  • 多头潜在注意力(MLA):让大模型“轻装上阵”的技术革新——从DeepSeek看下一代语言模型的高效之路
  • 【东雪莲病毒|罕见病毒|Traitor Virus】
  • AndroidCompose Navigation导航精通2-过渡动画与路由切换
  • RoboMaster- RDK X5能量机关实现案例(一)识别
  • .~C#循环结构
  • Vue学习四—— Home主体页面
  • 数据结构与算法分析:专题内容——人工智能中的寻路4之A*搜索(代码详解)
  • 智慧园区系统分类及其在提升企业管理效率中的创新应用探讨
  • 软件工程概论试题一
  • 服务器上安装Nginx详细步骤
  • Linux:一切皆文件
  • 差分约束系统 + spfa求最短路
  • 【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】1.19 排序革命:argsort的十大高阶用法
  • React中的JavaScript语法
  • MATLAB中fetchOutputs函数用法
  • 2007-2020年各省国内专利申请授权量数据
  • 【MySQL — 数据库增删改查操作】深入解析MySQL的 Update 和 Delete 操作
  • 【C++动态规划】2547. 拆分数组的最小代价|2019
  • 【论文投稿-第八届智能制造与自动化学术会议(IMA 2025)】HTML, CSS, JavaScript:三者的联系与区别
  • SOME/IP--协议英文原文讲解2
  • Python3 【函数】水平考试:精选试题和答案
  • MySQL数据导入与导出
  • MFC的绘制问题