第五章 系统分析第一节 系统分析的任务系统分析的任务详细调查企业所有业务情况进行分析,弄清问题提出新系统的逻辑方案系统分析的任务
现行系统的详细调查( 包括工作程序、信息流以及工作的组织与控制方法 )
分析系统业务流程及数据流程
制 定新系统的逻辑模型( 数据流程图、数据字典、处理小说明,E-R图 )
解决系统,能做什么( What to do),
的问题。
一,现行系统的详细调查
(一) 系统调查概述
1 系统调查的原则
自顶向下
弄清存在的道理再分析有无改进的可能性
调查相关的局部系统
2 详细调查的范围及内容
系统界限和运行状态
组织机构和人员分工
业务流程全面细致地了解整个系统各方面的业务流程,以及商流、物流和信息流的流通状况以及各种输入、输出、处理、处理速度、处理量和处理过程的逻辑关系。
2 详细调查的范围及内容
各种计划、单据和报表调查中要收集各类计划、单据和报表,了解它们的来龙去脉及其各项内容的填写方法,时间要求,以便得到完整的信息流程。
决策方式和决策过程
资源情况
2 详细调查的范围及内容
约束条件
薄弱环节和用户要求用户要求,是指系统必须满足的所有性质和限制。它通常包括:功能要求、性能要求、时间要求、可靠性要求、安全保密要求,以及开发费用、
开发周期、可使用资源等各方面的要求和限制。
3 详细调查的方式
开调查座谈会
重点询问方式重点询问一般要提前准备好提问的问题重点询问常见问题例如:
你所在的工作岗位是什么? 岗位工作的性质是什么?
你的工作任务是什么? 每天工作怎样进行时间安排?
你的工作分为几班? 工作结果同前,后续工作如何联系?
你所接触的报表有几类? 数据有哪些? 满意程度如何?
你所在的工作岗位是否恰当? 工作量如何?
你的工作计划不能合理安排的原因是什么?
你的工作岗位存在的问题是什么? ( 组织不力? 规划不好?
信息不畅? )
你通常采取什么手段提高工作效率? 使用计算机了吗?
如果增加激励(奖金、鼓励、新技术等),工作效率是否会提高?
重点询问常见问题例如,(续 )
从有效组织经营的角度出发,你的权限是否适当 ( 大或小 )?
你认为影响本企业经营效率的关键问题是什么?
从全局的利益出发,你认为现有的管理体制是否合理?
你认为提高经营的潜力在哪里? 现存管理体制有哪些问题?
有效降低经营成本的途径有哪些? 信息系统的开发在本单位是否有必要?
你认为新的信息系统应该重点解决哪些问题?
你所了解的管理工作中,你认为决策的效益应从哪些方面去衡量?
重点询问常见问题例如,(续 )
你认为业务,财务,储运等部门是否已经使用了计算机? 有什么问题?
你用过计算机吗? 你认为企业现在使用计算机还有什么困难吗?
在你所了解的管理决策工作中,有哪些可以定量或定性用计算机处理吗?
本企业与外部哪些企业有业务联系? 业务往来用计算机处理吗?
原来开发的软件有哪些毛病? 为什么老用不好呢?
3 详细调查的方式
问卷调查方式针对所需调查的各项内容,绘制出相应各种形式的图表(问卷),通过这些图表对企业管理岗位上的工作人员进行全面的需求调查。
深入实际的调查方式
查阅资料某出版社系统调查表编号提出问题
1 您在哪个部门工作?
2 出版业务流程是什么?
3 您每日都处理那些文件、数据、报表?
4 工作中手工处理特别麻烦的事情是什么?
5 工作中手工处理什么问题解决不了?影响效率的问题有哪些?
6 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?
某出版社系统调查表编号提出问题
7 您的部门需要成本核算和统计的内容有哪些?
8 您的部门采用计算机管理工作情况如何?
9 如何改进业务流程使之更合理?
10 哪些问题是目前传统手工方法根本无法解决的?
11 出版社计算机管理信息系统需要解决什么问题?
(二) 组织机构与功能结构调查组织机构与功能结构调查了解系统的界限,了解组织关系和系统的构成,它反映的是系统的综合情况 。
包括三部分:
组织机构调查
业务过程与组织结构之间的联系分析
业务功能结构调查与分析
1、组织结构图企业管理处计划统计处供应处财务处销售处职工食堂第一生产车间服务公司厂办厂长办公室包装车间生产调度处设备管理处技术质量处第九生产车间厂医务室小车队企管科质检科计算中心综合计划处统计科销售管理科成品库业务联系部市场分析部甲班组丙班组乙班组丁班组党委办公室团委工会职教处人事处图书资料室厂 长工厂管理委员会厂长工作部 经营部 生产部 后勤部 宣教部
...,..
......,.....,.....
2、组织/业务关系图功能序号联系的 组程度 织业 务计划科质量科设计科工艺科机动科总工室研究所生产科供应科人事科总务科教育科销售科仓库
1 计划
* √ × × × ×
2 销售 √
* ×
3 供应 √ ×
* √
4 人事
* √ √
5 生产 √ × × ×
* * × √ √
6 设备更新
* √ √ √ ×
功能与业务
7
……
图中:,*,表示该项业务是对应组织的主要业务 (即主持工作的单位) ;
,×,表示该单位是参加协调该项业务的辅助单位;
,√,表示该单位是该项业务的相关单位 (或称有关单位);
空格:表示该单位与对应业务无关。
3 业务功能一览表销售系统管理销售计划管理成品库管理销售合同管理销售核算管理市场预测销售历史资料管理编制年度销售大纲编制销售计划合同有效性审查合同执行情况分析合同登记和变更销售利润核算销售统计分析出入库管理库存统计市场预测市场分析
(三) 业务流程 调查业务流程调查主要采用业务流程图 ( transaction flow
diagram,简称 TFD) 。
对每一业务弄清其输入,处理,存贮,输出,立即存取要求,收集相应资料 。
理顺各个岗位,各个业务流程之间的关系 。
除去不必要的环节,对重复的环节进行合并,对新的环节进行增补 。
确定哪些是今后计算机系统要处理的环节 。
业务流程图业务流程图:用一些规定的符号及连线来表示某个具体业务处理过程 。
业务流程图易于阅读和理解,是分析业务流程的重要步骤。
业务流程图
业务流程图的基本符号业务处理单位 业务处理功能描述表格/报表制作 数据/文件存档收集/处理数据 信息传递过程业务流程图
业务流程图绘制图表
B 2 系统分析 B 2,2
表 格 名 称 业 务 流 程 第 图 / 共 张图业务名称,制图,审核:
单位名称,核对,年 月 日图例说明业务处理单位业务处理描述表格制作传递存储收集资料
(本框内容为具体流程)
业务流程图
业务流程图绘制举例计划处 银行 技改处各部门各单位局领导上级领导投资总规划更新改造贷款规模开会讨论 报表 审批综合平衡
(讨论)
批准下达各单位各部门正式计划计划各单位上报表计划处各部门各单位技改处 银行各部门各单位 存档
(四) 数据调查数据调查在调查中要注意广泛地收集各项业务处理中各种输入,输出的单据,表格,报表,
各类台账等,而且最好是填有内容的资料和报表 。 细致调查了每一张单据,表格,
报表,台账等资料的来龙去脉,处理内容,
处理时间,处理的数据量,处理的周期之后,可汇总绘制数据调查分析表 。
调查方法:查阅档案,面谈调查,发调查表,
测定采样,实际动手等 。
(五)处理 调查处理调查处理调查,主要是对业务处理的逻辑关系和算法模型进行的调查 。
在处理调查中对每一个处理项需要调查的内容和项目大致如下:
( 1) 该处理有哪些输入? 处理的输出是什么?
( 输入输出的单据,报表的各项数据 )
( 2) 输入经处理后的输出是什么? 包括哪些数据项的内容?
( 3) 了解各项数据的生成途径 ( 算法模型 ) 。
处理调查在处理调查中对每一个处理项需要调查的内容和项目大致如下,( 续 )
( 4) 了解处理的逻辑关系 。 可用判定树或判定表来描述,以便今后的分析与设计 。
( 5) 根据信息采集与处理,构造系统的数学模型 。
( 6) 了解整个系统的处理程序,弄清先后和处理过程 。
( 7) 确定处理时间的要求,明确在相对时间段内需要处理的数据内容 。
( 8) 弄清处理信息的形态 ( 报表,报单,屏幕显示等 ),以及时段输出要求 。
二,现行系统分析现行系统分析
系统目标分析新系统建立之后要达到的运行性能指标,是系统可行性分析所确定的系统目标的进一步细化 。
系统功能分析
BPR;找出功能与功能之间,功能与外部环境之间的信息相互联系,为系统的数据分析提供依据 。
数据分析
功能 /数据分析
3 数据分析对系统调查所收集的数据以及统计和处理数据的过程进行分析和整理 。
调查数据的汇总分析:
输入数据类:主要指报来的报表,即今后下级子系统或网络要传递来的内容
要存储的数据类:主要指各种台账,账单和记录文件,它们是今后系统数据库要存储的主要内容
产生的数据类:主要指系统运行所产生的各类报表等,它们是今后系统输出和网络传递的主要内容
3 数据分析然后再对每一类数据进行如下三项的整理与分析:
汇总并检查数据有无遗漏
检查数据的匹配情况
建立统一的数据字典
3 数据分析数据汇总分析的步骤,
将系统调查中所收集到的数据资料,按业务过程进行分类编码,按处理过程的顺序排列在一起 。
按业务过程自顶向下地对数据项进行整理 。
将所有原始数据和最终输出数据分类整理出来 。
确定数据的字长和精度 。
借用 U/C矩阵对 数据的正确性,数据项特征等进一步进行分析 。
3 数据分析运用 U/ C矩阵进行数据正确性分析,数据项特征分析
数据正确性分析:
– 数据守恒原理,
数据必定有一个产生的源,而且必定有一个或多个用途。
– 在 U/ C矩阵中:
– 每一个列只能有一个 C;
– 每一个列至少有一个 U;
– 不能出现空行或空列。
3 数据分析
数据项特征分析:
– 数据的类型以及精度和字长:
– 合理取值范围,( 输入,校对和审核所必须 )
– 数据量:即单位时间内(如天、月、年)的业务量、
使用频率、存储和保留的时间周期等等。
(网上分布数据资源和确定设备存储容量的基础。)
– 所涉及业务:即 U/ C矩阵中每一行有 U或 C的列号。
(业务过程 )
数据类功能客户订货产品工艺流程材料表成本零件规格材料库存成本库存职工销售区域财务计划计划设备负荷物资供应任务单列号
Y
经营计划 U U U C 1
财务规划 U U C C 2
资产规模 U 3
产品预测 C U U 4
产品设计开发 U C U C C U 5
产品工艺 U C C U 6
库存控制 C C U U 7
调 度 U U U U C 8
生产能力计划 U C U 9
材料需求 U U U C 10
操作顺序 C U U U 11
销售管理 C U U U U 12
市场分析 U U U C 13
订货服务 U C U U U 14
发 运 U U U U 15
财务会计 U U U U U U 16
成本会计 U U U U 17
用人计划 C 18
业绩考评 U 19
行 号 X 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
U/C矩阵
4 功能 /数据分析整体地考虑新系统的功能子系统和数据资源的合理分布 。
它是通过 U/C矩阵 的建立和分析来实现的 。
4 功能 /数据分析
U/C矩阵的主要功能,
通过对 U/C矩阵的正确性检验,及时发现前段分析和调查工作的疏漏和错误 。
通过对 U/C矩阵的正确性检验来分析数据的正确性和完整性 。
通过对 U/C矩阵的求解过程,最终得到子系统的划分 。
通过子系统之间的联系 (,U”) 可以确定子系统之间的共享数据 。
4 功能 /数据分析工作步骤:
U/C矩阵的建立
U/C矩阵的正确性检验 ( 完备性检验,一致性检验,无冗余性检验 )
求解 U/C矩阵
系统逻辑功能划分和确定数据资源的分布
通过对 U/C矩阵的求解过程,最终得到子系统的划分数据类功能客户订货产品工艺流程材料表成本零件规格材料库存成本库存职工销售区域财务计划计划设备负荷物资供应任务单列号
Y
经营计划 U U U C 1
财务规划 U U C C 2
资产规模 U 3
产品预测 C U U 4
产品设计开发 U C U C C U 5
产品工艺 U C C U 6
库存控制 C C U U 7
调 度 U U U U C 8
生产能力计划 U C U 9
材料需求 U U U C 10
操作顺序 C U U U 11
销售管理 C U U U U 12
市场分析 U U U C 13
订货服务 U C U U U 14
发 运 U U U U 15
财务会计 U U U U U U 16
成本会计 U U U U 17
用人计划 C 18
业绩考评 U 19
行 号 X 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
U/ C 矩阵的建立
4 功能 /数据分析
2)正确性检验
( 1)完备性( completeness)检验:指对具体的数据项必须有一个产生者( C)和至少一个使用者( U),功能则必须有产生或使用( U或 C)发生。
( 2)一致性( uniformity)检验:指对具体的数据项必须有且仅有一个产生者( C)。
( 3)无冗余性( non-verbosity)检验:指 U/ C矩阵中不允许有空行和空列。
4 功能 /数据分析
3) U/ C 矩阵的求解,
( 1) U/ C 矩阵的求解过程就是对系统结构划分的优化过程 。 它是基于子系统划分应相互相对独立且内部凝聚性高这一原则之上的一种聚类 操作 。
( 2) U/ C 矩阵的求解过程常通过表上作业法来完成。其具体操作方法是:调整表中的行变量或列变量,使得,C”元素尽量地朝对角线靠近,
然后再以,C”元素为标准,划分子系统。
数据类功能计划财务计划产品零件规格材料表材料库存成品库存任务单设备负荷物资供应工艺流程客户销售区域订货成本职工经营计划 C U U U
财务规划 U C U U
资产规模 U
产品预测 U U U
产品设计开发 U C C C U
产品工艺 U U U U
库存控制 C C U U
调 度 U U C U U
生产能力计划 C U U
材料需求 U U U C
操作顺序 U U U C
销售管理 U U U C U U
市场分析 U U U C U
订货服务 U U U U C
发 运 U U U U U
财务会计 U U U U U U U
成本会计 U U U U C
用人计划 C
业绩考评 U
表 上 移 动 作 业 过 程
4 功能 /数据分析
4) 系统功能划分与数据资源分布,
( 1)系统逻辑功能的划分,在求解后的 U/
C 矩阵中划出一个个的方块,每一个小方块即为一个子系统。
划分时应注意:
–沿对角线一个接一个地画,既不能重叠,又不能漏掉任何一个数据和功能;
–小方块的划分是任意的,但必须将所有的
,C” 元素都包含在小方块内。
数 据 类功 能计划财务计划产品零件规格材料表材料库存成品库存工作令机器负荷材料供应工艺流程客户销售区域订货成本职工经营计划 C U U U
财务规划 U C U U
经营计划资产规模 U
产品预测 U U U
产品设计开发 U C C C U
技术准备产品工艺 U U U U
库存控制 C C U U
调 度 U U C U U
生产能力计划 C U U
材料需求 U U U C
生产制造操作顺序 U U U C
销售管理 U U U C U U
市场分析 U U U C U
订货服务 U U U U C
销 售发 运 U U U U U
财务会计 U U U U U U U 财 会成本会计 U U U U C
人员计划 C 人 事人员招聘/考评 U
子 系 统 划 分
4 功能 /数据分析
4) 系统功能划分与数据资源分布,(续 )
(2)数据资源分布:所有数据的使用关系都被小方块分隔成了两类:一类在小方块以内;一类在小方块以外。
在小方块以内所产生和使用的数据,则今后主要放在本系统的计算机设备上处理;而在小方块以外的,U”,则表示了各子系统之间的数据联系,这些数据资源今后应考虑放在网络服务器上供各子系统共享或通过网络来相互传递数据。
数 据 类功 能计划财务计划产品零件规格材料表材料库存成品库存工作令机器负荷材料供应工艺流程客户销售区域订货成本职工经营计划 U U
财务规划 U U
经营计划资产规模经营计划子系统产品预测 U U
产品设计开发 U U
技术准备产品工艺产品工艺子系统
U
库存控制调 度 U
生产能力计划材料需求 U U
生产制造操作顺序生产制造计划子系统销售管理 U U U
市场分析 U U
订货服务 U U
销 售发 运 U U U
销售子系统财务会计 U U U U U U U财 会成本会计 U U U U
1
人员计划人 事人员招聘/考评
2
注,1 ――财会子系统 2 ――人事档案子系统数 据 联 系三、新 系统的逻辑模型新 系统的逻辑模型
数据流程图( DFD)
描述数据在系统中的流动和变化
描述对数据流进行变换的功能
数据字典( DD)
处理小说明
对 DFD中加工功能的详细描述
实体 -联系图( E-R图)
功能数据
(一)数据流程图
Data Flow Diagram
1,数据流程图的四个基本成分数据存储或数据流或外部项或数据处理 (加工 )
1) 数据流
表示数据和数据流向,由一组固定成分的数据组成 如,选课单,由,学号,姓名,
课程编号,课程名,等成分组成
数据流可从加工流向加工,也可在加工与数据存储或外部项之间流动;两个加工之间可有多股数据流
数据流的命名
用名词,不要使用意义空洞的名词
尽量使用现实系统已有名字数据流(图示)
*
* +
+
A
B
C
A
A A
B
B B
C
C
C
储户 检查合理性帐户取款单 合理取款单
* 与
+ 或画数据流时需注意的问题
不要把控制流作为数据流如:下图中读下张卡属于控制流,不应画出 。
不要标出激发条件合法卡片卡片信息读入卡片 卡片校验读下张卡工资单工资率计算工资每月 1号职工档案
2) 加工
表示对数据进行的操作,如,处理选课单,,,产生发票,等
加工的编号,说明这个加工在层次分解中的位置 (分层 DFD)
加工的命名
顶层的加工名就是整个系统项目的名字
尽量 最好使用动宾词组,也可用主谓词组
不要使用空洞的动词加工的命名储户 处理 1
帐户数据 1 数据 2
储户 检查合理性帐户取款单 合理取款单无意义的名字:
较好的命名:
3) 数据存储
表示需要保存的数据流向,如,学生档案,,,课程设置,等
数据存储与加工的方向,读出,,,写入,
分层数据流程图中,数据存储一般局限在某一层或某几层
命名方法与数据流相似修改库存 商品库存检索商品信息商品目录
4) 外部项
位于系统之外的信息提供者或使用者,称为外部项 。 即存在于系统之外的人员或组织 。 如,学务科,等
说明数据输入的源点 (数据源 )或数据输出的终点 (数据终点 )
起到更好的理解作用,但不是系统中的事物数据源数据终点没有输出!加工没有输入! 加工每个加工至少有一个输入数据流和一个输出数据流几种错误 (1)
数据源 数据终点数据源 数据存储数据终点数据存储数据存储数据存储数据流必须要么从某个加工流出、要么流入某个加工,而不能直接从外部项流向数据存储等等。
图示的几种流动都是不合理的几种错误 (2)
2 怎样画 DFD
了解 DFD的特性
画分层 DFD
1) DFD的特性
与程序流程图不同,DFD不表示程序的控制结构,只描述 数据 的流动
DFD分成 多层 (子图,父图概念 )表示,
从而逐步展开数据流和功能的细节 。
S
21
3
2.22.1
2.3
3.1 3.2
顶层
0层
1层
(基本系统模型 )
(系统的子功能 )
DFD的分层表示
2) 画分层 DFD
(1)先画出顶层 DFD。
(2)自顶向下画出各层 DFD
分解原则:
分解后的软件成分有相对独立功能一次分解不要加入细节过多由外向里画 DFD 报名单 合格报名单检验报名单
2) 画分层 DFD
(3)先考虑稳定状态,忽略系统的工作条件,
即怎么开始、怎么结束的。
(4)忽略琐碎的枝节,如出错处理等。
(5)随时准备重画报名单 合格报名单检验报名单错误的报名单
3) 画分层 DFD的指导原则
( 1) 父图 -子图平衡
( 2) 局部数据存储
( 3) 编号
( 4) 分解的程度父图 -子图平衡父图 -子图平衡:
模型分解时必须保持父图的输入输出数据流和子图输入输出数据流相同。
父图 -子图平衡
A 1 4
2
3
B F
E G
C D
父图 -子图平衡缺少 C
3.1
E
D
3.3
3.2
对加工 3细化的子图:
加工 3
购书单教材购销系统教材购销系统的顶层 DFD
学生 领书单缺书单进书通知书库保管员购书单 缺书 单销售教材采购教材
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单
1.2
第三层 DFD (1层 ) 销售子系统 (1.0)
无效书单教材存量表F1
开发票
F2 缺书登记表学生各班学生用书表F3 售书登记表F4
1.1
审查有效性
1.3
登记并开领书单学生
1.5
补售教材
1.4
登记缺书购书单发票领书单有效购书单教材入库信息按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单教材入库信息缺书单父图 -子图平衡补充说明领书单1.3发票 1.3.3
1.3.2教材
1.3.1学生领书单父图 子图发票=学生+教材借助 数据字典 判断:
局部数据存储的使用出现在加工之间的界面时,才画出来 。 XX
E2,1 2,2
2,3
F
D
C1 3
2
F
A
D
E
B
父图 子图购书单 缺书 单销售教材采购教材
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材入库信息教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单加工编号加工的编号原则:
子图图号为分解的父图中的加工号,
同级子图在最后数字以序号区别。
S
21
3
2.22.1
2.3
3.1 3.2
顶层
(不编号)
0层
1层分解的程度分解的深度与层次:
按功能情况定,一般设深度为 3-5
如超过 5个加工最好分解画,否则容易出错实例,图书馆管理系统
购入新书
读者借书
读者还书
图书注销
查询统计
(一) 系统功能说明购入新书
新书编卡片 (包括:类目录号、
流水号 (唯一 )、书名、作者、内容摘要、价格、购书日期等信息 )
写入图书目录文件读者借书
填借书单 (包括:读者号、欲借图书分类目录号 )
检查读者号有效性,无效,拒借
读者号有效,检查借书是否超数? 已达 5
本,拒绝借
未超,可借,登记图书分类目录号、读者号、借阅日期等,写回借书文件中读者还书根据图书流水号,从借书文件中读出与该书相关的借阅记录,查明借书日期,还书日期,求借书时间,再重写回借书文件中,超过期限罚款。
图书注销
从借阅图书文件中删除相关记录
丢失图书时从图书文件中删除相关记录并罚款查询统计
查询某读者情况
查询某图书借阅情况
统计图书借阅情况
(二) 数据流程图顶层数据流图图书管理人员图书管理系统读者图书管理要求查询要求查询结果 罚款单处理查询
2处理要求
1
查询要求图书管理要求罚款单统计表图书情况读 者 情况
0层数据流图目录文件借书文件要求类型处 理图书管理要求无效输入
1.1
新书入库
1.2
还入库单罚款单一层数据流图 (a)
1.5
注销图书
1.3
还书
1.4
目录文件借书单书 单注销单借书 借书文件罚款单查询类别处理查询要求 2.1
读者查询
2.2
统查询的读者情况统计表一层数据流图 (b)
图书查询借书文件要查询的图书情况 2.3
图书统计
2.4
计求读者文件目录文件读者情况图书情况二层数据流图 (1.3)
检查借书单借书单
1.3.1 审定借书限额
1.3.2
无效借书单借书文件读者文件有效借书单登记借书信息
1.3.3
合格借书单超额借书单二层数据流图 (1.4)
审定还书期限还书单 1.4.1 修改借书信息
1.4.2
借书文件未超期还书单计算超期罚款
1.4.3
还书单超期还书单罚款单二层数据流图 (1.5)
分类注销单
1.5.1 修改目录
1.5.2
借书文件目录文件图书处理注销单计算罚款
1.5.3
图书丢失注销单罚款单实例 2,考务处理系统
(1)对考生送来的报名单进行检查 ;
(2)对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站 ;
(3)对阅卷站送来的成绩单进行检查,并根据考试中心制定的合格标准审定合格者 ;
(4)制作考生通知单 (含成绩及合格 /不合格标志 )送给考生 ;
(5)按地区进行成绩分类统计和试题难度分析,产生统计分析表。
顶层数据流图考生 考务处理系统考试中心阅卷站报名单准考证考生通知单 成绩清单合格标准考生名单统计分析表处理报名单报名单准考证
1
统计成绩
2
考生通知单成
0层 数据流 图考生名册绩清单合格标准考生名单统计分析表一层数据流图 (a)
检查报名单报名单准考证1.1 编准考证号
1.2
不合格报名单考生名册考生名单合格报名单登记考生
1.3
正式报名单汇总名单
1.4
检查成绩清单
2.1 审定合格者
2.2
考生名册正确成绩清单制作通知单
2.3分析统计成绩
2.4分析试题难度
2.5
试题得分清单考生通知单难度分析表合格标准分类统计表成绩清单错误成绩清单 经审定的成绩清单一层数据流图 (b)
3 DFD的改进
检查正确性
提高易理解性
重新分解
1) 检查正确性分析员可以从以下几个角度来检查
DFD的正确性:
数据守恒
数据存储的使用
父图和子图的平衡数据守恒数据不守恒的情况有两种:
一 是某个加工输出的数据并无相应的数据来源,
可能是某些数据流被遗漏了 。
运动员名单 =队名 + 姓名 + 项目项目参加者 =项目 + 姓名 + 运动员号
,运动员号,并无数据来源决定比赛名单运动员名单项目参加者项目数据守恒二 是,一个加工的输入并没有用到,这不一定是错误 。 可与用户进一步讨论,是否属于多余的数据流 。
订货单 =单位名 + 货名 + 货号 + 数量价目 =货名 + 单价发票 =单位名 + 货名 + 数量 + 单价 + 总计经商量,,货号,确属多余,故删去 。
开发票价目发票订货单数据存储的使用判断:是否存在,只读不写,或,只写不读,
的数据存储 ( 注意在 所有的 DFD中检查 )
1
4
2
3
父图,子图:
4.1
4.3
4.2
XX
YY
2)提高易理解 性
简化加工之间的联系
注意分解的均匀
适当地命名简化加工之间的联系应尽量减少加工之间输入输出数据流的数目 。 因为加工之间的数据流越少,各个加工的功能就越相对独立 。
例,G
1
2
3
5
4A
B
H
J
I
C
D
K
L
N
M
P
E
F
分解的均匀即图中各个部分不均匀 。
一张图中,如果某些加工已是基本加工 ( 细节 ),而另一些加工还可进一步分解成三,四层,则应考虑重新分解 。
适当地命名
名字的意义要明确,容易理解
如果难以为 DFD图中的成分 ( 数据流,
加工 等 ) 命名,往往说明分解不当,
可考虑重新分解 。
3)重新分解在画第 N层时意识到在第 N-1层或第
N-2层所犯的错误,此时就需要对第
N-1层,第 N-2层作重新分解 。
重新分解的做法
(1)把需要重新分解的某张图的所有子图连接成一张 。
重新分解的做法
1
2
3
5
4A
B
H
J
I
C
D
K
L
N
M
P
E
F
父图,
重新分解的做法子图,
2.2 2.3
2.1
2.4 2.5
I
J
K
C M
L
E
H
N
重新分解的做法重新连成一张图,
2.2 2.3
2.1
2.4 2.5
B J
K
C M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2
重新分解的做法
(2) 把图分成几部分,使各部分之间的联系最少 。
重新分解的做法把图中的加工重新划分:
2.2 2.3
2.1
2.4 2.5
B J
K
C
M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2’
2”
重新分解的做法
(3)重新建立父图,即把第 2)步所得的每一部分画成一个圆,而各部分之间的联系就是加工之间的界面 。
重新分解的做法
(4)重新建立各张子图,这只需把第 2)步所得的图按各部分的边界剪开即可 。
重新分解的做法重新建立父图,
B J
K
C
M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2’
2”
重新分解的做法
(5) 为所有的加工重新命名和编号 。
重新分解的做法重新建立父图并编号,
B J
K
C
M
L
E
H
N1
3
4
5
I
A
P
G
F
D
2”
2’
(二)数据字典
Data Dictionary
数据字典 (DD)
对 DFD中的每一成分给以详细定义
DD的类型
DD的定义与实现方法
1 详细定义 DFD成分定义式中使用的符号:
操作符 含义描述
= 定义为
+ 与 (顺序结构 )
{,..} 重复 (循环结构 )
〔,.|,.〕 或 (选择结构 )
(,.,) 任选
m..n 界域
*,..,* 注释符
1 详细定义 DFD成分限制重复次数,
3 5 或 53{ }表示允许重复 3-5次{ }
3
3 { }表示恰好重复 3 次
{ }
{ }
1 表示至少出现 1 次表示允许重复 0至任意次
3{ } 3
2 DD的类型
数据流
数据存储
数据项
加工数据流条目给出 DFD中某个数据流的定义,通常包括:
数据流标识
数据流来源
数据流去向
数据流的数据组成
流动属性描述:频率、数据量购书单 发票 领书 单审查并开发票开领书单无效书单学生1 2
各班学生用 书 表举例:
学生教材存量表数据流条目举例数据流名,发票别名,购书发票组成,(学号 )+姓名+{书号+单价+数量+总价}+书费合计数据量,100次 /天高峰值:开学期间 400次 /天数据存储条目给出 DFD中某个数据存储的定义,通常包括:
数据存储名字
数据存储描述
数据存储组成
数据存储方式
关键码
存取频率和数据量
安全性要求(用户存取权限)
购书单 发票 领书 单审查并开发票开领书单无效书单学生1 2
各班学生用 书 表举例:
学生教材存量表数据存储条目举例文件名,各班学生用书表别名:无组成,{系编号+专业和班编号+年级+
{书号 }}
组织,按系、专业和班编号从小到大排列存取要求,关键字是专业和班编号数据项条目(数据元素)
不可再分解的数据单位,包括:
名称
描述
数据类型
长度 (精度 )
取值范围及缺省值
计量单位
相关数据元素及数据结构数据项条目举例数据项名,系编号别名,
取值,2{数字 }2
注释,
* 例如,01,12 *
数据项条目举例数据项名,专业和班编号别名,
取值,3{数字 }3
注释,
* 例如,305 *
数据项条目举例数据项名,年级别名,
取值及含义,〔 F|M|J|S 〕
F- freshmen,一年级
M- sophomore,二年级
J- junior,三年级
S- senior,四年级注释,F,M,J,S可分别用 1,2,3,4代替数据项条目举例数据项名,书号别名,
取值,{字母 }+ {数字 }
注释,
* 例如,OS4,ENG1 *
加工条目加工类条目即数据处理描述,也称为 小说明 。 描述实现加工的策略而不是实现加工的细节。
小说明可认为是 DD的组成部分。也可在 DD中定义只说明每个加工的组成
(每个处理分解成多少小处理 ),而在小说明中详细描述它的处理逻辑。
加工条目描述的内容
处理逻辑 (简述 )
描述基本加工如何把输入数据流变化为输出数据流的处理步骤,不涉及具体处理方法。
执行条件
输入
输出
优先级
执行频率
出错处理对策购书单 缺书 单销售 采购
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材入库信息教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单加工条目举例在 DD中定义说明每个 加工的组成,
加工名,采购 (CG111MD)
编号,2.0
加工激活条件,得到图书采购员采购操作命令加工逻辑,2.0采购 = {2.1 按书号汇总缺书
+ 2.2 按出版社统计缺书
+ 2.3 修改教材库存和待购量 }
执行频率,随时加工举例加工名,月票额统计 (MHCW713MD)
编号,7.1.3
激活条件,收到每日售票额信息处理逻辑,1 统计月保险金总和月保险金信息 =每日日保险金信息之和
2 统计月合计月合计信息 =每日日合计信息之和执行频率,1次 /月某订货系统功能说明如下:
假设某一企业采购部门每天需要一张订货报表
,报表按材料编号排序,报表中列出所有需要再次订货的材料 。 对于每种需要再次订货的材料应列出下列数据:材料编号,名称,订货数量,目前价格
( 或参考价格 ),主要供应单位,第二供应单位等
。 材料入库或出库称为事务,通过放在仓库的 CRT
终端把事务报告给订货系统 。 当某种材料的库存数量少于库存量临界值时就应该再次订货 。
应用举例 (1)
如何画出上述订货系统的数据流程图呢?
考虑数据的源点和终点 。 从上面对系统的描述可以知道,仓库管理员通过终端把事务报告给订货系统,系统经过汇总处理,每天向采购部提供一张订货报表 。 所以,采购员是数据的终点,而仓库管理员是数据的源点 。
应用举例 (1)
仓管员
0.0
订货系统采购员事务 订货报表图 (a) 订货系统的顶层数据流程图考虑处理 。 问题给出,采购部需要报表,,因此必须有一个用于产生报表的处理 。 输入事务的结果是改变材料库存量,然而任何改变数据的操作都是处理,因此对事务进行的加工是另一个处理 。
考虑数据流 。 系统把订货报表送给采购部,因此订货报表是一个数据流;仓库需要将每笔事务输入到系统中,显然事务是另一个数据流 。
应用举例 (1)
考虑数据存储 。 从问题的阐述中,可以看出产生报表和处理事务这两个处理在时间上明显不匹配,
每当有一个事务发生时就必须立即处理事务,而每天只产生一次订货报表 。 因此,用来产生订货报表的数据必须存放一段时间,也就是应该有一个数据存储 。 另外,,当某种材料的库存数量少于库存量临界值时就应该再次订货,,这个事实意味着必须在某个地方有材料库存量和库存量临界值这样的数据 。 因此,需要有一个保存清单的数据存储 。
应用举例 (1)
一旦把数据流程图中的四种成份都分离出来之后,
就可着手绘制系统的数据流程图了 。 数据流程图的绘制也是采用自顶向下的方法,由粗到细,逐层细化,最后形成一套完整的拟建系统的数据流程图 。
应用举例 (1)
仓管员
1.0
处理事务采购员事务 订货报表图 (b) 订货系统的一层数据流程图
2.0
产生报表
D2 订货信息
D1 库存信息数据流图
D2
1.1
事务输入和检验仓管员
1.2
更新库存
1.3
处理订货
D1 库存信息
F3 库存
F1 事务 事务 F2
F4 缺货信息
F5 订货信息订货信息图 (c) 订货系统的 2层数据流程图 (子图 1)
D2
采购员2.0产生报表
F6 订货汇总信息
F7
订货报表订货信息图 (d) 订货系统的 1层数据流程图(图 b的局部,
各数据成分加上编号)
数据流图
( 1)数据存储条目编号 名称 流入数据流流出数据流组成 组织形式
D1 库存清单文件
F3 F3 材料编号、材料名称、单价、数量 按材料类别排序
D2 定货信息文件
F5 F6 时间、材料编号、材料名称、定货数量、
目前价格、主要供应者、次要供应者按时间和材料类别排序
( 2)数据流条目编号 名称 来源 去处 组成 流量 说明
F1 材料出入库单仓管员 事务输入和检验日期、材料编号、材料名称、事务类型、单价、数量
60份每天事务类型
1— 进货
2— 出库
F2 正确的事务单事务输入和检验更新库存 同上 同上 同上
F3 库存 更新库存 库存清单文件 材料编号、材料名称、单价、数量处理与库存双向 流动
F4 缺货信息 更新库存 处理定货 日期、材料编号、材料名称、单价、缺货量低于库存临界的库存数量 (需订货量 )
F5 定货信息 处理定货 定货信息文件 同定货信息文件
F6 同上 定货信息文件产生报表 同上
F7 定货报表 产生报表 采购部 同上 每天
1份
( 3)数据项条目编号 名称 数据类型 长度 小数位 取值范围 说明
01 日期 D 08
02 材料编号 C 04 0000-
9999
03 材料名称 C 20
04 单价 N 08 03
05 库存数量 N 08 02
06 定货数量 N 08 02
07 目前价格 N 08 03
08 主要供应者 C 20
09 次要供应者 C 20
10 事务类型 C 1
( 4)加工条目编号 名称 输入 处理逻辑 输出
P1.1 事务输入与检验出入库原始单据提供出入库的录入界面并检验正确性正确的出入库信息
P1.2 更新库存 进出库信息库存库存量 =现库存量 +入库量 -出库量。若库存量 <
库存临界量,则需订货库存,
缺货信息
P1.3 处理定货 缺货信息 根据缺货量写入定货信息文件定货信息
P2.0 产生报表 定货信息 根据处理订货的请求,生成订货报表,并打印定货报表
( 5)外部项条目编号 名称 简述 输入数据流 输出数据流
01 仓管员 对材料的出入库进行登记原始出库单或入库单据
02 采购部 根据定货报表进行定货定货报表应用举例 (2)
某高校学分制学生选课系统要求如下:
学生根据学期开课清单填写选课单,学生选课系统对每个学生的选课单进行处理:根据教学计划检查该生是否存在尚未取得学分的必修课程,如果存在则要求重修;计算该学生课程上课时间冲突率:
如果不发生冲突或者冲突率小于 30%则可以选修,
否则根据重修 — 必修 — 任选的优先级删除已选课程。
最后产生每个学生的个人课表,以及每门课程的成绩记录单(列出该门课程的学生名单)。
1 数据流图选课单学生 教师成绩记录单学生课表图 1 学生选课系统的顶层 DFD
学生选课系统选课单学生学生教师开课清单 课程注册费用成绩记录单学生课表图 2 学生选课系统 1-DFD
1.学生选课
2.课程注册
3.表格打印开课清单
1.4计算课程注册费
1.1 合法校验
1.3计算课程冲突率
1.2 查已修课程成绩选课单 学生成绩库学生学号合法的选课记录费用重修课程已选课程图 3 学生选课系统加工 1的下层分解( 2-DFD1)
1 数据流图(续)
学生教师课程注册 成绩记录单学生课表图 4 学生选课系统加工 3的下层分解( 2-DFD2)
3.1打印学生课表
3.2 打印课程成绩单
1 数据流图(续)
( 1)数据流条目数据流,选课单选课单 =学生学号 +{课程编码 +备注 }1
数据流,学生课程表学生课程表 =学生学号 +{课程时间表 }1
数据流,成绩记录单成绩记录单 =课程编码 +课程名 +[任课教师 |指导教师 ]+{学号 + 成绩 (+备注 )}
注释:备注域用于标识课程类别(必修 /限选 /任选
/重修)
2 数据字典数据流,费用费用 =学生学号 +{课程编码 +课程费用 }1 +合计金额数据流,学生学号 (别名:学号)
学生学号:基本数据项,由 8位数字组成。
其中,1~6位为班级号,7~8位为班内序号,
从 01开始。
数据流,合法选课记录(别名:选课记录,重修课程,已选课程)
合法选课记录 =学号 +{课程编码 +备注 }1
2 数据字典
( 2)文件条目(数据存储条目)
文件:开课清单课程记录 =课程编码 +课程名 +注册金额 +[任课教师 |指导教师 ](+职称 )+起始周 +终止周 +{上课时间 }
文件组织:以课程编码为记录关键字升序排列
2 数据字典文件:课程注册注册记录 =学生学号 +课程编码 +课程名 +注册金额 +[任课教师 |指导教师 ]( +职称) +起始周 +终止周 +{上课时间 }
文件组织:以课程编码为记录关键字升序排列文件:学生成绩库学生成绩 =学生学号 +课程编码 +成绩 +备注文件组织,以学号为记录关键字升序排列注释:备注域用于标识课程类别(必修 /限选 /任选
/重修)
2 数据字典
( 3)数据项条目课程编码,XXXXXXX( 7位数字)
第 1位:系编号 第 2~3位:教研室编号第 4~6位:课程序号 第 7位:课堂号课程时间表 =课程编码 +起始周 +终止周 +{星期 +节 +教室号 }
起始 --终止周,1~22 星期,1~6 节,1~12
教室号,XXXX
课程名:长度( <=30的字符串 _
任课教师:姓名长度 <=8的字符串成绩,nnn( 3位整数)
( 4)加工说明(略)
2 数据字典
3 DD的定义和实现方法
DD定义方法:
找出 DFD中所有数据成分
(数据流,数据存储,数据项,加工 )
对数据项分类
作各成分组成的定义
规定特性和限制
排序
3 DD的定义和实现方法
DD排序方法:
按 DFD层次排序
先层次排序 ;后内部排序 (字母,汉字,..顺序 )
3 DD的定义和实现方法
DD实现方法:
人工方法(利用编号的卡片 )
自动方法 (利用字典管理程序 )
DD 应具特点,
通过名字可方便查阅数据定义
无冗余
易更新修改
(三)加工小说明描述加工的工具判定树判定表结构化语言
1 判定树 /决策树 (Decision
Tree)
条件 1 条件 2 结果计 7-9月 订票量 >20,15%
算 12月 订票量 ≤ 20,5%
折扣 1-6月 订票量 >20,30%
量 10,11月 订票量 ≤ 20,5%
例:优惠折扣某商业公司的销售策略规定:不同的购货量、
不同的顾客可以享受不同的优惠。具体办法是:
年购货额在 5万元以上且最近三个月无欠款的顾客可享受 15%的折扣;
近三个月有欠款,但是本公司十年以上的老顾客,
可享受 10%的折扣;
若不是老顾客,只有 5%的折扣;
年购货额在 5万元以下无折扣。
判定表 ST语言例,优惠 折扣交易额大于 5000元以 最近三个月无欠款:折扣 15%
与本公交易 10年以上:折扣 10%
最近三个月有欠款与本公交易 10年以下:折扣 5%
交易额大于 5000元以下:不打折
2 判定表 (决策表 )
描述多条件、多目标动作的形式化工具判定表结构,
条件类别 条件组合操作 操作执行判定表举例 (计算机票折扣率 )
1- 6,10,11月旅游时间订 票 量折 扣 量
7- 9,12月
≤20 ≤20> 20 > 20
15%5% 20% 30%
条件类别 四种条件组合操作 条件组合下操作的执行处理名,计算折扣率 (MHGP534MD)
编号,5.3.4
激活条件,收到预订票信息处理逻辑,计算折扣率执行频率,实时旅游时间订 票 量折 扣 量
7- 9,12月 1- 6,10,11月
≤20 ≤20> 20 > 20
15%5% 20% 30%
加工 (处理 )条目 — 计算机票折扣率举例:优惠 折扣
1,识别判断条件,并列出所有的条件及条件值 ;
C1(交易额) >=5000元,<5000元
C2(信誉好)近三个月无欠款、有欠款
C3(老顾客)交易 10年以上,10 年以下
2,建立条件组合数三种条件,每种各有二种情况,共有 8种组合
3,识别每个独立步骤
A1:折扣 15% A2:折扣 10%
A3:折扣 5% A4:无折扣问题描述
4.设计判断表格条件组合条件与行动
1 2 3 4 5 6 7 8
C1交易额 >=5000
元
Y Y Y Y N N N N
C2近三个月无欠款 Y Y N N Y Y N N
C3交易 10年以上 Y N Y N Y N Y N
A1折扣 15% √ √
A2折扣 10% √
A3折扣 5% √
A4无折扣 √ √ √ √
举例:优惠 折扣
5,合并与简化条件组合条件与行动
1
/
2
3 4 5/
6
7/
8
C1交易额 >=5000
元
Y Y Y N N
C2近三个月无欠款 Y N N Y N
C3交易 10年以上 --
-
Y N --- ---
A1折扣 15% √
A2折扣 10% √
举例:优惠 折扣
5,合并与简化条件组合条件与行动
1 2 3 4
C1:交易额 >=5000元 Y Y Y N
C2:近三个月无欠款 Y N N -----
C3:交易 10年以上 ----- Y N -----
A1:折扣 15% √
A2:折扣 10% √
A3:折扣 5% √
A4:无折扣 √
举例:优惠 折扣
3 结构化语言介于自然语言和形式语言之间的语言,
由 ( 1)顺序结构(祈使语句)
( 2)判断结构 (判断语句 )
( 3)循环结构 (循环语句 ) 复合而成。
可使用 IF— ENDIF,DO CASE— ENDCASE、
DO WHILE— ENDDO等关键字结构化语言的特点无确定语法;
可分层、嵌套;
各层有内、外层之分。
力求精确,避免二义性
尽可能简单
动词要有确切含义,与 DFD中加工命名相配合
名词要用 DD中定义的名词
不用副词、形容词结构化语言的原则处理名,核实订票处理处理逻辑,1读订票旅客信息文件
2搜索此文件中是否有与输入信息中姓名及身份证号相符的项
IF 有
THEN 判断余项是否与文件中信息相符
IF 是 THEN 输出已订票信息
ELSE 输出未订票信息
ELSE 输出未订票信息结构化语言举例处理名,记录成绩处理逻辑,1课程成绩,=单项成绩
2对单项成绩中每一学号,做:
存入学生成绩:
学生成绩,学号,=单项成绩,学号学生成绩,课程,=单项成绩,课号学生成绩,成绩,=单项成绩,成绩结构化语言举例记录成绩课程成绩学生成绩单项成绩例:优惠折扣
If 交易额 >=2500元 then
if 三个月无欠款 then 折扣 15%
else if 老顾客 then 折扣 10%
else 折扣 5%
else 无折扣问题描述
4 三种表达工具的比较
(1)从工具的难易程度讲,决策树最容易,而决策表难度较高。
(2)对于逻辑验证,决策表最好,而决策树较差。
(3)对于直观表达逻辑结构,决策树最好,而决策表最差。
(4)作为程序设计说明,结构化语言最好,决策树最差。
(5)对于机器可读性,结构化语言最好,决策树最差。
(6)对于可修改性,结构化语言最好,而决策表的可修改性是最低。
综上所述,可以得出的结论,
对于一个不太复杂的判断逻辑,即条件只有
2---3个,条件组合及行动在 10---15个之间,
使用决策树最好。
对于一个复杂的判断逻辑 (条件多,组合多,
相应的动作也多 ),使用决策表最好。
对于一个处理逻辑既包含了一般的顺序执行动作,又包含了判断或循环逻辑,则使用结构化语言最好。
4 三种表达工具的比较练习交易所规定给经纪人的手续费计算方法如下:
总手续 =基本手续费 +交易中的每股价格和股数有关的附加手续费如交易额少于 1000元,则基本手续费为交易额的 8.4%;
如交易额在 1000-10000元之间,则基本手续费为交易额的
5%+34;
如交易额大于 10000元,则基本手续费为交易额的 4%+134;
当每股售价低于 14元时,附加手续费为基本手续费的 5%(买入卖出数是 100的倍数),否则附加手续费为基本手续费的 9%
(不是 100的倍数);
当每股售价在 14-25元之间,附加手续费为基本手续费的 2%
(买入卖出数是 100的倍数),否则附加手续费为基本手续费的 6%(不是 100的倍数);
当每股售价超过 25元时,交易股数零散,则附加手续费为基本手续费的 6%。
要求用判断树、判断表和结构化语言表示手续费的计算方法
(四)实体 -联系图
Entity-Relation
第二节 系统分析的步骤结构化分析步骤
通过调查分析,理解当前的现实环境,获得当前系统的,具体模型,
(业务、数据)
从当前的,具体模型,抽象出,逻辑模型,,并给予改进与补充现行系统目标系统描述现实系统是如何在物理上实现的描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。
描述新系统是如何实施的(包括技术
) --系统设计阶段逻辑模型 物理模型
(本质模型、概念模型 ) (实施模型、技术模型 )
描述重要的业务功能
,无论系统是如何实施的。
结构化分析步骤系统分析阶段学生
(1) 通过对现实环境的调查,获当前系统的具体模型 (物理模型 /业务流程图 )
学生购书申请购书单发票领书单 书
107
刘教务科
206
王会计室
206
李出纳员
303
赵教材学生购买教材的具体模型结构化分析步骤
(2) 去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型 —即把完成的 功能 (本质 )
从实现功能的 方式 (现状 /形式 )分离出来学生购买教材的逻辑模型学生学生购书申请购书单发票领书单 书审查有效性 开发票开领书单 发书结构化分析步骤
(3) 分析当前系统与目标系统的差别,建立目标系统 的 逻辑模型,这是分析阶段实质性的一步计算机售书系统的逻辑模型学生学生购书单 发票 领书单审查并开发票开领书单无效书单结构化分析步骤第三步 可以这样进行:
1)决定,变化的范围,,即决定目标系统与当前系统逻辑上不同的部分方法:
沿着底层逐个检查当前系统 DFD中的每个基本加工,如果其功能与目标系统有所不同,
则属于,变化,的部分因此当前的 DFD就分成两部分:一是与目标系统相同的部分;一是与目标系统不同的
,变化,部分结构化分析 (第三步 )
结构化分析 (第三步 )
1
8
5
2
3
4
7
6
9
10
11
12
1413
16
17
18
19
15
20
21
22
24
25
23
27
26
28
29
变化的部分A
B
C
D
E
G
F
J
K
H
I
2)将,变化的部分,看成一个加工。这个加工的外部环境及其输入输出数据流是已确定的,而其内部结构是尚未确定的。
3) 运用前述的分解和构造技术,由外向里对,变化的部分,进行分析 。
自顶向下,画出各层数据流图
为每个成分定义数据字典条目
定义加工小说明结构化分析 (第三步 )
结构化分析 (第三步 )
1
8
5
2
3
4
7
6
9
10
11
12
1413
15
24
25
27
26
28
29
A
B
C
D E
GF
J
K
H I
变化的部分
(4) 对目标系统进行完善和补充,并写出完整的需求说明。
补充说明系统的人机界面
补充说明尚未考虑的细节,包括出错处理、系统启动和结束条件、性能方面的需求等
(5) 对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止。
结构化分析步骤第三节 系统分析的报告系统分析报告新系统逻辑方案的建立是:
对业务流程分析整理的结果
对数据和数据流分析整理的结果
子系统划分的结果
在具体业务处理中应建立的 管理模型 和管理方法 (见书 P323-326页)
对新系统相配套的管理制度和运行体制建立的建议
最后写出系统分析报告系统分析报告格式一:引言部分 ( 名称,开发目标,主要功能,开发背景等 )
二:现行系统概况
A,现行系统现状详细调查说明:
包括组织机构图,系统目标,功能一览表,业务流程图,
业务流量以及存在的薄弱环节,数据,主要算法等 。
B,现行系统分析:用户需求及主要存在的问题等 。
三:新系统逻辑方案
1:新系统目标 ( 要求具体 ) ;
2:新系统逻辑模型 ( 数据流程图,数据字典,实体关系图 )
3:新系统功能分析 ( 改进,补充,优越之处 ) ;
4:新系统在各个处理环节上采用的管理方法,模型;
5:与新系统相配套的管理制度和运行体制的建立;
四:下阶段工程进度计划
现行系统的详细调查( 包括工作程序、信息流以及工作的组织与控制方法 )
分析系统业务流程及数据流程
制 定新系统的逻辑模型( 数据流程图、数据字典、处理小说明,E-R图 )
解决系统,能做什么( What to do),
的问题。
一,现行系统的详细调查
(一) 系统调查概述
1 系统调查的原则
自顶向下
弄清存在的道理再分析有无改进的可能性
调查相关的局部系统
2 详细调查的范围及内容
系统界限和运行状态
组织机构和人员分工
业务流程全面细致地了解整个系统各方面的业务流程,以及商流、物流和信息流的流通状况以及各种输入、输出、处理、处理速度、处理量和处理过程的逻辑关系。
2 详细调查的范围及内容
各种计划、单据和报表调查中要收集各类计划、单据和报表,了解它们的来龙去脉及其各项内容的填写方法,时间要求,以便得到完整的信息流程。
决策方式和决策过程
资源情况
2 详细调查的范围及内容
约束条件
薄弱环节和用户要求用户要求,是指系统必须满足的所有性质和限制。它通常包括:功能要求、性能要求、时间要求、可靠性要求、安全保密要求,以及开发费用、
开发周期、可使用资源等各方面的要求和限制。
3 详细调查的方式
开调查座谈会
重点询问方式重点询问一般要提前准备好提问的问题重点询问常见问题例如:
你所在的工作岗位是什么? 岗位工作的性质是什么?
你的工作任务是什么? 每天工作怎样进行时间安排?
你的工作分为几班? 工作结果同前,后续工作如何联系?
你所接触的报表有几类? 数据有哪些? 满意程度如何?
你所在的工作岗位是否恰当? 工作量如何?
你的工作计划不能合理安排的原因是什么?
你的工作岗位存在的问题是什么? ( 组织不力? 规划不好?
信息不畅? )
你通常采取什么手段提高工作效率? 使用计算机了吗?
如果增加激励(奖金、鼓励、新技术等),工作效率是否会提高?
重点询问常见问题例如,(续 )
从有效组织经营的角度出发,你的权限是否适当 ( 大或小 )?
你认为影响本企业经营效率的关键问题是什么?
从全局的利益出发,你认为现有的管理体制是否合理?
你认为提高经营的潜力在哪里? 现存管理体制有哪些问题?
有效降低经营成本的途径有哪些? 信息系统的开发在本单位是否有必要?
你认为新的信息系统应该重点解决哪些问题?
你所了解的管理工作中,你认为决策的效益应从哪些方面去衡量?
重点询问常见问题例如,(续 )
你认为业务,财务,储运等部门是否已经使用了计算机? 有什么问题?
你用过计算机吗? 你认为企业现在使用计算机还有什么困难吗?
在你所了解的管理决策工作中,有哪些可以定量或定性用计算机处理吗?
本企业与外部哪些企业有业务联系? 业务往来用计算机处理吗?
原来开发的软件有哪些毛病? 为什么老用不好呢?
3 详细调查的方式
问卷调查方式针对所需调查的各项内容,绘制出相应各种形式的图表(问卷),通过这些图表对企业管理岗位上的工作人员进行全面的需求调查。
深入实际的调查方式
查阅资料某出版社系统调查表编号提出问题
1 您在哪个部门工作?
2 出版业务流程是什么?
3 您每日都处理那些文件、数据、报表?
4 工作中手工处理特别麻烦的事情是什么?
5 工作中手工处理什么问题解决不了?影响效率的问题有哪些?
6 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?
某出版社系统调查表编号提出问题
7 您的部门需要成本核算和统计的内容有哪些?
8 您的部门采用计算机管理工作情况如何?
9 如何改进业务流程使之更合理?
10 哪些问题是目前传统手工方法根本无法解决的?
11 出版社计算机管理信息系统需要解决什么问题?
(二) 组织机构与功能结构调查组织机构与功能结构调查了解系统的界限,了解组织关系和系统的构成,它反映的是系统的综合情况 。
包括三部分:
组织机构调查
业务过程与组织结构之间的联系分析
业务功能结构调查与分析
1、组织结构图企业管理处计划统计处供应处财务处销售处职工食堂第一生产车间服务公司厂办厂长办公室包装车间生产调度处设备管理处技术质量处第九生产车间厂医务室小车队企管科质检科计算中心综合计划处统计科销售管理科成品库业务联系部市场分析部甲班组丙班组乙班组丁班组党委办公室团委工会职教处人事处图书资料室厂 长工厂管理委员会厂长工作部 经营部 生产部 后勤部 宣教部
...,..
......,.....,.....
2、组织/业务关系图功能序号联系的 组程度 织业 务计划科质量科设计科工艺科机动科总工室研究所生产科供应科人事科总务科教育科销售科仓库
1 计划
* √ × × × ×
2 销售 √
* ×
3 供应 √ ×
* √
4 人事
* √ √
5 生产 √ × × ×
* * × √ √
6 设备更新
* √ √ √ ×
功能与业务
7
……
图中:,*,表示该项业务是对应组织的主要业务 (即主持工作的单位) ;
,×,表示该单位是参加协调该项业务的辅助单位;
,√,表示该单位是该项业务的相关单位 (或称有关单位);
空格:表示该单位与对应业务无关。
3 业务功能一览表销售系统管理销售计划管理成品库管理销售合同管理销售核算管理市场预测销售历史资料管理编制年度销售大纲编制销售计划合同有效性审查合同执行情况分析合同登记和变更销售利润核算销售统计分析出入库管理库存统计市场预测市场分析
(三) 业务流程 调查业务流程调查主要采用业务流程图 ( transaction flow
diagram,简称 TFD) 。
对每一业务弄清其输入,处理,存贮,输出,立即存取要求,收集相应资料 。
理顺各个岗位,各个业务流程之间的关系 。
除去不必要的环节,对重复的环节进行合并,对新的环节进行增补 。
确定哪些是今后计算机系统要处理的环节 。
业务流程图业务流程图:用一些规定的符号及连线来表示某个具体业务处理过程 。
业务流程图易于阅读和理解,是分析业务流程的重要步骤。
业务流程图
业务流程图的基本符号业务处理单位 业务处理功能描述表格/报表制作 数据/文件存档收集/处理数据 信息传递过程业务流程图
业务流程图绘制图表
B 2 系统分析 B 2,2
表 格 名 称 业 务 流 程 第 图 / 共 张图业务名称,制图,审核:
单位名称,核对,年 月 日图例说明业务处理单位业务处理描述表格制作传递存储收集资料
(本框内容为具体流程)
业务流程图
业务流程图绘制举例计划处 银行 技改处各部门各单位局领导上级领导投资总规划更新改造贷款规模开会讨论 报表 审批综合平衡
(讨论)
批准下达各单位各部门正式计划计划各单位上报表计划处各部门各单位技改处 银行各部门各单位 存档
(四) 数据调查数据调查在调查中要注意广泛地收集各项业务处理中各种输入,输出的单据,表格,报表,
各类台账等,而且最好是填有内容的资料和报表 。 细致调查了每一张单据,表格,
报表,台账等资料的来龙去脉,处理内容,
处理时间,处理的数据量,处理的周期之后,可汇总绘制数据调查分析表 。
调查方法:查阅档案,面谈调查,发调查表,
测定采样,实际动手等 。
(五)处理 调查处理调查处理调查,主要是对业务处理的逻辑关系和算法模型进行的调查 。
在处理调查中对每一个处理项需要调查的内容和项目大致如下:
( 1) 该处理有哪些输入? 处理的输出是什么?
( 输入输出的单据,报表的各项数据 )
( 2) 输入经处理后的输出是什么? 包括哪些数据项的内容?
( 3) 了解各项数据的生成途径 ( 算法模型 ) 。
处理调查在处理调查中对每一个处理项需要调查的内容和项目大致如下,( 续 )
( 4) 了解处理的逻辑关系 。 可用判定树或判定表来描述,以便今后的分析与设计 。
( 5) 根据信息采集与处理,构造系统的数学模型 。
( 6) 了解整个系统的处理程序,弄清先后和处理过程 。
( 7) 确定处理时间的要求,明确在相对时间段内需要处理的数据内容 。
( 8) 弄清处理信息的形态 ( 报表,报单,屏幕显示等 ),以及时段输出要求 。
二,现行系统分析现行系统分析
系统目标分析新系统建立之后要达到的运行性能指标,是系统可行性分析所确定的系统目标的进一步细化 。
系统功能分析
BPR;找出功能与功能之间,功能与外部环境之间的信息相互联系,为系统的数据分析提供依据 。
数据分析
功能 /数据分析
3 数据分析对系统调查所收集的数据以及统计和处理数据的过程进行分析和整理 。
调查数据的汇总分析:
输入数据类:主要指报来的报表,即今后下级子系统或网络要传递来的内容
要存储的数据类:主要指各种台账,账单和记录文件,它们是今后系统数据库要存储的主要内容
产生的数据类:主要指系统运行所产生的各类报表等,它们是今后系统输出和网络传递的主要内容
3 数据分析然后再对每一类数据进行如下三项的整理与分析:
汇总并检查数据有无遗漏
检查数据的匹配情况
建立统一的数据字典
3 数据分析数据汇总分析的步骤,
将系统调查中所收集到的数据资料,按业务过程进行分类编码,按处理过程的顺序排列在一起 。
按业务过程自顶向下地对数据项进行整理 。
将所有原始数据和最终输出数据分类整理出来 。
确定数据的字长和精度 。
借用 U/C矩阵对 数据的正确性,数据项特征等进一步进行分析 。
3 数据分析运用 U/ C矩阵进行数据正确性分析,数据项特征分析
数据正确性分析:
– 数据守恒原理,
数据必定有一个产生的源,而且必定有一个或多个用途。
– 在 U/ C矩阵中:
– 每一个列只能有一个 C;
– 每一个列至少有一个 U;
– 不能出现空行或空列。
3 数据分析
数据项特征分析:
– 数据的类型以及精度和字长:
– 合理取值范围,( 输入,校对和审核所必须 )
– 数据量:即单位时间内(如天、月、年)的业务量、
使用频率、存储和保留的时间周期等等。
(网上分布数据资源和确定设备存储容量的基础。)
– 所涉及业务:即 U/ C矩阵中每一行有 U或 C的列号。
(业务过程 )
数据类功能客户订货产品工艺流程材料表成本零件规格材料库存成本库存职工销售区域财务计划计划设备负荷物资供应任务单列号
Y
经营计划 U U U C 1
财务规划 U U C C 2
资产规模 U 3
产品预测 C U U 4
产品设计开发 U C U C C U 5
产品工艺 U C C U 6
库存控制 C C U U 7
调 度 U U U U C 8
生产能力计划 U C U 9
材料需求 U U U C 10
操作顺序 C U U U 11
销售管理 C U U U U 12
市场分析 U U U C 13
订货服务 U C U U U 14
发 运 U U U U 15
财务会计 U U U U U U 16
成本会计 U U U U 17
用人计划 C 18
业绩考评 U 19
行 号 X 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
U/C矩阵
4 功能 /数据分析整体地考虑新系统的功能子系统和数据资源的合理分布 。
它是通过 U/C矩阵 的建立和分析来实现的 。
4 功能 /数据分析
U/C矩阵的主要功能,
通过对 U/C矩阵的正确性检验,及时发现前段分析和调查工作的疏漏和错误 。
通过对 U/C矩阵的正确性检验来分析数据的正确性和完整性 。
通过对 U/C矩阵的求解过程,最终得到子系统的划分 。
通过子系统之间的联系 (,U”) 可以确定子系统之间的共享数据 。
4 功能 /数据分析工作步骤:
U/C矩阵的建立
U/C矩阵的正确性检验 ( 完备性检验,一致性检验,无冗余性检验 )
求解 U/C矩阵
系统逻辑功能划分和确定数据资源的分布
通过对 U/C矩阵的求解过程,最终得到子系统的划分数据类功能客户订货产品工艺流程材料表成本零件规格材料库存成本库存职工销售区域财务计划计划设备负荷物资供应任务单列号
Y
经营计划 U U U C 1
财务规划 U U C C 2
资产规模 U 3
产品预测 C U U 4
产品设计开发 U C U C C U 5
产品工艺 U C C U 6
库存控制 C C U U 7
调 度 U U U U C 8
生产能力计划 U C U 9
材料需求 U U U C 10
操作顺序 C U U U 11
销售管理 C U U U U 12
市场分析 U U U C 13
订货服务 U C U U U 14
发 运 U U U U 15
财务会计 U U U U U U 16
成本会计 U U U U 17
用人计划 C 18
业绩考评 U 19
行 号 X 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
U/ C 矩阵的建立
4 功能 /数据分析
2)正确性检验
( 1)完备性( completeness)检验:指对具体的数据项必须有一个产生者( C)和至少一个使用者( U),功能则必须有产生或使用( U或 C)发生。
( 2)一致性( uniformity)检验:指对具体的数据项必须有且仅有一个产生者( C)。
( 3)无冗余性( non-verbosity)检验:指 U/ C矩阵中不允许有空行和空列。
4 功能 /数据分析
3) U/ C 矩阵的求解,
( 1) U/ C 矩阵的求解过程就是对系统结构划分的优化过程 。 它是基于子系统划分应相互相对独立且内部凝聚性高这一原则之上的一种聚类 操作 。
( 2) U/ C 矩阵的求解过程常通过表上作业法来完成。其具体操作方法是:调整表中的行变量或列变量,使得,C”元素尽量地朝对角线靠近,
然后再以,C”元素为标准,划分子系统。
数据类功能计划财务计划产品零件规格材料表材料库存成品库存任务单设备负荷物资供应工艺流程客户销售区域订货成本职工经营计划 C U U U
财务规划 U C U U
资产规模 U
产品预测 U U U
产品设计开发 U C C C U
产品工艺 U U U U
库存控制 C C U U
调 度 U U C U U
生产能力计划 C U U
材料需求 U U U C
操作顺序 U U U C
销售管理 U U U C U U
市场分析 U U U C U
订货服务 U U U U C
发 运 U U U U U
财务会计 U U U U U U U
成本会计 U U U U C
用人计划 C
业绩考评 U
表 上 移 动 作 业 过 程
4 功能 /数据分析
4) 系统功能划分与数据资源分布,
( 1)系统逻辑功能的划分,在求解后的 U/
C 矩阵中划出一个个的方块,每一个小方块即为一个子系统。
划分时应注意:
–沿对角线一个接一个地画,既不能重叠,又不能漏掉任何一个数据和功能;
–小方块的划分是任意的,但必须将所有的
,C” 元素都包含在小方块内。
数 据 类功 能计划财务计划产品零件规格材料表材料库存成品库存工作令机器负荷材料供应工艺流程客户销售区域订货成本职工经营计划 C U U U
财务规划 U C U U
经营计划资产规模 U
产品预测 U U U
产品设计开发 U C C C U
技术准备产品工艺 U U U U
库存控制 C C U U
调 度 U U C U U
生产能力计划 C U U
材料需求 U U U C
生产制造操作顺序 U U U C
销售管理 U U U C U U
市场分析 U U U C U
订货服务 U U U U C
销 售发 运 U U U U U
财务会计 U U U U U U U 财 会成本会计 U U U U C
人员计划 C 人 事人员招聘/考评 U
子 系 统 划 分
4 功能 /数据分析
4) 系统功能划分与数据资源分布,(续 )
(2)数据资源分布:所有数据的使用关系都被小方块分隔成了两类:一类在小方块以内;一类在小方块以外。
在小方块以内所产生和使用的数据,则今后主要放在本系统的计算机设备上处理;而在小方块以外的,U”,则表示了各子系统之间的数据联系,这些数据资源今后应考虑放在网络服务器上供各子系统共享或通过网络来相互传递数据。
数 据 类功 能计划财务计划产品零件规格材料表材料库存成品库存工作令机器负荷材料供应工艺流程客户销售区域订货成本职工经营计划 U U
财务规划 U U
经营计划资产规模经营计划子系统产品预测 U U
产品设计开发 U U
技术准备产品工艺产品工艺子系统
U
库存控制调 度 U
生产能力计划材料需求 U U
生产制造操作顺序生产制造计划子系统销售管理 U U U
市场分析 U U
订货服务 U U
销 售发 运 U U U
销售子系统财务会计 U U U U U U U财 会成本会计 U U U U
1
人员计划人 事人员招聘/考评
2
注,1 ――财会子系统 2 ――人事档案子系统数 据 联 系三、新 系统的逻辑模型新 系统的逻辑模型
数据流程图( DFD)
描述数据在系统中的流动和变化
描述对数据流进行变换的功能
数据字典( DD)
处理小说明
对 DFD中加工功能的详细描述
实体 -联系图( E-R图)
功能数据
(一)数据流程图
Data Flow Diagram
1,数据流程图的四个基本成分数据存储或数据流或外部项或数据处理 (加工 )
1) 数据流
表示数据和数据流向,由一组固定成分的数据组成 如,选课单,由,学号,姓名,
课程编号,课程名,等成分组成
数据流可从加工流向加工,也可在加工与数据存储或外部项之间流动;两个加工之间可有多股数据流
数据流的命名
用名词,不要使用意义空洞的名词
尽量使用现实系统已有名字数据流(图示)
*
* +
+
A
B
C
A
A A
B
B B
C
C
C
储户 检查合理性帐户取款单 合理取款单
* 与
+ 或画数据流时需注意的问题
不要把控制流作为数据流如:下图中读下张卡属于控制流,不应画出 。
不要标出激发条件合法卡片卡片信息读入卡片 卡片校验读下张卡工资单工资率计算工资每月 1号职工档案
2) 加工
表示对数据进行的操作,如,处理选课单,,,产生发票,等
加工的编号,说明这个加工在层次分解中的位置 (分层 DFD)
加工的命名
顶层的加工名就是整个系统项目的名字
尽量 最好使用动宾词组,也可用主谓词组
不要使用空洞的动词加工的命名储户 处理 1
帐户数据 1 数据 2
储户 检查合理性帐户取款单 合理取款单无意义的名字:
较好的命名:
3) 数据存储
表示需要保存的数据流向,如,学生档案,,,课程设置,等
数据存储与加工的方向,读出,,,写入,
分层数据流程图中,数据存储一般局限在某一层或某几层
命名方法与数据流相似修改库存 商品库存检索商品信息商品目录
4) 外部项
位于系统之外的信息提供者或使用者,称为外部项 。 即存在于系统之外的人员或组织 。 如,学务科,等
说明数据输入的源点 (数据源 )或数据输出的终点 (数据终点 )
起到更好的理解作用,但不是系统中的事物数据源数据终点没有输出!加工没有输入! 加工每个加工至少有一个输入数据流和一个输出数据流几种错误 (1)
数据源 数据终点数据源 数据存储数据终点数据存储数据存储数据存储数据流必须要么从某个加工流出、要么流入某个加工,而不能直接从外部项流向数据存储等等。
图示的几种流动都是不合理的几种错误 (2)
2 怎样画 DFD
了解 DFD的特性
画分层 DFD
1) DFD的特性
与程序流程图不同,DFD不表示程序的控制结构,只描述 数据 的流动
DFD分成 多层 (子图,父图概念 )表示,
从而逐步展开数据流和功能的细节 。
S
21
3
2.22.1
2.3
3.1 3.2
顶层
0层
1层
(基本系统模型 )
(系统的子功能 )
DFD的分层表示
2) 画分层 DFD
(1)先画出顶层 DFD。
(2)自顶向下画出各层 DFD
分解原则:
分解后的软件成分有相对独立功能一次分解不要加入细节过多由外向里画 DFD 报名单 合格报名单检验报名单
2) 画分层 DFD
(3)先考虑稳定状态,忽略系统的工作条件,
即怎么开始、怎么结束的。
(4)忽略琐碎的枝节,如出错处理等。
(5)随时准备重画报名单 合格报名单检验报名单错误的报名单
3) 画分层 DFD的指导原则
( 1) 父图 -子图平衡
( 2) 局部数据存储
( 3) 编号
( 4) 分解的程度父图 -子图平衡父图 -子图平衡:
模型分解时必须保持父图的输入输出数据流和子图输入输出数据流相同。
父图 -子图平衡
A 1 4
2
3
B F
E G
C D
父图 -子图平衡缺少 C
3.1
E
D
3.3
3.2
对加工 3细化的子图:
加工 3
购书单教材购销系统教材购销系统的顶层 DFD
学生 领书单缺书单进书通知书库保管员购书单 缺书 单销售教材采购教材
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单
1.2
第三层 DFD (1层 ) 销售子系统 (1.0)
无效书单教材存量表F1
开发票
F2 缺书登记表学生各班学生用书表F3 售书登记表F4
1.1
审查有效性
1.3
登记并开领书单学生
1.5
补售教材
1.4
登记缺书购书单发票领书单有效购书单教材入库信息按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单教材入库信息缺书单父图 -子图平衡补充说明领书单1.3发票 1.3.3
1.3.2教材
1.3.1学生领书单父图 子图发票=学生+教材借助 数据字典 判断:
局部数据存储的使用出现在加工之间的界面时,才画出来 。 XX
E2,1 2,2
2,3
F
D
C1 3
2
F
A
D
E
B
父图 子图购书单 缺书 单销售教材采购教材
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材入库信息教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单加工编号加工的编号原则:
子图图号为分解的父图中的加工号,
同级子图在最后数字以序号区别。
S
21
3
2.22.1
2.3
3.1 3.2
顶层
(不编号)
0层
1层分解的程度分解的深度与层次:
按功能情况定,一般设深度为 3-5
如超过 5个加工最好分解画,否则容易出错实例,图书馆管理系统
购入新书
读者借书
读者还书
图书注销
查询统计
(一) 系统功能说明购入新书
新书编卡片 (包括:类目录号、
流水号 (唯一 )、书名、作者、内容摘要、价格、购书日期等信息 )
写入图书目录文件读者借书
填借书单 (包括:读者号、欲借图书分类目录号 )
检查读者号有效性,无效,拒借
读者号有效,检查借书是否超数? 已达 5
本,拒绝借
未超,可借,登记图书分类目录号、读者号、借阅日期等,写回借书文件中读者还书根据图书流水号,从借书文件中读出与该书相关的借阅记录,查明借书日期,还书日期,求借书时间,再重写回借书文件中,超过期限罚款。
图书注销
从借阅图书文件中删除相关记录
丢失图书时从图书文件中删除相关记录并罚款查询统计
查询某读者情况
查询某图书借阅情况
统计图书借阅情况
(二) 数据流程图顶层数据流图图书管理人员图书管理系统读者图书管理要求查询要求查询结果 罚款单处理查询
2处理要求
1
查询要求图书管理要求罚款单统计表图书情况读 者 情况
0层数据流图目录文件借书文件要求类型处 理图书管理要求无效输入
1.1
新书入库
1.2
还入库单罚款单一层数据流图 (a)
1.5
注销图书
1.3
还书
1.4
目录文件借书单书 单注销单借书 借书文件罚款单查询类别处理查询要求 2.1
读者查询
2.2
统查询的读者情况统计表一层数据流图 (b)
图书查询借书文件要查询的图书情况 2.3
图书统计
2.4
计求读者文件目录文件读者情况图书情况二层数据流图 (1.3)
检查借书单借书单
1.3.1 审定借书限额
1.3.2
无效借书单借书文件读者文件有效借书单登记借书信息
1.3.3
合格借书单超额借书单二层数据流图 (1.4)
审定还书期限还书单 1.4.1 修改借书信息
1.4.2
借书文件未超期还书单计算超期罚款
1.4.3
还书单超期还书单罚款单二层数据流图 (1.5)
分类注销单
1.5.1 修改目录
1.5.2
借书文件目录文件图书处理注销单计算罚款
1.5.3
图书丢失注销单罚款单实例 2,考务处理系统
(1)对考生送来的报名单进行检查 ;
(2)对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站 ;
(3)对阅卷站送来的成绩单进行检查,并根据考试中心制定的合格标准审定合格者 ;
(4)制作考生通知单 (含成绩及合格 /不合格标志 )送给考生 ;
(5)按地区进行成绩分类统计和试题难度分析,产生统计分析表。
顶层数据流图考生 考务处理系统考试中心阅卷站报名单准考证考生通知单 成绩清单合格标准考生名单统计分析表处理报名单报名单准考证
1
统计成绩
2
考生通知单成
0层 数据流 图考生名册绩清单合格标准考生名单统计分析表一层数据流图 (a)
检查报名单报名单准考证1.1 编准考证号
1.2
不合格报名单考生名册考生名单合格报名单登记考生
1.3
正式报名单汇总名单
1.4
检查成绩清单
2.1 审定合格者
2.2
考生名册正确成绩清单制作通知单
2.3分析统计成绩
2.4分析试题难度
2.5
试题得分清单考生通知单难度分析表合格标准分类统计表成绩清单错误成绩清单 经审定的成绩清单一层数据流图 (b)
3 DFD的改进
检查正确性
提高易理解性
重新分解
1) 检查正确性分析员可以从以下几个角度来检查
DFD的正确性:
数据守恒
数据存储的使用
父图和子图的平衡数据守恒数据不守恒的情况有两种:
一 是某个加工输出的数据并无相应的数据来源,
可能是某些数据流被遗漏了 。
运动员名单 =队名 + 姓名 + 项目项目参加者 =项目 + 姓名 + 运动员号
,运动员号,并无数据来源决定比赛名单运动员名单项目参加者项目数据守恒二 是,一个加工的输入并没有用到,这不一定是错误 。 可与用户进一步讨论,是否属于多余的数据流 。
订货单 =单位名 + 货名 + 货号 + 数量价目 =货名 + 单价发票 =单位名 + 货名 + 数量 + 单价 + 总计经商量,,货号,确属多余,故删去 。
开发票价目发票订货单数据存储的使用判断:是否存在,只读不写,或,只写不读,
的数据存储 ( 注意在 所有的 DFD中检查 )
1
4
2
3
父图,子图:
4.1
4.3
4.2
XX
YY
2)提高易理解 性
简化加工之间的联系
注意分解的均匀
适当地命名简化加工之间的联系应尽量减少加工之间输入输出数据流的数目 。 因为加工之间的数据流越少,各个加工的功能就越相对独立 。
例,G
1
2
3
5
4A
B
H
J
I
C
D
K
L
N
M
P
E
F
分解的均匀即图中各个部分不均匀 。
一张图中,如果某些加工已是基本加工 ( 细节 ),而另一些加工还可进一步分解成三,四层,则应考虑重新分解 。
适当地命名
名字的意义要明确,容易理解
如果难以为 DFD图中的成分 ( 数据流,
加工 等 ) 命名,往往说明分解不当,
可考虑重新分解 。
3)重新分解在画第 N层时意识到在第 N-1层或第
N-2层所犯的错误,此时就需要对第
N-1层,第 N-2层作重新分解 。
重新分解的做法
(1)把需要重新分解的某张图的所有子图连接成一张 。
重新分解的做法
1
2
3
5
4A
B
H
J
I
C
D
K
L
N
M
P
E
F
父图,
重新分解的做法子图,
2.2 2.3
2.1
2.4 2.5
I
J
K
C M
L
E
H
N
重新分解的做法重新连成一张图,
2.2 2.3
2.1
2.4 2.5
B J
K
C M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2
重新分解的做法
(2) 把图分成几部分,使各部分之间的联系最少 。
重新分解的做法把图中的加工重新划分:
2.2 2.3
2.1
2.4 2.5
B J
K
C
M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2’
2”
重新分解的做法
(3)重新建立父图,即把第 2)步所得的每一部分画成一个圆,而各部分之间的联系就是加工之间的界面 。
重新分解的做法
(4)重新建立各张子图,这只需把第 2)步所得的图按各部分的边界剪开即可 。
重新分解的做法重新建立父图,
B J
K
C
M
L
E
H
N
1
3
4
5
I
A
P
G
F
D
2’
2”
重新分解的做法
(5) 为所有的加工重新命名和编号 。
重新分解的做法重新建立父图并编号,
B J
K
C
M
L
E
H
N1
3
4
5
I
A
P
G
F
D
2”
2’
(二)数据字典
Data Dictionary
数据字典 (DD)
对 DFD中的每一成分给以详细定义
DD的类型
DD的定义与实现方法
1 详细定义 DFD成分定义式中使用的符号:
操作符 含义描述
= 定义为
+ 与 (顺序结构 )
{,..} 重复 (循环结构 )
〔,.|,.〕 或 (选择结构 )
(,.,) 任选
m..n 界域
*,..,* 注释符
1 详细定义 DFD成分限制重复次数,
3 5 或 53{ }表示允许重复 3-5次{ }
3
3 { }表示恰好重复 3 次
{ }
{ }
1 表示至少出现 1 次表示允许重复 0至任意次
3{ } 3
2 DD的类型
数据流
数据存储
数据项
加工数据流条目给出 DFD中某个数据流的定义,通常包括:
数据流标识
数据流来源
数据流去向
数据流的数据组成
流动属性描述:频率、数据量购书单 发票 领书 单审查并开发票开领书单无效书单学生1 2
各班学生用 书 表举例:
学生教材存量表数据流条目举例数据流名,发票别名,购书发票组成,(学号 )+姓名+{书号+单价+数量+总价}+书费合计数据量,100次 /天高峰值:开学期间 400次 /天数据存储条目给出 DFD中某个数据存储的定义,通常包括:
数据存储名字
数据存储描述
数据存储组成
数据存储方式
关键码
存取频率和数据量
安全性要求(用户存取权限)
购书单 发票 领书 单审查并开发票开领书单无效书单学生1 2
各班学生用 书 表举例:
学生教材存量表数据存储条目举例文件名,各班学生用书表别名:无组成,{系编号+专业和班编号+年级+
{书号 }}
组织,按系、专业和班编号从小到大排列存取要求,关键字是专业和班编号数据项条目(数据元素)
不可再分解的数据单位,包括:
名称
描述
数据类型
长度 (精度 )
取值范围及缺省值
计量单位
相关数据元素及数据结构数据项条目举例数据项名,系编号别名,
取值,2{数字 }2
注释,
* 例如,01,12 *
数据项条目举例数据项名,专业和班编号别名,
取值,3{数字 }3
注释,
* 例如,305 *
数据项条目举例数据项名,年级别名,
取值及含义,〔 F|M|J|S 〕
F- freshmen,一年级
M- sophomore,二年级
J- junior,三年级
S- senior,四年级注释,F,M,J,S可分别用 1,2,3,4代替数据项条目举例数据项名,书号别名,
取值,{字母 }+ {数字 }
注释,
* 例如,OS4,ENG1 *
加工条目加工类条目即数据处理描述,也称为 小说明 。 描述实现加工的策略而不是实现加工的细节。
小说明可认为是 DD的组成部分。也可在 DD中定义只说明每个加工的组成
(每个处理分解成多少小处理 ),而在小说明中详细描述它的处理逻辑。
加工条目描述的内容
处理逻辑 (简述 )
描述基本加工如何把输入数据流变化为输出数据流的处理步骤,不涉及具体处理方法。
执行条件
输入
输出
优先级
执行频率
出错处理对策购书单 缺书 单销售 采购
1 2
第二层 DFD(0层 ) 教材购销系统教材存量表学生
F1
缺书登记表F2
书库保管员进书通知教材入库信息领书单按书号汇总缺书
2.1
2.3
第三层 DFD (1层 ) 采购子系统 (2.0)
待购教材表F5 教材一览表F6
书库保管员进书通知教材入库信息教材存量表F1
2.2
按出版社统计缺书修改教材库存和待购量
F2缺书登记表缺书单加工条目举例在 DD中定义说明每个 加工的组成,
加工名,采购 (CG111MD)
编号,2.0
加工激活条件,得到图书采购员采购操作命令加工逻辑,2.0采购 = {2.1 按书号汇总缺书
+ 2.2 按出版社统计缺书
+ 2.3 修改教材库存和待购量 }
执行频率,随时加工举例加工名,月票额统计 (MHCW713MD)
编号,7.1.3
激活条件,收到每日售票额信息处理逻辑,1 统计月保险金总和月保险金信息 =每日日保险金信息之和
2 统计月合计月合计信息 =每日日合计信息之和执行频率,1次 /月某订货系统功能说明如下:
假设某一企业采购部门每天需要一张订货报表
,报表按材料编号排序,报表中列出所有需要再次订货的材料 。 对于每种需要再次订货的材料应列出下列数据:材料编号,名称,订货数量,目前价格
( 或参考价格 ),主要供应单位,第二供应单位等
。 材料入库或出库称为事务,通过放在仓库的 CRT
终端把事务报告给订货系统 。 当某种材料的库存数量少于库存量临界值时就应该再次订货 。
应用举例 (1)
如何画出上述订货系统的数据流程图呢?
考虑数据的源点和终点 。 从上面对系统的描述可以知道,仓库管理员通过终端把事务报告给订货系统,系统经过汇总处理,每天向采购部提供一张订货报表 。 所以,采购员是数据的终点,而仓库管理员是数据的源点 。
应用举例 (1)
仓管员
0.0
订货系统采购员事务 订货报表图 (a) 订货系统的顶层数据流程图考虑处理 。 问题给出,采购部需要报表,,因此必须有一个用于产生报表的处理 。 输入事务的结果是改变材料库存量,然而任何改变数据的操作都是处理,因此对事务进行的加工是另一个处理 。
考虑数据流 。 系统把订货报表送给采购部,因此订货报表是一个数据流;仓库需要将每笔事务输入到系统中,显然事务是另一个数据流 。
应用举例 (1)
考虑数据存储 。 从问题的阐述中,可以看出产生报表和处理事务这两个处理在时间上明显不匹配,
每当有一个事务发生时就必须立即处理事务,而每天只产生一次订货报表 。 因此,用来产生订货报表的数据必须存放一段时间,也就是应该有一个数据存储 。 另外,,当某种材料的库存数量少于库存量临界值时就应该再次订货,,这个事实意味着必须在某个地方有材料库存量和库存量临界值这样的数据 。 因此,需要有一个保存清单的数据存储 。
应用举例 (1)
一旦把数据流程图中的四种成份都分离出来之后,
就可着手绘制系统的数据流程图了 。 数据流程图的绘制也是采用自顶向下的方法,由粗到细,逐层细化,最后形成一套完整的拟建系统的数据流程图 。
应用举例 (1)
仓管员
1.0
处理事务采购员事务 订货报表图 (b) 订货系统的一层数据流程图
2.0
产生报表
D2 订货信息
D1 库存信息数据流图
D2
1.1
事务输入和检验仓管员
1.2
更新库存
1.3
处理订货
D1 库存信息
F3 库存
F1 事务 事务 F2
F4 缺货信息
F5 订货信息订货信息图 (c) 订货系统的 2层数据流程图 (子图 1)
D2
采购员2.0产生报表
F6 订货汇总信息
F7
订货报表订货信息图 (d) 订货系统的 1层数据流程图(图 b的局部,
各数据成分加上编号)
数据流图
( 1)数据存储条目编号 名称 流入数据流流出数据流组成 组织形式
D1 库存清单文件
F3 F3 材料编号、材料名称、单价、数量 按材料类别排序
D2 定货信息文件
F5 F6 时间、材料编号、材料名称、定货数量、
目前价格、主要供应者、次要供应者按时间和材料类别排序
( 2)数据流条目编号 名称 来源 去处 组成 流量 说明
F1 材料出入库单仓管员 事务输入和检验日期、材料编号、材料名称、事务类型、单价、数量
60份每天事务类型
1— 进货
2— 出库
F2 正确的事务单事务输入和检验更新库存 同上 同上 同上
F3 库存 更新库存 库存清单文件 材料编号、材料名称、单价、数量处理与库存双向 流动
F4 缺货信息 更新库存 处理定货 日期、材料编号、材料名称、单价、缺货量低于库存临界的库存数量 (需订货量 )
F5 定货信息 处理定货 定货信息文件 同定货信息文件
F6 同上 定货信息文件产生报表 同上
F7 定货报表 产生报表 采购部 同上 每天
1份
( 3)数据项条目编号 名称 数据类型 长度 小数位 取值范围 说明
01 日期 D 08
02 材料编号 C 04 0000-
9999
03 材料名称 C 20
04 单价 N 08 03
05 库存数量 N 08 02
06 定货数量 N 08 02
07 目前价格 N 08 03
08 主要供应者 C 20
09 次要供应者 C 20
10 事务类型 C 1
( 4)加工条目编号 名称 输入 处理逻辑 输出
P1.1 事务输入与检验出入库原始单据提供出入库的录入界面并检验正确性正确的出入库信息
P1.2 更新库存 进出库信息库存库存量 =现库存量 +入库量 -出库量。若库存量 <
库存临界量,则需订货库存,
缺货信息
P1.3 处理定货 缺货信息 根据缺货量写入定货信息文件定货信息
P2.0 产生报表 定货信息 根据处理订货的请求,生成订货报表,并打印定货报表
( 5)外部项条目编号 名称 简述 输入数据流 输出数据流
01 仓管员 对材料的出入库进行登记原始出库单或入库单据
02 采购部 根据定货报表进行定货定货报表应用举例 (2)
某高校学分制学生选课系统要求如下:
学生根据学期开课清单填写选课单,学生选课系统对每个学生的选课单进行处理:根据教学计划检查该生是否存在尚未取得学分的必修课程,如果存在则要求重修;计算该学生课程上课时间冲突率:
如果不发生冲突或者冲突率小于 30%则可以选修,
否则根据重修 — 必修 — 任选的优先级删除已选课程。
最后产生每个学生的个人课表,以及每门课程的成绩记录单(列出该门课程的学生名单)。
1 数据流图选课单学生 教师成绩记录单学生课表图 1 学生选课系统的顶层 DFD
学生选课系统选课单学生学生教师开课清单 课程注册费用成绩记录单学生课表图 2 学生选课系统 1-DFD
1.学生选课
2.课程注册
3.表格打印开课清单
1.4计算课程注册费
1.1 合法校验
1.3计算课程冲突率
1.2 查已修课程成绩选课单 学生成绩库学生学号合法的选课记录费用重修课程已选课程图 3 学生选课系统加工 1的下层分解( 2-DFD1)
1 数据流图(续)
学生教师课程注册 成绩记录单学生课表图 4 学生选课系统加工 3的下层分解( 2-DFD2)
3.1打印学生课表
3.2 打印课程成绩单
1 数据流图(续)
( 1)数据流条目数据流,选课单选课单 =学生学号 +{课程编码 +备注 }1
数据流,学生课程表学生课程表 =学生学号 +{课程时间表 }1
数据流,成绩记录单成绩记录单 =课程编码 +课程名 +[任课教师 |指导教师 ]+{学号 + 成绩 (+备注 )}
注释:备注域用于标识课程类别(必修 /限选 /任选
/重修)
2 数据字典数据流,费用费用 =学生学号 +{课程编码 +课程费用 }1 +合计金额数据流,学生学号 (别名:学号)
学生学号:基本数据项,由 8位数字组成。
其中,1~6位为班级号,7~8位为班内序号,
从 01开始。
数据流,合法选课记录(别名:选课记录,重修课程,已选课程)
合法选课记录 =学号 +{课程编码 +备注 }1
2 数据字典
( 2)文件条目(数据存储条目)
文件:开课清单课程记录 =课程编码 +课程名 +注册金额 +[任课教师 |指导教师 ](+职称 )+起始周 +终止周 +{上课时间 }
文件组织:以课程编码为记录关键字升序排列
2 数据字典文件:课程注册注册记录 =学生学号 +课程编码 +课程名 +注册金额 +[任课教师 |指导教师 ]( +职称) +起始周 +终止周 +{上课时间 }
文件组织:以课程编码为记录关键字升序排列文件:学生成绩库学生成绩 =学生学号 +课程编码 +成绩 +备注文件组织,以学号为记录关键字升序排列注释:备注域用于标识课程类别(必修 /限选 /任选
/重修)
2 数据字典
( 3)数据项条目课程编码,XXXXXXX( 7位数字)
第 1位:系编号 第 2~3位:教研室编号第 4~6位:课程序号 第 7位:课堂号课程时间表 =课程编码 +起始周 +终止周 +{星期 +节 +教室号 }
起始 --终止周,1~22 星期,1~6 节,1~12
教室号,XXXX
课程名:长度( <=30的字符串 _
任课教师:姓名长度 <=8的字符串成绩,nnn( 3位整数)
( 4)加工说明(略)
2 数据字典
3 DD的定义和实现方法
DD定义方法:
找出 DFD中所有数据成分
(数据流,数据存储,数据项,加工 )
对数据项分类
作各成分组成的定义
规定特性和限制
排序
3 DD的定义和实现方法
DD排序方法:
按 DFD层次排序
先层次排序 ;后内部排序 (字母,汉字,..顺序 )
3 DD的定义和实现方法
DD实现方法:
人工方法(利用编号的卡片 )
自动方法 (利用字典管理程序 )
DD 应具特点,
通过名字可方便查阅数据定义
无冗余
易更新修改
(三)加工小说明描述加工的工具判定树判定表结构化语言
1 判定树 /决策树 (Decision
Tree)
条件 1 条件 2 结果计 7-9月 订票量 >20,15%
算 12月 订票量 ≤ 20,5%
折扣 1-6月 订票量 >20,30%
量 10,11月 订票量 ≤ 20,5%
例:优惠折扣某商业公司的销售策略规定:不同的购货量、
不同的顾客可以享受不同的优惠。具体办法是:
年购货额在 5万元以上且最近三个月无欠款的顾客可享受 15%的折扣;
近三个月有欠款,但是本公司十年以上的老顾客,
可享受 10%的折扣;
若不是老顾客,只有 5%的折扣;
年购货额在 5万元以下无折扣。
判定表 ST语言例,优惠 折扣交易额大于 5000元以 最近三个月无欠款:折扣 15%
与本公交易 10年以上:折扣 10%
最近三个月有欠款与本公交易 10年以下:折扣 5%
交易额大于 5000元以下:不打折
2 判定表 (决策表 )
描述多条件、多目标动作的形式化工具判定表结构,
条件类别 条件组合操作 操作执行判定表举例 (计算机票折扣率 )
1- 6,10,11月旅游时间订 票 量折 扣 量
7- 9,12月
≤20 ≤20> 20 > 20
15%5% 20% 30%
条件类别 四种条件组合操作 条件组合下操作的执行处理名,计算折扣率 (MHGP534MD)
编号,5.3.4
激活条件,收到预订票信息处理逻辑,计算折扣率执行频率,实时旅游时间订 票 量折 扣 量
7- 9,12月 1- 6,10,11月
≤20 ≤20> 20 > 20
15%5% 20% 30%
加工 (处理 )条目 — 计算机票折扣率举例:优惠 折扣
1,识别判断条件,并列出所有的条件及条件值 ;
C1(交易额) >=5000元,<5000元
C2(信誉好)近三个月无欠款、有欠款
C3(老顾客)交易 10年以上,10 年以下
2,建立条件组合数三种条件,每种各有二种情况,共有 8种组合
3,识别每个独立步骤
A1:折扣 15% A2:折扣 10%
A3:折扣 5% A4:无折扣问题描述
4.设计判断表格条件组合条件与行动
1 2 3 4 5 6 7 8
C1交易额 >=5000
元
Y Y Y Y N N N N
C2近三个月无欠款 Y Y N N Y Y N N
C3交易 10年以上 Y N Y N Y N Y N
A1折扣 15% √ √
A2折扣 10% √
A3折扣 5% √
A4无折扣 √ √ √ √
举例:优惠 折扣
5,合并与简化条件组合条件与行动
1
/
2
3 4 5/
6
7/
8
C1交易额 >=5000
元
Y Y Y N N
C2近三个月无欠款 Y N N Y N
C3交易 10年以上 --
-
Y N --- ---
A1折扣 15% √
A2折扣 10% √
举例:优惠 折扣
5,合并与简化条件组合条件与行动
1 2 3 4
C1:交易额 >=5000元 Y Y Y N
C2:近三个月无欠款 Y N N -----
C3:交易 10年以上 ----- Y N -----
A1:折扣 15% √
A2:折扣 10% √
A3:折扣 5% √
A4:无折扣 √
举例:优惠 折扣
3 结构化语言介于自然语言和形式语言之间的语言,
由 ( 1)顺序结构(祈使语句)
( 2)判断结构 (判断语句 )
( 3)循环结构 (循环语句 ) 复合而成。
可使用 IF— ENDIF,DO CASE— ENDCASE、
DO WHILE— ENDDO等关键字结构化语言的特点无确定语法;
可分层、嵌套;
各层有内、外层之分。
力求精确,避免二义性
尽可能简单
动词要有确切含义,与 DFD中加工命名相配合
名词要用 DD中定义的名词
不用副词、形容词结构化语言的原则处理名,核实订票处理处理逻辑,1读订票旅客信息文件
2搜索此文件中是否有与输入信息中姓名及身份证号相符的项
IF 有
THEN 判断余项是否与文件中信息相符
IF 是 THEN 输出已订票信息
ELSE 输出未订票信息
ELSE 输出未订票信息结构化语言举例处理名,记录成绩处理逻辑,1课程成绩,=单项成绩
2对单项成绩中每一学号,做:
存入学生成绩:
学生成绩,学号,=单项成绩,学号学生成绩,课程,=单项成绩,课号学生成绩,成绩,=单项成绩,成绩结构化语言举例记录成绩课程成绩学生成绩单项成绩例:优惠折扣
If 交易额 >=2500元 then
if 三个月无欠款 then 折扣 15%
else if 老顾客 then 折扣 10%
else 折扣 5%
else 无折扣问题描述
4 三种表达工具的比较
(1)从工具的难易程度讲,决策树最容易,而决策表难度较高。
(2)对于逻辑验证,决策表最好,而决策树较差。
(3)对于直观表达逻辑结构,决策树最好,而决策表最差。
(4)作为程序设计说明,结构化语言最好,决策树最差。
(5)对于机器可读性,结构化语言最好,决策树最差。
(6)对于可修改性,结构化语言最好,而决策表的可修改性是最低。
综上所述,可以得出的结论,
对于一个不太复杂的判断逻辑,即条件只有
2---3个,条件组合及行动在 10---15个之间,
使用决策树最好。
对于一个复杂的判断逻辑 (条件多,组合多,
相应的动作也多 ),使用决策表最好。
对于一个处理逻辑既包含了一般的顺序执行动作,又包含了判断或循环逻辑,则使用结构化语言最好。
4 三种表达工具的比较练习交易所规定给经纪人的手续费计算方法如下:
总手续 =基本手续费 +交易中的每股价格和股数有关的附加手续费如交易额少于 1000元,则基本手续费为交易额的 8.4%;
如交易额在 1000-10000元之间,则基本手续费为交易额的
5%+34;
如交易额大于 10000元,则基本手续费为交易额的 4%+134;
当每股售价低于 14元时,附加手续费为基本手续费的 5%(买入卖出数是 100的倍数),否则附加手续费为基本手续费的 9%
(不是 100的倍数);
当每股售价在 14-25元之间,附加手续费为基本手续费的 2%
(买入卖出数是 100的倍数),否则附加手续费为基本手续费的 6%(不是 100的倍数);
当每股售价超过 25元时,交易股数零散,则附加手续费为基本手续费的 6%。
要求用判断树、判断表和结构化语言表示手续费的计算方法
(四)实体 -联系图
Entity-Relation
第二节 系统分析的步骤结构化分析步骤
通过调查分析,理解当前的现实环境,获得当前系统的,具体模型,
(业务、数据)
从当前的,具体模型,抽象出,逻辑模型,,并给予改进与补充现行系统目标系统描述现实系统是如何在物理上实现的描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。
描述新系统是如何实施的(包括技术
) --系统设计阶段逻辑模型 物理模型
(本质模型、概念模型 ) (实施模型、技术模型 )
描述重要的业务功能
,无论系统是如何实施的。
结构化分析步骤系统分析阶段学生
(1) 通过对现实环境的调查,获当前系统的具体模型 (物理模型 /业务流程图 )
学生购书申请购书单发票领书单 书
107
刘教务科
206
王会计室
206
李出纳员
303
赵教材学生购买教材的具体模型结构化分析步骤
(2) 去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型 —即把完成的 功能 (本质 )
从实现功能的 方式 (现状 /形式 )分离出来学生购买教材的逻辑模型学生学生购书申请购书单发票领书单 书审查有效性 开发票开领书单 发书结构化分析步骤
(3) 分析当前系统与目标系统的差别,建立目标系统 的 逻辑模型,这是分析阶段实质性的一步计算机售书系统的逻辑模型学生学生购书单 发票 领书单审查并开发票开领书单无效书单结构化分析步骤第三步 可以这样进行:
1)决定,变化的范围,,即决定目标系统与当前系统逻辑上不同的部分方法:
沿着底层逐个检查当前系统 DFD中的每个基本加工,如果其功能与目标系统有所不同,
则属于,变化,的部分因此当前的 DFD就分成两部分:一是与目标系统相同的部分;一是与目标系统不同的
,变化,部分结构化分析 (第三步 )
结构化分析 (第三步 )
1
8
5
2
3
4
7
6
9
10
11
12
1413
16
17
18
19
15
20
21
22
24
25
23
27
26
28
29
变化的部分A
B
C
D
E
G
F
J
K
H
I
2)将,变化的部分,看成一个加工。这个加工的外部环境及其输入输出数据流是已确定的,而其内部结构是尚未确定的。
3) 运用前述的分解和构造技术,由外向里对,变化的部分,进行分析 。
自顶向下,画出各层数据流图
为每个成分定义数据字典条目
定义加工小说明结构化分析 (第三步 )
结构化分析 (第三步 )
1
8
5
2
3
4
7
6
9
10
11
12
1413
15
24
25
27
26
28
29
A
B
C
D E
GF
J
K
H I
变化的部分
(4) 对目标系统进行完善和补充,并写出完整的需求说明。
补充说明系统的人机界面
补充说明尚未考虑的细节,包括出错处理、系统启动和结束条件、性能方面的需求等
(5) 对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止。
结构化分析步骤第三节 系统分析的报告系统分析报告新系统逻辑方案的建立是:
对业务流程分析整理的结果
对数据和数据流分析整理的结果
子系统划分的结果
在具体业务处理中应建立的 管理模型 和管理方法 (见书 P323-326页)
对新系统相配套的管理制度和运行体制建立的建议
最后写出系统分析报告系统分析报告格式一:引言部分 ( 名称,开发目标,主要功能,开发背景等 )
二:现行系统概况
A,现行系统现状详细调查说明:
包括组织机构图,系统目标,功能一览表,业务流程图,
业务流量以及存在的薄弱环节,数据,主要算法等 。
B,现行系统分析:用户需求及主要存在的问题等 。
三:新系统逻辑方案
1:新系统目标 ( 要求具体 ) ;
2:新系统逻辑模型 ( 数据流程图,数据字典,实体关系图 )
3:新系统功能分析 ( 改进,补充,优越之处 ) ;
4:新系统在各个处理环节上采用的管理方法,模型;
5:与新系统相配套的管理制度和运行体制的建立;
四:下阶段工程进度计划