【精选】【软件工程导论题型大总结】画图题总结 您所在的位置:网站首页 瑞典永久居留回国可以呆多久 【精选】【软件工程导论题型大总结】画图题总结

【精选】【软件工程导论题型大总结】画图题总结

2023-11-17 08:57| 来源: 网络整理| 查看: 265

pdf下载:密码7281专栏目录首页:【专栏必读】软件工程导论第六版(张海藩)专栏学习笔记目录导航

文章目录 一:概要(各章图形及对应符号)(1)传统软件工程部分A:可行性研究①:系统流程图②:数据流图(DFD)③:数据字典 B:需求分析①:E-R图②:状态转换图③:层次方框图④:warnier图⑤:IPO图 C:总体设计①:层次图(H图)和HIPO图(H图+IPO)②:结构图 D:详细设计①:程序流程图②:流图③:盒图④:PAD图⑤:判定表和判定树⑥:PDL⑦:Jackson图 (2)面向对象部分①:类图②:用例图③:状态图④:顺序图 二:着重考察画法的图(1)数据流图(★★★★★)A:画法介绍B:典型例题 (2)E-R图(★★★★★)A:画法介绍B:典型例题 (3)状态转换图(★★★)A:画法介绍B:典型例题 (4)结构图(★★★)A:画法介绍B:典型例题 (5)程序流程图和盒图(★★★★★)A:画法介绍B:典型例题 (6)流图A:画法介绍B:典型例题 (7)判定表A:画法介绍B:典型例题 (8)类图A:画法介绍B:典型例题

一:概要(各章图形及对应符号)

注意:

没有用红色字体标出的图,代表这类题目基本不会以画图的方式考察(我也不敢百分之百保证),着重会在选择、填空中考察概念使用红色字体标出的图,是必须要掌握它的画法的总的来说:E-R图、数据流图、状态转换图(流图)、结构图、程序流程图、盒图、判定表、类图、时序图、用例图必考画法 (1)传统软件工程部分 A:可行性研究 ①:系统流程图

系统流程图是概括地描绘物理系统的传统工具。系统流程图的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序、文档、数据库、人工过程等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图

在这里插入图片描述

②:数据流图(DFD)

基本符号 在这里插入图片描述

关于“数据流”的扩充

在这里插入图片描述

③:数据字典

符号表示

在这里插入图片描述

B:需求分析 ①:E-R图

符号表示

在这里插入图片描述

②:状态转换图

符号表示

在这里插入图片描述

在这里插入图片描述

③:层次方框图

层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素

在这里插入图片描述

随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。系统分析员从对顶层信息的分类开始,沿图中每条路径反复细化,直到确定了数据结构的全部细节时为止

④:warnier图

Warnier图是法国计算机科学家Warnier提出的表示信息层次结构的另外一种图像工具,它用树形结构描绘信息,可以表明信息的逻辑组织,即可以指出一类信息或一个信息元素是重复出现的,也可以表示特定信息在某一类信息中是有条件地出现的,它比层次方框图提供了更丰富的描绘手段

在这里插入图片描述

图中花括号用来区分数据结构的层次在一个花括号内的所有名字都属于同一类信息异或符号表明一类信息或一个数据元素在一定条件下才出现,而且在这个符号上、下方的两个名字所代表的数据只能出现一个;在一个名字下面(或右边)的圆括号中的数字指明了这个名字代表的信息类(或元素)在这个数据结构中重复出现的次数 ⑤:IPO图

IPO图是输入、处理、输出图的简称,它是由美国IBM公司发展完善起来的一种图形工具,能够方便地描绘输入数据、对数据的处理和输出数据之间的关系

IPO图的基本形式是在左边的框中列出有关的输入数据,在中间的框内列出主要的处理,在右边的框内列出产生的输出数据。处理框中列出处理的次序暗示了执行的顺序。在IPO图中还用类似向量符号的粗大箭头清楚地指出数据通信的情况。下图一个主文件更新的例子

在这里插入图片描述

C:总体设计 ①:层次图(H图)和HIPO图(H图+IPO)

层次图用来描绘软件的层次结构。层次图中的一个矩形框代表一个模块,方框间的连线表示调用关系而不像层次方框图那样表示组成关系。如下图的一个例子,最顶层的方框代表正文加工系统的主控模块,它调用下层模块完成正文加工的全部功能;第二层的每个模块控制完成正文加工的一个主要功能,第二层的模块又可 以调用下一层的模块完成具体的工作

