③确定新的业务流程。将新业务流程方案提交决策和评审机构,进而确立切实合理的业务流程;绘出新系统的业务流程图。
④确定新系统的人机界面。新的业务流程中人与机器的分工,即哪些工作可由计算机自动完成,哪些必须有人的参与。
2.业务流程图
业务流程图(TFD)是一种描述管理系统内各单位、各人员之间的业务关系,作业顺序和管理信息流向的图表。
1)业务流程图的基本符号及含义
TFD基本图形符号有6个,符号的内部解释可直接用文字标示于内。这些符号所代表的内容与信息系统最基本的处理功能一一对应,如图124所示。圆圈表示业务处理单位,方框表示处理内容,报表符号表示输出信息(报表、报告、文件、图形等),不封口的方框表示存储文件,卡片符号表示收集资料,矢量连线表示过程联系。TFD所用的符号可参见标准GB1529—89。
图124业务流程图的基本符号
2)业务流程图的绘制
业务流程分析是在已经理出的业务功能的基础上将其细化,利用系统调查的资料将业务处理过程中的每个步骤用一个完整的图形将其表示出来。TFD正是根据系统调查中所得到,,。
分析业务流程的重要步骤,因为在绘制流程图的过程中可以发现问题,分析不足,优化业务处理过程。TFD的绘制并无严格的规则,只需简明扼要地如实反映实际业务过程。例如,图125是某公司物资管理的业务流程图。该流程图描述的处理过程是:车间填写领料单到仓库领料,库长根据用料计划审批领料单,未批准的退回车间。库工收到已批准的领料单后,首先查阅库存账,若有货,则通知车间前来领取所需物料,并登记用料流水账;否则将缺货通知采购人员。采购人员根据缺货通知,查阅订货合同单,若已订货,则向供货单位发出催货请求,否则就临时申请补充订货。供货单位发出货物后,立即向订货单位发出通知。采购人员收到提货通知单后,就可办理入库手续。然后库工验收入库,并通知车间领料。此外,仓库库工还要依据库存账和用料流水账定期生成库存的报表,呈有关部门。
图125某公司物资管理业务流程图
12.2.4数据流程分析
数据流程分析是把数据组织(或原系统)内部的流动情况抽象地独立出来,舍去具体组织机构、信息载体、处理工具、物资、材料等,单从数据流动过程来考察实际业务的数据处理模式。数据流程分析主要包括对信息的流动传递、处理、存储等分析。数据流程分析的目的是发现和解决数据流程中的问题。这些问题使数据流程不通畅,前后数据不匹配,数据处理过程不合理等。一个畅通的数据流程是今后新系统用以实现这个业。
1.数据流程分析方法
数据流程分析(DataFlowDiagramAnalysis,DFDA)方法源于结构化分析,是一种以数据流程图技术为基础的、自顶向下、逐步求精的系统分析方法。
数据流程分析的核心特征是“分解”和“抽象”。所谓分解,是指将一个复杂的问题按照内在的逻辑划分为若干个相对独立的子问题,从而简化复杂问题的处理。所谓抽象,是指将一个具有某些相似性质的事务的公共之处概括出来,暂时忽略其不同之处,或者说,抽象是抽象出事物的本质特性而暂时不考虑它们的细节。
例如,在图126中,S被分解为S1,S2,S3三个子系统,S1,S2,S3又被分解为S11,S12,S13,S21,S22,S31,S32。如果子系统仍然比较复杂,还可以再进一步分解。
如此下去,直到每个子系统足够简单,能清楚地被理解和表达为止。
图126数据流程分解示意图
分解和抽象实质上是一对相互有机联系的概念。图126中,自顶向下的过程,即从顶层到第一层再到第二层的过程,称为“分解”;自底向上的过程,即从第二层到第一层再到顶层的过程,称为“抽象”。也就是说,下层是上层的分解,上层是下层的抽象。这种层次分解使我们不必考虑过多细节,而是逐步了解更多的细节。例如,图126中,对于顶层不考虑任何细节,只考虑系统对外部的输入和输出,然后一层层地了解系统内部的情况。
对于任何复杂的系统,分析工作都可以按照上述方式有计划、有步骤地进行,大小规模不同的系统只是分解的层次不同,即规模大的系统分解的层次多,规模小的系统分解的层次少。
2.数据流程图
目前的数据流程分析是通过分层的数据流程图来实现的。数据流程图(DataFlowDiagram,DFD)就是用图示的方法说明系统由哪些处理部分组成,以及各处理部分之间的联系、数据来源及去向。它描述了一个系统与具体实现无关的整体框架,是理解和表达系统的关键工具。数据流程图将数据从数据流程中抽象出来,通过图形方式描述信息的来龙去脉和实际流程。数据流程图描述了系统的本质、数据内容及处理功能,但并不关心功能如何实现,所以称为逻辑模型或概念模型。
1)数据流程图的基本符号及含义
数据流程图有4种基本元素,即外部实体、数据存储、数据流向、处理过程。这4种元127。
图127数据流程图的基本符号
(1)外部实体
外部实体是指本系统之外的人或部门及其他子系统,它们与本系统有信息传递关系,即向本系统发送数据或从本系统接收数据。在方框内要标注外部实体的名称。为了避免在一张数据流程图中线条的交叉,同一个外部实体可以出现若干次。
(2)数据流向
数据流向即数据流的传输方向。数据流表示流动着的数据,它可以是一项数据,也可以是一组数据(如订货单、扣款文件等)。数据流实际意味着各种各样的信息传输,如数据的传递、抽取、存入等。通常在数据流符号的上方标明数据流的名称。
(3)处理过程
处理过程是一个对输入数据流进行加工、变换和输出数据流的逻辑处理过程。如果将数据流比喻成工厂中的零部件传送带,数据存储是零部件的存储仓库,那么每一个加工工序就相当于数据流程图中的处理过程(功能)。一般用一个长方形来表示处理逻辑,图形下部填写处理的名称(如开发票、出库处理等),上部填写唯一标识该处理的标志。
(4)数据存储
数据存储是指对数据记录文件的读写处理,同时标明储存数据的地方(如数据文件、文件夹、账本等)。通常用右边开口的长方形条表示,右部填写存储的数据和数据集的名字,左边填入该数据存储的标志。同外部实体一样,为了避免在一张数据流程图中出现线条交叉,同一个数据存储可以出现若干次。
2)数据流程图绘制方法
根据数据流程的分析方法,即DFDA方法的思想,数据流程图的绘制应按照“自顶向下,逐层求精”的方法进行。也就是将整个系统当作一个处理功能,画出它和周围实体的数据联系过程,即一个粗略的数据流程图(顶层数据流程图),然后逐层向下分析,直到把系统分解为详细的低层次的数据流程图。数据流程图的绘制遵照业务处理的全过程。绘制数据流程图的过程,也是和相应的调查记录、数据记录反复对照的过程,因此在这个过程中能够发现处理过程不合理、数据不匹配、数据流不通畅等问题。
(1)顶层数据流程图的绘制
顶层数据流程图只有一张,它说明系统总的处理功能、输入和输出。根据系统的范围、目标和用户的需求,划定系统的界面。界面内的作为分析的系统,界面外与系统有数据联系的部门或事物,则认为是外部实体。
以高等学校学籍管理系统为例。学籍管理是一项十分严肃且又复杂的工作,它要记录学生从入学到离校整个在校期间的情况,学生毕业时把学生的情况提供给用人单位。学校还要。
首先,把整个系统看成一个功能。它的输入是新生入学时从各省、市招生办公室转来的新生名单和档案,输出是学生离校时给用人单位的毕业生档案和定期给主管部门的统计表,如图128所示。图中“学籍表”中记载着学生的基本情况、学籍变动情况、各学期各门课程的学习成绩、在校期间的奖惩记录等。
图128学籍管理系统顶层(第0层)DFD
(2)绘制低层次数据流程图
对顶层数据流程图中的过程进行逐步分解,可得到不同层次的数据流程图。数据流程图分多少层次,每层次中一个功能分解为多少个低层次的功能,要根据情况而定。系统越复杂,包含范围越大,划分的层次就越多。
图128概括地描述了系统顶层的轮廓、范围,标出了最主要的外部实体和数据流。顶层数据流程图是进一步分解的出发点。因学生学籍管理一般包括学生学习成绩管理、学生奖惩管理和学生变动管理三部分,因此又可以展开,进而形成第1层DFD,如图129所示。
图129学籍管理系统顶层(第1层)DFD
第1层DFD还可以进一步分解为3个次一级DFD,如学生成绩管理的DFD,如图1210所示。
3)绘制数据流程图的注意事项
①数据流程图的绘制一般由左至右进行。从左侧开始标出外部实体,然后画出由外部实体产生的数据流,再画出处理逻辑、数据流、数据存储等元素及其相互关系,最后在流程图的右侧画出接收信息的系统外部实体。
②父图与子图的平衡。子图是对父图中处理逻辑的详细描述,因此父图中数据的输入和输出必须在子图中反映,即父图与子图必须平衡,或者说,父图与子图必须具备接口一致性。父图与子图的平衡要求是数据流守恒原则的体现,即对每一个数据处理功能来说,要保证分解前后的输入数据流和输出数据流的数目保持不变。
③数据流至少有一端连接处理框。数据流不能直接从外部实体直接传送到数据存储,也不能从数据存储直接传送到外部实体。
④数据存储输入/输出协调。数据存储必定有输入数据流和输出数据流,缺少任何一个则意味着遗漏了某些加工。
⑤数据处理流入/流出协调。只有流入没有流出,则数据处理无需存在;只有流出没有流入的数据处理不可能满足。
⑥合理命名、准确编号。对数据流程图的基本元素进行编号,这样有利于编写数据字典及方便系统设计人员和用户的阅读与理解。
3.数据字典
除了数据流程图,结构化分析方法中还有一个主要的分析工具,即数据字典。数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。数据流程图和数据字典可以从图形及文字两个方面对系统的逻辑模型进行完整的描述。
数据字典是由数据字典卡片组成的。在数据流程图中已对数据流、数据存储、数据处理过程进行编号,根据图上的编号,逐个将其内容填入数据卡片中。数据卡片类型有以下5种。
(1)数据项卡片
数据项是数据的基本单位,也是数据不可分割的逻辑单位。例如,学号、姓名等都是数据项。数据项可以由一个或一组字符组成,字符可以是字母、数字或其他符号。一个数据项填写一张卡片,填写内容如下。
①数据项名称、别名、编号。数据项名称是该数据项区别于其他数据项的标识,应具有唯一性。除数据项名称以外的其他称呼填入别名中。
②数据项类型。可为字符型、数字型等。
③取值范围。取值范围分为离散型和连续型。对离散型的填入可能是取值及其含义,对连续型取值填入最大值和最小值,给出取值的变动范围。
④长度。指数据项的长度,一般用字节表示。
⑤有关的数据结构。填入包含该数据项的数据结构名和编号。
一个数据项可能会在多个数据项结构中出现,但只填写一张卡片,以保持数据定义的一致性。例如
数据项名称:考试成绩别名:成绩编号:10305
类型:字符型
:
取值范围及含义:优90~100,良80~89,中70~79,及格60~69,不及格0~59
(2)数据项结构卡片
数据项结构卡片用以描述数据项之间的关系,填写内容如下。
①数据结构名称、编号。名称是数据结构的唯一性标识,一个数据结构只有一个名称。
名称一般具有一定的逻辑含义,但又不能太长,其含义可以在说明一栏中作进一步解释。
②说明。
③数据结构的组成。一个数据结构可以由若干个数据项组成或若干个数据结构组成。
例如:
数据结构名称:学生成绩登记卡编号:DS0112
简述:新生入学要填写的卡片
组成:学号
姓名
入学日期
出生日期
性别
民族
家庭地址
入学成绩
(3)数据流卡片
数据流卡片是指描述数据流的卡片,填写的内容如下。
①数据流名称。
②数据流来源。来源可以是外部实体、处理过程和数据存储。卡片中应填入来源的编号和名称。
③数据流的去向。数据流可以流向外部实体、处理过程和数据存储。
④数据流的组成。数据流是由一个或一组固定的数据项组成。
⑤数据流量。指单位时间传输的次数。
例如:
数据流名称:期末成绩单编号:D0315
数据流来源:“教师”外部实体
数据流去向:“统计成绩”处理逻辑
数据流组成:课程名称+学生成绩+学号+姓名+任课教师数据流量:200份/学期
(4)数据存储卡片
数据存储卡片是指描述数据存储的卡片,填写内容如下。
①数据存储名称、编号。
②说明。
③输入的数据流。即输入该数据存储,要保存起来的数据流。