数据流图和数据字典初解

数据流图

数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

基本的图形符号:
图形符号.png

数据守恒原则

1.外部实体与外部实体之间不存在数据流

数据流1.png

2.外部实体与数据存储之间不存在数据流
数据流2.png

3.数据存储与数据存储之间不存在数据流
数据流3.png

守恒加工原则

对同一个加工来说,输入与输出的名字必须不同样。即使它们的组成成分同样。
1.对于每一个加工,必须既有输入数据流。又有输出数据流。
2.数据流与加工有关,且必须经过加工。不能原封不动输出,也不能只有输入没有输出。

数据字典

数据流图描写叙述了系统的分解。但没有对图中各成分进行说明。数据字典是对数据流图中出现的全部被命名的图形元素在数据字典中作为一个词条加以定义,使每一个图形元素的名称都有一个确切的解释。

在数据字典中有4种类型的条目:
1、数据项条目:通常为数据项的值类型,同意的取值范围等
2、数据流条目:给出某个数据流的定义,列出该数据流的各组成数据项。
3、文件条目:对文件的定义。列出期组成的数据项
4、加工条目:对每一个不能再分解的加工做说明。包含加工的激发条件。加工的逻辑,优先级等等。



例子

自己初学根据理解写的一个例子,分享出来,有错还请指教:point_down: :point_down: :point_down: :point_down:

数据流图

数据流图.jpg

数据字典

因为起先写的是文档,复制上来没有表格,视觉上会有影响,见谅!

数据项:

数据项名 stu_number
说明 标识选课信息表、学生课程成绩单、学生基本信息表
类型 bigint
长度 11
别名 学号
取值范围 00000000000-99999999999
2.
数据项名 stu_name
说明 标识学生姓名
类型 char(10)
长度 10
别名 学生姓名
取值范围 0000000000-9999999999
3.
数据项名 stu_gender
说明 标识学生性别
类型 char(10)
长度 10
别名 学生性别
取值范围 0000000000-9999999999
4.
数据项名 stu_age
说明 标识学生年龄
类型 int
长度 2
别名 学生年龄
取值范围 00-99
5.
数据项名 cou_number
说明 标识课程信息表
类型 int
长度 9
别名 课程号
取值范围 000000000-999999999
6.
数据项名 cou_name
说明 标识课程名
类型 char(20)
长度 20
别名 课程名
取值范围 00000000000000000000-99999999999999999999
7.
数据项名 cou_period
说明 标识课时数
类型 int
长度 3
别名 课时数
取值范围 000-999
8.
数据项名 tea_number
说明 标识教师基本信息表
类型 int
长度 7
别名 教师工号
取值范围 0000000-9999999
9.
数据项名 tea_name
说明 标识教师姓名
类型 char(10)
长度 10
别名 教师姓名
取值范围 0000000000-9999999999
10.
数据项名 tea_gender
说明 标识教师性别
类型 char(10)
长度 10
别名 教师性别
取值范围 0000000000-9999999999
11.
数据项名 tea_title
说明 标识教师职称
类型 char(10)
长度 10
别名 教师职称
取值范围 0000000000-9999999999

数据流:

数据流名 学生信息输入处理
说明 学生根据输入信息学号、姓名、性别、年龄来保存基本信息
来源 学生输入信息
去向 输出到学生基本信息表
数据结构 学号、姓名、性别、年龄
2.
数据流名 课程信息输入处理
说明 根据输入信息课程号、课程名、课时数来保存基本信息
来源 输入课程信息
去向 输出到课程信息表
数据结构 课程号、课程名、课时数
3.
数据流名 教师信息输入处理
说明 根据输入信息工号、姓名、性别、职称来保存基本信息
来源 教师输入信息
去向 输出到教师基本信息表
数据结构 工号、姓名、性别、职称
4.
数据流名 选课
说明 学生根据课程信息表所保存信息来进行选课
来源 学生基本信息表、课程信息表
去向 选课信息表
数据结构 学号、课程号
5.
数据流名 讲授
说明 教师通过课程信息表进行讲授课程
来源 教师基本信息表、课程信息表
去向 录入课程成绩
数据结构 工号、课程号
6.
数据流名 录入课程成绩
说明 教师通过选课信息表对学生成绩进行录入
来源 选课信息表、讲授
去向 录入课程成绩
数据结构 学号、课程号、成绩

数据存储:

数据存储名 学生基本信息
说明 对学生的学号、姓名、性别、年龄的描述
输出数据流 学生信息
数据描述 学号、姓名、性别、年龄
数量 根据学生数
存取方式 按学号存取
2.
数据存储名 课程信息
说明 对课程的课程号、课程名、课时数的描述
输出数据流 课程信息
数据描述 课程号、课程名、课时数
数量 学校分配数量
存取方式 随机存取
3.
数据存储名 教师基本信息
说明 对教师的工号、姓名、性别、职称的描述
输出数据流 教师信息
数据描述 工号、姓名、性别、职称
数量 教师数量
存取方式 按工号存取
4.
数据存储名 选课信息
说明 对学生选课学号、课程号信息的描述
输出数据流 选课信息
数据描述 学号、课程号
数量 选课数量
存取方式 按学号存取
5.
数据存储名 学生课程成绩
说明 对学生选课学号、课程号信息的描述
输出数据流 学生课程成绩
数据描述 学号、课程号、成绩
数量 学生所选课程数
存取方式 按学号存取

加工过程:

处理过程 确认学生基本信息
说明 对学生填入的信息确认是否合法
输入 学号、姓名、性别、年龄
输出 学生基本信息表
程序提要 a. 学号位数是否符合、学号是否已存在
2.
处理过程 确认课程信息
说明 对填入的课程信息
输入 课程号、课程名、课时数
输出 课程信息表
程序提要 a.确认是否已存在该课程
3.
处理过程 确认教师基本信息
说明 对填入的教师信息确认是否合法
输入 工号、姓名、性别、职称
输出 教师基本信息表
程序提要 a. 工号位数是否符合、工号是否已存在
4.
处理过程 确认学生选课信息
说明 对填入的选课信息确认是否合法
输入 学号、课程号
输出 选课信息表
程序提要 a. 学号是否在学生基本信息表存在

  1. 课程号是否在课程信息表存在
    5.

处理过程 确认学生成绩
说明 对填入的学生课程成绩信息确认是否合法
输入 学号、课程号、成绩
输出 学生课程成绩单
程序提要 a. 学号是否在学生基本信息表存在

  1. 课程号是否在课程信息表存在

*为了完成自己几天一篇文章的强制要求(PS:实在担心自己会放弃而强制),这篇是我仓促之间做出来的,其实这个也是我的数据库初学作业,也是昨天晚上熬夜做出来的,理解或者作业难免会有错误,或许几个月后在看这篇会哈哈大笑吧。
不过也希望对初学者理解有些许的帮助!*

评论

  1. 之乎者也
    Android Chrome
    3年前
    2019-10-22 0:14:58

    [secret]不赖不赖
    [/secret]

    • 博主
      之乎者也
      Windows Chrome
      3年前
      2020-3-23 18:53:26

      ::twemoji:smile::

  2. 之乎者也
    Android Chrome
    3年前
    2019-10-21 23:49:11

    一起加油 ::aru:flower::

    • 博主
      之乎者也
      Windows Chrome
      3年前
      2019-10-22 0:03:17

      ::twemoji:smile:: 加油!

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