在这里插入图片描述

HIPO图是“层次图加输入/处理/输出图”的缩写。使HIPO图具有可追踪性,在层次图里除了最顶层的方框,之外,每个方框都加了编号

在这里插入图片描述

②:结构图

基本符号

方框代表模块、框内注明模块的名字或主要功能箭头或直线表示调用关系尾部是空心圆表示传递的是数据;若是实心圆则表示传递的是控制信息

特殊符号

表示当模块M中某个判定为真时调用模块A,为假时调用模块B

在这里插入图片描述 表示模块M循环调用模块A、B和C

在这里插入图片描述

D:详细设计 ①:程序流程图

符号

在这里插入图片描述

a:选择b:注释c:预先定义的处理d:多分支e:开始或停止f:准备g:循环上界限h:循环下界限i:虚线j:省略符k:并行方式l:处理m:输入输出n:连接o:换页连接p:控制流 ②:流图

程序流程图映射为流图的方法

①:对于顺序结构,一个顺序处理和下一个选择可以映射为一个结点

在这里插入图片描述

②:对于选择语句,开始/结束语句映射为一个结点,两条分支至少各映射成一个结点

在这里插入图片描述 ③:开始语句和结束语句各映射成一个结点

在这里插入图片描述

③:盒图

符号

出于要有一种不允许违背结构程序设计精神的图形工具的考虑,提出了盒图,又称为N-S图。其基本符号如下 在这里插入图片描述

a:顺序结构b:IF_TEEN_ELSE型分支c:CASE型多分支d:循环结构e:调用子程序A ④:PAD图

PAD是问题分析图(problem analysis is diagram)的英文缩写,是使用二维树形结构的图来表示程序的控制流,这种图翻译为程序代码比较容易。其基本符号如下 在这里插入图片描述

a:顺序b:选择(IF C THEN P1 ELSE P2)c:CASE型多分支d:WHILE型循环(WHILE C DO P)e:UNTIL型循环(REPEAT P UNTIL C)f:语句符号g:定义

PAD优点(需要记忆)

在这里插入图片描述

使用表示结构化控制结构的PAD符号所设计出来的程序必然是结构化程序PAD图所描绘的程序结构十分清晰。图中最左面的竖线是程序的主线,即第一层结构。随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数用PAD图表现程序逻辑,易读、易懂、易记。PAD图是二维树形结构的图形,程序从图中最左竖线上端的结点开始执行 ,自上而下,从左向右顺序执行,遍历所有结点容易将PAD图转换成高级语言源程序,这种转换可用软件工具自动完成,从而可省去人工编码的工作,有利于提高软件可靠性和软件生产率即可用于表示程序逻辑,也可用于描绘数据结构PAD图的符号支持自顶向下、逐步求精方法的使用。开始时设计者可以定义一个抽象的程序,随着设计工作的深入而使用def符号逐步增加细节,直至完成详细设计(如下图所示,左图表示初始的PAD图,右图表示使用def符号细化处理框P2) ⑤:判定表和判定树

当算法中包含多重嵌套的条件选择时,判定表能够清晰地表示复杂的条件组合与应做的动作之间的对应关系。由以下部分组成

左上部列出所有条件左下部是所有可能做的动作右上部是表示各种条件组合的一个矩阵右下部是和每种条件组合相对应的动作 ⑥:PDL

过程设计语言(PDL), 即伪码,它是用正文形式表示数据和处理过程的设计工具。PDL具有严格的关键字外部语法,用于定义控制结构和数据结构。PDL表示实际操作和条件的内部语法通常又是灵活自由的,可以适应各种工程项目的需要

⑦:Jackson图 面向数据结构的设计方法:面向数据结构的设计方法的最终目标是得出对程序处理过程的描述,面向数据结构的设计方法最适合于在详细设计阶段使用,即在完成了软件结构设计之后,可以使用面向数据结构的方法来设计每个模块的处理过程Jackson方法:Jackson方法和Warnier方法是最著名的两个面向数据结构的设计方法,Jackson图根据程序中数据元素彼此间的逻辑关系可分为顺序结构、选择结构和重复结构3类 (2)面向对象部分 ①:类图

具体符号细节请移步:(软件工程复习核心重点)第八章面向对象方法学-第三节:面向对象建模之对象模型

类图:类名、属性、服务

在这里插入图片描述

类关系:泛化=实现>组合>聚集>关系>依赖 在这里插入图片描述

