软件工程画图题最全总结(配部分例题)

2025-06-30 08:36:41 世界杯冠军最多

软工画图题总结

1、面向过程

①数据流图DFD

②流程图

③盒图NS

例:输入三角形三边长判断三边构成的是等边、等腰,还是一般三角形

④PDL程序设计语言

PDL是什么?有什么特点?

PDL是一种用于描述功能模块的算法设计和加工细节的语言。称为程序设计语言,是一种伪码

特点:

所有关键字都有固定语法,以便提供结构化的控制结构、数据说明和模块特征。

描述处理过程的说明性语言没有严格的语法,通常用于描述过程或操作的逻辑,而不强求严格的语法规则。

具有模块说明机制,包括简单和复杂的数据说明,用于描述数据的结构和类型。

具有模块定义和调用机制,开发人员应根据系统编程所用的语言,说明 PDL(程序设计语言)表示的有关程序结构,包括模块的定义、调用及其交互方式。

⑤判定树/判定表

画法核心:先画决策树,再画决策表

例:某公司给购货5万元的顾客不同的折扣率,否则无折扣。如果顾客最近三个月内无欠款,折扣率为 15%;有欠款,但与公司有10年及以上的交易关系折扣率为 10%,否则为5%。请将公司的折扣规则用决策树和决策表的方式描述出来

⑥ER实体关系图

数据模型

建模系统中的数据结构和它们之间的关系

面向问题,用户角度,包含①实体②属性③关系

数据对象(实体)

属性

关系

1v1 1vN NvM

⑦STD状态转移图

状态:系统行为——系统对事件的响应方式

状态图展现了一个状态机,它由状态、转换、事件和活动组成。强调对象行为的事件顺序

状态:

终态:

中间状态:

活动表达式:entry、exit、do+状态

事件:事件名/参数表 [守卫条件]+动作表达式

状态转化:箭头

⑧DFD数据流图

数据流图不是数据模型!而是功能模型

DFD在软件详细设计过程中不采用

功能建模

展示数据如何处理流动,但无法体现出时序关系

数据流图是层次结构:顶层流图——中间层——底层

①数据加工:表示对数据进行的操作

0层数据流图只有一个数据加工

②外部实体

系统之外信息提供者或使用者

③数据流

表示数据和数据流向,通常以数据实体(如“账单”)为名称,而不是描述处理过程或功能。

注意点:

控制流不要作数据流

不要标激发条件

④数据存储

表示需要保存的数据流向(源、终点)

常见错误:

每个加工至少一个输入输出

只能从加工流入流出,不能直接从外部项流入数据存储

数据流图示例:

功能建模——数据字典、加工小说明

并不是任意一层数据流图必须包括数据加工、数据流、外部实体和数据存储四种基本元素,缺一不可

从数据存储流图的数据流可以不给出命名

例子:

⑨DD数据字典

数据字典是数据模型

数据字典中,一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成

2、面向对象

①用例图

对体系结构的建模不适用用例图

用例图定义了系统的功能需求,它是从系统外部来看系统功能,并不描述系统内部对功能的具体实现

参与者+用例+它们的关系:描述系统功能

1、参与者

2、用例

用例命名规范:动词+名词结构,如:“查找书籍”

表示参与者与系统之间的交互

对一组动作序列的描述,系统通过执行这一组动作序列,为参与者产生一个可以观察的结果

+关系,形成用例图:

3、系统和关联

关联关系是参与者与用例之间的关系,而不是用例之间的关系

谁会使用这个系统、参与者希望系统做什么

4、用例之间的关系

①关联

②泛化=继承

谁是谁 is a kind of

一个父用例可以被特化形成多个子用例,父用例和子用例的关系就是泛化关系(继承)

③包含

包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。一个用例可以包含另外一个用例。

④扩展

A扩展至B,是B——>A,注意箭头方向

扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。由一个用例的扩展点可以扩展出另外一个用例。

包含include、扩展的区别extend

在扩展关系中,一个基本用例执行时,可以执行、也可以不执行扩展用例部分

在包含关系中,在执行基本用例时,一定会执行包含用例部分

include一定会执行,extend不一定会执行

②类图

对系统中的各种概念进行建模,标识系统中的不同实体,并描述它们之间关系的图。类图中包含为系统定义的各种类、类的内部结构,以及类与类之间的关系

类——类的内部结构——类间关系

类——接口——关系

类的名称——类的属性——类的方法

类的分类:①实体类②边界类③控制类

类间的关系:

关联:使用与被使用

聚合:谁是谁的一部分

例如车轮是自行车的一部分

组成:谁是谁的一部分,部分的生命周期取决于整体的生命周期

泛化:谁是谁,理解为继承

例如bus是公共交通

依赖:依赖于谁

实现关系:接口

③顺序图/时序图

是一张二维图。其纵向代表时间轴,时间沿垂直方向向下延伸;其横向由多个参与交互的对象构成

如何交互——可视化交互时序——强调消息时间顺序的交互图

四要素:①对象②生命线③消息④激活

1、对象

对象在顶部说明交互开始即存在,不在顶部则是在交互中创建

有参与者最多两个,分列两端,启用者排最左边,接收者排最右边

2、生命线

每个对象都有生命线,垂直的虚线,生命期结束打叉

3、激活

表示对象被占用去做某个任务,表示激活在生面线上画细长矩形

激活期:消息传递给对象会触发对象的行为即为激活,激活期表示正在执行某个动作

4、消息

对象间交互信息,消息可以①激发②创建③撤销对象

消息理解为操作

①同步消息

②异步消息,不用等待回应的返回信息

③反身消息

④返回消息(可选择,一般可以缺省)

5、对象的创建:对象不在顶部

6、对象的撤销,使用destroy消息,并结束生命线

例子:

④活动图

开始和结束:只有一个开始,可以有多个结束

活动状态,表示工作流过程中命令的执行或活动的进行,圆角矩形表示

动作状态,动作状态是活动状态的特例,平滑的圆角矩形表示

转移:活动间的转换,一直进行直到分支或者终止

判定:路径互斥

分叉及汇合(短横线),并发控制

泳道图: