首页 > 软考数据流图设计大观

软考数据流图设计大观

一、数据流图设计要注意

1、正确使用加工处理和数据流:例如,一个加工必须既有输入又有输出数据流只能和加工相关,即从加工流向加工数据源流向加工加工流向数据源

2、每个数据流和数据存储都要在数据字典中有定义,数据字典应包括各层数据流图中数据元素的定义。

3、数据流图中最底层的加工处理必须有加工处理说明。

4、父图和子图必须平衡,即父图中某加工的输入输出(数据流)和分解这个加工的子图的输入输出数据流必须完全一致。这种一致性不一定要求数据流的名称和个数一一对应,但它们在数据字典中的定义必须一致,数据流或数据项既不能多也不能少。

5、加工处理说明和数据流图中加工处理涉及的元素应保持一致。例如,在加工处理说明中,输入数据流必须说明其如何使用,输出数据流说明如何产生或选取,数据存储说明如何选取、使用或修改。

6、一幅图中的图元个数应控制在7±2以内。

数据流图、数据字典和处理加工说明可以充分地描述系统的分析模型,其后需要对分析模型进行变换从而得到系统的总体设计模型。系统总体设计模型可以采用层次图、HIPO图和结构图来表达,这些图形工具都反应了模块间的调用关系。

 二、基础知识

1、数据流包含加工(处理)、数据流、外部实体和数据存储4种元素。

2、外部实体是指存在于软件系统之外的人员或组织。它之处系统所需数据的发源地和系统所产生的数据的归宿地。

3、数据存储表示暂时存储的数据,每个数据存储都有一个名字。通常是某某文件,所以在审题的时候要勾出来。

4、数据流图要注意以下原则

①一个加工的输出数据流应与输入数据流同名,即使他们的组成成分相同。

②保持数据守恒。也就是说一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。

③每个加工必须既有输入数据流,又有输出数据流。

④所有的数据流都必须以一个加工开始,或以一个加工结束

三、了解数据字典(2012下半年开始出现数据字典的问题)

数据字典的任务就是对数据流图中出现的所有被命名的图形元素在数据字典中作为一个词条加以定义,使得每个图形元素的名称都有一个确切的解释。其包括数据流、数据文件、加工逻辑、源点汇点及数据元素等词条的描述。其可能出现的符号有(符号很重要,一定要了解)

符号含义举例说明
=被定义为 
+x=a+b,表示x由a和b组成
[..., ...]或[...|...]x=[a,b],x=[a|b],表示x由a或由b组成      
{...}重复x={a},表示x由0个或多个a组成
(...)可选x=(a),表示a可在x中出现,也可以不出现

 

 

 

 

四、基本题型

今年数据流图的题型已基本确定

【问题1】(4分)使用说明中的词语,给出图1-1中的实体E1~E4的名称

作为实体,必须是软件系统之外的人或组织,实体可以是人、组织、其他软件硬件系统或者是数据库等。这道题是得分点,在审题的时候勾出来,不要弄错位置就可以了。

【问题2】(4分)使用说明中的词语,给出图中的数据存储D1~D4的名称。

这题也简单,主要勾出带文件两个字的词汇就好。重点也是不要弄混位置。

以上8分是数据流图中的必得分,要是得不全,估计可能 会挂。

【问题3】(5分){天注定题型:所谓天注定题型,就是三分天注定七分靠打拼,爱~拼~~才~会~赢}

比如:图中缺少哪些数据流,请填写起点和终点、或找出错误的数据流。

(如果前两题你已经读了两遍题了,那么这道题你就得更仔细的读一遍了,仔细到,你读一句话,就要去图中找是否有这句数据流,或这条数据流是否正确表示。做这样的题,审题时一句都不能落的,看一眼题,看一眼图。我经常会在这个地方丢分,因为审题不清楚,所以怎么也找不到缺失的数据流,以后要注意了!)

