《学生成绩管理系统数据流图.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统数据流图.docx(4页珍藏版)》请在三一办公上搜索。
1、学生成绩管理系统数据流图.3.3.1 创建实体关系图 在需求收集的过程中,要求客户列出应用软件或业务过程涉及到的事物,将其演化成数据对象; 一次考虑一个对象,分析员和客户定义这个对象和其他对象之间是否存在连接; 如果存在连接,应创建一个或多个关系; 对每一个关系,确定其关联类型; 重复步骤到步骤,直到定义了所有关系。 定义每个实体的属性; 形式化并复审实体关系图; 重复步骤到,直到数据建模完成。 举例分析: * 实体:学生、课程、成绩。 * 实体属性定义: 学生:学号、姓名、性别、出生日期、入学年月 课程:课程编号、课程名称、课程学分、课程描述 成绩:学号、课程编号、分数、考核日期 * 实体关
2、系图: 首先分析学生成绩管理系统的用户要求,找出该系统应该包括的实体。显然,学生、课程和成绩都是系统的实体,并且可以初步定义它们的属性。教务人员虽然是系统的用户,但其信息与系统处理无关,因此不用作为实体。那么,学生的选课信息是否需要成为实体呢?由于成绩信息包含了选课信息,因此选课信息不用单独记录。最终,确定系统的实体是学生、课程和成绩。 接着,我们分析这些实体之间的关联关系。从实际情况得知,一个学生可以选多门课程,一门课程也可以有多个学生选修,但每个学生选一门课程必须有一个成绩。根据上述分析,我们得到如图所示的实体关系图。 3.3.3.2 创建数据流模型 通常,数据流图是分层绘制的,整个过程反
3、映了自顶向下进行功能分解和细化的分析过程。顶层DFD用于表示系统的开发范围,以及该系统与周围环境的数据交换关系;最底层DFD代表了那些不可进一步分解的原子加工;中间层DFD是对上一层父图的细化,其中的每一个加工可以继续细化,中间层次的多少由系统的复杂程度决定。 第0层DFD将整个系统表示成一个加工; 确定并标记主要的输入和输出; 分离出下一层中的加工、数据对象和存储,并对其进行细化,一次细化一个加工; 标记所有加工和箭头; 重复步骤和,直到所有的加工只执行一个简单的操作,可以很容易地用程序实现。 举例分析: * 第0层DFD图 教务人员维护学生信息和课程信息,并登录学生的选课成绩; 学生查询自
4、己的成绩单。 * 第1层DFD图 对第0层DFD图中的一个加工学生成绩管理进行展开。 * 第2层DFD图 对第1层DFD图中的一个加工查询学生成绩进行展开。 绘制第0层DFD的时候,将整个系统看成一个加工,然后找出作用于该加工的外部实体,以及相应的数据输入和输出。对于学生成绩管理系统而言,整个系统就是一个加工学生成绩管理。从用户的需求描述可知,教务人员是数据的源点,学生是数据的终点。另外,教务人员需要录入学生信息、课程信息和成绩,说明学生信息、课程信息和成绩是数据流;同样,查询请求和查询结果也是数据流。根据上述分析,得到如图所示的第0层DFD。 绘制下一层数据流图时,细化第0层的加工学生成绩管
5、理,从而描述系统的主要功能。从第0层DFD得知,学生信息是教务人员需要录入的一个信息,因此加入一个加?quot;录入学生信息,同样得到录入课程信息、登记成绩两个加工。另外,数据流查询请求和查询结果应该由加工查询成绩来完成。这样,我们用录入学生信息、录入课程信息、登记学生成绩和查询学生成绩四个加工代替第0层的学生成绩管理,同时增加这些数据流对应的数据存储,即学生、课程和成绩,最后得到如图所示的第1层DFD。 为了继续进行分解,我们分析第1层DFD中的加工查询学生成绩。学生查询成绩时需要提供合法性检查,因此,查询学生成绩可以分解为合法性检查和查询成绩两个处理步骤,从而形成如图所示的第2层DFD。
6、根据以上实例和经验,绘制数据流图应当遵循以下原则: 分层时,子图的输入、输出数据流必须和父图中相应加工的输入、输出数据流一致; 加工的编号应该唯一且具有层次性; 加工不应该只有输入或只有输出,通常既有输入又有输出; 数据流图不应反映处理的顺序; 加工之间应通过数据存储进行通信,避免从一个加工直接流到另一个加工; 数据应通过加工进行流动,避免从一个数据存储直接流到另一个数据存储; 数据流图中所有元素的命名应当对客户有意义,且与业务相关; 不要在一个图中绘制7个以上的加工,否则难于绘制和理解。 * 数据字典 以下列出学生成绩管理系统的部分数据字典条目: 数据项名: 学生 描述: 别名: 定义: 数据量: 峰值: 其他说明: 包括学生的主要信息 无 学号 + 姓名 + 性别 + 出生日期 + 入学年月 10000左右 随时,但经常在新生入学时期 在系统功能扩充时可能增加定义项 数据流名: 描述: 别名: 类型: 长度: 其他说明: 学号 唯一标识学生的编号 无 字符串 6位字符 学号不能重复 数据流名: 描述: 别名: 频率: 峰值: 其他说明: 学生成绩查询 系统处理的一个命令 无 10000次左右 随时,但经常在学期开学 在系统功能扩充时可能增加种类