U/C矩阵(见课件)
数据守恒原理(Principle of Data Conservation):数据必定有一个产生的源,而且必定有一个或多个用途。
1) 完备性检验是指对具体的数据项(或类)必须有一个产生者(即“C”)和至少一个使用者(即“U”)
2) 一致性检验是指对具体的数据项∕类有且仅有一个产生者(“C”) 3) 无冗余性检验即表中不允许有空行或空列。 2、数据流程分析
数据流程分析是把数据在组织(或原系统)内部的流动情况抽象地独立出来,舍去了具体组织机构、信息载体、处理工作、物资、材料等,单从数据流动过程来考查实际业务的数据处理模式。主要包括对信息的流动、传递、处理、存储等的分析。
数据流程图的基本符号(见课件) 例举学籍管理系统顶层DFD(见课件) 例举学籍管理系统第一层DFD(见课件) “成绩管理”框的展开(见课件) “分析期末成绩”框的展开(见课件) “确定异动情况”框的展开(见课件) 调整后的“分析期末成绩”框(见课件) 例举教学管理系统的高层数据流程图(见课件) 3、补充绘制数据流程图的注意事项 ①数据流程图的绘制一般由左至右进行。 ②父图与子图的平衡
③数据流至少有一端连着处理框 ④数据存储流入流出协调 ⑤数据处理流入流出协调 ⑥合理命名、准确编号
例举汽车配件公司的数据流程图(见课件) 作业:散客订房的信息流程
当客人是作为一名个人而非一个团体的成员时,饭店是作为零散客人对待的,其一般的接待过程为:由客人或为客人填写预定登记表确定房价和保留时间→接受预付定金→确认或修改预订。
零散客人的预订方式可能有:1个人订房,由住店者个人或其代理人亲自到饭店总台预订部办理订房手续;2电话订房,由住店者个人或其代理人通过电话向饭店总台预订部办理订房手续;3传真、信函订房,由住店者个人或其代理人通过传真、信函向饭店总台预订部办理订房手续;4网络订房,由住店者个人通过计算机网络或Internet向饭店总台预订部办理订房手续。不同的预订方式只是在信息的交流方式上有所区别,饭店的预定业务处理过程是基本一致的。
从饭店预订业务过程的信息处理角度看,可以将其流程具体描述如下:获取客人基本信息和住房要求→获取客人时间安排信息→根据房间要求、时间及其它信息向客人确定房价→获取客人其它方面要求的信息→接收预订金→确认或根据客人的要求修改前述预订信息→预分房间。在这一过程中需要说明的是:首先要为客人的每一个预订要求建立记录文件,以后的修改和客人到达确认预订房间时查阅。其次,在确定房价时还要明确该客人是否己与饭店签有协议,或该客人是否为饭店的协议单位的客人,如果有协议存在,应根据协议的约定确定房价。第三,并不是对所有的预订客人都要收取预订金的,对于一些特殊情况的客人,如饭店的协议单位客人、饭店聘请的客人等是不收
取预定金的。
第四节 数据字典
数据字典DD(Data Dictionary)与DFD配合能够进一步表达数据处理要求。DFD给出了系统的组成及内部各元素的相互关系,但未对各项元素的具体含义加以说明。
数据字典的任务是对DFD中出现的图形元素包括数据流、处理单元、数据存储、外部项以及数据元素、数据的源、汇点等成为字典中的一个词条加以定义。使得每一个元素都有详尽、确切的解释。
一、数据项的定义
数据项又称数据元素,是数据的最小单位。在数据字典中,对于数据项的特性的描述,具体包括:(1)数据项的名称、编号、别名和简述;(2)数据项的长度;(3)数据项的取值范围; 实例:
数据项名称:考试成绩 编号:103-05
简述:学生期末考试成绩,共分四等。 别名:成绩 长度:l个汉字
取值含义:优90~100、良80~89、中70~79、及60~69 二、数据结构的定义
数据结构描述数据项之间的关系。一个数据结构可以由若干个数据项组成;也可以由若干个数据结构组成,还可以由若干个数据项和数据结构组成。数据结构的定义包括以下内容:(1)数据结构的名称和编号;(2)简述;(3)数据结构的组成。 实例:
数据结构名称:学生成绩登记卡 编号:DS03-12
简述:新生入学要填写的卡片。 组成:学号
姓名 入学日期 出生日期 性别 民族 家庭地址 三、数据流的定义
数据流是由一个或一组固定的数据项组成。定义数据流时,不仅要说明数据流的名称、组成等,还应指明它的来源、去向和数据流量等。 实例:
数据流名称:期末成绩单 编号:D03-15
简述:学期结束时,任课老师填写的成绩单。 数据流来源:“教师”外部实体 数据流去向:“统计成绩”处理逻辑。
数据流组成:科目名称+学生成绩+学号+姓名+成绩+任课教师 流通量: 200份/学期
四、处理逻辑的定义 实例:
处理逻辑名称:成绩管理 编号:P05-1.5
简述:对学生考试成绩进行日常的管理与维护。 输入:学生修课名单,课程名称,学生成绩。
处理:1、从学生名册中获取修同一门课程的学生名单; 2、统计每门课程的修课人数并报系机关;
3、从系机关获取课程安排数据,包括各门课程的上课时间、地点;
4、形成教学安排数据,其中包括各门课程的修课学生名单、上课地点,通知有关任课教师;
5、接收任课教师的学生成绩数据,并登录在学生成绩档案中;
6、进行成绩统计,计算每门课程成绩优良、及格、不及格、补考缺考的人数及比率,计算各科平均成绩并向系机关报告;
7、向学生发出学生成绩通知,并附补考安排。
输出:教学安排,学生成绩通知单,学生修课情况与成绩统计 五、数据存储的定义 实例:
数据存储名称:学生成绩一览表 编号:F05-01
简述:学期结束,按班汇集学生各科成绩。 流入的数据流:“登记成绩一览表”处理逻辑。
流出的数据流:“登记学籍表”,“填写成绩单”,“评奖学金”,“填写成绩单”处理逻辑。 数据存储的组成:班级+学号+姓名+科目名称+学生成绩 六、外部实体的定义 实例:
外部实体名称:教师 编号:S01-05 简述:任课教师。
从外部实体输入的数据流:教学安排。 输出给外部实体的数据流:学生成绩。
补充:数据结构、数据流以及数据存储的组成,可以用一些简单的符号来简明地表示,如:
十表示“与”。
[]表示“或”,即选择括号中的某一项。
{}表示“重复”,即括号中的项可能重复若干次。 ()表示“可选”,即括号中的项可选可不选。 例如,数据流名称:学生选课。
组成:学生编号十课程编号十(所选课程学分)
数据字典的编写是系统开发中很重要的一项基础工作,从系统分析一直到系统设计和系统实施都要使用它。在数据字典的建立、修改和补充过程中,始终要注意保证数据的一致性和完整性。
数据字典有两种存储形式:一种是人工方式;另一种是存储在计算机中。
第五节 描述处理逻辑的工具 一、判断树
判定树是由左边(树根)开始,沿着各个分支向右看,根据每一个条件的取值状态,可以找出相应的策略(即动作),所有的动作都在判定树的最右侧。
例如:某公司的对客户分类标准如下:
顾客每次订货额在 1000元以上(含1000元),信誉好的,订单设“优先”标志;信誉不好,但是老客户的,订单设“优先”标志;信誉不好,但是新客户的,订单设“正常”标志;每次订货额在 1000元以下,订单设“正常”标志。 二、判断表
判断表的编制方法是: ①列出所有的n个条件;
②列出所有的条件组合,条件组合数最多为2n 个; ③按全部条件组合列出其对应的行动方案; ④整理方案。 三、结构英语表示法
又叫判断语句。其一般形式是: 如果条件 1 则动作A 否则(条件不成立) 就动作B
上述例子若采用判断语句可表示如下: IF 顾客订额≥1000 IF 顾客信誉好 订单设“优先”标志 ELSE
IF 顾客是老顾客 订单设“优先”标志 ELSE
订单设“正常”标志 ENDIF ENDIF ELSE
订单设“正常”标志 ENDIF
作业:检查订购单的处理逻辑具体如下:
(1)如果金额超过500元且未过期,则发出批准单和提货单; (2)如果金额超过500元且已过期,则不发批准单;
(3)如果金额不超过500元且不论过期与否,则均发出批准单和提货单,在过期的情况下,还需发出通知单。
第六节 系统化分析
在原系统详细调查的基础上进行系统化分析是提出新系统逻辑模型的重要步骤。这一步骤通过对原有系统的调查和分析,找出原系统业务流程和数据流程的不足,提出优化和改进的方法,给出新系统所要采用的信息处理方案。 一、分析系统目标
根据详细调查对可行性分析报告中提出的系统目标作再次考察,对项目的可行性和必要性进行重新考虑,并根据对系统建设的环境和条件的调查修正系统目标,使系统目标适应组织的管理需求和战略目标。 二、分析业务流程 (1)原有流程的分析。 (2)业务流程的优化。 (3)确定新的业务流程。 (4)新系统的人机界面。
案例分析:福特货款支付流程(见课件) 三、分析数据流程 1·原有数据流程的分析。 2·数据流程的优化。 3·确定新的数据流程。 4·新系统的人机界面。 四、功能分析和划分子系统
系统目标是系统的第一层功能,第二层的功能可看作是子系统,再下面就是各项更具体的功能。 把系统划分为子系统可以简化设计工作。划分后子系统之间接口关系明确,每一子系统的设计、调试,互不干扰地各自相对独立地进行。今后要修改或扩充系统,可在有关子系统范围内进行。 1、建立一个U/C矩阵
从理论上说建立U/C矩阵首先要进行系统化,自顶向下地划分,然后逐个确定具体的功能(或功能类)和数据库(或数据类),最后填写上功能/数据之间关系,即完成了U/C的建立过程(见课件)。
2、U/C矩阵的求解
U/C矩阵求解过程就是对系统结构划分的优化过程。其具体作法是调换表中的行变量或列变量,致使表中的“C”元素尽量地靠近U/C矩阵的对角线,然后再以“C”元素为标准,划分子系统。
表上移动作业过程、子系统划分、数据联系(见课件) 3、系统功能划分与数据资源分布
U/C矩阵的求解目的是为了对系统进行逻辑功能划分和考虑今后数据资源的合理分布。一般说来U/C矩阵的主要功能有如下四点:
①通过对U/C矩阵的正确性检验,及时发现前段分析和调查工作的疏漏和错误; ②通过对U/C矩阵的正确性检验来分析数据的正确性和完整性; ③通过对U/C矩阵的求解过程最终得到子系统的划分;
④通过子系统之间的联系(小方框以外的“U”)可以确定子系统之间的共享数据。 4、系统功能划分与数据资源分布
系统功能划分注意事项:
①沿对角线一个接一个地画,即不能重叠,又不能漏掉任何一个数据和功能。