架 软考架构师知识库 系统架构设计师 · 课件全文检索
已就绪 127 份课件 1966 页

软件工程-系统设计

第十一章-软件工程 · 15 页 · 2922 字 录播 讲义

软件工程-系统设计

项目 内容
来源 录播
章节 第十一章-软件工程
标签 讲义
页数 15
总字数 2922
原始课件 基础录播课/第十一章-软件工程/9.3-软件工程-系统设计.pdf

本文由课件自动整理,页内文字按原始讲义阅读顺序还原;[图] 表示该位置存在图示,

图示内容请对照原始课件查看。


目录


第 1 页 · N E W P L A

N

软考高级架构师

一

段

新

征

程

第 2 页 · [图]

提示:本页以图示为主,下列文本为图中标注文字。

大纲介绍

第 3 页 · 系统设计-业务流程设计

[图]

流程设计表示工具:

•

程序流程图(Program Flow Diagram,PFD):用一些

图框表示各种操作,它独立于任何一种程序设计语

言,比较直观、清晰,易于学习掌握。任何复杂的

程序流程图都应该由顺序、选择和循环结构组合或

嵌套而成。

•

IPO图:也是流程描述工具,用来描述构成软件系统

的每个模块的输入、输出和数据加工。前面学习的

数据流图其实就是一种IPO图

第 4 页 · 系统设计-业务流程设计

•

N-S图:比较容易表示嵌套和层次关系,并具有强烈的结构化特征。但

[图]

是当问题很复杂时,N-S图可能很大,因此不适合于复杂程序的设计。

•

问题分析图(PAD):是一种支持结构化程序设计的图形工具。PAD具有

清晰的逻辑结构、标准化的图形等优点,更重要的是,它引导设计人

员使用结构化程序设计方法,从而提高程序的质量。

[图]

第 5 页 · 系统设计-业务流程设计分类

业务流程管理(BPM)

•

是一种方法论,用于优化、管理和自动化组织内的业务流程。它涉及识别、建模、分析和优

化业务流程,以实现更高效、灵活和协调的运作。BPM关注整个业务流程的管理,包括流程

的执行、监控、优化和自动化

业务流程重组BPR

•

BPR是更为激进的方法,它着眼于对现有业务流程进行彻底的重新设计和改造,以实现质的

飞跃的改进,是对企业的业务流程进行根本性的再思考和彻底性的再设计,从而获得可以用

诸如成本、质量、服务和速度等方面的业绩来衡量的显著性的成就。

流程管理包含三个层面:规范流程、优化流程和再造流程

第 6 页 · 考试真题

流程设计的任务是设计出系统所有模块和它们之间的相互关系,并具体设计出每个模

块内部的功能和处理过程。以下关于流程设计的叙述,正确的是(

)。

A.任何复杂的程序流程图都应该由顺序、选择、循环结构构成

B.IPO图不适合用来进行流程设计

C.PAD图是一种支持原型化设计方法的图形工具

D.N-S图容易表示嵌套关系和层次关系,特别适合于设计非常复杂的流程答案

业务流程重组(Business Process Reengineering,BPR)是针对企业业务流程的基本问

题进行回顾,其核心思路是对业务流程的()改造,BPR过程通常以(

)为中心。

A.增量式

B、根本性

C、迭代式

D、保守式

A.

流程

B、需求

C、组织

D、资源

第 7 页 · 系统设计

系统设计主要目的:为系统制定蓝图,在各种技术和实施方法中权衡利弊,精心设计,合理地

使用各种资源,最终勾画出新系统的详细设计方法。简单点说,系统设计就是告诉你该怎么做,

需求分析就是找到你要做什么,系统设计就是告诉你怎么做

系统设计方法:结构化设计方法,面向对象设计方法。

系统设计的主要内容:概要设计、详细设计。

概要设计基本任务:又称为系统总体结构设计,是将系统的功能需求分配给软件模块,确定每

个模块的功能和调用关系,形成软件的模块结构图,即系统结构图。还需要产出概要设计说明

书

详细设计的基本任务:模块内详细算法设计、模块内数据结构设计、数据库的物理设计、其他

设计(代码、输入/输出格式、用户界面)、编写详细设计说明书、评审。

第 8 页 · 系统设计

系统设计基本原理:当进行系统设计时,有一些基本原则可以帮助我们更好地规划和

构建软件系统。以下是这些原则的通俗解释:

•

