学生成绩管理系统数据流图.doc

  • 格式:doc
  • 大小:54.50 KB
  • 文档页数:4

下载文档原格式

  / 4
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.3.3.1 创建实体关系图

(1)在需求收集的过程中,要求客户列出应用软件或业务过程涉及到的"事物",将其演化成数据对象;

(2)一次考虑一个对象,分析员和客户定义这个对象和其他对象之间是否存在连接;

(3)如果存在连接,应创建一个或多个关系;

(4)对每一个关系,确定其关联类型;

(5)重复步骤(2)到步骤(4),直到定义了所有关系。

(6)定义每个实体的属性;

(7)形式化并复审实体关系图;

(8)重复步骤(1)到(7),直到数据建模完成。

举例分析:

* 实体:学生、课程、成绩。

* 实体属性定义:

学生:学号、姓名、性别、出生日期、入学年月

课程:课程编号、课程名称、课程学分、课程描述

成绩:学号、课程编号、分数、考核日期

* 实体关系图:

首先分析"学生成绩管理系统"的用户要求,找出该系统应该包括的实体。显然,学生、课程和成绩都是系统的实体,并且可以初步定义它们的属性(见上)。教务人员虽然是系统的用户,但其信息与系统处理无关,因此不用作为实体。那么,学生的选课信息是否需要成为实体呢?由于成绩信息包含了选课信息,因此选课信息不用单独记录。最终,确定系统的实体是学生、课程和成绩。

接着,我们分析这些实体之间的关联关系。从实际情况得知,一个学生可以选多门课程,一门课程也可以有多个学生选修,但每个学生选一门课程必须有一个成绩。根据上述分析,我们得到如图所示的实体关系图。

3.3.3.2 创建数据流模型

通常,数据流图是分层绘制的,整个过程反映了自顶向下进行功能分解和细化的分析过程。顶层(也称第0层)DFD用于表示系统的开发范围,以及该系统与周围环境的数据交换关系;最底层DFD代表了那些不可进一步分解的"原子加工";中间层DFD是对上一层父图的细化,其中的每一个加工可以继续细化,中间层次的多少由系统的复杂程度决定。

(1)第0层DFD将整个系统表示成一个加工;

(2)确定并标记主要的输入和输出;

(3)分离出下一层中的加工、数据对象和存储,并对其进行细化,一次细化一个加工;

(4)标记所有加工和箭头;

(5)重复步骤(3)和(4),直到所有的加工只执行一个简单的操作,可以很容易地用程序实现。举例分析:

* 第0层DFD图

教务人员维护学生信息和课程信息,并登录学生的选课成绩;学生查询自己的成绩单。

* 第1层DFD图

对第0层DFD图中的一个加工"学生成绩管理"进行展开。

* 第2层DFD图

对第1层DFD图中的一个加工"查询学生成绩"进行展开。

绘制第0层DFD的时候,将整个系统看成一个加工,然后找出作用于该加工的外部实体,以及相应的数据输入和输出。对于"学生成绩管理系统"而言,整个系统就是一个加工"学生成绩管理"。从用户的需求描述可知,"教务人员"是数据的源点,"学生"是数据的终点。另外,教务人员需要录入学生信息、课程信息和成绩,说明"学生信息"、"课程信息"和"成绩"是数据流;同样,"查询请求"和"查询结果"也是数据流。根据上述分析,得到如图所示的第0层DFD。

绘制下一层数据流图时,细化第0层的加工"学生成绩管理",从而描述系统的主要功能。从第0层DFD 得知,"学生信息"是教务人员需要录入的一个信息,因此加入一个加?quot;录入学生信息",同样得到"录入课程信息"、"登记成绩"两个加工。另外,数据流"查询请求"和"查询结果"应该由加工"查询成绩"来完成。这样,我们用"录入学生信息"、"录入课程信息"、"登记学生成绩"和"查询学生成绩"四个加工代替第0层的"学生成绩管理",同时增加这些数据流对应的数据存储,即"学生"、"课程"和"成绩",最后得到如图所示的第1层DFD。

为了继续进行分解,我们分析第1层DFD中的加工"查询学生成绩"。学生查询成绩时需要提供合法性检查,因此,"查询学生成绩"可以分解为"合法性检查"和"查询成绩"两个处理步骤,从而形成如图所示的第2层DFD。

根据以上实例和经验,绘制数据流图应当遵循以下原则:

(1)分层时,子图的输入、输出数据流必须和父图中相应加工的输入、输出数据流一致;

(2)加工的编号应该唯一且具有层次性;

(3)加工不应该只有输入或只有输出,通常既有输入又有输出;

(4)数据流图不应反映处理的顺序;

(5)加工之间应通过数据存储进行通信,避免从一个加工直接流到另一个加工;

(6)数据应通过加工进行流动,避免从一个数据存储直接流到另一个数据存储;

(7)数据流图中所有元素的命名应当对客户有意义,且与业务相关;

(8)不要在一个图中绘制7个以上的加工,否则难于绘制和理解。

* 数据字典

以下列出"学生成绩管理系统"的部分数据字典条目:

数据项名:学生