软件设计师备考精讲 第七章 系统开发基础——软件工程与结构化开发方法考点完整总结
在软件设计师考试中,第七章“系统开发基础”是理论与方法的核心章节,其中“软件工程”与“结构化开发”更是重中之重。本文旨在系统梳理相关核心考点,构建清晰的知识框架,助力高效备考。
一、 软件工程概述
1. 软件工程定义与目标
- 定义:将系统化的、规范化的、可度量的方法应用于软件的开发、运行和维护的过程,即工程化应用于软件。
- 目标:在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性等高质量特征的软件产品。
2. 软件生命周期
软件从定义、开发、使用维护到最终废弃的全过程,是考点的基石。经典模型包括:
- 瀑布模型:阶段间具有顺序性和依赖性,强调文档,变更困难。适用于需求明确的项目。
- 演化模型(原型模型、增量模型、螺旋模型):应对需求不明确或变化。
- 原型模型:快速构建原型,获取用户反馈,澄清需求。
- 增量模型:将软件划分为一系列增量构件,逐个交付。
- 螺旋模型:结合瀑布与原型,加入风险分析,四象限循环(制定计划、风险分析、实施工程、客户评估)。
- 其他模型:V模型(强调测试与开发的对应)、喷泉模型(面向对象,迭代、无间隙)、敏捷模型(适应变化,个体互动重于流程工具)。
二、 结构化开发方法核心考点
结构化方法(Structured Methodology)是面向数据流的传统开发方法,核心是“自顶向下,逐步求精”。
1. 结构化分析
- 目标:建立系统逻辑模型,解决“做什么”的问题。
- 核心工具:
- 数据流图:描述数据在系统中流动和处理的图形工具。关键元素:外部实体、加工(处理)、数据存储、数据流。需掌握分层绘制与平衡原则。
- 数据字典:DFD中所有元素的定义集合,是数据的数据(元数据)。
- 实体关系图:描述系统数据及其关系的概念模型。
- 状态转换图:描述系统状态随外部事件变化的模型。
- 需求分析结果:软件需求规格说明书。
2. 结构化设计
- 目标:建立系统物理模型,解决“怎么做”的问题。分为总体设计(架构设计)和详细设计(模块内部设计)。
- 核心概念与工具:
- 模块化与耦合、内聚:
- 耦合:模块间关联程度。追求低耦合。顺序:数据耦合 < 标记耦合 < 控制耦合 < 外部耦合 < 公共耦合 < 内容耦合。
- 内聚:模块内各元素结合紧密程度。追求高内聚。顺序:功能内聚 > 顺序内聚 > 通信内聚 > 过程内聚 > 时间内聚 > 逻辑内聚 > 偶然内聚。
- 系统结构图:描述系统模块层次结构与调用关系的图形工具。主要成分:模块、调用、数据(箭头旁带空心圆)、控制信息(箭头旁带实心圆)。常见结构:顺序、选择、循环。
- 面向数据流的设计方法:
- 变换流:输入、处理、输出结构清晰。设计步骤:找变换中心,完成第一级分解,逐级细化。
- 事务流:一个输入,多个处理路径。设计核心:识别事务中心与各活动路径。
- 详细设计工具:程序流程图、N-S图(盒图)、PAD图、判定表、判定树、PDL(过程设计语言)等。
3. 结构化程序设计
- 核心原则:采用顺序、选择、循环三种基本控制结构,避免使用GOTO语句,实现单入口单出口。
- 目的:提高程序清晰性、可读性、可测试性与可维护性。
三、 关键考点与易混淆点
- 生命周期模型选择:根据需求明确度、技术风险、项目规模选择合适模型。瀑布模型需求明确;原型、演化模型需求不明确;螺旋模型适用于大型高风险项目。
- DFD与SC对比:DFD是分析阶段数据流模型;SC是设计阶段程序结构模型。两者可转换,但本质不同。
- 耦合与内聚的衡量:是评价设计质量的核心标准,务必牢记各类耦合/内聚的定义与优劣排序。
- 变换流与事务流的识别与转换:是结构化设计的难点,需通过大量练习掌握从DFD到SC的映射方法。
- 设计文档:总体设计阶段产生概要设计说明书;详细设计阶段产生详细设计说明书。
四、 备考建议
- 理解重于记忆:深刻理解软件工程思想与结构化方法“分解与抽象”的本质。
- 图形工具是关键:熟练掌握DFD、SC、ER图等图形的绘制、解读与转换。
- 对比联系学习:将结构化方法与后续的面向对象方法进行对比,理解其差异与适用场景。
- 真题为导向:历年真题中本章考点重复率高,尤其是耦合内聚、模型特点、图形分析,需反复练习。
掌握本章内容,不仅能应对考试选择题与下午案例分析题,更能夯实软件开发的方法论基础,为成为一名合格的软件设计师铺平道路。
如若转载,请注明出处:http://www.quakj.com/product/11.html
更新时间:2026-04-04 04:13:19