最新结构化分析与设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3、读者还书时需填写还书单。系统根据读者号和图书分类目录号,从借书文件中读出与 该图书相关的借阅记录,标明还书日期,再写回到借书文件中,若图书逾期,则处以相应的罚 款。
4、注销图书时,需填写注销单并修改图书目录文件中的库存总量。 系统的信息查询功能 主要包括读者信息查询和图书信息查询。其中读者信息查询可得到读者的基本信息以及读者借 阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。
模块化
一个模块执行一个功能(功能性内聚) 每个模块用过程(函数)方式调用其它
模块 模块间使用参数传递数据 模块间共用的信息应尽量少
层次图
——描述整体与局部间的关系
一个矩形框代表一个模块,连线表示调用关系。
系统结构图
1、系统模块及其互相关系 2、常用树状或网状图表示
数据结构
数据结构(data structure)是计算机中存 储、组织数据的方式。通常情况下,精心 选择的数据结构可以带来最优效率的算法。
根据系统功能和数据流图填充下列数据字典条目中 的(1)和(2)
查洵请求信息=[查询读者请求信息|查询图书请求信息] 读者情况=读者号+姓名+所在单位+{借书情况} 管理工作请求单=__(1)__ 入库单=__(2)__
结构化设计原则与方法
模块化 层次图 系统结构图 数据结构 程序流程图 问题分析图 结构化设计与面向对象设计的比较
结构化分析与设计
结构化技术的发展
—— 摘自维基百科
一个简单的数据流图
数据流与加工的关系
DFD 的画法
(一)确定系统的输入输出 由于系统究竟包括哪些功能可能一时难于弄清楚,可使范围尽量大一些, 把可能有的内容全部都包括进去。此时,应该向用户了解“系统从外界接 受什么数据”、“系统向外界送出什么数据”等信息,然后,根据用户的 答复画出数据流图的外围。
1、购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、 价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前 为止,购入此种图书的数量)。(此括号内不是试题部分。欢迎访问软件考试网www.hbsoft.net)
2、读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先 检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超 过最大限制数(假设每位读者能同时借阅的书不超过5本),若已达到最大限制数,则拒绝借书; 否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。
PAD图与流程图的比较
案例:从PAD 到 Code
BEGIN FIRST:=K[1]; SECOND:=0; FOR I:=2 TO N DO BEGIN IF K[1]>SECOND THEN BEGIN IF K[I]>FIRST THEN BEGIN SECOND:=FIRST; FIRST:=K[I] END ELSE SECOND:=K[I] END END
DFD示例2:销售管理系统
状态转换图
——用于表现从一个状态到另一个状态的控制流。
1. 初始起点 2. 转换 3. 状态 4. 判断点 5. 终止点(一个或多个)
一个状态图表示一个状态机
状态机示例1
状态机的几个概念
在某个时刻只能处理一个事件 任何时候都存在一个活动状态 可定义组成状态(子状态,被分解成顺
图书管理系统的顶层图如图1-1所示;图书管理系统的第0层DFD图如图1-2所示 其中,加 工2的细化图如图1-3所示。
图1-1图书管理系统顶层图
图1-2图书管理系统第0层DFD图
图1-3 加工2的细化图
问题
数据流图1-2中有两条数据流是错误的,请指出这两 条数据流的起点和终点。
数据流图1-3中缺少三条数据流,请指出这三条数据 流的起点和终点。
二叉树
程序流程图(PFD)
流程程序图是程序分析中最基本、最重要的分析技术,是人们对解决 问题的方法、思路或算法的一种描述。
案例:求100-200内的素数
问题分析图 - PAD Problem Analysis Diagram
自1973年由日本日立公司发明以来,已经得到一定程度的推广。它用二维数 形结构的图表示程序的控制流,将这种图转换为程序代码比较容易。
(二)由外向里画系统的顶层数据流图 首先,将系统的输人数据和输出数据用一连串的加工连接起来。在数据流 的值发生变化的地方就是一个加工。接着,给各个加工命名。然后,给加 工之间的数据命名。最后,给文件命名。
(三)自顶向下逐层分解,绘出分层数据流图 对于大型的系统,为了控制复杂性,便于理解,需要采用自顶向下逐层分 解的方法进行,即用分层的方法将一个数据流图分解成几个数据流图来分 别表示。
序的或并发的子状态的状态)
状态机示例2
数据字典
——数据字典是关于数据的信息的集合,也就是对数据流 图中包含的所有元素的定义的集合.
过程描述 数据流定义 数据元素定义 数据存储定义
作Байду номын сангаас1
参考教材Page63对ATM机的功能描述, 试画出ATM机的状态转换图
作业2:看图答问
某图书管理系统的主要功能是图书管理和信息查询。对于初次借书的读者,系统自动生成读者 号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。 系统的图书管理功能分为四 个方面:购入新书、读者借书、读者还书以及图书注销。
DFD示例
DFD分层
• 绘制分层DFD图的原则一般是:先全局后局部,先整体后细节,先抽象后具体。 • 绘制分层DFD图的步骤一般是:
1. 先确定整个系统的范围和功能,绘制顶层的DFD图。 2. 绘制出顶层的DFD图之后,然后逐层分解顶层DFD图,获得
若干中间层DFD图。 3. 根据获得的中间层DFD图绘制各个底层的DFD图。
画数据流程图的基本原则
①数据流程图上所有图形符号必须是前面所述的四种基 本元素。 ②数据流程图的主图必须含有前面所述的四种基本元素, 缺一不可。 ③数据流程图上的数据流必须封闭在外部实体之间,外 部实体可以是一个,也可以是多个。 ④处理过程至少有一个输入数据流和一个输出数据流。 ⑤任何一个数据流子图必须与它的父图上的一个处理过 程对应,两者的输入数据流和输出数据流必须一致,即 所谓“平衡”。 ⑥数据流程图上的每个元素都必须有名字
4、注销图书时,需填写注销单并修改图书目录文件中的库存总量。 系统的信息查询功能 主要包括读者信息查询和图书信息查询。其中读者信息查询可得到读者的基本信息以及读者借 阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。
模块化
一个模块执行一个功能(功能性内聚) 每个模块用过程(函数)方式调用其它
模块 模块间使用参数传递数据 模块间共用的信息应尽量少
层次图
——描述整体与局部间的关系
一个矩形框代表一个模块,连线表示调用关系。
系统结构图
1、系统模块及其互相关系 2、常用树状或网状图表示
数据结构
数据结构(data structure)是计算机中存 储、组织数据的方式。通常情况下,精心 选择的数据结构可以带来最优效率的算法。
根据系统功能和数据流图填充下列数据字典条目中 的(1)和(2)
查洵请求信息=[查询读者请求信息|查询图书请求信息] 读者情况=读者号+姓名+所在单位+{借书情况} 管理工作请求单=__(1)__ 入库单=__(2)__
结构化设计原则与方法
模块化 层次图 系统结构图 数据结构 程序流程图 问题分析图 结构化设计与面向对象设计的比较
结构化分析与设计
结构化技术的发展
—— 摘自维基百科
一个简单的数据流图
数据流与加工的关系
DFD 的画法
(一)确定系统的输入输出 由于系统究竟包括哪些功能可能一时难于弄清楚,可使范围尽量大一些, 把可能有的内容全部都包括进去。此时,应该向用户了解“系统从外界接 受什么数据”、“系统向外界送出什么数据”等信息,然后,根据用户的 答复画出数据流图的外围。
1、购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、 价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前 为止,购入此种图书的数量)。(此括号内不是试题部分。欢迎访问软件考试网www.hbsoft.net)
2、读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先 检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超 过最大限制数(假设每位读者能同时借阅的书不超过5本),若已达到最大限制数,则拒绝借书; 否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。
PAD图与流程图的比较
案例:从PAD 到 Code
BEGIN FIRST:=K[1]; SECOND:=0; FOR I:=2 TO N DO BEGIN IF K[1]>SECOND THEN BEGIN IF K[I]>FIRST THEN BEGIN SECOND:=FIRST; FIRST:=K[I] END ELSE SECOND:=K[I] END END
DFD示例2:销售管理系统
状态转换图
——用于表现从一个状态到另一个状态的控制流。
1. 初始起点 2. 转换 3. 状态 4. 判断点 5. 终止点(一个或多个)
一个状态图表示一个状态机
状态机示例1
状态机的几个概念
在某个时刻只能处理一个事件 任何时候都存在一个活动状态 可定义组成状态(子状态,被分解成顺
图书管理系统的顶层图如图1-1所示;图书管理系统的第0层DFD图如图1-2所示 其中,加 工2的细化图如图1-3所示。
图1-1图书管理系统顶层图
图1-2图书管理系统第0层DFD图
图1-3 加工2的细化图
问题
数据流图1-2中有两条数据流是错误的,请指出这两 条数据流的起点和终点。
数据流图1-3中缺少三条数据流,请指出这三条数据 流的起点和终点。
二叉树
程序流程图(PFD)
流程程序图是程序分析中最基本、最重要的分析技术,是人们对解决 问题的方法、思路或算法的一种描述。
案例:求100-200内的素数
问题分析图 - PAD Problem Analysis Diagram
自1973年由日本日立公司发明以来,已经得到一定程度的推广。它用二维数 形结构的图表示程序的控制流,将这种图转换为程序代码比较容易。
(二)由外向里画系统的顶层数据流图 首先,将系统的输人数据和输出数据用一连串的加工连接起来。在数据流 的值发生变化的地方就是一个加工。接着,给各个加工命名。然后,给加 工之间的数据命名。最后,给文件命名。
(三)自顶向下逐层分解,绘出分层数据流图 对于大型的系统,为了控制复杂性,便于理解,需要采用自顶向下逐层分 解的方法进行,即用分层的方法将一个数据流图分解成几个数据流图来分 别表示。
序的或并发的子状态的状态)
状态机示例2
数据字典
——数据字典是关于数据的信息的集合,也就是对数据流 图中包含的所有元素的定义的集合.
过程描述 数据流定义 数据元素定义 数据存储定义
作Байду номын сангаас1
参考教材Page63对ATM机的功能描述, 试画出ATM机的状态转换图
作业2:看图答问
某图书管理系统的主要功能是图书管理和信息查询。对于初次借书的读者,系统自动生成读者 号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。 系统的图书管理功能分为四 个方面:购入新书、读者借书、读者还书以及图书注销。
DFD示例
DFD分层
• 绘制分层DFD图的原则一般是:先全局后局部,先整体后细节,先抽象后具体。 • 绘制分层DFD图的步骤一般是:
1. 先确定整个系统的范围和功能,绘制顶层的DFD图。 2. 绘制出顶层的DFD图之后,然后逐层分解顶层DFD图,获得
若干中间层DFD图。 3. 根据获得的中间层DFD图绘制各个底层的DFD图。
画数据流程图的基本原则
①数据流程图上所有图形符号必须是前面所述的四种基 本元素。 ②数据流程图的主图必须含有前面所述的四种基本元素, 缺一不可。 ③数据流程图上的数据流必须封闭在外部实体之间,外 部实体可以是一个,也可以是多个。 ④处理过程至少有一个输入数据流和一个输出数据流。 ⑤任何一个数据流子图必须与它的父图上的一个处理过 程对应,两者的输入数据流和输出数据流必须一致,即 所谓“平衡”。 ⑥数据流程图上的每个元素都必须有名字