《管理信息系统第5章系统设计2(代码设计).ppt》由会员分享,可在线阅读,更多相关《管理信息系统第5章系统设计2(代码设计).ppt(40页珍藏版)》请在三一办公上搜索。
1、第5章 系统设计System Design,2,章节结构,5.1 系统设计概述5.2 信息系统设计策略-结构图5.3 系统设计的原则5.4 系统设计的策略5.5 编码设计5.6 数据库设计5.7 输入/输出及人机界面设计5.8 系统设计说明书5.9 系统设计实例,3,5.6 编码设计(代码设计),代码是用来表征客观事物的一个或一组有序的符号,它应易于计算机和人识别与处理。编码就是用字母、数字或其组合来代表事物。代码的作用:鉴别功能标识分类对象信息代码化,便于计算机进行识别、分类、排序和统计利用代码可以节省计算机的存储空间,提高运算速度利用代码可以提高系统的可靠性,4,代码的种类,代码,非含义码
2、,含义码,有序码,随机码,校验码,对照码,缩略码,助记码,缩略码,字母顺序码,区间码,年代码,层次码,十进制码,特征码,P218 图5.35 代码的种类,5,1.有序码(顺序码),将顺序的自然数或字母赋予分类对象。有序码例:人的性别代码(GB2261-80)1-男2-女各系代码等等,6,代码的表示形式(编码方式),(1)数字顺序编码(2)数字分组顺序编码(3)字符编码(4)组合编码,7,(1)数字顺序编码,这是最简单的编码形式,一般适用于被编码对象数目较少的情况。例如,某企业管理信息系统中,对6个物资仓库的编码可采用如下的数字顺序码。,8,(2)数字分组顺序编码,当编码对象具有两层(或以上)的
3、分类时,可采用数字分组(段)顺序码。如6个仓库中的帐本的编码可采用如下的数字分组顺序码。,9,(3)字符编码,数字编码虽然结构简单,但也存在不容易识别和记忆的缺点。为了容易识别和记忆,可采用字符编码。如我们可对企业的6个仓库采用下面的字符编码。,10,(4)组合编码,编码对象具有两层(或以上)的分类时,我们可采用数字和字符的组合编码方式使编码对某层分类的记忆和识别更直观和容易。如前述6个仓库中的帐本的编码可采用如下的组合编码。,11,2.区间码,按编码对象的特点把代码分成若干区段,每一个区段表示编码对象的一个类别。例如邮政编码、国际电话号码,身份证号码等。23-06-010086-551-12
4、34567区间码进一步分为层次码、十进制码、特征码。,12,(1)区间码之层次码,按分类对象的从属层次关系作为排列顺序的一种代码。国民经济行业分类和代码(GB4754-84)采用三层的层次码。三层分别代表大类、中类、小类。,13,(2)区间码之十进制码,十进制码中每一位数字代表一类,一般用于图书分类。500 自然科学510 数学520 天文学 620 工程和技术科学621 机械和电气工程621.1 蒸汽动力工程621.2 水利机械,14,(3)区间码之特征码,在码的结构中,为多个属性各规定一个位置,从而表示某一编码对象的不同方面特征。,如某一男装的编码为M38-2W1。,15,3.助记码,用可
5、以帮助记忆的字母或数字来表示编码对象,将编码对象的名称、规格等作为代码的一部分。TV-B-12 TV-C-20 20寸彩色电视机,16,4.缩略码,把人们习惯使用的缩写字直接用于代码,是助记码的特例。Cm、Kg等,17,5.校验码及其生成过程、代码校验方法,校验码=校验位自检码=原代码(代码本体)+校验码校验码的一种生成过程:对原代码的每一位加权求和设原代码为C1C2Cn,权因子为P1P2Pn,加权求得:S=C1P1+C2P2+CnPn权因子可以取自然数1,2,3,几何级数2,4,8,16,32,质数2,3,5,7,11、等。,18,校验码的生成过程,用加权和除以模得余数R=S mod M其中
6、,R表示余数,M表示模数,可取M=10,11等。模减去余数或者直接取余数得校验码,附加在原代码后。Cn+1=M-R 或R,19,校验码的生成过程例,原代码:123456权因子:173173模:10加权和:S=11+2733415763=81余数:R=81 mod 10=1校验码:10-1=9自检码:1234569,自检码=原代码(代码本体)+校验码,20,习题1:计算校验码,原代码:12345权因子:65432模:11加权和:S=16+25344352=50余数:R=50 mod 11=6校验码:11-6=5自检码:123455,21,习题2:计算18位身份证号的校验码,老的身份证号是15位,
7、新的身份证号为18位。关于身份证第18位是怎么计算的,原理如下:根据国家标准 GB 11643-1999中有关公民身份号码的规定,公民身份号码是特征组合码,由17位数字本体码和1个数字校验码组成。排列顺序从左至右依次为:6位数字地址码,8位数字出生日期码,3位数字顺序码和1位数字校验码。地址码表示编码对象常住户口所在县(市、旗、区)的行政区划代码。,22,计算18位身份证号的校验码(续1),生日期码编码对象出生的年、月、日,其中年份用4位数字表示,年、月、日之间不用分隔符。例如:1981年05月11日就用19810511表示。顺序码为同一地址码所标识的区域范围内,对同年同月同日出生的人员编定的
8、顺序号。其中第17位奇数分给男性,偶数分给女性。校验码(第18位)是根据前面17位数字码,按照ISO 7064:1983.MOD 11-2计算出来的。,23,计算18位身份证号的校验码(续2),第18位数字的计算方法为:原代码:身份证号前17位。权因子:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2模:11加权和:身份证号前17位数字和对应权因子相乘再求和S余数:R=S mod 11,R只可能有0-1-2-3-4-5-6-7-8-9-10这11个取值校验码:按规定(ISO 7064:1983.MOD 11-2)不同R对应校验码取值分别为1-0-X-9-8-7-6-5-4
9、-3-2,(直接取余数得校验码),24,计算18位身份证号的校验码(续3),可见若余数是2,就会在身份证末位出现罗马数字的X。若余数是10,身份证的最后一位号码就是2。试计算自己的身份证校验码是否与实际情况相符。,25,用校验码检查代码的过程,使用校验码是输入设计环节的输入校验方式之一,是前述校验码生成过程的逆向过程。当自检码C1C2CnCn+1(其中Cn+1为校验码)输入计算机后,对C1C2Cn分别乘以原来的权,Cn+1乘以1,把它们相加后所得的和除以模。若余数为0,则该代码一般来说是正确的,否则输入有错。(原代码与权乘积之和校验码)模整数,26,用校验码检查代码例,设输入的代码(含校验码)
10、为55787,其中7为校验值,对每一位乘以它的原来的权1234,校验位乘的权为1。用所得的加权和被模9除,若余数为零,则代码一般是正确的,否则就是输入有错。上述代码显然有错,因为其加权和除以模的余数不为零。75/9=8.3,27,不一般的情况,原编码:1234569(正)或2415569(误)权因子:173173模:10余数:90/10=9.0100/10=10.0结论:本例两种编码检验结果均为0,检验失效。,28,用校验码检查组合编码的处理方法,一般情况下,校验码是对数字代码进行检验。在使用校验码对组合编码进行检查时,将AZ跟随09顺序变为:A=10B=11Z=35,*为摆动的等差级数:权从
11、1、2、3递增到低于模的一半,然后再从模减1,递减至高于模的一半;按此规律进行重复。例如:模是11,则权为1、2、3、4、5、10、9、8、7、6、1、2、3、.,不同权和模的检错率(检错效率),30,不同权和模的检错率(检错效率),31,编码设计的原则,唯一性通过编码可唯一地确定编码对象,这是编码在数据管理中最基本的作用。合理性代码结构应与相应的分类体系相对应。可扩充性和稳定性应留有充分的余地,以备将来不断扩充的需要。简单性代码结构尽量简单,并注意避免形似符号。,32,编码设计的原则(续1),适用性代码尽可能反映对象的特点,以帮助记忆,便于填写。规范性国家有关编码标准是代码设计的重要依据,已
12、有的标准必须遵循。在一个代码体系中,代码结构、类型、编写格式必须统一。易于修改性标准化与通用性尽量采用相应国际或国内标准,系统内部使用的代码需要统一。,33,适用性,通过编码能够比较容易地识别被编码对象。如物资编码“WJTQ002”表示类别为“五金”,品种为“台钳”的第2号物资。,34,规范性,对编码对象的编码要遵循一定的规则,这些规则包括:编码的位数、编码的分段、每段的类型和含义等。例如数据类“物资基本信息”中的关键字段“物资编码”的结构为:,35,编码设计的原则(续2),要尽量采用不易出错的代码结构如:字母-字母-数字(WW3)字母-数字-字母(W2W)当代码长于4个字母或5个数字时应分成
13、小段如:J2LV9-JXYQ6-J344K-QLYTH-8RG2W若已知代码的位数为P位,每一位上可用字符数为Si,则可以组成代码的总数为:,36,编码设计的步骤,(1)确定代码对象(2)考查是否已有标准代码(3)根据代码的使用范围、使用时间,根据实际情况选择代码的种类与类型(4)考虑检错功能(5)编写代码表,37,P224 表5.6 编写代码表,根据系统分析阶段对系统的详细调查结果,编制代码表并对做详细说明。,学生学号:年级编号2位+专业编号2位+班级编号1位+顺序号2位,38,编码设计和使用经验,依据经验,编码的设计和使用一般遵循如下方法:设计时:分段设计使用时:用户标携带+前台输入+后台组合,39,编码设计和使用例,某钢厂产品编码为7段,12位分组数字码。如20#普沸通用大型工字钢的编码为421032011101,其结构为:,大类码,小类码,规格码,材质码,用途码,4,2,1,03,20,111,01,细材,型材,大型,工字钢,20#,普沸,通用,40,编码设计和使用例(续),产品编码应用中组合过程:,