Skip to content
难度基础(★)
建议时长45分钟

7.11 章节回顾

本章回顾的目的不是再把目录念一遍,而是把容易混淆的概念重新压到一张“阶段地图”上。系统开发题的干扰项常来自相邻阶段和相似术语:概要设计/详细设计、功能性/易用性/可维护性、改正性/预防性/完善性/适应性,都是典型例子。

一张阶段地图

生命周期位置本章概念必会判断
软件工程基础生命周期、软件过程、CMM/CMMI软件工程不是只写代码,过程可以改进
开发方法结构化、面向对象、面向服务方法不同,建模和组织系统的方式不同
开发模型瀑布、V、原型、螺旋、增量、喷泉、UP、敏捷重点看需求是否稳定、风险是否高、是否分批交付
需求分析需求分类、需求规格、DFD、数据字典回答“系统要做什么”
系统设计概要设计、详细设计、模块独立、界面、架构回答“系统如何组织和实现”
软件测试黑盒、白盒、测试阶段、McCabe判断方法、覆盖准则和复杂度
维护质量维护类型、文档分类、质量属性分类题和配对题为主

开发模型复盘

如果题干说优先想到
需求稳定、阶段顺序、文档驱动瀑布模型
开发与测试阶段对应V 模型
需求不清,要先给用户看样品原型模型
大型复杂项目,强调风险分析螺旋模型
分批交付、每批有可运行功能增量模型
面向对象,阶段可重叠迭代喷泉模型
用例驱动、架构为中心、迭代增量统一过程
快速反馈、小步迭代、拥抱变化敏捷方法

瀑布和敏捷是一组典型技术迭代对比:瀑布适合需求稳定、强文档和强阶段控制;当互联网和业务系统需求变化越来越快,瀑布的反馈周期长、变更成本高,就容易被敏捷、小步迭代、持续反馈的方式替代。但敏捷不是“不要计划”,而是把计划做得更短、更可调整。

需求与设计复盘

需求阶段最重要的是分类和建模。功能需求描述系统要提供什么功能;非功能需求描述性能、可靠性、安全、易用性等质量要求;设计约束限制实现方式,例如必须使用某平台或遵循某标准。

易混点区分方式
功能需求 vs 非功能需求前者是“做什么功能”,后者是“做得多快、多安全、多可靠”
用户需求 vs 系统需求前者偏用户语言,后者偏开发可实现的详细规格
DFD vs 数据字典DFD 画数据如何流动,数据字典解释数据项含义
判定表 vs 判定树都用于多条件决策,判定表适合组合完整列举,判定树适合树状路径表达

设计阶段要抓概要和详细的边界。概要设计负责系统结构、模块划分、接口、数据库总体设计;详细设计负责模块内部算法、数据结构和过程细节。

模块设计复盘

模块设计的中心目标是模块独立性:高内聚、低耦合。

原则含义考试识别
高内聚模块内部元素围绕同一职责一个模块只做一类清晰工作
低耦合模块之间依赖少、接口简单修改一个模块不牵连大片系统
信息隐藏隐藏内部实现,只暴露必要接口外部不依赖内部细节
单入口单出口控制结构清晰便于理解、测试和维护

内聚从弱到强、耦合从强到弱的排序类题要单独记;但理解上只要抓住“内部越专一越好,外部依赖越少越好”。

测试复盘

类别方法/概念识别关键词
黑盒测试等价类、边界值、错误推测、因果图不看代码,只看输入输出和需求
白盒测试语句、判定、条件、路径覆盖看程序内部逻辑
测试阶段单元、集成、系统、验收范围从模块到用户交付
集成测试桩模块、驱动模块自顶向下用桩,自底向上用驱动
McCabeV(G)=EN+2节点边数、区域数、判定节点数

白盒测试是字幕反复强调的重点。判定覆盖看整个判断的真/假结果,条件覆盖看每个基本条件的真/假取值;二者不能随便互相推出。McCabe 既可能单独考计算,也可能和白盒覆盖结合考。

维护、文档与质量复盘

主题必背边界
改正性维护修复已经发现的错误
预防性维护在错误发生前消除隐患
完善性维护增加功能或改善性能
适应性维护适应外部环境变化
产品/用户文档用户阅读,帮助使用
管理文档管理人员阅读,控制进度、职责、变更
开发文档开发人员阅读,支持需求、设计、测试、维护
质量模型功能性、可靠性、易用性、效率、可维护性、可移植性

质量模型最适合做配对练习:安全保密性属于功能性,时间特性属于效率,易分析性属于可维护性,易安装性属于可移植性。

错题复盘模板

text
题干关键词:
生命周期阶段:
对应概念:
为什么不是其他选项:
我混淆的点:
下次识别规则:

例如题干出现“模块之间接口”,生命周期阶段是测试里的集成测试;对应概念是接口和协作检查;不是单元测试,因为单元测试看模块内部;下次看到“接口、组装、桩、驱动”就先想集成测试。

例题

单选
复盘第 7 章错题时,更有效的方法是:
单选
为满足新的政策法规而修改系统,通常属于:

本章收束

第 7 章的学习重心是“阶段感”。开发模型看项目如何组织,需求分析看系统要做什么,系统设计看如何组织实现,软件测试看如何发现缺陷,软件维护看交付后如何持续演进,质量模型看好软件的评价维度。把概念放回这条链路,题目就会清楚很多。