1.数据字典的概念
字典的作用是给字以定义和解释。在结构化分析中,数据字典的作用是对数据流程图上的每个成分给予定义和说明。换句话说,数据流程图上所有成分的定义和解释的文字集合就是数据字典。
在上面讨论的数据流程图中,通过数据流、文件和加工描述了一个系统的业务,但它还只是系统的框架。图中没有表达也很难表达出许多具体的细节。数据字典就是为描述这些细节而建立的,它是数据流程图的辅助资料,对数据流程图起注解作用。显然,单独的一套数据流程图或单独的一本数据字典都无法表达系统的功能,都是没有意义的。
对数据流程图中的每一个成分一一给出精确的定义,给这些成分赋予实际内容。所有这些成分的定义按一定次序排列起来,便组成了一本数据字典。简单地说,数据字典是所有数据流、文件、加工定义的总和。显然,不同的系统都有它们各自的数据流程图和数据字典。除此之外,数据字典还要对系统分析中其他需要说明的问题进行定义和说明。
可见,数据字典是对系统逻辑模型的详细、具体说明,是系统分析阶段的重要文件,也是内容丰富、篇幅很大的文件,编写数据字典是一项十分重要而繁重的任务。编写数据字典的基本要求是:
● 对数据流程图上的各种成分的定义必须明确、易理解、唯一。
● 命名、编号与数据流程图一致,必要时(如计算机辅助编写数据字典时)可增加编码,方便查询检索、维护和统计报表。
● 符合一致性和完整性的要求,对数据流程图上的成分定义与说明无遗漏项。数据字典中无内容重复或内容相互矛盾的条目。数据流程图中同类成分的数据字典条目中,无同名异义或异名同义者。
● 格式规范、风格统一、文字精练、数字与符号正确。
2.数据字典的组成内容
数据字典描述的主要内容有:数据流、数据元素(或者称为数据项)、数据存储、数据加工、外部项,其中,外部项一般不在系统之内,所以不描述。数据元素是组成数据流的基本成分。
在系统分析中,数据字典起着重要的作用,它包含关于系统的详细信息。一般来说,系统分析人员把不便于在数据流程图上注明而系统分析应该获得、对整个系统开发以至将来系统运行与维护时必需的信息尽可能放入数据字典。除了上述有关成分的定义与解释之外,比如关于数据流与加工发生频率、出现的时间、高峰期与低谷期、加工的优先次序、加工周期及安全保密等方面的信息,在数据字典中都在有关成分的基本定义与说明后面,根据系统开发、维护和运行的需要加以说明。总的来说,数据字典对数据流程图中有关成分的描述尽可能说明下列问题:
● 什么(是什么或做什么)。
● 何处(在何处或者来自何处,去向何处)。
● 何时(何时出现、时间长短)。为了准确、规范地描述各类条目的内容,数据字典中采用以下符号。
● 等号“=”,意义:等于、是、由…组成,表示等式左边的项目由等式右边各项组成或等式两边内容相同。
● 加号“+”,意义:与,表示加号两边项目同时出现或共同组成某项内容。
● 方括号“[]”,意义:或者,表示方括号内各项目中至少出现一项。
● 花括号“{}”,意义:重复,表示花括号内项目重复出现多次或重复取值多次。重复次数注明的方式是:n{}表示重复n次;n1{}表示括号内从取第一个值到第n个值,{}(condition)表示在满足所注明的条件下重复。如不注明条件,表示无条件重复,如不注明次数,表示重复次数任取。
● 圆括号“()”,意义:选择项,表示圆括号内所列项目为可选项目,既可能出现,也可能不出现。
(1)数据流条目
数据流条目主要说明数据流是由哪些数据项组成的,以及数据在单位时间内的流量,它的来源、去向等。
数据流条目的格式如下。
数据流名:
组成:
流量:
来源:
去向:
【例9-8】数据流“银行对账单”条目如下。
数据流名:银行对账单
组成:月份+日期+银行支票号+金额
流量:2张/3天,每张约40笔数据
来源:开户银行
去向:资金管理组
【例9-9】数据流“工时统计表”条目如下。
数据流名:工时统计表
组成:车间+{产品+定额工时+实作工时}
流量:20张/月,每张约10笔数据
来源:各车间
去向:成本管理组
通常,数据流是一种组合项,由若干基本数据项组成,但有些数据流可能较复杂,它的某些组合项还是一个数据流,这样,仍需对它进行分解,直到数据流被分解成若干个基本数据项为止。
【例9-10】数据流“记账凭证”的组成如下。
记账凭证=收、付凭证+转账凭证;
收、付凭证=收款凭证+付款凭证;
收款凭证=现金收款凭证+银行收款凭证;
付款凭证=现金付款凭证+银行付款凭证;
现金付款凭证=日期+凭证号+摘要+贷方科目+金额+[结算方式]+借方科目+[金额合计]。
记账凭证是一个复杂数据流,经分解,它转化为5个简单数据流:转账凭证、现金收款凭证、现金付款凭证、银行收款凭证和银行付款凭证。然后再将简单数据流分解成若干个基本数据项,如前面的现金付款凭证。
(2)文件条目
文件条目主要说明文件由哪些数据项组成、存储方式和存取频率等,有关符号的使用规则与数据流条目相同。条目的格式如下。
文件名:
组成:
存储方式:
存取频率:
【例9-11】文件“现金日记账”条目如下。
文件名:现金日记账
组成:月份+日期+摘要+收入+支出+结存
存储方式:顺序
存取频率:20笔/天(www.daowen.com)
【例9-12】文件“总账”条目如下。
文件名:总账
组成:日期+科目代码+科目名称+类别+期初借余额+期初贷余额+本期借发生额+本期贷发生额+期末借余额+期末贷余额
存储方式:顺序
存取频率:60/天
(3)数据项条目
数据项条目主要说明数据项名称、类型、长度、取值范围等。数据项名称用来标识出这个数据项,以区别于其他数据项,例如职工号、职工名、产品名都是数据项的名称。数据项的名称应尽量反映该数据项的具体含义,以便容易理解和记忆。在多种场合下使用同一数据项名,还需对数据项的别名加以说明。数据项类型是指取值的数据类型。基本类型有数值型(包括整数和实数)、字符型(包括汉字的使用)、逻辑型等。例如,职工的“基本工资”数据项为数值型,“文化程度”为字符型。对于数据项的取值范围,如果数据类型是字符型,则指每一个值的确切含义,如果是数值,则常指一个区间。数据项的长度规定该数据项所占的字符或数字的个数。
数据项条目的格式如下。
数据项名:
类型:
长度:
取值范围:
【例9-13】数据项“凭证号”条目如下:
数据项名:凭证号
类型:字符
长度:8
取值范围:现收0000~现收9999
现付0000~现付9999
银收0000~银收9999
银付0000~银付9999
转账0000~转账9999
【例9-14】数据项“职工号”条目如下。
数据项名:职工号
类型:数值
长度:4
取值范围:0000~9999
(4)加工条目
加工也称处理逻辑,它主要说明加工的输入数据、输出数据及其加工逻辑等。加工条目格式如下。
加工名:
输入数据:
输出数据:
加工逻辑:
【例9-15】加工“科目汇总”条目如下。
加工名:科目汇总
输入数据:记账凭证(批)
输出数据:科目汇总表
加工逻辑:将整批记账凭证的数据,按总账科目分借、贷方对金额进行汇总,并做借、贷方平衡检查,最后输出科目汇总表。
【例9-16】加工“工资分配”条目如下。
加工名:工资分配
输入数据:工资结算表(汇总表)
输出数据:工资费用分配表
加工逻辑:各车间根据工资结算单,按产品种类或批次,分别分配管理人员工资和生产工人工资,并按比例提取福利基金。
数据流程图中的每一个基本加工(即不再被进一步分解的加工)都必须用一个加工条目给出这个加工的精确描述,而非基本加工则可以没有加工条目,因为如果它的每一个基本加工及加工间的数据流和文件都给出了描述,实际上也就等同于给出了它的描述。
3.数据字典的图表格式举例
数据字典的格式是根据各类条目的内容以及编写、维护、使用方便来设计的。这里介绍的是一种图表式格式,如表9-5~表9-8所示。这种格式有利于清晰、明确、规范地描述数据字典各条目的内容。
表9-5 数据字典:“数据流”条目
表9-6 数据字典:“数据存储”条目
(续)
表9-7 数据字典:“加工”条目
表9-8 数据字典:“外部项”条目
4.数据字典的编写方法
数据字典的编写方法有两种:手工编写和计算机辅助编写。手工编写的主要工具是笔和卡片,当然可以辅以计算机文字处理手段。这时计算机只是作为手工书写工具来使用,没有对数据字典的结构、内容和格式的处理功能。由于数据字典各条目的定义、说明和分解细化主要靠人的知识、经验和判断,手工编写具有较大的灵活性与适应性,也就是说,可以随着系统分析工作的深入和对用户信息需求的了解的细化而不断充实、修正数据字典的内容。但是手工编写的效率不高,编辑困难,容易出现疏漏和错误,对数据字典的检查、维护、查询、检索、统计与分析都不方便。计算机辅助编写是指在计算机辅助绘制数据流程图的同时,随着数据流程图的逐层分解,计算机系统生成数据字典的某些条目,人工进行修改和补充。计算机辅助编写字典时,计算机以输入的方式接收数据字典各类成分的定义和说明的原始数据,根据规范要求提供编辑、索引以及完整性、一致性检查的功能,并具有统计、报告、查询功能,可以定义某些加工中有,但数据流程图上未注明的数据元素。这类计算机辅助工具简称为CASE工具。这些CASE工具提供DFD和DD的编制功能,具有图形处理、数据管理和文字编辑的能力,有的还能在系统设计与系统实施阶段提供辅助。
对于计算机辅助编写数据字典来说,最重要的是建立便于输入、查询与维护的数据库,这称之为数据字典库。因此,除了采用商品化的CASE工具软件辅助编写数据字典外,也可采用通用的开发工具和数据库管理系统来创建数据字典及相应的编辑、查询与检验程序。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。