再比如:1层数据流中某加工应细分解成哪些加工?或者是填写某分加工的名字。(这题考分层数据流图)

  为了表达较为复杂问题的数据处理过程,往往会用到分层。一般将数据流图分为顶层数据流图,中间数据流图和底层数据流图。顶层数据流图只有一个加工,表示整个系统。底层数据流图是指其加工不能再分解的数据流图,其加工成为原子加工。中间数据流图是对父层数据流图中某个加工进行细化,而它的加工也可以再次细化,形成子图。

具体需要注意一下几点:

①父图与子图平衡。

②局部数据存储的隐蔽性。

③输入输出的平衡性。

  (这道题也是在题中找,一般给出一个大加工,然后会叙述这个大加工的工作情况,那么要想分解这个大加工,就要了解他的工作情况分为几步,几乎一步就是一个分加工,需要注意的是,分加工要精简,还要用叙述中的文字来表述。)

【问题4】从2012年开始出现了数据字典的题,他可能不会直接说数据字典四个字,但是会说写出组成某数据流的组成项。遇到这样的题,就是要你写出,某数据流=*+*+* 。这一般会在题中很明显的给出,不是在文字叙述里就是在图中。但是难点是,遇到一些数据字典里的符号问题,也就是说可能含有0到多个某项,就得用{}括起来,所以要根据叙述来加上相应的符号,具体的符号表示什么意思,上文表格已给出。

  当然还会有一些问题,比如说问在绘制数据流的时候需要注意哪些问题?等问答题,这需要我们在会做题的过程中,还要知道理论基础的知识,具体的可以看一些希赛的参考书。但是一定要勇敢的写,不要因为自己不知道书本的具体内容而空了这道题,因为据考过试的同学透露,软考判分不是很严。

 

转载于:https://www.cnblogs.com/jyh317/archive/2013/05/20/3086200.html

更多相关:

  • 本文是西门子开放式TCP通信的第2篇,上一篇我们讲了使用西门子1200PLC作为TCP服务器的程序编写,可以点击下方链接阅读:【公众号dotNet工控上位机:thinger_swj】基于Socket访问西门子PLC系列教程(一)在完成上述步骤后,接下来就是编写上位机软件与PLC之间进行通信。上位机UI界面设计如下图所示:从上图可以看出...

  • 我有一个大型数据集,列出了在全国不同地区销售的竞争对手产品。我希望通过使用这些新数据帧名称中的列值的迭代过程,根据区域将该数据帧分成几个其他区域,以便我可以分别处理每个数据帧-例如根据价格对每个地区的信息进行排序,以了解每个地区的市场情况。我给出了以下数据的简化版本:Competitor Region ProductA Product...

  • 作为一名IT从业者,我来回答一下这个问题。首先,对于具有Java编程基础的人来说,学习Python的初期并不会遇到太大的障碍,但是要结合自己的发展规划来制定学习规划,尤其要重视学习方向的选择。Java与Python都是比较典型的全场景编程语言,相比于Java语言来说,当前Python语言在大数据、人工智能领域的应用更为广泛一些,而且大...

  • 这段时间通过学习相关的知识,最大的变化就是看待事物更加喜欢去了解事物后面的本质,碰到问题后解决问题思路也发生了改变。举个具体的例子,我在学习数据分析,将来会考虑从事这方面的工作,需要掌握的相关专业知识这个问题暂且按下不表,那哪些具体的问题是我需要了解的呢,以下简单罗列:1、了解数据分析师这个岗位在各个地区的需求情况?2、数据分析师的薪...

  • 这一节将开始学习python的一个核心数据分析支持库---pandas,它是python数据分析实践与实战的必备高级工具。对于使用 Python 进行数据分析来说,pandas 几乎是无人不知,无人不晓的。今天,我们就来认识认识数据分析界鼎鼎大名的 pandas。目录一. pandas主要数据结构 SeriesDataFrame二...