【软件设计师10】软件开发模型

软件开发模型

1. 瀑布模型SDLC - 结构化

优点:结构化方法模型,每个阶段分工明确;出现问题可以向上层回溯

缺点:需求阶段难以把控,在项目初期,软件的需求几乎是不明确的,等开发完用户往往再提出问题,又回到了需求阶段重新来

适用于软件需求十分明确或二次开发的工程

【软件设计师10】软件开发模型_第1张图片

2. 其他经典模型

原型 - 需求分析阶段:可以做一个初步的界面不做具体功能,给用户做演示,再逐渐调整需求;现在出现了很多用原型设计工具比如axure;原型往往是在初期需求不明确时构造一个简易的系统。

演化模型:将原型不断调整演化为最终产品

增量模型:由原型和瀑布模型发展,做系统时先完成核心部分,比如这段时间可能是原来项目20%的时间,把核心模块先给用户使用发现问题并改正,强调先做一块、再做一块,好处是能跟用户频繁交换,当用户每次看系统时又能对之前的核心功能进行审视,降低风险

【软件设计师10】软件开发模型_第2张图片

3. 螺旋模型 - 风险分析

由多个模型组合,引入了风险分析

如果考试中问需求明确时要选择原型,遵循最匹配原则
【软件设计师10】软件开发模型_第3张图片

4. V模型 - 测试

在需求分析阶段就可以写验收测试、系统测试的测试计划,从测试的眼光看问题,发现需求分析阶段的设计问题。同理概要设计阶段写集成测试的计划,详细设计阶段写单元测试计划。
【软件设计师10】软件开发模型_第4张图片

5. 喷泉模型 - 面向对象

基于面向对象的迭代和无间隙

6. RAD

能快速构建业务系统

包括:业务建模、数据建模、过程建模、应用生成、测试与交付

7. 构建组装模型CBSD - 复用性

极大的提高了软件开发的可复用性,降低成本,提高软件的可靠性

比如新提出一个构建如果不用了放入构建库,或者需要一个构建时如果原有的构建库中有其他项目的构建,就可以拿过来复用
【软件设计师10】软件开发模型_第5张图片

8. 统一过程模型UP - 架构

【软件设计师10】软件开发模型_第6张图片

9. 敏捷开发方法 - 小型项目

【软件设计师10】软件开发模型_第7张图片

你可能感兴趣的:(瀑布模型,螺旋模型,敏捷开发,V模型,构建组装模型)