抽象化: 就像画家将一幅画分成不同的图层,系统设计中也会将复杂的问题分成更小、更

易管理的部分。这样做能让我们关注重要的细节,同时不被不必要的复杂性所困扰。

•

自顶而下,逐步求精: 想象你在建立一座高楼大厦,你首先会构想整体的结构,然后一层

一层地逐步建造。在系统设计中也是如此,我们先考虑整体框架,然后逐步添加细节,以

确保每个部分都被仔细设计和优化。

•

信息隐蔽: 想象你开车时并不需要了解引擎的每个零件如何运作。在系统设计中,我们可

以隐藏复杂的内部细节,只暴露必要的信息给其他部分。这样能够降低不同模块之间的相

互影响,使系统更易于管理和维护。

•

模块独立(高内聚,低耦合): 就像用乐高积木一样,系统设计中的各个部分应该是独立

的,即每个模块都有自己的功能并且尽可能不依赖其他模块。高内聚表示模块内部的元素

彼此紧密相关,低耦合表示模块之间的依赖尽可能降低

第 9 页 · 系统设计

系统设计基本原则:当进行系统设计时,一些原则可以帮助我们构建清晰、可维护且高效的软件系统。

以下是这些原则的解释:

•

保持模块的大小适中: 就像把一块大蛋糕切成适合一口吃的小块一样,系统中的模块也应该适中,不要太大也

不要太小。这样做可以使每个模块的功能清晰,并且易于理解、测试和维护。

•

尽可能减少调用的深度: 想象你需要找到某本书,如果每次你要找的书都在另一本书的页码里,你需要不断翻

书才能找到。在系统设计中,减少调用深度意味着尽量减少程序的层层嵌套,以避免复杂的调用关系,使代码

更清晰和高效。

•

多扇入,少扇出: 想像一个火车站,火车到站后乘客下车,站台上的人上车,但火车的出口只有一个。在系统

设计中,模块应该允许多个模块调用它(多扇入),但它本身应尽量少调用其他模块(少扇出),以减少模块

之间的复杂关系。

•

单入口,单出口: 就像你进入一座建筑物只有一个门一样,在模块设计中,最好只有一个入口和一个出口。这

样可以使模块的功能和接口更清晰,不容易引入混淆和错误。

•

模块的作用域应该在模块之内: 就像一个厨房用具只在厨房里使用一样,模块的功能应该限制在模块内部,不

要让外部模块直接访问内部的细节。这有助于封装和隐藏内部逻辑,防止外部干扰。

•

功能应该是可预测的: 就像按下开关会打开灯一样,模块的功能应该是可预测的。使用者在调用一个模块时应

该能够合理地预期它会发生什么,从而避免产生混淆和不可预知的结果。

第 10 页 · 系统设计

系统设计基本原理:抽象、模块化、信息隐蔽、模块独立(高内聚和低耦合)。

衡量模块独立程度的标准有两个:耦合性和内聚性。内聚程度从低到高如下表所示:

[图]

第 11 页 · 系统设计

提示:本页以图示为主,下列文本为图中标注文字。

耦合程度从低到高如下表所示:

[图]

第 12 页 · 人机界面设计

提示:本页以图示为主,下列文本为图中标注文字。

人机界面设计三大黄金原则:

[图]

第 13 页 · 考试真题

某模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一处理元素的输

出就是下一处理元素的输入,则该模块的内聚类型为(

)内聚

A.过程

B.时间

C.顺序

D.逻辑

已知模块A给模块B传递数据结构X,则这两个模块的耦合类型为(

)

A.数据耦合

B.公共耦合

C.外部耦合

D.标记耦合

第 14 页 · 考试真题

系统设计是根据系统分析的结果,完成系统的构建过程。系统设计的主要内容包括();系统总体

结构设计的主要任务是将系统的功能需求分配给软件模块,确定每个模块的功能和调用关系,

形成软件的( )

A.概要设计和详细设计

B.架构设计和对象设计

C.部署设计和用例设计

D.功能设计和模块设计

A.用例图

B.模块结构图

C.系统部署图

D.类图

以下关于软件系统模块结构设计的叙述中,正确的是(

)。

A.当模块扇出过大时,应把下级模块进一步分解为若干个子模块

B.当模块扇出过小时,应适当增加中间的控制模块

C.模块的扇入大,表示模块的复杂度较高

D.模块的扇入大,表示模块的复用程度高

第 15 页 · T H

E E N D

功不唐捐,玉汝于成!

开

启

新

征

程