软件设计 -- 数据流图,数据字典,ER图

作者:opLW
参考:《软件工程》第三版

目录

1.数据流图
2.数据字典
3.ER图

1.数据流图
  • 数据流图的基本元素(DFD:data flow diagram数据流图) 包括:数据流,加工,文件,源或宿。其中数据流,加工,文件用于构建软件系统内部的数据处理模型。源或宿表示存在于系统之外的对象,帮助我们理解系统数据的来源和去向。

  • 源或宿
    源或宿通常是指存在于软件系统之外的人员或组织,表示软件系统的输入数据的来源和输出数据的去向,因此也称为源点和终点。

    • 源或宿是不同个体 例如一个考务处理系统,考生向系统提供报名单(输入数据流),所以考生是该系统的源;而考务处理系统将成绩的统计分析表(输出数据流)传递给考试中心,所以考试中心是该系统的一个宿。
    • 源或宿是同一个个体 例如报名系统,考生向系统提供报名单(输入数据流),系统根据信息生成一个准考证并发送给考生(输出数据流),在这个过程中考生既是源又是宿。
  • 加工
    加工描述了输入数据流到输出数据的变换,即将输入数据流转换为输出数据流。每一个加工用一个定义明确的名字标识。一个加工至少有一个输入数据流和一个输出数据流。

    • 例如考务系统的统计成绩,审定合格者,编准考证号等。
  • 数据流
    数据流由一组固定成分的数据组成。例如:运动会管理系统中,报名单(数据流)由队名,姓名,性别,参赛项目等数据组成。

    • 数据流的流向 从一个加工流向另外一个加工,从加工流向文件(写文件),从文件流向加工(读文件),从源流向加工,从加工流向宿。
    • 每一个数据流用一个定义明确的名字标识。但是如果是从文件流出或流向文件,由于它们代表了文件的一个记录,所以不必为他们命名。
  • 文件
    文件用于存放数据。通常一个数据流流入一个加工之后就会消失,会变成其他输出数据流。所以整个系统就需要文件来存放原始数据流或其他数据流。

    • 例如 考务处理系统中,随着不断有学生报名,报名册的内容需要不断补充。在统计成绩和制作考生通知书时还需要报名册的相关信息,所以报名册应该作为文件存在,保存考生的相关信息。
    • 每一个文件用一个定义明确的名字标识。可以有数据流流入文件表示写文件,可以有数据流流出文件表示读文件,也可以同时有数据流流入和流出表示修改文件。
  • 数据流图的扩充符号
    在DFD中,一个加工可以有多个输入数据流和多个输出数据流,此时可以添加其他符号来描述多个数据流之间的关系。

    • 星号(*) 表示数据流之间存在 “ 与 ” 的关系。
      • 如果是输入数据流,则表示所有输入数据流到达之后,才可以进行加工处理;
      • 如果是输出数据流,则表示加工结束之后将同时产生所有的输出流数据。
    • 加号(+) 表示数据流之间存在 “ 或 ” 的关系。
      • 如果是输入数据流,则表示其中任意一个数据流到达之后就可以开始加工。
      • 如果是输出数据流,则表示加工处理的结果至少产生其中一个输出数据流。
    • 异或(⊕) 表示数据流之间存在 “ 异或 ” 的关系。
      • 如果是输入数据流,则表示当且仅当其中一个输入数据流到达之后才可以进行加工处理;
      • 如果是输出数据流,则表示加工结束之后仅产生这些输出流数据中的一个。
  • 综合例子
    在这里插入图片描述

2.数据字典
  • 数据字典 数据字典与数据流图密不可分,两者构成软件的逻辑模型。数据字典的条目分为5类:数据流,文件,数据项(组成数据流和文件的数据),加工,源或宿。数据字典主要用来描述数据流图中各项的详细内容。
  • 数据字典使用的描述符号
    在这里插入图片描述
  • 数据字典条目
    不同的开发团队可以有不同的要求,也有工具可以帮助我们生成数据字典,下面列出各个条目常见的项,黄色是必须的项
    • 数据流条目
名称 数据流的名字
别名 名称的另外一个名字
简述 对数据流的简单说明
数据流组成 描述数据流由哪些内容组成
数据流来源 描述数据流从哪一个加工或源流出
数据流去向 描述数据流流入哪个加工或宿
数据量 系统中该数据流的总量,如考务系统中“ 报名单 " 的总量是10000张
峰值 某段时间处理的最大数量
注解 对该数据的其他补充说明

其中数据流组成是数据流条目的核心,列出了组成该数据流的各数据项。
如: 培训报名单 = 姓名 + 单位 + 课程

  • 文件条目
名称 文件名
别名 名称的另外一个名字
简述 对文件的简单说明
文件组成 描述文件由哪些数据项组成
写文件的加工 描述哪些加工对文件进行写的操作
读文件的加工 描述哪些加工对文件进行读的操作
文件组织 描述文件的存储方式(顺序,索引)等
使用权限 描述不同类型用户的权限
  • 数据项条目
名称 数据项名
别名 名称的另外一个名字
简述 对数据项的简单说明
数据类型 描述数据项的类型,如整型,字符串等
计量单位 指明数据项的计量单位,如条,公斤等
取值范围 描述数据项允许的域值,如1…100等
  • 加工条目
名称 加工名
别名 名称的另外一个名字
简述 对加工功能的简单说明
加工号 加工在DFD中的编号
加工逻辑 简要描述加工的大体过程
  • 源或宿条目
名称 源或宿名
别名 名称的另外一个名字
简述 简要说明,包括指明该实体是源还是宿,还是两者兼具

3.ER图

万水千山总是情,麻烦手下别留情。
如若讲得有不妥,文末留言告知我,
如若觉得还可以,收藏点赞要一起。

opLW原创七言律诗,转载请注明出处

发布了21 篇原创文章 · 获赞 28 · 访问量 7326

猜你喜欢

转载自blog.csdn.net/qq_36518248/article/details/89971066