软件过程模型

KyleWang
发布于 2024-03-10 / 79 阅读
0
0

软件过程模型

瀑布模型 上一个活动的输出作为下一个的输入 依次的 注意:需求明确 与原型模型相反

螺旋模型 :制定计划,风险分析,实施工程,客户评估 适合大型项目开发

只要有风险分析 就是:螺旋模型 组成: 原型+瀑布模型

V模型:强调测试 贯穿整个生命周期

对应关系 (左右对应)

编码阶段:单元测试 (单边)

详细设计:集成测试 (吉祥)

概要设计:系统测试 (膝盖)

需求分析:验收测试 (延续)

原型模型:注意:适合需求不明确 与瀑布模型相反

增量模型:分期交付 注意:每个增量都是一个独立的软件开发过程 功能不同 由于时间制约

喷泉模型:面向对象

基于构件的开发模型CBSD:又称为快速开发模型 主要事构件

形式化方法模型:严格的数学基础上

重要模型:敏捷开发模型 统一过程模型

敏捷开发模型 个体和交互胜过 过程和工具

敏捷开发主要方法:

1、XP极限编程 近螺旋式(将复杂的开发过程分解为一个个相对比较简单的小周期) 测试先行降低bug

2、水晶系列方法 以人为中心

3、并列争球法 迭代的增量化过程 每次都是一个冲刺 按照需求的优先级来

4、特性驱动开发方法FDD 迭代的开发模型

有效的软件开发3要素 人 过程 技术

5个核心的过程 开发整体对象模型、构造特征列表、计划特征开发、特征设计和特征构建

统一过程模型RUP 商业可靠的 重量级过程

二维的软件开发模型 9个核心工作流

业务建模

需求

分析与设计

实现

测试

部署

配置和变更

项目管理

环境

RUP软件生命周期划分的阶段 是一个多循环往复的

初始阶段 定义最终产品试图和业务模型 并确定系统范围

细化阶段 设计确定架构

构造阶段 实施阶段 编码

移交阶段 产品移交给用户使用 出现问题重新初始阶段

RUP 核心概念

1、工作流

2、角色

3、活动

4、制品

RUP的特点 重点

1、用例驱动 用例就是一个具体的功能

2、以体系结构为中心 体系结构就是架构

下图典型的4+1视图模型 以及各自人员侧重 重点

1、分析和测试人员 关心系统的需求和行为 侧重用例视图

2、最终用户关心的系统功能 侧重逻辑视图

3、程序员关心系统的配置和装配问题 侧重实现视图

4、系统集成人员关心系统的性能、可伸缩性、吞吐率等问题测试侧重于进程视图(逻辑视图某个时刻的快照)

5、系统工程师 关心系统的发布、安装、拓扑结构等问题 侧重于部署视图

迭代与增量

逆向工程

软件复用

实现级

结构级

功能级

领域级 E-R模型

逆向工程相关概念

重构 同一抽象级别上转换系统描述形式

设计恢复 借助工具从已有程序中抽象出有关数据设计、总体结构设计和过程设计等方面的信息

再工程 逆向工程 重构后 产生系统的新版本

正向工程 改变重构现有系统

软件系统工具通常可以按软件过程活动将软件工具分为 :

软件开发工具、软件维护工具、软件管理和软件支持工具

软件开发工具:需求分析工具、设计工具、编码与排错工具。

软件维护工具:版本控制工具、文档分析工具、开发信息库工具、逆向工程工具、再工程工具。

软件管理和软件支持工具:项目管理工具、配置管理工具、软件评价工具、软件开发工具的评价和选择。


评论