第5章 系统分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2013-8-3
30
2. 利用计算机辅助建立并维护 (1)编制一个“字典生成与管理程序”,可以 按规定的格式输入各类条目,能对字典条目增、删、 改,能打印出各类查询报告和清单,能进行完整性、 一致性检查等。 (2)利用已有的数据库开发工具,针对数据字 典建立一个数据库文件,可将数据流、数据项、数 据存储和加工分别以矩阵表的形式来描述各个表项 的内容,如数据流的矩阵表为:
编号 名称 来源 去向 流量 组成
…
2013-8-3
…
…
…
…
…
31
5.5 表达处理逻辑的工具
用详细描述处理过程常用三种工具:图形、表 格和语言。本节主要介绍可作为详细设计中描述的 结构化语言、判定表、判定树。描述加工逻辑的结 构化语言、判定表及判定树。结构化语言、判定表 或判定树则详细描述数据流程图中不能被再分解的 每一个基本加工的处理逻辑。加工逻辑也是对加工 点的说明。
2013-8-3
12
5.3.2 数据流程图的画法
1. 画系统的输入/输出 画系统的输入/输出即先画顶层数据流程图, 顶层流图只包含一个加工,用以标识被开发的系统, 然后考虑该系统有哪些输入数据,这些输入数据从 哪里来;有哪些输出数据,输出到哪里去。这样就 定义了系统的输入/输出数据流。 图5-4为飞机机票预订系统的顶层图。
2013-8-3
3
5.2 系统流程图
1. 系统流程图的作用 2. 系统流程图的符号 项目小组开始工作时,制定的系统标准包括各 种表示符号。系统流程图的符号一般使用如表5-1 所示。
2013-8-3
4
表5-1 系统流程图的符号
符号 名称 处理 输入/输出 连接 说明 能改变数据值或位置的加工,例如,程序模块、处理机等都是处理 表示输入或输出,是一个广义的不指明具体设备的符号 指出转到图的另一部分或从图的另一部分转来,通常在同一页
2013-8-3 24
例: 机票=姓名+日期+航班号+始发地+目的 地+费用 姓名={字母}182 航班号=“CZ9938”··“CZ9948” 目的地=[上海│北京│广州]
2013-8-3
25
数据流条目主要内容及举例如下: 数据流名称:订单 别名:无 简述:旅客订票时填写的项目 来源:旅客 去向:加工1“检验订单” 数据流量:2000份/每周 组成:编号+订票日期+旅客编号+地址+ 电话+银行账号+预订日期+目的地+数量
28
4. 加工条目 加工名:能否提供机票 编号:1.2 激发条件:接收到合格订票单时 优先级:普通 输入:合格订单 输出:能提供机票、不能提供机票 加工逻辑:根据库存记录 IF订单项目的数量<该项目库存量的临界值> THEN提供机票处理 ELSE此订单缺票,登录,待有票后再处理 ENDIF
2013-8-3 29
5.4.2 数据字典的使用与管理
1. 手工建立 (1)按4类条目规范的格式印制卡片。 (2)在卡片上分别填写各类条目的内容。 (3)先按图号顺序排列,同一图号的所有条目按数据流、 数据项、数据存储和加工的顺序排列。 (4)同一图号中的同一类条目(如数据流卡片)可按名字 的字典顺序存放,加工一般按编号顺序存放。 (5)同一成分在父图和子图都出现时,则只在父图上定义。 (6)建立索引目录。
2013-8-3
7
旅行社
订票单
1
预订 机票 费 用
航班
2
准备 机票 机 票
航班目录
3
账单 旅客
记账
记账文件
2013-8-3
图5-2
8
5.3.1 数据流程图的基本成分
数据流程图只有四种基本符号元素:数据流 (Data Flow)、数据处理(Process)、数据 存储(Data Store)和外部实体(External Entity)。数据流程图有以下4种基本图形符号: →:箭头,表示数据流。 ○:圆或椭圆,表示加工。 =:双杠,表示数据存储。 □:方框,表示数据的源点或终点。 图5-3给出了三种常见的符号表示。
2013-8-3 1
5.1 系统分析的任务
系统分析的任务是认识和对问题的评价、建立模型 和对规格的分析。 系统分析员要研究系统规格说明(system specification)和软件项目计划(software project plan),为分析建立通信关系。 第二项主要工作是问题评价与解的综合与分析。 最后一项任务是需求分析文档 ,它是作为用户和 开发人员进行评审的基础。
2013-8-3
22
5.4.1 数据字典的各类条目
1.数据流条目 数据字典的定义式中出现的符号: (1)=:被定义为。 (2)+:与。例如:X=a+b表示x由a和b组 成。 (3)[…│…]:或。例如:X=[a│b]表示x由 a和b组成。 (4){…}:重复。例如:X={a}表示x由0个 或多个a组成。
第5章 系统分析
如果确认开发一个新的软件系统是必要而且可 能,那么就要进入系统分析阶段。此阶段是对线性 系统进一步详细调查,为系统开发提供所需资料, 并提交系统方案说明书。系统分析侧重于从业务全 过程的角度进行分析。其中,分析结果包括开发者 对于现有组织管理状况的了解、用户对信息系统功 能的需求、数据和业务流程等。最后系统分析员要 提出信息系统的各种设想和方案,并对这些设想和 方案进行分析、研究、比较、判断和选择,获得一 个最优的新系统的逻辑模型,并在用户理解计算机 系统的工作流程和处理方式的情况下,将它统计成 为系统分析报告,即系统说明书。
2013-8-3
20
订票单 旅行社
1 分类并 检验 有 效 订 票 单 3 记帐
有效订票单
2 订票 D1 航 班 目 录
取票单 旅客
D2 记 帐 文 件
D3 机 票 文 件
帐单
机票
4 机票准 备
旅行社
图5-8
2013-8-3 21
5.4 数据字典
数据字典(Data Dictionary,简称DD) 是关于数据的信息的集合,是对数据流程图中包含 的所有元素的定义的集合。它定义了数据流程图中 的数据各加工。它是数据流条目、数据存储条目、 数据项条目和基本加工条目的汇集。
2013-8-3
2
软件系统分析阶段主要有五方面的工作: (1)问题识别(problem recognition)。 (2)评价和综合(evaluation and synthesis)。 (3)建模(modeling)。 (4)规格说明(specification)。 (5)评审(review)。
2013-8-3 26
2. 数据项条目 数据流的组成成员是数据项,数据项条目是不可再分 解的数据单位。其定义格式及举例如下: 数据项名称:货物编号 别名:W—No,W—num,GW—No 简述:公司内部所有货物的编号 类型:字符串 长度:10 取值范围及含义:第1位:进口/国产 第2~4位:类别 第5~7位:规格 第8~10位:产品编号
换页连接
数据流 文档 联机存储 磁盘 显示 人工输入 人工操作 辅助操作 通信链路
2013-8-3
指出转到另一页图上或由另一页图转来
用来连接其他符号,指明数据流动方向 通常表示打印输出,也可表示用打印终端输入数据 表示任何种类的联机存储,包括磁盘、软盘和海量存储器件等 磁盘输入/输出,也可表示存储在磁盘上的文件或数据库 CRT终端或类似的显示部件,可用于输入或输出,也可既输入又输出 人工输入数据的脱机处理,例如,填写表格 人工完成的处理,例如,会计在工资支票上签名 使用设备进行的脱机操作 通过远程通信线路或链路传送数据
2013-8-3 9
图5-3
2013-8-3 10
1. 数据流 用箭头表示数据流,箭头方向表示数据流向, 数据流名称标在数据流线上面。 2. 加工 加工也称为数据处理,数据处理也称变换,是 对数据进行处理的单元。
2013-8-3
11
3. 数据存储 数据存储也是由若干数据元素组成的,它为数 据处理提供数据处理所需要的输入流或为数据处理 的输出数据流提供储存“仓库”。 4. 数据源点和终点 任何一个系统的边界定义后,就有系统内外之 分,一个系统总会与系统外部的实体有联系,这种 联系的重要形式就是数据。
2013-8-3
15
取票单 订机票 预订机票 1 取票通知单 机票文件
图5-5
2013-8-3 16
旅客取票 2
机票
5.3.3 画数据流程图的注意事项
(1)命名。 (2)在画数据流程图时要注意不是画控制流。 (3)每个加工至少有一个输入数据流和一个输出 数据流,反映出此加工数据的来源与加工的结果。 (4)加工点的编号。
2013-8-3
32
5.5.1 结构化语言
结构化语言是介于自然语言和形式化语言之间 的一种类自然语言。结构化语言语法结构包括内外 两层。内部语法则比较灵活,可以使用数据字典中 定义过的词汇、易于理解的一些名词、运算符和关 系符;外层语法具有较固定的格式,设定一组符号 如IF 、THEN、ELSE、DO、WHILE…、END、 WHILE、DO CASE…ENDCASE等,用于描述 顺序、选择和重复的控制结构。
b a 2.1
d
2.2 2.1.1
a1
2.1.2
b
a
c 2.3 a2 2.1.3 c
图a
2013-8-3
图5-6
图b
17
(5)系统分析中要区别物流和数据流。 (6)在数据流程图表示系统的数据流向时,一般 都要用到父图与子图来描述不同的层次。 图5-6中子图b与父图a相应加工2.1的输入、 输出数据流的数目、名称完全相同,即一个输入流 a,两个输出流b和c。再看图5-7,好像父图与子 图不平衡,因为父图加工4与子图输入/输出数据 数目不相等,但是借助于数据字典中数据流的描述 可知,父图的数据流“订货单”由“客户”、“账 号”及“数量”三部分数据组成,即子图通过父图 中加工和数据流同时分解而来,因此这两张图也是 平衡的。
2013-8-3 27
3. 数据存储条目 与数据流条目一样,对存储数据的定义用数据 存储条目,数据存储条目主要内容及举例如下: 数据存储名称:顾客记录 别名:无 简述:存放顾客的信息 组成:姓名+编号+航班+目的地+身份证号码 组织方式:索引文件,以姓名编号为关键字 查询要求:要求能立即查询
2013-8-3
2013-8-3 23
(5)m{…}n或{…}nm:重复。例如: X=2{a}或X={a}5,2表示x中最少出现2次a, 最多出现5次a。5,2为重复次数的上、下限。 (6)(…):可选。例如:X=(a)表示a可在x 中出现,也可不出现。 (7)“…”:基本数据元素。例如:X=“a”,表 示x是取值为字符a的数据元素。 (8)·:连接符。例如:X=1·9,表示x可取1到 · · 9中任意一个值。
5
3. 系统流程图的示例
输 入 变 更 记 录
库 存 管 理 模 块
库 存
订 货 信 息
报 告 生 成 模 块
ຫໍສະໝຸດ Baidu
订 货 报 告
图5-1
系统流程图
6
2013-8-3
5.3 数据流程图
数据流程图(Data Flow Diagram,DFD)是 结构化分析的最基本的工具。数据流程图描述系统 的分解,即描述系统由哪几部分组成,各部分之间 有什么联系等。 图5-2是一个飞机机票预订系统的数据流程图
2013-8-3
13
订票单 旅行社 取票通知单
图5-4
2013-8-3
机票 飞机机票预订系统 取票单 旅客
14
2. 画系统内部 描述系统内部即画下层数据流程图。一般方法 是将层号从0开始编号,采用自顶向下,由外向内 的原则。画0层数据流程图时,一般根据现行系统 工作分组情况,并按新系统应有的外部功能,分解 顶层流图的系统为若干子系统,决定每个子系统间 的数据接口和活动关系。 0层数据流程图如图5-5所示。
2013-8-3 18
父图
子图4
客户 提货单
订货单
4
提货单 帐号 账号
4.1
4.2
4.3
图5-7
2013-8-3
数量
19
(7)在分层处理的过程中,当某层数据流程图中的数据存 储不是父图中相应加工的外部接口,而只是本图中某些加 工之间的数据接口,则称这些数据存储为局部数据存储。 (8)数据流程图作为以后设计和与用户交流的基础。 这里给出了描述数据流程图的一套基本符号: :表示数据流,只能水平或垂直画。 :表示加工。 :表示数据存储。 :表示源点或终点。 图5-8是利用这些基本符号画出的等价于图5-2的数据流程图。