在这里插入图片描述

②:用例图

在这里插入图片描述

③:状态图

状态图用来描述一个特定对象的所有可能状态及其引起状态转移的事件,描述哪些状态之间可以转换,不同的状态下有不同的行为

实心圆:表示初始状态实行圆外面一个空心圆:表示中止状态状态框:上面是名称,下面说明处于该状态时,系统或对象要进行的活动 在这里插入图片描述

在这里插入图片描述

航空订票系统状态图 ④:顺序图

UML顺序图一般用于确认和丰富一个使用情境的逻辑。顺序图将交互关系表现为一个二维图,纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色,类元角色的活动用生命线表示

生命线用一条纵向虚线表示对象表示为一个矩形,其中对象名称标有下划线激活是过程的执行,包括等待过程执行的时间。在顺序图中激活部分替换生命线,使用长条的矩形表示消息是对象之间的通信,是两个对象之间的单路通信,是从发送者到接收者之间的控制信息流。消息在顺序图中由有标记的箭头表示,箭头从一个对象的生命线指向另一个对象的生命线,消息按时间顺序在图中从上到下排列在顺序图中,对象安排在X轴。启动交互的对象放在最左边,随后放入消息的对象放在启动交互对象的右边。交互中对象发送和接收的消息沿着Y轴以时间增加的次序放置。在顺序图中,有的消息对应于激活,表示它将会激活一个对象,这种消息称为调用消息(Call Message);如果消息没有对应激活框,表示它不是一个调用消息,不会引发其他对象的活动,这种消息称为发送消息(Send Message)

在这里插入图片描述

二:着重考察画法的图 (1)数据流图(★★★★★) A:画法介绍

1:仔细阅读题目,找出源点/终点、处理、数据流、数据存储这四个要素(能找见多少就找多少)

源点/终点:例如人员处理:例如数据的更新、条件等操作数据流:例如信息、数据数据存储:例如数据库、文件(比如账户密码就必须要存储起来)

2:画出基本系统模型,这是一个高度抽象、简单的模型。任何系统的基本模型都由若干数据源点/终点以及一个处理组成,该处理代表系统对数据加工变换的基本功能

3:细化模型中的功能,其中数据存储可以最后画

B:典型例题

1.假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。对于每个需要再次订货的零件应该列出下述数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给订货系统。当某种零件的库存数量少于库存量临界值时就应该再次订货。画出上述订货系统的数据流图

1:基本系统模型

任何系统的基本模型都由若干数据源点/终点以及一个处理组成,该处理代表系统对数据加工变换的基本功能

如下

在这里插入图片描述

2:细化模型,描绘系统主要功能

产生报表和处理事物是系统必须完成的两个主要功能细化后增加了两个数据存储:处理事物需要库存清单数据;产生报表和处理事物需要订货信息

在这里插入图片描述

3:进一步细化功能级数据流图中描绘的系统主要功能

当一个事物发生使必须先接受它,随后按照事物的内容修改库存清单,最后如果更新后的库存量少于临界值,需要再次订货 请添加图片描述 4:考虑是否继续分解和细化

一旦在想要分解时产生了诸如 “如何具体地实现一个功能” 这样的疑问时就表明不需要分解了

5:检查

分层必须保证信息的连续性注意编号的处理

2.银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户

顶层 在这里插入图片描述

第一层

在这里插入图片描述

3.医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告

请添加图片描述

4.高考录取统分子系统有如下功能 (1)计算标准分:根据考生原始分计算得到标准分,存入考生分数文件 (2)计算录取分数线:根据标准分、招生计划文件中的招生人数计算录取线,存入录取 线文件。 根据要求画出该系统的数据流图

请添加图片描述

5.在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(2)E-R图(★★★★★) A:画法介绍

最经典的就是那个“教学管理系统”E-R图,其余图可套用它

一个学生可选修多门课,一门课有若干学生选修;一个教师可讲授多门课,一门课只有一个教师讲授;学生选修一门课,产生成绩;学生的属性有学号、姓名等;教师的属性有教师编号,教师姓名等;课程的属性有课程号、课程名等。请画出该系统E-R图

在这里插入图片描述

B:典型例题

1.请为某仓库的管理设计一个ER模型。该仓库主要管理零件的订购和供应等事项。仓库向工程项目供应零件,并且根据需要向供应商订购零件

在这里插入图片描述

2.请画出银行储蓄系统的E-R图

