结构化分析工具之数据字典

时间:2024-02-21 18:53:07

什么是数据字典?

数据字典(Data Dictionary),顾名思义,起到了字典的作用,是结构化分析方法的一种重要工具,功能是对数据流图中的各个基本要素的具体内容所做的完整的定义和说明。是结构方法的核心。数据字典有以下几个条目:数据项条目、数据流条目、文件条目和加工条目。

数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。

数据流图只是描述了系统各功能之间的数据流动和处理关系,还需要借助数据词典对数据流图中的每个数据和加工给出解释。

数据字典是对于数据模型中的数据对象或者项目的描述的集合,这样做有利于程序员和其他需要参考的人。分析一个用户交换的对象系统的第一步就是去辨别每一个对象,以及它与其他对象之间的关系。这个过程称为数据建模,结果产生一个对象关系图。当每个数据对象和项目都给出了一个描述性的名字之后,它的关系再进行描述(或者是成为潜在描述关系的结构中的一部分),然后再描述数据的类型(例如文本还是图像,或者是二进制数值),列出所有可能预先定义的数值,以及提供简单的文字性描述。这个集合被组织成书的形式用来参考,就叫做数据字典。
 

数据字典的作用

数据字典最重要的作用是作为分析阶段的工具。任何字典最重要的用途都是供人查询对不了解的条目的解释,在结构化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明。换句话说,数据流图上所有的成分的定义和解释的文字集合就是数据字典,而且在数据字典中建立的一组严密一致的定义,很有助于改进分析员和用户的通信。
当开发用到数据模型的程序时,数据字典可以帮助你理解数据项适合结构中的哪个地方,它可能包含什么数值,以及数据项基本上表示现实世界中的什么意思。例如,一家银行或者是一个银行组织可能对客户银行业涉及的数据对象进行建模。他们需要给银行程序员提供数据字典。这个数据字典就描述了客户银行业中的数据模型每一个数据项(例如,“账户持有人”和“可用信用”)。
用于定义数据流何数据存储的结构,并给出构成所给出的数据流何数据存储的各数据项的基本数据类型。

表示法

数据字典中数据元素的表示法:

  • =:等价于(定义为)
  • +:与,表示顺序连接的关系
  • [|]:或、从中选取一个
  • {}*:n次重复
  • ():任选,可以选择也可以不选的数据项
  • *…*:界域,特定限制的注释

例如:A=(B)+C表示数据项A包括B和C,B是可选可不选的

 

 

数据字典的组成

 

  1. 数据项
    数据流图中数据块的数据结构中的数据项说明
    数据项是不可再分的数据单位。对数据项的描述通常包括以下内容:
    数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,
    取值范围,取值含义,与其他数据项的逻辑关系}
    其中“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是设计数据检验功能的依据。
    若干个数据项可以组成一个数据结构。
  2. 数据结构
    数据流图中数据块的数据结构说明
    数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。对数据结构的描述通常包括以下内容:
    数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}
  3. 数据流
    数据流图中流线的说明
    数据流是数据结构在系统内传输的路径。对数据流的描述通常包括以下内容:
    数据流描述={数据流名,说明,数据流来源,数据流去向,
    组成:{数据结构},平均流量,高峰期流量}
    其中“数据流来源”是说明该数据流来自哪个过程,即数据的来源。“数据流去向”是说明该数据流将到哪个过程去,即数据的去向。“平均流量”是指在单位时间(每天、每周、每月等)里的传输次数。“高峰期流量”则是指在高峰时期的数据流量。
  4. 数据存储
    数据流图中数据块的存储特性说明
    数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。对数据存储的描述通常包括以下内容:
    数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,
    组成:{数据结构},数据量,存取方式}
    其中“数据量”是指每次存取多少数据,每天(或每小时、每周等)存取几次等信息。“存取方法”包括是批处理,还是联机处理;是检索还是更新;是顺序检索还是随机检索等。
  5. 处理过程
    数据流图中功能块的说明
    数据字典中只需要描述处理过程的说明性信息,通常包括以下内容:
    处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},
    处理:{简要说明}}
    其中“简要说明”中主要说明该处理过程的功能及处理要求。功能是指该处理过程用来做什么(并不是怎么样做);处理要求包括处理频度要求,如单位时间里处理多少事务,多少数据量,响应时间要求等,这些处理要求是后面物理设计的输入及性能评价的标准。
  6. 外部实体