目录
一、核心概念
软件开发过程以系统需求为输入,通过系统化的工具和技术转化为可交付产品。主要模型包括瀑布模型、原型模型、增量模型等,各具特色。
二、主流模型详解
(一)经典瀑布模型
运作方式:严格按阶段顺序推进,阶段转换不可逆
优势:
- 强制规范化开发流程
- 明确各阶段交付文档要求
- 确保各阶段成果经过验证
局限性:
- 过度依赖文档可能导致最终产品偏离实际需求
- 仅适用于需求明确且稳定的项目
(二)螺旋演进模型
四阶段循环:
- 规划制定:明确目标与实施方案
- 风险分析:识别并消除潜在风险
- 工程实施:开发验证阶段性成果
- 用户评估:收集反馈指导下轮迭代
优势:
- 客户全程参与决策
- 风险管控机制完善
- 支持复杂系统开发
挑战:
- 需要专业的风险评估能力
- 迭代次数过多可能影响交付时效
(三)增量交付模型
特点:
- 分阶段逐步实现功能模块
- 每个增量版本均为可用产品
- 支持需求渐进式明确
(四)原型验证模型
开发流程:
- 需求沟通与原型规划
- 快速建模构建初始版本
- 用户反馈驱动持续优化
适用场景:
- 中小型系统开发
- 需求不明确需快速验证
(五)敏捷开发实践
Scrum框架:
- 迭代周期(冲刺):30天增量开发
- 需求管理:产品待办列表优先级排序
- 每日站会:15分钟进度同步
- 持续集成:每日可演示版本
XP极限编程:
- 核心价值:沟通、简化、反馈、勇气
- 特色实践:测试驱动、结对编程、持续重构
- 文档策略:轻量级文档,强调代码质量
三、模型选择指南
模型类型 | 适用场景 | 典型特征 |
---|---|---|
瀑布模型 | 需求明确的大型项目 | 严格阶段划分 |
螺旋模型 | 高风险复杂系统 | 迭代式风险管理 |
增量模型 | 可模块化开发的项目 | 分阶段交付可用产品 |
原型模型 | 需求模糊的中小型项目 | 快速验证与反馈循环 |
敏捷方法 | 需求变化频繁的项目 | 灵活响应与持续交付 |
四、实施建议
- 需求明确度是选择模型的首要考量因素
- 复杂系统推荐采用螺旋模型结合增量交付
- 中小项目可优先考虑原型验证+敏捷开发组合
- 团队经验水平直接影响模型实施效果
- 文档管理需与开发模型特点相匹配
第二部分 综合知识历年真题
2020下综合知识历年真题(2分)
【2020年评测真题第30题:绿色】
30.快速原型化模型的优点不包括( )。
A.有助于理解用户的真实需求
B.开发人员在构建原型过程中可以学习许多相关的知识
C.原型系统已经通过与用户的交互而得到验证
D.适用于大规模的软件开发
解答:答案选择D。
【2020年评测真题第31题:红色】
31.现欲开发某高校一卡通系统,用于替换一个已经存在的系统,则最适于采用( ) 过程模型。
A.瀑布
B.原型化
C.增量
D.螺旋
解答:答案选择A。
2019下综合知识历年真题(2分)
【2019年评测真题第31题:红色】
31.某开发小组为某企业开发较大规模的项目,该开发小组已经为同一行业的其他企业开发过类似的项目,且该项目需求变化很少,则最适宜采用( )开发过程模型。
A.瀑布
B.演化
C.螺旋
D.喷泉
解答:答案选择A。AC二选一错。
【2019年评测真题第32题:绿色】
32.以下( )不是敏捷开发方法Scrum的步骤。
A.Product Backlog
B.Refactoring
C.Sprint
D.Sprint Backlog
解答:答案选择B。
重构(Refactoring)就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。不是Scrum的步骤
2018下综合知识历年真题(2分)
【2018年评测真题第26题:黄色】
26.以下关于极限编程(XP)的叙述中,正确的是( )。XP的12个最佳实践,不包括( )。
A.XP是激发开发人员创造性、使管理负担最小的一组技术
B.每一个不同的项目都需要一套不同的策略、约定和方法论
C.多个自组织和自治小组并行地递增实现产品
D.有一个使命作为指导,它设立了项目的目标,但并不描述如何达到这个目标
》
A.重构
B.结对编程
C.精心设计
D.隐喻
解答:答案选择D|C。第一空选错
2017下综合知识历年真题(2分)
【2017年评测真题第26题:绿色】
26.以下关于瀑布模型的优点的叙述中,不正确的是( )。
A.可规范化开发人员的开发过程
B.严格地规定了每个阶段必须提交的文档
C.要求每个阶段提交的所有制品必须是经过评审和验证的
D.项目失败的风险较低
解答:答案选择D。
【2017年评测真题第27题:绿色】
27.现要开发一个软件产品的图形用户界面,则最适宜采用( )过程模型。
A.瀑布
B.原型化
C.增量
D.螺旋
解答:答案选择B。
2015下综合知识历年真题(2分)
【2015年评测真题第28题:绿色】
28.开发过程中以用户需求为动力,以对象作为驱动,( )适合于面向对象的开发方法。
A.瀑布
B.原型
C.螺旋
D.喷泉
解答:答案选择D。
【2015年评测真题第29题:绿色】
29.以下关于极限编程XP的叙述中,不正确的是( )。
A.由价值观,原则,实践和行为四个部分组成
B.每个不同的项目都需要一套不同的策略,约定和方法论
C.有四个价值观,即沟通,简单性,反馈和勇气
D.有五大原则,即快速反馈,简单性假设,逐步修改,提倡更改和优质工作
解答:答案选择B。
2014下综合知识历年真题(3分)
【2014年评测真题第28题:绿色】
28.以下关于瀑布模型的叙述中,正确的是 ( ) 。
A.适用于需求被清晰定义的情况
B.可以快速构造系统的可运行版本
C.唯一一个适合大规模项目开发的模型
D.己不能适应当前软件开发的过时模型
解答:答案选择A。
【2014年评测真题第29题:绿色】
29.某开发小组欲开发一个大型软件系统,需求变化较小,此时最不适宜采用( ) 过程模型。
A.瀑布
B.原型
C.增量
D.螺旋
解答:答案选择B。送分题。
【2014年评测真题第31题:绿色】
31.以下关于结构化开发方法的叙述中,不正确的是( )。
A.总的指导思想是自顶向下,逐层分解
B.基本原则是功能的分解与抽象
C.比面向对象开发方法更适合于开发大规模的、特别复杂的项目
D.特别适合解决数据处理领域的问题
解答:答案选择C。
2013下综合知识历年真题(2分)
【2013年评测真题第24题:绿色】
24.( )过程模型明确地考虑了开发中的风险。
A.瀑布
B.快速原型
C.V
D.螺旋
解答:答案选择D。
【2013年评测真题第23题:绿色】
23.在开发一个字处理软件时,首先快速发布了一个提供基本文件管理、编缉和文档生成功能的版本,接着发布提供更完善的编辑和文档生成功能的版本,最后发布提供拼写和语法检查功能的版本,这里采用了( )过程模型。
A.瀑布
B.快速原型
C.增量
D.螺旋
解答:答案选择C。
2012下综合知识历年真题(2分)
【2012年评测真题第38题:红色】
38.某开发小组的任务是开发一个大型软件产品的图形用户界面,宜采用( )开发过程模型。
A.瀑布
B.原型
C.V模型
D.螺旋
解答:答案选择D。错选择了B。
【2012年评测真题第39题:绿色】
( )模型吸收了软件工程“演化”的概念,使用原型及其他方法来尽量降低风险,适合于大型复杂软件系统的开发。
A.瀑布
B.原型
C.喷泉
D.螺旋
解答:答案选择D。
2011下综合知识历年真题(2分)
【2011年评测真题第26题:绿色】
26.现要开发一个通过卫星通信连接计算机的新软件产品,假设之前没有开发卫星通信软件的经验,则最不适合采用( )模型。
A.瀑布
B.原型
C.增量
D.螺旋
解答:答案选择A。送分题。
【2011年评测真题第28题:绿色】
28.以下关于敏捷方法的叙述中,不正确的是( )。
A.相对于过程和工具,更强调个人和交互
B.相对于严格的文档,更重视可工作的软件
C.相对于与客户的合作,更注重合同谈判
D.相对于遵循计划,更专注于对变化的响应
解答:答案选择C。送分题。
2010下综合知识历年真题(2分)
【2010年评测真题第19题:绿色】
19.V模型描述了软件基本的开发过程和测试行为,描述了不同测试阶段与开发过程各阶段的对应关系。其中,集成测试阶段对应的开发阶段是( )。
A.需求分析阶段
B.概要设计阶段
C.详细设计阶段
D.编码阶段
解答:答案选择B。
【2010年评测真题第26题:绿色】
26.螺旋模型综合了( )的优点,并增加了这两种模型忽略的风险分析。
A.瀑布模型和演化模型
B.瀑布模型和喷泉模型
C.演化模型和喷泉模型
D.原型和喷泉模型
解答:答案选择A。