软件工程(四)数据流图DFD
结构化分析中,常用到数据模型为实体关系图,功能模型是数据流图 DFD
可以认为,一个基于计算机的信息处理系统由数据流和一系列的转换构成,这些转换将输入数据流变换为输出数据流。数据流图就是用来刻画数据流和转换的信息系统建模技术的。它用简单的图形记号分别表示数据流、转换、数据源以及外部实体。
数据对象由其属性刻画 实体-关系图是表示数据对象及其关系的图形语言机制 数据对象彼此之间相互连接的方式称为关系,也称为联系。可以是一对一联系(1∶1)、一对多联系(1∶N)、多对多联系(M∶N)联系也可能有属性。
数据流图的功能主要为(1)描绘数据在系统中各逻辑功能模块之间的流动和处理过程,是一种功能型模型 (2)主要刻画“功能的输入和输出数据”、“数据的源头和目的地” (3)在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。它与数据字典一起用来构成系统的逻辑模型。
数据流图中个个对象的表示一般来说源点与终点:通常指外部对象,用长方形或长方体表示。处理(加工):可以代表一系列程序、单个程序或者程序的一个模块,还可代表人工过程等,用圆形或圆角矩形表示。数据存储:指处于静止状态的数据,用平行线或开口 矩形表示。数据流:指处理运行中的数据,用箭头表示。
在数据流方法中,对数据的精化是伴随着对转换的精化而同步进行的。DFD是自顶向下分解的。顶层DFD图通过系统和尾部世界之间的联机来描述系统的范围,没有数据流图的雏形,只是一种思想的表达,所以也成为关联图。将顶层DFD的系统分解为若干个子系统,决定每个子系统间的数据接口和活动关系,得到0层DFD图,然后继续向下细化,得到1、2、3…DFD图。最后得到的那个叫做底层DFD图,底层的DFD图最为详细,操作也是基本操作。参照底层的DFD图来实施。
软件工程(四)数据流图DFD的更多相关文章
- 数据流图DFD画法
数据流图(DFD- Data Flow Diagram)让系统分析者弄清楚"做什么"的问题,其重要性就不言而喻了.那么我们怎么画数据流图呢?数据流图与系统流程图又有什么区别呢? 步 ...
- 2. 软件数据流图(DFD)
数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型. 下图是一个飞机机票预订系统 ...
- 数据流图——从软考真题中学画数据流图DFD
文章目录 题目 画顶层图 画0层图 解题技巧 题目 建议将题目复制到word后与此文分屏查看.后面需要多次查看题目. 某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩, ...
- 软件工程导论复习 如何画系统流程图和数据流图 part2
数据流图(DFD) 数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型.下 ...
- 数据库设计--数据流图(DFD)
1.数据流图的定义 数据流图(DFD)是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程, 因为它仅仅反映系统必须完毕的逻辑功能.所以它是一种功能模型. 在结构化开发方法中. ...
- 【软件工程1916|W(福州大学)_助教博客】2019年上学期期末问卷调查结果公示
1.调查问卷概况 福州大学2019W班,收集到有效答卷44份 2. 调查问卷情况 Q1:请问你平均每周在课程上花费多少小时? 去除自估水平超过40小时的,平均16.6H Q2.软工实践的各次作业分别花 ...
- OO课程的完结,软件工程学习的开始
目录 UML小结 阅读学习 大象:Thinking in UML UML精粹 UML和模式应用 本单元作业的架构设计 四个单元中架构设计及OO方法的演进 四个单元中测试与实践的演进 课程收获 三个具体 ...
- 二级C语言题集
时间:2015-5-13 18:01 在131题之后是按考点分类的题集,有需要的朋友可以看一下 ---------------------------------------------------- ...
- [转]面向过程的分析(POA),和面向对象的分析(OOA)
欢迎转载本文,转载地址: http://www.juliantec.info/articles/basic-concept/poa-and-ooa.html 软件开发方法论概述 在60年代的软件开发行 ...
随机推荐
- 寒假集训——搜索 B - Sudoku
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <iostream&g ...
- Ngnix中的fastcgi參数性能优化和解释
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/luozhonghua2014/article/details/37737823 优化性能參数设置,在 ...
- oracle11gR2 手工创建基于asm存储的oracle实例
http://www.cnblogs.com/beanbee/archive/2012/09/22/2697689.html使用命令行手工建立Oracle11gR2数据库 通过命令行建立一个数据库可以 ...
- 最短路径算法dijkstra的matlab实现
function Dijkstra(Graph, source): 2 3 create vertex set Q 4 5 for each vertex v in Graph: ...
- webpack4+express+mongodb+vue 实现增删改查
在讲解之前,我们先来看看效果如下所示: 1)整个页面的效果如下: 2) 新增数据效果如下: 3) 新增成功如下: 4) 编辑数据效果如下: 5) 编辑成功效果如下: 6) 删除数据效果如下: 7) 删 ...
- PAT A1017 Queueing at Bank (25 分)——队列
Suppose a bank has K windows open for service. There is a yellow line in front of the windows which ...
- python 全栈开发,Day37(操作系统的发展史)
昨日内容回顾: # C/S和B/S架构 # osi五层模型 # 应用层 # 自定义协议(struct) _ 解决黏包 # 验证客户端合法性 _ hmac os.urandom # 解决TCP协议的se ...
- 【Atcoder ARC060F】最良表現 / Best Representation
Atcoder ARC060 F 题意:给一个串,求将其分成最少的没有循环节的串的种数. 思路:先求KMP的\(fail\)数组.然后发现最少的串数只有三种可能:\(1\).\(2\).\(n\). ...
- Android学习之基础知识九 — 数据存储(持久化技术)之SQLite数据库存储
前面一讲介绍了数据持久化技术的前两种:文件存储.SharedPreferences存储.下面介绍第三种技术:SQLite数据库存储 一.SQLite数据库存储 SQLite数据库是一款轻量级的关系型数 ...
- elasticsearch6.1 安装问题
问题:Caused by: java.lang.RuntimeException: can not run elasticsearch as root [root@localhost logs]# a ...