第05讲 数据字典与判定树判定表
判定树
树有广泛的应用,其中一类重要的应用是描述分类过程。
分类是一种常用运算,其作用是将输入数据按预定的标准划分成不同的种类。
例如,某工厂对其产品的质量进行自动检测,并根据检测结果划分产品的质量等级。
等级标准见图4-22。
如何由产品的检测结果值a 确定其质量等级就是一个分类问题。
图4-22 分类问题示例用于描述分类过程的二叉树称为判定树。
判定树的每个非终端结点包含一个条件,因而对应于一次比较或判断;每个终端结点包含一个种类标记,对应于一种分类结果。
例如,图4-23(a)所示为求解上述分类问题的一棵判定树,树上的五个非终端结点对应五个条件判断,即对检测a 的五次比较。
(a)分类问题的一棵判定树(b)分类问题的另一棵判定树图4-23 判定树示例易知一棵判定树描述了一种分类方法。
图4-23(a)中判定树对应的分类算法如下:char classify1(float x)/ * 依给定标准将检测值x区分成相应的质量等级作为返回值 */{ if(x<5) return ('E');else if(x<6) return('D');else if(x<7)return('C');else if(x<8) return('B');else return('A');}利用这个算法,可由产品的检测结果值x确定其质量等级。
当一个分类算法需要反复使用时,其时间性能就值得进一步考虑。
假如进行上述产品质量自动分类(定等级)的工厂的产量很大,上述分类算法就将被频繁地重复使用,这时就需要考虑其时间性能。
假设需要分级的产品有N=100000件,并且这批产品的等级分布如图4-22中表格的第三行所示。
某等级产品总比较次数=某等级的“产品数”X单个检测的“比较次数”比如,D级产品数为N*20%个,为区分出一件产品是D级的,需进行2次比较。
那么,D级产品总比较次数=N*20%*2=100000*0.2*2=40000。
判定树判定表例题
选择题
在判定树中,每一个非叶节点代表:
A. 一个属性测试的结果(正确答案)
B. 一个最终的分类结果
C. 一个数据集的样本
D. 一个判定表的条目
判定表与判定树相比,哪个更适合处理复杂的逻辑条件?
A. 判定树
B. 判定表(正确答案)
C. 两者相同
D. 都不适合
判定树的根节点通常表示:
A. 数据集的最优属性
B. 数据集的第一个属性(正确答案,若未优化则通常如此)
C. 数据集的最后一个属性
D. 数据集的类别标签
在构建判定树时,信息增益用于:
A. 选择最优的划分属性(正确答案)
B. 计算节点的纯度
C. 确定树的深度
D. 评估模型的准确率
判定表中,每一行代表:
A. 一个数据样本
B. 一个条件组合及其对应的动作(正确答案)
C. 一个判定树的节点
D. 一个属性的取值范围
判定树中,叶节点通常表示:
A. 数据集的划分结果
B. 一个属性的测试条件
C. 最终的分类或回归结果(正确答案)
D. 数据集的一个子集
当判定树的深度过大时,可能导致的问题是:
A. 过拟合(正确答案)
B. 欠拟合
C. 计算速度加快
D. 模型稳定性增强
在将判定表转换为判定树时,判定表中的每一个条件列对应:
A. 判定树的一个叶节点
B. 判定树的一个非叶节点(正确答案)
C. 判定树的一个根节点
D. 判定树的一条路径
判定树剪枝的目的是:
A. 提高模型的泛化能力(正确答案)
B. 增加模型的复杂度
C. 减少模型的训练时间
D. 提高模型在训练集上的准确率。
判定树判定表举例-课件
根
条件
条件
条件
பைடு நூலகம்条件
行动
行动
行动
行动
……
条件
条件
条件
条件
发货方案
欠款时间≤30
欠款时间>100
需求量≤库存量
立即发货
先按库存发,进后再补发
条件
状态
动作
欠款时间>30且≤100
需求量>库存量
需求量≤库存量
先付款,再发货
不发货
需求量>库存量
通知先付欠款
6. 下面是货运收费策略:铁路运费时,若收货地点在本省以内,快件每公斤1.5元,慢件每公斤1元。若收货地点在外省,重量小于或等于20公斤,快件每公斤2元,慢件每公斤1元,若重量大于20公斤,超重部分每公斤0.2元。分别用判定树、判定表和结构化语言。
举例:某仓库发货方案如下: 客户欠款时间不大于30天,如果需要量不大于库存量则立即发货;否则先按库存量发货,进货后再补发。 客户欠款时间不大于100天,如果需要量不大于库存量则先付款再发货;否则不发货。 客户欠款时间大于100天,要求先付欠款。
判定树、判定表
3.判定树 判定树是用一种树图形方式来表示多个条件、多个取值所应采取的动作。
一个游戏 判定表
一个游戏 判定表
1
2
3
4
5
6
7
甲
R
R
R
R
W
W
W
乙
R
R
W
W
R
R
W
丙
R
W
R
W
R
W
R
甲不知
乙不知
丙
判定表
我们,还在路上……
专题4 判定树及判定表练习[1]
一个游戏判定表
主持人对甲、乙、丙三人说:“这里有三顶 红帽子,两顶白帽子。现在用布蒙上你们的 眼睛,给你们每人戴上一顶帽子,然后请你 们依次睁开眼睛,能正确说出自己所戴帽子 的颜色者有奖。”
带完帽子后,甲拿下布后看了其他两人的帽 子说:“我不知道。”
然后,乙解开布看了其他两人的帽子后说: “我不知道。”
记录好且本次贷款在2万元以下,可作出贷款 安排;否则拒绝贷款。
请绘出发放贷款的判定表并优化。
判定表
2. 某维修站对“功率大于50马力”的机器且 “维修记录不全”或“已运行十年以上”的机 器应给予优先维修,否则作一般处理。请绘制 决策表。
初始
功率>50马力 维修记录不全 已运行>10年
优先维修 一般处理
A
A
A
C2:超产数量 1<N≤50 50<N≤100 N>100
1.0*N
√
50+1.25*(N-50)
√
112.5+1.5*(N-100)
√
2.0*N
50+2.5*(N-25)
112.5+3*(N-50)
5
6
B
B
1<N≤25 25<N≤50
√ √
8 B
N>50
√
• 学生评奖: • 奖励的目的在于鼓励学生品学兼优,此评奖处理功能是要合理确
定学生受奖等级。决定受奖的条件为:已修课程各类成绩比率为: 成绩优秀占50%或70%以上,成绩为中或以下占15%或20%以下, 团结纪律为优良或一般者。奖励方案为一等、二等、三等奖、鼓 励奖四种。其中: • 1.成绩优秀占70%以上、成绩为中或下占15%以下、纪律为优良 的为一等奖。 • 2.成绩优秀占70%以上、成绩为中或下占15%以下、纪律为一般 • 或成绩优秀占70%以上、成绩为中或下占20%以下、纪律为优秀 • 或成绩优秀占50%以上、成绩为中或下占15%以下、纪律为优秀 的为二等奖。 • 3.成绩优秀占70%以上、成绩为中或下占20%以下、纪律为一般 • 或成绩优秀占50%以上、成绩为中或下占15%以下、纪律为一般 • 或成绩优秀占50%以上、成绩为中或下占20%以下、纪律为优秀 的为三等奖 • 4.成绩优秀占50%以上、成绩为中或下占20%以下、纪律为一般 的为鼓励奖。 • 画出判定树与判定表
5-数据字典举例
处理过程:分配宿舍
说明: 输入: 输出: 处理: 为所有新生分配学生宿舍 学生,宿舍 宿舍安排 在新生报到后,为所有新生分配学生宿舍。 要求同一间宿舍只能安排同一性别的学生, 同一个学生只能安排在一个宿舍中。 每个学生的居住面积不小于3平方米。
安排新生宿舍其处理时间应不超过15分钟。
数据字典
• 数据字典是关于数据库中数据典在需求分析阶段建立,在数据库设计过程
中不断修改、充实、完善
消除冗余,设计生成基本E-R图实例 (续)
系统的基本E-R(图7.30)
某工厂管理信息系统的基本E-R图
处理过程(续)
数据结构,以“学生”为例 “学生”是该系统中的一个核心数据结构: 数据结构: 学生 含义说明: 是学籍管理子系统的主体数据结构, 定义了一个学生的有关信息 组成:学号,姓名,性别,年龄,所在系,年级
处理过程(续)
数据流,“体检结果”可如下描述:
数据流:
说明:
体检结果
学生参加体格检查的最终结果
数据字典是关于数据库中数据的描述是元数据而不是数据本身数据字典在需求分析阶段建立在数据库设计过程中不断修改充实完善系统的基本er图730某工厂管理信息系统的基本er图
数据字典举例
例:学生学籍管理子系统的数据字典。 数据项,以“学号”为例: 数据项: 学号 含义说明:唯一标识每个学生 别名: 学生编号 类型: 字符型 长度: 8 取值范围:00000000至99999999 取值含义:前两位标别该学生所在年级, 后六位按顺序编号 与其他数据项的逻辑关系:
数据流来源:体检
数据流去向:批准
组成:
……
平均流量: ……
高峰期流量:……
处理过程(续)
数据存储,“学生登记表”可如下描述:
实用文档之判定表和判定树
实用文档之"1、招聘考试考核数学、英语、计算机三门课程,录取规则是:"(1)总分240分以上(含)录取。
(2)总分在240分以下(不含),180分以上(含)的,如果数学和英语成绩均在60分以上(含),需要参加面试;如果数学或英语中有1门成绩在60分以下(不含)的,需复试该课程后再决定是否录取。
(3)其他情况不录取。
画出此项处理的判定树。
(10分)2、某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。
当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍。
根据描述绘出判定表。
录取规则240录取 180≤总分<240总分<180不录取 数学≥60数学<60英语≥6060英语<6060面试复试 不录取3、某企业库存量监控的处理规则如下表:库存量≤0——————————————缺货处理库存下限<库存量≤储备定额——————订货处理储备定额<库存量≤库存上限——————正常处理库存量>库存上限——————————上限报警0<库存量≤库存下限—————————下限报警要求:画出判定表及判定树。
(1)判定表。
(2>储备定额正常处理>0库存量>上限订货处理<=储备定额<=上限上限报警<下限下限报警<=0 缺货处理4、某彩电生产企业根据销售商欠款时间长短和现有库存量情况处理彩电供货方案的结构化语言可表示为:IF 欠款时间≤30天IF 需要量≤库存量THEN 立即发货ELSE先按库存量发货,生产出来后再补发ELSEIF 欠款时间≤90天 THEN IF 需求量≤库存量 THEN 先付款再发货 ELSE不发货ELSE 要求先付欠款请将结构化语言表达的方案用判定表和判定树表达。
用判定表表达如下:用判定树表达如下:5.某工厂生产两种产品A 和B ,凡工人每月的实际生产量超过计划××要求先付欠款× 不发货 × 先付款,再发货 × 先按库存量发货,生产出来后再补发 × 立即发货应采取的 行 动 N Y N Y N Y 需求量≤库存量 N N Y Y N N 欠款时间>90天 N N N N Y Y 欠款时间≤30天 条 件6 5 4 3 2 1 决策规则号供货方案≤30天>30天 ≤90天>90天需求量≤库存需求量>库存量需求量≤库存量 需求量>库存量立即发货 先按库存发货, 生产后再补发 先付款,再发不发货 通知先付欠欠款时间需求与库存 处理结果指标者均有奖励。
判定树和判定表
判定树和判定表判定树⼜称决策树,是⼀种描述加⼯的图形⼯具,适合描述问题处理中具有多个判断,⽽且每个决策与若⼲条件有关。
使⽤判定树进⾏描述时,应该从问题的⽂字描述中分清哪些是判定条件,哪些是判定的决策,根据描述材料中的联结词找出判定条件的从属关系、并列关系、选择关系,根据它们构造判定树。
【例4.5】某⼯⼚对⼯⼈的超产奖励政策为:该⼚⽣产两种产品A和B。
凡⼯⼈每⽉的实际⽣产量超过计划指标者均有奖励。
奖励政策为:对于产品A的⽣产者,超产数N⼩于或等于100件时,每超产1件奖励2元;N⼤于100件⼩于等于150件时,⼤于100件的部分每件奖励2.5元,其余的每件奖励⾦额不变;N⼤于150件时,超过150件的部分每件奖励3元,其余按超产150件以内的⽅案处理。
对于产品B的⽣产者,超产数N⼩于或等于50件时,每超产1件奖励3元;N⼤于50件⼩于等于100件时,⼤于50件的部分每件奖励4元,其余的每件奖励⾦额不变;N⼤于100件时,超过100件的部分每件奖励5元,其余按超产100件以内的⽅案处理。
上述处理功能⽤判定树描述,如下图所⽰:这⼀判定树⽐起⽂字叙述,使⼈⼀⽬了然,清晰地表达了在什么情况下采取什么策略,不易产⽣逻辑上的混乱。
因⽽判定树是描述基本处理逻辑功能的有效⼯具。
==============================================判定表由四部分组成。
第⼀部分即①表⽰的部分,判定标的左上部称为基本条件项,列出各种可能的条件。
第⼆部分即②表⽰的部分,判定标的右上部称为条件项,它列出了各种可能的条件组合。
第三部分即③表⽰的部分,判定标的左下部称为基本动作项,它列出了所有的操作。
第四部分即④表⽰的部分,判定标的右下部称为动作项,它列出在对条件组合下所选的操作。
【例4.6】以学⽣的奖学⾦评定为例,说明判定表的应⽤。
奖励的⽬的在于⿎励学⽣的品学兼优,此处理功能是要合理确定奖学⾦评定等级。
(完整版)数据字典的含义与例子
(完整版)数据字典的含义与例子-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN数据字典的含义与例子数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
通常包括:数据项、数据结构、数据流、数据存储和处理过程五个部分。
数据字典是对数据流图的详细描述。
一、数据字典各部分的描述①数据项:数据流图中数据块的数据结构中的数据项说明数据项是不可再分的数据单位。
对数据项的描述通常包括以下内容:数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系}其中“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是设计数据检验功能的依据。
②数据结构:数据流图中数据块的数据结构说明数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
对数据结构的描述通常包括以下内容:数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}③数据流:数据流图中流线的说明数据流是数据结构在系统内传输的路径。
对数据流的描述通常包括以下内容:数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}其中“数据流来源”是说明该数据流来自哪个过程。
“数据流去向”是说明该数据流将到哪个过程去。
“平均流量”是指在单位时间(每天、每周、每月等)里的传输次数。
“高峰期流量”则是指在高峰时期的数据流量。
④数据存储:数据流图中数据块的存储特性说明数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
对数据存储的描述通常包括以下内容:数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,组成:{数据结构},数据量,存取方式}其中“数据量”是指每次存取多少数据,每天(或每小时、每周等)存取几次等信息。
判定表 算法原理
判定表算法原理一、判定表组成判定表(Decision Table)是一种常见的问题解决方案,其核心思想是将复杂的逻辑关系用表格的形式表达,便于理解和维护。
判定表由四部分组成:条件桩(Condition Stub)、动作桩(Action Stub)、条件项(Condition Entry)和动作项(Action Entry)。
1.条件桩:问题中所有可能出现的独立条件,也称变量或因子。
2.动作桩:在给定条件下应执行的动作或决策。
3.条件项:对应条件桩的取值,即各种可能的输入或状态。
4.动作项:对应动作桩的执行结果或动作。
二、条件与动作1.条件:影响决策的因素或变量,通常以“是”或“否”的形式表示。
2.动作:在给定条件下应执行的操作或决策,通常以实际业务逻辑表示。
三、条件判断逻辑判定表的逻辑基于条件的组合进行动作的判断。
通过逐一检查条件项,确定相应的动作项,从而得到最终结果。
在处理复杂逻辑时,判定表能够清晰地表达各个条件之间的关系以及相应的操作。
四、简化与优化对于复杂的逻辑问题,判定表可以通过合并相似条件、提取公因子等方法进行简化与优化,提高可读性和维护性。
优化判定表的关键在于合理安排条件和动作,减少冗余,使整个逻辑更加清晰明了。
五、适用场景判定表适用于具有多个独立变量且逻辑关系明确的场景,如业务规则管理、故障排除等。
判定表的优势在于直观表达复杂逻辑,便于阅读和维护,尤其在业务规则经常变更的场景中具有较好的适应性。
六、与其他算法比较与其他算法相比,判定表具有以下特点:1.易于理解:判定表以表格形式展示逻辑关系,直观易懂,便于阅读和维护。
2.逻辑清晰:判定表能够清晰地表达各个条件之间的关系以及相应的操作,降低逻辑错误的风险。
3.易于扩展:通过合并相似条件和提取公因子等方法,判定表可以快速扩展处理更复杂的逻辑关系。
4.可维护性强:当业务规则发生变化时,只需修改判定表中的相应部分,无需修改程序代码,提高了可维护性。
(完整版)数据字典的含义与例子
(完整版)数据字典的含义与例子-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN数据字典的含义与例子数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
通常包括:数据项、数据结构、数据流、数据存储和处理过程五个部分。
数据字典是对数据流图的详细描述。
一、数据字典各部分的描述①数据项:数据流图中数据块的数据结构中的数据项说明数据项是不可再分的数据单位。
对数据项的描述通常包括以下内容:数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系}其中“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是设计数据检验功能的依据。
②数据结构:数据流图中数据块的数据结构说明数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
对数据结构的描述通常包括以下内容:数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}③数据流:数据流图中流线的说明数据流是数据结构在系统内传输的路径。
对数据流的描述通常包括以下内容:数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}其中“数据流来源”是说明该数据流来自哪个过程。
“数据流去向”是说明该数据流将到哪个过程去。
“平均流量”是指在单位时间(每天、每周、每月等)里的传输次数。
“高峰期流量”则是指在高峰时期的数据流量。
④数据存储:数据流图中数据块的存储特性说明数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
对数据存储的描述通常包括以下内容:数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,组成:{数据结构},数据量,存取方式}其中“数据量”是指每次存取多少数据,每天(或每小时、每周等)存取几次等信息。
数据字典
数据字典的实现
目前,数据字典几乎总是作为CASE“结构化分 目前,数据字典几乎总是作为 结构化分 析与设计工具”的一部分实现的。 析与设计工具”的一部分实现的。在开发大型 软件系统的过程中, 软件系统的过程中,数据字典的规模和复杂程 度迅速增加, 度迅速增加,人工维护数据字典几乎是不可能 的 如果在开发小型软件系统时暂时没有数据字典 处理程序,建议采用卡片形式书写数据字典, 处理程序,建议采用卡片形式书写数据字典, 每张卡片上保存描述一个数据的信息。 每张卡片上保存描述一个数据的信息。这样做 更新和修改起来比较方便, 更新和修改起来比较方便,而且能单独处理描 述每个数据的信息。 述每个数据的信息。每张卡片上主要应该包含 下述信息:名字、别名、描述、定义、 下述信息:名字、别名、描述、定义、位置
数据元素的别名
数据元素的别名就是该元素的其他等价的名字, 数据元素的别名就是该元素的其他等价的名字, 出现别名主要有下述3个原因 个原因: 出现别名主要有下述 个原因:
(1) 对于同样的数据,不同的用户使用了不同的名字; 对于同样的数据,不同的用户使用了不同的名字; (2) 一个分析员在不同时期对同一个数据使用了不同 的名字; 的名字; (3) 两个分析员分别分析同一个数据流时,使用了不 两个分析员分别分析同一个数据流时, 同的名字。 同的名字。
数据字典的用途
数据字典中包含的每个数据元素的控制信息是 很有价值的。 很有价值的。因为列出了使用一个给定的数据 元素的所有程序(或模块 或模块), 元素的所有程序 或模块 ,所以很容易估计改 变一个数据将产生的影响, 变一个数据将产生的影响,并且能对所有受影 响的程序或模块作出相应的改变。 响的程序或模块作出相应的改变。 最后,数据字典是开发数据库的第一步, 最后,数据字典是开发数据库的第一步,而且 是很有价值的一步。 是很有价值的一步。
数据字典
五、定义文件 文件定义的内容包括; .编号 文件在DFD中的编号,该编号应 具有唯一性 .文件名 即文件在DFD中的名字; .[内部名] 系统中使用的文件名; .[备注] 必要的说明。 文件用文件定义表定义。
六、定义外部项 系统的外部项(源点和终点)是系 统环境中的实体.因为它们与 系统有信息联系。所以在DD中 应对它们统一定义。定义的内 容包括; 编号;外部项在DFD中的编号, 编号应具有唯一性以便检索;
产学习; 是中学的当电工。 2 若年龄满18岁但不满40岁,若文化程度 是小学或中学,若是男性,则当钳工,若是 女性,则当车工。 3 若年龄满40岁及以上者,文化程度是小 学或中学的,则当材料员。 4 凡大学毕业生,都当技术员。
:年龄 :学历
二、判定表的优化 第7 16列合并,8 17列合 并,优化的判定表如下:
5.2.2 判定树
判定树
5. 2.3 判定表 (Decision Table) 判定表用表格的形式表达加工逻辑。 判定表分为四部分:左上角为各种 条件,左下角为各种动作,右上角 为某件的组合,右下角为相应条件 下的动作. 一、初始判定表
5. 2.3 判定表(Decision Table)
5. 2.3 判定表(Decision Table)
注意,表中第4、5列是不能合并的。我 们不能说:当C1=1和C2=2时可以不 考虑C3, 因为C3有三个取值(此时只有两个)。第6、 7列,8、9列的情况类似。就是说,只 有当某个条件的所有取值都不起作用 是才可以取消(不考虑)这个条件。
5.2.4 三种描述工具的比较 各具特色,现就八项指标列表比较如下:
╳
╳ ╳
应采 取的 行动
不发货
要求先付欠款╳ ╳Fra bibliotek╳5.2.5 定义加工
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据字典的四种元素定义与用法-数据存储
• 数据存储也是定义数据结构,它是一个静态的数据结构(相对于数据流 而言),用于存储系统中的信息。
• 数据存储能作为处理间交换数据的介质。
仓库系统零级图
数据存储(库存台帐)的定义
数据字典的四种元素定义与用法-数据处理
• 处理(或加工)包括所有需要的输入和输出、要存取的数据库、 该处理对应的结构图内的模块号。特别是该处理的具体处理逻 辑应该描述清楚,以作为设计阶段的依据。
仓库系统零级图
“更新台帐或更新库存”处理定义
• 说明:处理逻辑的描述最好使用结构化程序 设计中的3种控制结构:顺序语句序列、条件 选择语句、循环语句。对于复杂的条件组合 与活动之间的关系可以使用判定树、判定表
来表示。
数据字典的实现-手工建立
手工建立数据字典的内容用卡片形式存放,其步骤如 下:
(1)按4类条目(数据流、数据项、数据存储和处理) 规范的格式印制卡片。
数据流程图和数据字典应该配合使用, 数据流程图中的每个数据流和数据存储都应 该对应到数据字典中的一个条目。
数据字典的四种元素定义与用法-数据元素
• 数据元素是软件系统中最小数据单元,它也是构成数 据库以及系统模块之间交换数据的最小单元。如下图 为与仓库系统零级图相对应的材料数量(这个数据元 素)的定义。
判定表与判定树
问题1:某股票公司的佣金政策如下:如果一次销售额少于1 000元,那么基 础佣金将是销售额的8.4%;如果销售额至少1 000元,但少于10 000元, 那么基础佣金将是销售额的5%外加34元;如果销售额至少10 000元,那么 基础佣金将是销售额的4%,外加134元。另外销售单价和销售的份数对佣 金也有影响。如果单价低于14元/份,则外加基础佣金的5%,此外如不是 整百的份数,再加4%的基础佣金;如单价在14元/分以上,但低于25元/份, 则加2%的基础佣金,如不是整百的份数,再外加4%的基础佣金。
step6:制作判定表(在条件组合与活动相关联处画钩,即 标出适合每个垂直条件组的活动),如表4.4所示。
step7:最后检查有无遗漏、二义性或矛盾地方。
判定树解决方案
判定树也能用于表示问题逻辑中的条件和动作的对应关系。判定树用内部节 点表示问题中的条件,用叶子节点表示活动,用根节点表示问题的名字。上 述问题1比较庞大,为方便起见,换用另一个小规模问题3:
(2)在卡片上分别填写各类条目的内容。
(3)先按图号顺序排列,同一图号的所有条目按数据 流、数据项、数据存储和处理的顺序排列。
(4)同一图号中的同一类条目(如数据流卡片)可按 名字的字典顺序存放,加工一般按编号顺序存放。
(5)同一成分在父图和子图都出现时,则只在父图上 定义。
(6)建立索引目录。
数据字典的实现-计算机辅助建立
上述2个问题存在共同特点:条件与处理之间的关系复杂,存在多重条件 嵌套情况。在这种情况下,如何在处理的定义中,定义其处理逻辑呢?
判定表解决方案
可以采取如下“判定表结构”来描绘上述处理逻辑。
具体步骤如下: step1: 标出问题中的全部条件,并为问题中的数据元素与数据
元素值生成定义,如下表4.2所示。 step2:计算条件总数:为上述每个数据元素值的个数连乘:销
第05讲 数据字典、判定表、 判定树
理学院3S技术研究所 主讲:冯德鸿
• 教学目的: (1)理解并掌握数据字典的四种元素的定义和用法、了
解数据字典的实现(人工实现、计算机实现)。
(2)理解判定表和判定树的功能、掌握构造一个判定表 的方法和步骤;
(3)会画处理实际问题的逻辑判定树。
• 教学重点:数据字典的定义和用法 • 教学难点:结合实例阐明判定表的构造方法和步骤 • 教学要求:构造典的四种元素定义与用法-数据流
• 数据流是外部实体和系统之间、系统内部的处理之间进行数据交换的基本数 据单元,它是由有关的数据元素所组成的数据结构,这个数据结构是一个动 态的数据结构(相对于文件的数据结构而言)。如下图为仓库系统零级图的 入库单(这个数据流)的定义。
入库单数据流的定义 说明:(1)计算外存储器的容量是要涉及到组成数据流的数据项及其每天发 生的频率;(2)峰值所给出的信息是确定设置用户终端数量的重要依据。
仓库系统零级图中相关数据元素定义
说明:(1)在数据元素定义里包括了相关数据流、文件与相关的处理, 这是为了提供数据字典的交叉访问能力;(2) 若数据元素名称改变,应 相应地修改相关的数据流、文件和处理的相关部分,以保证系统一致性。 (3)数据元素允许值的范围将作为数据有效性检验的依据(即数据录入
进数据库时)。
售额3×单价3×批量(份数)2=18 step3:标出问题中的独立的活动(动作),如图4.3所示。 step4: 生成一个判定表格式,在表顶部为每个条件组合编号,
在表的左边列出条件定义(数据元素)和动作定义(每个活 动),如下表4.4所示。
step5:应用下列公式把条件填入判定表: 条件总数/现行数据元素中的条件数=现行数据元素中每个条 件的重复因子,现行数据元素销售额中有3个条件(S,M,L), 则18/3=6(表示三个条件S、M、L分别出现6次)。
实际问题的逻辑判定树。
• 教学方法:讲授法为主,辅以自学
数据字典的概念与功能
• 数据字典是对系统中所有数据元素、数据流、 处理以及数据文件或数据库的说明。
• 功能:它是一个重要的分析工具,在数据字 典中给出严格的数据定义可以减少分析人员 和用户之间的通信,消除误解,同时它也是 进行系统设计的最有价值的文档之一。
问题2: 某数据流图中有一个“确定保险类别”的处理, 指的是申请汽车驾 驶保险时,要根据申请者的情况确定不同的保险类别。加工逻辑为: 如果 申请者的年龄在21岁以下,要额外收费;如果申请者是21岁以上并是26岁 以下的女性,适用于A类保险;如果申请者是26岁以下的已婚男性,或者 是26岁以上的男性, 适用于B类保险; 如果申请者是21岁以下的女性或 是26岁以下的单身男性, 适用于C类保险。除此之外的其他申请者都适用 于A类保险。(年龄、性别、婚姻)