《系统分析方法及理论知识.ppt》由会员分享,可在线阅读,更多相关《系统分析方法及理论知识.ppt(160页珍藏版)》请在三一办公上搜索。
1、系统分析,本章主要包括以下几个部分:4.1 系统调查和可行性研究分析 4.2 结构化分析方法 4.3 系统调查和业务流程分析 4.4 数据字典 4.5 确定建立系统的逻辑模型(逻辑方案),,根据系统规划确定了需要开发的系统之后,则进入实 质性的管理信息系统开发建设的首要阶段:系统分析阶段 系统分析阶段的任务:在总体规划的指导下,对需开发的某个或若干个子系 统进行深入仔细地调查研究,确定新系统逻辑功能的过程。系统分析是在充分认识原有信息系统的基础上,完成 新系统的逻辑模型设计,确定需开发的新系统应该“做什 么?”,即What?系统分析在很大程度上决定了系统开发工作的成败,是MIS开发的关键阶段。
2、,系统分析的步骤:系统调查和可行性研究详细调查组织结构和业务流程分析系统数据流程分析建立新系统的逻辑模型提出系统分析报告,4.1 系统调查和可行性研究分析 一、系统调查 在开展新系统分析之前,必须对现行系统进行调查,以确定开发新系统是否可行。系统调查的内容:1、系统界限和运行状态;2、组织机构和人员分工;3、业务流程;4、基础数据:各种计划、单据、报表等;5、资源情况;6、约束条件;7、薄弱环节;8、其他需要了解的有关问题,二、MIS需求分析和可行性研究 在初步调查的基础上,根据系统规划中需要开发的系 统,首先对MIS进行需求分析,在此基础上分析系统实现 的现实可行性必要性和可行性(可行性研究
3、)。(一)MIS的需求分析 在规划的系统的目标基础上,分析和确定:信息需求:各系统应提供的信息 功能需求:各系统应具有的功能 性能需求:硬件技术、软件技术、存储容量、传输速度 等要求 资源和环境要求:对资金、管理人员的素质等方面要求,可靠性要求:系统不出故障的概率和故障恢复能力要求 安全保密要求:保障数据安全的技术要求,(二)可行性分析 根据系统的各项需求,结合系统调查情况,分析规划 中的MIS系统在目前情况下是否有必要、有可能进行。具体主要从以下三个方面进行可行性分析:,1、技术的可行性(1)人员和技术力量的可行性(2)计算机硬件的可行性(3)计算机软件的可行性,2、经济可行性 即对开发进行
4、成本效益分析 分析方法:资本回收期法、净现金流量法、内含报酬率 法等方法,(1)成本的估算 成本构成:a、设备费用(计算机、网络及外围设备、机房、空调等),b、软件购买费用(系统软件费用、应用软件购买费用)c、MIS软件开发费用(开发费、有关人员工资、加班费、资料费、差旅费、调查费、复印费、评审和鉴 定费等)d、系统运行、维护费用(人员技术培训费、设备维修和保 养费、水电费、磁盘、墨盒、色带、打印纸、加 班费等)软件开发费用的估算方法:,a、程序代码行估算法:开发费用=程序的代码行*每行价格 b、工作量估算法:开发费用=软件开发工作量(人次/月)*工作量成本(元/人月),(2)效益的估算 效益
5、构成:a、直接效益:节省人力、降低成本、改善服务导致客户 的增加、加速资金周转等,b、间接效益:改进簿弱环节、提高数据处理的准确性和 及时性、提高效率、提高管理和决策水平、提高 企业信誉等,(3)管理可行性 取决于:领导和管理人员的态度、管理的基础工作(如业 务、单据、报表、帐册等是否规范、统一;机构设置、人员分工是否合理;编码方案是否存在和统一;各项 基础数据是否健全和准确;管理人员的素质和文化程 度是否符合要求等)、管理制度,等。,(三)编制可行性研究报告(P.75),得出结论可行性结论要求明确指出以下三者之一:可以立即开发 改进原系统 目前不可行,推迟开发,4.2 结构化分析方法 结构化
6、分析方法:是在结构化程序设计思想基础上发展 起来的方法,通过运用系统的思想和系统工程的方 法,按照面向用户的原则,采用自顶向下的策略,由粗到细,逐层分解的分析方法。结构化分析方法是目前较为成熟、广为使用的一种分析方 法。,一、特点:1、面向用户的观点,强调用户自始至终的参与 2、系统的思想和方法(注重整体分析,层层落实以及 系统的适应性)3、自顶向下的原则 4、过程文档化,文档标准化、规范化 5、尽可能采用图表工具描述,直观易理解,6、强调逻辑结构而不是物理实现,二、结构化分析的主要工作内容:1、系统详细调查;2、组织结构业务流程分析;3、数据流程分析;4、建立确定新系统逻辑模型;5、提出系统
7、分析报告。,三、结构化系统分析工具 工具:业务流程图、数据流程图、数据字典、加工(处 理逻辑)说明(包括:判断树、判断表、结构化语言),2 系统调查的方法,系统调查表访问有关人员考察乃至参与现行系统开调查座谈会,某出版社系统调查表,某出版社系统调查表,访问方式中常见问题,例如:你所在的工作岗位是什么?岗位工作的性质是什么?你的工作任务是什么?每天工作怎样进行时间安排?你的工作分为几班?工作结果同前、后续工作如何联系?你所接触的报表有几类?数据有哪些?满意程度如何?你所在的工作岗位是否恰当?工作量如何?你的工作计划不能合理安排的原因是什么?你的工作岗位存在的问题是什么?(组织不力?规划不好?信息
8、不畅?)你通常采取什么手段提高工作效率?使用计算机了吗?如果增加激励(奖金、鼓励、新技术等),工作效率是否会提高?,访问方式中常见问题,例如:(续)从有效组织经营的角度出发,你的权限是否适当(大或小)?你认为影响本企业经营效率的关键问题是什么?从全局的利益出发,你认为现有的管理体制是否合理?你认为提高经营的潜力在哪里?现存管理体制有哪些问题?有效降低经营成本的途径有哪些?信息系统的开发在本单位是否有必要?你认为新的信息系统应该重点解决哪些问题?你所了解的管理工作中,你认为决策的效益应从哪些方面去衡量?,重点询问常见问题,例如:(续)你认为业务、财务、储运等部门是否已经使用了计算机?有什么问题?
9、你用过计算机吗?你认为企业现在使用计算机还有什么困难吗?在你所了解的管理决策工作中,有哪些可以定量或定性用计算机处理吗?本企业与外部哪些企业有业务联系?业务往来用计算机处理吗?原来开发的软件有哪些毛病?为什么老用不好呢?,1 系统调查的分析步骤,组织结构调查组织结构图管理功能调查功能层次图管理业务流程调查业务流程图,组织机构调查组织结构图,业务功能的调查业务功能一览表,二、业务流程分析 系统业务流程分析是业务调查的重要方面,目的在于分 析清楚系统中管理业务处理的流程(走向)、相互关系、涉及的部门、人员、数据及相互关系。工具业务流程图,业务流程图(TFD):是业务流程分析所使用的图形工具,用一些
10、规定的符号和连线表达某个具体业务处理过程。,绘制业务流程图,在销售部门的管理功能中,有一项“出入库业务”管理,该项业务的业务流程说明如下:(1)采购部门要将当日采购的原料入库;(2)生产领料部门要领用原材料;(3)根据库存统计分析程序,对库存流水账中的信息进行分析处理获得“库存明细帐,出库统计表等分析数据提交给有关人员和统计部门。,实例1:材料库存管理系统业务流程分析,业务流程调查内容,处理哪些业务信息来源和去向处理方法计算方法提供信息的时间和形态业务高峰期,领料 部门,领料单,审核、查询库存,库管 员,库存明细账,出入库统计表,超储材料表,根据材料库存管理系统业务流程图分析绘制其DFD。,本
11、次课主要内容:,数据流程分析数据流程图的概念数据流程图的组成数据流程图的基本画法,数据流程分析,在对系统进行了调查和业务流程分析后,为了用计算 机进行系统中的信息管理,还必须进行数据流程分析,还 必须进一步舍去物质要素(如货物、产品等),对系统的 数据、数据流程进行调查,分析清楚系统业务中的信息流 动、处理和存储的过程,从而在此基础上确定新系 统的逻辑模型。数据流程(Data Flow,DF):指数据在系统中产生、传输、加工处理、使用、存储的过程。,数据流程图(Data Flow Diagram,DFD)是结构化系统分析的主要工具。也是新系统 逻辑模型的主要组成部分。它着重表达了系统所具有 的
12、各个功能以及它们之间的逻辑关系,它可以用少数 几种符号生动、精确地在逻辑上描述了新系统的信息 流动、处理和存储的过程。,绘制数据流程图的四种符号是:,数据流程图的基本组成元素有4个,即:数据流、文件、加工、数据的源点和终点(外部实体),各成分的表示方法,实例:材料库存管理系统业务流程图,审核验收,合格入库单,入库登记,不合格领料单,领料 部门,领料单,审核、查询库存,出库单,出库登记,原材料出库,管理人员,库存明细账,出入库统计表,超储材料表,材料库存管理系统,入库业务处理,出库业务处理,库存统计分析,实例:材料库存管理系统业务流程图,审核验收,合格入库单,入库登记,不合格领料单,领料 部门,
13、领料单,审核、查询库存,出库单,出库登记,原材料出库,管理人员,库存明细账,出入库统计表,超储材料表,入库处理 P1,库存统计分析 P3,出库处理 P2,材料库存管理系统第二层流程图,1)数据流,表示数据和数据流向,由一组固定成分的数据组成 如“入库单”由“货物编号、货物名称、入库时间、入库数量、单价”等成分组成数据流的命名用名词,不要使用意义空洞的名词尽量使用现实系统已有名字,能够描述数据流的内容,2)加工,表示对数据进行的操作,如“入库处理”、“出库处理”等加工的命名尽量最好使用动宾词组,也可用主谓词组不要使用空洞的动词,3)文件,相关数据的逻辑集合.如“库存流水账”数据存储与加工的方向“
14、读出”、“写入”命名方法与数据流相似,修改库存,商品库存,检索商品信息,商品目录,4)数据源点与数据终点-外部实体,说明数据输入的源点(数据源)或数据输出的终点(数据终点)位于系统之外的信息提供者或使用者,称为外部项。即存在于系统之外的人员或组织。他们和系统都发生一定的数据联系如“采购部门”,“领料部门”等,,画DFD遵循的原则,采用自顶向下,逐层分解的原则.将DFD分成多层(子图、父图概念)表示,从而逐步展开数据流和功能的细节。数据流图通常比较复杂,往往一个系统的数据流图涉及到大量的加工,数据流以及数据存储,通常一张纸是画不下的,同时,仅用一张数据流图反映整个业务过程显得杂乱,层次结构不清晰
15、.因此我们通常按照加工的层次绘制多张数据流图.,S,2,1,3,2-3,3-1,3-2,顶层,1层,2层,(基本系统模型),(系统的子功能),DFD的分层表示,2-1,2-2,如何画分层DFD,(1)先画出系统关联图顶层图 在调查研究的基础上,明确所描述的系统与外部实体之间信息联系,绘制出最高层的数据流图关联图.把所要描述的系统当作是一个数据加工项 确定整个系统的输入数据流和输出数据流确定系统数据的源点和终点,即外部实体.(也可不考虑这点),实例:材料库存管理系统业务流程图,不合格领料单,领料 部门,领料单,审核、查询库存,出库单,出库登记,原材料出库,管理人员,库存明细账,出入库统计表,超储
16、材料表,材料库存管理 系统 P,材料库存管理系统顶层(第一层)流程图,统计部门 S4,采购部门 S1,库管员 S3,领料部门 S2,首先,绘制系统的顶层(第一层)流程图:,(2)自顶向下画出1层DFD先分析系统有哪些主要信息处理功能(子系统),根据以上的分析,将顶层图中的总加工项分解成若干个子加工环节(子系统).确定每个子加工的输入与输出数据流以及与这些加工有关的文件.根据各加工环节和文件以及输出与输入数据流的关系,将外部项、加工、文件用数据流连接起来,入库处理 P1,库存统计分析 P3,出库处理 P2,然后,通过分解,得到系统的第二层数据流程图:,材料库存管理 系统 P,实例:材料库存管理系
17、统业务流程图,审核验收,合格入库单,入库登记,不合格领料单,领料 部门,领料单,审核、查询库存,出库单,出库登记,原材料出库,管理人员,库存明细账,出入库统计表,超储材料表,入库处理 P1,库存统计分析 P3,出库处理 P2,材料库存管理系统第二层流程图,()继续分解,画第3层DFD如果2层DFD中的某些加工仍然较复杂,可以将它们继续分解成若干功能独立的子加工一般情况下,下层的一张数据流图对应于其上层数据流图中的一个加工环节,在上层数据流图的加工环节分解成下层加工环节数量少时,下层一张数据流图亦可对应于上层图中一个以上的加工环节,实例:材料库存管理系统业务流程图,审核验收,合格入库单,入库登记
18、,不合格领料单,领料 部门,领料单,审核、查询库存,出库单,出库登记,原材料出库,管理人员,库存明细账,出入库统计表,超储材料表,入库单审核 P1-1,入库登记 P1-2,然后,通过分解,得到系统的第二层数据流程图:,入库处理 P1,继续分解分析,分别画出:入库处理P1的分层流程图、出库处理P2的分层流程图、库存统计分析P3的分层流程图,将他们组合,,即得到“材料库存管理系统”的第三层数据流程图,例如:入库处理P1数据流程图(同理:画出出库处理P2的 流程图、库存统计分析P3的流程图),采购部门 S1,入库单审核 P1-1,入库登记 P1-2,入库处理P1分层数据流程图,领料部门 S2,领料单
19、审核 P2-1,出库登记 P2-2,入库处理P2分层数据流程图,F04出库单,加工分解的结束标志:按照以上的思路对复杂的加工进行逐层分解,形成第、层数据流图,直到各加工被分解为只有单一功能时结束分解结束的标志是:对于每一个最底层的加工,即各层数据流图中不再做进一步分解的加工,其逻辑功能已足够简单、明确和具体。,数据流程图举例,学生选课系统:系统功能简述:学生根据系统提供的开课清单选择自己感兴趣的课程,并向选课系统提交填制好的选课单,经过系统的处理由系统自动向每个学生提交学生课表并且向任课教师提供相关课程的成绩记录表,图1 学生选课系统的第一层DFD,系统具体功能细节:学生在该系统中根据教务处提
20、供的“开课清单”文件填写“选课单”,系统的“选课审核”程序要根据“开课清单”文件审核选课单的合理性并自动生成“选课费用”,接下来“课程注册”程序根据“选课费用”和“开课清单”提供的信息自动生成每位学生的课程注册信息(包括所选课程和课程费用)并且将各位学生的课程注册信息添加到“课表总文件”中;最后系统的“表格打印”程序根据“课表总文件”中的信息分别打印生成“学生课表”和“成绩记录单”并打印。,分析子加工,学生选课系统,1.选课审核,2.课程注册,3.文件打印,每个子加工的输入数据流与输出数据流,分析加工1“选课审核”的加工说明,首先对学生填写的选课单进行“合法性校验”即根据开课清单检查所选课程是
21、否规范,并生成合法选课记录信息,然后根据学生成绩库文件进行“查已修课程成绩”处理,(即检查该生以前是否存在尚未取得学分的必修课程,)如果存在则要求重修并产生相应的“重修课程”信息;接下来要利用“计算课程冲突率程序”计算该学生新选课程上课时间和需重修课程上课时间的冲突率:如果不发生冲突或者冲突率小于30%则可以选修,否则根据重修必修任选的优先级删除已选课程,从而最终确定该生合法的“已选课程”信息;最后,根据合法的“已选课程”信息经过“计算课程注册费”程序处理生成最终的“选课费用”信息,分析加工1选课审核的子加工,1.选课审核,1-2查已修课程成绩,1-3计算课程冲突率,1-4计算课程注册费,1-
22、1合法校验,分析加工3”课程打印”的子加工,3.文件打印,3-1打印学生课表,3-2打印课程成绩单,简单系统数据流程图的绘制举例:,示例1:绘制工资系统数据流程图 某公司手工管理工资系统中月末发工资的处理过程是 这样的:月末财务科根据已存档的上月工资发放清单和人事科 送来的人员工资变动表抄写本月工资发放清单中的各工资 项目;然后,根据总务科每月末出具的代扣水、电、煤气 费的扣款数填入本月工资发放清单;最后计算出每个职工 应发工资数和实发工资,并填入工资发放清单。,基本画法:分两步 1、画系统的输入、输出,工资处理 系统,人事科,总务科,2、画系统的内部,工资 处理系统,登记变动工资,登记代扣项
23、,计算工资,登记上月工资,人事科,总务科,登记上月 工资,登记变动工资,登记代 扣项,计算工资,DFD正确性检查,分析员可以从以下几个角度来检查DFD的正确性:数据守恒 数据存储的使用 父图和子图的平衡,3)画分层DFD的注意点,(1)编号(2)父图-子图平衡,加工编号,加工的编号原则:子加工编号为:其所属父加工编号+该子加工的序号连接符为:”-”,S,2,1,3,2-2,2-1,2-3,3-1,3-2,顶层(不编号),1层,2层,父图-子图平衡,父图-子图平衡:模型分解时必须保持父图的输入输出数据流和子图输入输出数据流分别相同。,父图-子图平衡,父图-子图平衡,父图-子图平衡补充说明,借助数
24、据字典判断:,数据流的分解,发票=学号姓名书号单价数量总价学生=学号姓名教材=书号单价数量总价 所以:发票=学生+教材所以伴随着加工的分解,数据流同样也被分解,”发票”数据流被分解成”学生”和”教材”,但是根据各数据流的数据组成分析,发票=学生+教材,从整体上看,父图和子图在数据输入和输出上是等效的.,几种错误(1),数据源,数据终点,数据源,数据存储,数据终点,数据存储,数据存储,数据存储,数据流必须要么从某个加工流出、要么流入某个加工,而不能直接从外部项流向数据存储等等。图示的几种流动都是不合理的,几种错误(2),数据流必须和至少一个加工发生联系,分析数据的逻辑结构,编制数据字典 数据字典
25、(DD,Data Dictionary)数据字典作用:对系统中数据的属性、数据流的属性、数据存储 属性、据处理(加工)的描述,数据字典:它是对数据流程图中的各个成分的具体描述和定义。通过对数据流程图中的每一数据项、数据流、数据 存储以及加工给出精确的定义,并将其按一定顺序 排列起来,便组成了一本数据字典,入库处理 P1,库存统计分析 P3,出库处理 P2,材料库存管理系统第二层流程图,如库存管理系统中的数据项有:入出库单号、入库日期、原材料代码、原材料名称、计量单位、入库单价、入 库数量、入库金额、出库单价、出库数量、出库金额、库存数量、库存金额、管理员代码、入库总量、入库总金额等,每一个数据
26、项,须用数据字典条目详细描述出来,如“入库单号”条目:,数据项名:入库单号数据项代码:RKDBH类型:字符长度:10说明:第1位为R(入库单),27位为日期,810位为顺序号,实例:以“材料库存管理系统”为例,编制数据字典 1、数据项条目:描述基本数据项属性:指数据流程图中不可分割的数据项,其属性包括:名称、类型、长度、合理取值范围等,入库处理 P1,库存统计分析 P3,出库处理 P2,材料库存管理系统第二层流程图,2、数据流条目:描述数据流属性 包括数据流名称、数据流的各个数据项组成以及数据流的来源和去向等,库存管理系统中的数据流包括:入库单、领料单、入库信息、流水账信息、库存量信息、出库信
27、息、出入库信息、库存信息、出库单、出入库统计表、库存统计表、超储材料表等,每一个数据流,须用数据字典条目详细描述出来,如“入库单”条目:,数据流名:入库单数据流代号:F01数据流组成:入库单号+入库日期+原材料代码+原材料 名称+计量单位+入库数量+入库单价+入库金额流量:20/天来源:采购部门去向:入库处理,3、数据存储条目:描述数据存储文件属性 包括数据存储的文件名、数据项组成、存储方式、存取频率等。,库存管理系统中的文件包括:库存材料流水帐文件、入出库单文件,每一个数据存储,须用数据字典条目详细描述出来,如“库存流水账”条目:,数据存储名:库存流水账数据存储代号:D1数据存储(文件)组成
28、:入出库单号+入出库日期+原材料代码+原材料名称+计量单位+入出库数量+入出库单价+入出库金额+管理员代码存储方式:顺序存储存取频率:100/天,采购部门 S1,入库单审核 P1-1,入库登记 P1-2,入库处理P1分层数据流程图,4、数据处理(亦称“加工”)条目:用来对数据流程图中的各个数据处理功能给予说明,数据处理应集中描述用户要求数据处理“做什么?”包括加工名称、输入数据、输出数据、加工逻辑等,库存管理系统中的数据处理(底层加工)包括:入库登记、出库登记、库存查询、库存统计分析等,加工名:入库登记加工代号:P1-2输入数据:入库信息输出数据:库存流水账处理逻辑:由库存管理员根据传递来的入
29、库信息确定入库量,将有关入库信息输入存储到库存流水账文件中,每一个数据处理,须用数据字典条目详细描述出来,如“入库登记”条目:,加工小说明,描述加工逻辑的工具,结构化语言判定树(决策树)判定表(决策表),例:某公司销售管理系统中“优惠折扣处理”的加工逻辑如下:,某商业公司的销售策略规定:不同的购货量、不同的顾客可以享受不同的优惠。具体办法(加工逻辑):年购货额在5万元以上且最近三个月无欠款的顾客可享受15%的折扣;年购货额在5万元以上且近三个月有欠款,但是本公司十年以上的老顾客,可享受10%的折扣;若不是老顾客,只有5%的折扣;年购货额在5万元以下无折扣。,优惠折扣处理,顾客信息,折扣率,结构
30、式语言,一般形式如下:如果 条件1 则 方案A 否则 方案B允许使用嵌套结构。,举例:优惠折扣,年购货额在5万元以上且最近三个月无欠款的顾客可享受15%的折扣;年购货额在5万元以上且近三个月有欠款,但是本公司十年以上的老顾客,可享受10%的折扣;若不是老顾客,只有5%的折扣;年购货额在5万元以下无折扣。1.识别判断条件,并列出所有的条件及条件值;C1(交易额)=50000元、50000元C2(信誉好)近三个月无欠款、有欠款C3(老顾客)交易10年以上、10 年以下2.识别每个独立步骤A1:折扣 15%A2:折扣 10%A3:折扣 5%A4:无折扣,问题描述,例:优惠折扣,If 交易额=5000
31、0元 then if 三个月无欠款 then 折扣 15%else if 老顾客 then 折扣 10%else 折扣 5%end if end if else 无折扣 end if,问题描述,举例:某售票处订票系统中“机票折扣处理”加工逻辑:如果乘客订7-9月或12月的机票,并且订票量20,则折扣率为15%如果乘客订1-6月或10,11月的机票,并且订票量20,则折扣率为30%,计算机票折扣,订票条件,折扣率,判定表举例:优惠折扣,1.识别判断条件,并列出所有的条件及条件值;C1(旅游时间/机票时间)7-9,12 月 1-6,10,11月C2(订票量)20张2.建立条件组合数两类条件,每类条
32、件各有二种情况,共有4种组合3.识别每个结果A1:折扣 5%A2:折扣 15%A3:折扣 20%A4:折扣30%,问题描述,例:优惠折扣,如果 7-9,12 月 则 如果=20张 则 折扣=5%否则 折扣=15%否则 如果=20张 则 折扣=20%否则 折扣=30%,当某个动作的执行不是只依赖于一个条件,而和若干个条件有关,可使用决策树来对其进行描述 决策树是用来表示逻辑判断问题的一种图形工具。它用“树”来表达不同条件下的不同处理。比用语言更为直观。,返回,2判定树/决策树(Decision Tree),决策树一般形式,决策树的左边为树根,从左向右依次排列各条件,左边的条件比右边的优先考虑。根
33、据每个条件的取值不同,树可以产生很多分支,各分支的最右端(即树梢)为不同的条件取值状态下采取的行动(也称策略)。,返回,要求的量,条件1,行动或策略,条件2,成立,不成立,不成立,成立,不成立,成立,方案1,方案2,方案3,方案4,举例:某售票处订票系统中“机票折扣处理”加工逻辑:如果乘客订7-9月或12月的机票,并且订票量20,则折扣率为15%如果乘客订1-6月或10,11月的机票,并且订票量20,则折扣率为30%,计算机票折扣,订票条件,折扣率,判定表举例:优惠折扣,1.识别判断条件,并列出所有的条件及条件值;C1(旅游时间/机票时间)7-9,12 月 1-6,10,11月C2(订票量)2
34、0张2.建立条件组合数两类条件,每类条件各有二种情况,共有4种组合3.识别每个结果A1:折扣 5%A2:折扣 15%A3:折扣 20%A4:折扣30%,问题描述,条件1 条件2 结果计 7-9月 订票量20 15%算 12月 订票量20 5%折扣 1-6月 订票量20 30%量 10,11月 订票量20 20%,采用判定树来表示:,例:某公司销售管理系统中“优惠折扣处理”的加工逻辑如下:,某商业公司的销售策略规定:不同的购货量、不同的顾客可以享受不同的优惠。具体办法(加工逻辑):年购货额在5万元以上且最近三个月无欠款的顾客可享受15%的折扣;年购货额在5万元以上且近三个月有欠款,但是本公司十年
35、以上的老顾客,可享受10%的折扣;若不是老顾客,只有5%的折扣;年购货额在5万元以下无折扣。,优惠折扣处理,顾客信息,折扣率,举例:优惠折扣,1.识别判断条件,并列出所有的条件及条件值;C1(交易额)=50000元、50000元C2(信誉好)近三个月无欠款、有欠款C3(老顾客)交易10年以上、10 年以下2.识别每个独立步骤A1:折扣 15%A2:折扣 10%A3:折扣 5%A4:无折扣,问题描述,折扣政策,=5万元,5万元,最近三个月无拖欠款,最近三个月有拖欠款,=10年,10年,15%,10%,5%,无折扣,条件1-交易额,条件2-支付信用,条件3-与本公司业务史,折扣政策,按键或击鼠标,
36、例:优惠折扣,以表格的形式给出各种条件的全部组合以及在各种组合下应采取的行动。当条件较多、每一条件的取值有若干个、相应的动作也很多的情况下,使用决策表比决策树更加有效和清晰。,3 判定表(决策表),举例:某售票处订票系统中“机票折扣处理”加工逻辑:如果乘客订7-9月或12月的机票,并且订票量20,则折扣率为15%如果乘客订1-6月或10,11月的机票,并且订票量20,则折扣率为30%,计算机票折扣,订票条件,折扣率,判定表举例:优惠折扣,1.识别判断条件,并列出所有的条件及条件值;C1(旅游时间/机票时间)7-9,12 月 1-6,10,11月C2(订票量)20张2.建立条件组合数两类条件,每
37、类条件各有二种情况,共有4种组合3.识别每个结果A1:折扣 5%A2:折扣 15%A3:折扣 20%A4:折扣30%,判定表举例(计算机票折扣率),16,10,11月,3 判定表(决策表),判定表结构:条件类别 条件组合 操作 操作结果,例:某公司销售管理系统中“优惠折扣处理”的加工逻辑如下:,某商业公司的销售策略规定:不同的购货量、不同的顾客可以享受不同的优惠。具体办法(加工逻辑):年购货额在5万元以上且最近三个月无欠款的顾客可享受15%的折扣;年购货额在5万元以上且近三个月有欠款,但是本公司十年以上的老顾客,可享受10%的折扣;若不是老顾客,只有5%的折扣;年购货额在5万元以下无折扣。,优
38、惠折扣处理,顾客信息,折扣率,判定表举例:优惠折扣,1.识别判断条件,并列出所有的条件及条件值;C1(交易额)=50000元、50000元C2(信誉好)近三个月无欠款、有欠款C3(老顾客)交易10年以上、10 年以下2.建立条件组合数三种条件,每种各有二种情况,共有8种组合3.识别每个独立步骤A1:折扣 15%A2:折扣 10%A3:折扣 5%A4:无折扣,问题描述,条件类别,条件组合,操作,条件组合下操作的执行结果,4 三种表达工具的比较,(1)从工具的难易程度讲,决策树最容易,而决策表难度较高。(2)对于逻辑验证,决策表最好,而决策树较差。(3)对于直观表达逻辑结构,决策树最好,而决策表最
39、差。(4)作为程序设计说明,结构化语言最好,决策树最差。(5)对于机器可读性,结构化语言最好,决策树最差。(6)对于可修改性,结构化语言最好,而决策表的可修改性是最低。,综上所述,可以得出的结论:对于一个不太复杂的判断逻辑,即条件只有2-3个,条件组合及行动在10-15个之间,使用决策树最好。对于一个复杂的判断逻辑(条件多,组合多,相应的动作也多),使用决策表最好。对于一个处理逻辑既包含了一般的顺序执行动作,又包含了判断或循环逻辑,则使用结构化语言最好。,4 三种表达工具的比较,领料部门 S2,领料单审核 P2-1,出库登记 P2-2,入库处理P2分层数据流程图,F04出库单,加工条目中使用文
40、字说明虽然能反映每一数据处理功能的基本要求,但对于复杂的逻辑判断,需采用判断树(决策树)、判断表(决策表)、结构化语言等工具描述,例如,对“出库登记”须根据库存量的多少来确定,判断表(亦称“决策表”、“判定表”),判断树示例,判断表示例,例2:某货运站的收费标准如下:若收件地点在本省,则快件每公斤6元,慢件每公斤4元;若收件地点在外省,则在25公斤以内(包含25公斤)快件每 公斤8元,慢件每公斤6元;如果超过25公斤时,快件每公 斤10元,慢件每公斤8元。试:绘制确定收费标准的判断表、判断树和结构式语言,例1:某银行拟开发计算机储蓄系统。储户填写的存、取款单由业 务员键入系统,如果是存款,系统
41、记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算利息并打印出利息清单给储户。试:1、画出其数据流程图;2、编制存款单的数据字典,4.5 确定建立系统的逻辑模型(逻辑方案),编制系统分析说明书 建立系统的逻辑结构包括:新系统的结构(子系统的划分)、业务流程图、数据流程图、数据字典、功能描述等。将系统的逻辑结构整理成文,最后以系统说明书及附件的形式表 示出来 一方面,作为系统分析阶段的成果;另一方面,作为评审的依据.同时,也是系统运行后维护的依据 系统分析说明书(系统分析报告)(详见P.90),学习本章重点应掌握和理解:系统分析的概念、目的(任务)、
42、主要内容;可行性研究的内容;结构化系统分析的概念、特点、步骤、内容、工具;常用分析工具的掌握和运用,包括:数据流程图、数据字典、决策树(判断树)、决策表(判断表)、结构式语言;系统分析报告的主要内容。,作业:1、试述可行性分析的主要内容?,2、系统分析阶段的主要目标是什么?,3、简述结构化系统分析方法?结构化方法的主要步骤?,4、结构化系统分析的主要图表工具有哪些?概念及作用?(定义:数据流程图、数据字典、决策树),5、(1)某企业仓库的领料处理如下:仓库收到车间送来的 领料单后,先进行审批,若同意,则交仓库保管员根据库存 台账查验是否有货。若有货,则进行出库处理;若缺货,则 向采购部门发订货
43、单。若领料单未被批准,则将领料单退回 车间。请据此绘制数据流图。(2)若仓库收到的领料单每天约15份左右,领料单上的项目包 括:领料单号、部门编号、材料编号、数量、领料日期等。试根据这一业务情况,写出数据字典中的“领料单”数据流定 义。,6、国内电话收费标准如下:(1)市内电话每3分钟收费0.3元,不足3分钟按3分钟计。(2)长途电话距离在1000Km以内,每 分钟收费0.8元,1000Km以上(含1000Km),每分钟收费1元,不足1分钟按1分钟计,夜间(217时)及节假日通话费减半。试用决策树、决策表和结构化语言描述上述标准。,购书单,发票,领书单,审查并开发票,开领书单,无效书单,学生,
44、1,2,各班学生用 书 表,举例:,学生,教材存量表,各成分的表示方法,(1)数据流条目,给出DFD中某个数据流的定义,通常包括:数据流标识数据流来源数据流去向数据流的数据组成流动属性描述:频率、数据量,数据流条目举例,数据流名:发票组成:学号系编号+姓名书号单价数量总价书费合计数据量:100次/天 来源:审查并开发票去向:开领书单,(2)数据项条目(数据元素),不可再分解的数据单位,包括:数据项名 类型 长度(精度)取值范围,数据项条目举例,数据项名:系编号类型:整型长度:2位取值范围:1-100*例如:01,12*,(3)数据存储条目(文件),给出DFD中某个数据存储的定义,通常包括:文件
45、名组成存取方式存取频率,购书单,发票,领书单,审查并开发票,开领书单,无效书单,学生,1,2,各班学生用 书 表,举例:,学生,教材存量表,数据存储条目举例,文件名:各班学生用书表组成:系编号专业和班编号年级书号存储方式:按系、专业和班编号从小到大排列存取频率:30次/天,(4)加工条目,加工类条目即数据处理描述,也称为小说明。描述实现加工的策略而不是实现加工的细节。小说明可认为是DD的组成部分。也可在DD中定义只说明每个加工的组成(每个处理分解成多少小处理),而在小说明中详细描述它的处理逻辑。,加工条目描述的内容,加工名 输入数据 输出数据 加工逻辑,购书单,发票,领书单,审查并开发票,开领
46、书单,无效书单,学生,1,2,各班学生用 书 表,举例:,学生,教材存量表,加工条目举例,在DD中定义说明每个加工的组成:加工名:审查并开发票输入数据:购书单输出数据:发票加工逻辑:如果购书单有效则开购书发票,如果是无效购书单则不开发票.,某订货系统功能说明如下:订货系统包括两个主要功能:产生报表和订货处理 假设某一企业采购部门每天需要一张订货报表,报表按材料编号排序,报表中列出所有需要再次订货的材料。对于每种需要再次订货的材料应列出下列数据:材料编号、名称、订货数量、目前价格(或参考价格)、主要供应单位、第二供应单位等。材料入库或出库称为事务,通过放在仓库的CRT终端把事务报告给订货系统。当
47、某种材料的库存数量少于库存量临界值时就应该再次订货。,应用举例(1)设计以下订货系统的逻辑模型,如何画出上述订货系统的数据流程图呢?将整个系统看成是一个总加工,确定这个加工的输入和输出数据流,并考虑数据的源点和终点。画出顶层数据流图.从上面对系统的描述可以知道,仓库管理员通过终端把事务报告给订货系统,系统经过汇总处理,每天向采购部提供一张订货报表。所以,采购员是数据的终点,而仓库管理员是数据的源点。,应用举例,各成分的表示方法,考虑”加工”。问题给出“采购部需要定货报表”,因此必须有一个用于产生报表的处理。输入事务的结果是改变材料库存量,然而任何改变数据的操作都是处理,因此对事务进行的加工是另
48、一个处理。子加工(子系统)有:产生报表和事务处理,应用举例,确定DFD各组成元素.分析DFD中涉及的加工,数据流和数据存储(文件),考虑数据流。系统把订货报表送给采购部,因此订货报表是一个数据流;仓库需要将每笔事务输入到系统中,显然事务是另一个数据流。数据流有:事务和订货报表,应用举例,考虑数据存储。从问题的阐述中,可以看出产生报表和处理事务这两个处理在时间上明显不匹配,每当有一个事务发生时就必须立即处理事务,而每天只产生一次订货报表。因此,用来产生订货报表的订货信息必须存放一段时间,也就是应该有一个数据存储。另外,“当某种材料的库存数量少于库存量临界值时就应该再次订货”,这个事实意味着必须在
49、某个地方有材料库存量和库存量临界值这样的数据。因此,需要有一个库存清单的数据存储。数据存储(文件)有:订货信息文件和库存清单文件,应用举例,一旦把数据流程图中的四种成份都分离出来之后,就可着手绘制系统的第1层数据流程图了。数据流程图的绘制也是采用自顶向下的方法,由粗到细,逐层细化,最后形成一套完整的拟建系统的数据流程图。,应用举例续,(1)数据存储条目,(2)数据流条目,(3)数据项条目,(4)加工条目,(5)外部项条目,练习绘制数据流程图,某仓库管理系统按以下步骤进行信息处理,试画出其数据流程图(1)保管员根据当日的出库单和入库单通过出库处理和入库处理分别将数据输入到”出库流水帐”和”入库流
50、水帐”,并修改”库存台帐”;(2)根据库存台帐由统计打印程序输出库存日报表(3)需要查询时,可利用查询程序在输入查询条件后,到库存台帐去查询,显示查询结果.,练习绘制数据流程图,某仓库管理系统按以下步骤进行信息处理,试画出其数据流程图(1)保管员根据当日的出库单和入库单通过出库处理和入库处理分别将数据输入到”出库流水帐”和”入库流水帐”,并修改”库存台帐”;(2)根据库存台帐由统计打印程序输出库存日报表(3)需要查询时,可利用查询程序在输入查询条件后,到库存台帐去查询,显示查询结果.分析:加工:出库处理 入库处理 统计 打印 查询文件:出库流水帐 入库流水帐 库存台帐数据流:出库单 入库单 库