在这里插入图片描述

3.请画出飞机订票系统的E-R图

在这里插入图片描述

4.请画出医患监护系统E-R图

在这里插入图片描述

(3)状态转换图(★★★) A:画法介绍

在读题目时区分状态与事件

状态:状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。系统对事件的响应,既可以是做一个(或一系列)动作,也可以是仅仅改变系统本身的状态,还可以是既改变状态,又做动作

状态图:状态图是有限自动机的图形表示,反映了状态与事件的关系

事件:事件就是引起系统做动作或(和)转换状态的控制信息

B:典型例题

1.复印机的工作过程大致如未接到复印命令时,处于闲置状态。-旦接到复印命令,则进入复印状态。完成一个复印命令规定的工作后,又回到闲置状态。等待下一个复印命令。如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装置。装满纸后进入闲置状态,准备接收复印命令。如果复印时发生卡纸故障。则进入卡纸状态。发出警告,等待维修人员来排除故障,故障排除后回到闲置状态。试用状态转换图,描绘复印机的行为

复印机的状态有:闲置、复印、缺纸、卡纸引起状态转换的事件:复印命令、完成复印命令、发现缺纸、装满纸、发生卡纸、卡纸排除

在这里插入图片描述

2.请用状态转换图刻画堆栈对象的动态行为模型 在这里插入图片描述

在这里插入图片描述

(4)结构图(★★★) A:画法介绍

一个典型的结构图例子

在这里插入图片描述

最左侧一般是输入中间是处理最右侧是输出 B:典型例题

1.计算考生分数计算系统的结构图

【答案】

在这里插入图片描述

(5)程序流程图和盒图(★★★★★) A:画法介绍 程序流程图这里就再不多说了,从高中起就在话这个东西重点掌握程序流程图和盒图的转换 在这里插入图片描述 B:典型例题

1.研究下面盒图和程序流程图的对应关系

【答案】

在这里插入图片描述

在这里插入图片描述

2.在这里插入图片描述

【答案】

在这里插入图片描述

在这里插入图片描述

(6)流图 A:画法介绍

主要涉及考点就是程序流程图转换为流图,然后根据流图估计程序复杂度

具体映射方法在前面已有介绍

流图不画开始画结束

流图中用圆表示结点,一个圆代表一条或多条语句(比如4、5)。程序流程图中的一个顺序的处理框序列和一个菱形判定框,可以映射成流图中的一个结点(比如2,3)

流图中的箭头线称为边,代表控制流。流图中一条边必须终止于一个结点(比如9必须为一个结点),即使这个结点并不代表任何语句

由边和结点围成的面积称为区域,计算区域数时应包括图外部未被围起来的区域

B:典型例题

1.在这里插入图片描述

(7)判定表 A:画法介绍 列出所有条件,分清这些条件的大小(一般条件数少的作为大条件)我的建议时先画判定树,再弄判定表,如果直接上来就是判定表,很容易出错 B:典型例题

假设某航空公司规定,乘客可以免费托运重量不超过30kg(条件1)的行李。当行李重量超过30kg时,对头等舱(条件2)的国内乘客(条件3) 超重部分每公斤收费4元,对其他舱(条件2) 的国内乘客超重部分每公斤收费6元,对外国乘客(条件4) 超重部分每公斤收费比国内乘客多–倍,对残疾乘客超重部分每公斤收费比正常乘客少一半

在表的右上部分中T表示它左边那个条件成立,F表示条件不成立,空白表示这个条件成立与否并不影响对动作的选择。判定表右下部分中画X表示做它左边的那项动作,空白表示不做这项动作 在这里插入图片描述

第一个条件是行李重量,分为大于30kg和小于30kg第二个条件是国内乘客和国外乘客,分配两派第三个条件是头等舱和其他舱,分为两派第三个套件是正常和普通旅客,分为两派

在这里插入图片描述

在这里插入图片描述

交易总金额每股售价买进、卖出的股数是否是100的倍数交易的股数是否是100的倍数 在这里插入图片描述 (8)类图 A:画法介绍 注意这种题没有标准的答案,按照连接自己的画就可以了先画对象,然后再连接 B:典型例题

现代人的生活离不开银行及其ATM柜员机,客户会在银行开设多个账户,通过柜员 机刷卡,(包括跨行ATM) 进行交易来办理取款入账和转账等多种交易业务,请用 类图刻画上述银行业务的静态逻辑结构

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有