1
第七章 系统设计系统设计是信息系统开发过程中第三个重要阶段。在这一阶段中我们将要根据前一阶段系统分析的结果,在已经获准的系统分析报告的基础上,进行新系统设计。系统设计解决的是怎么做的问题。
本章学习目标:
1.了解系统设计的任务。
2.掌握代码设计的原则和方法。
3.掌握信息处理流程图和 IPO图的绘制方法。
4.熟悉输出设计、输入设计的内容。
5.掌握系统设计报告的内容。
2
系统设计的任务是在系统分析提出的逻辑模型的基础上,
科学合理地进行物理模型的设计。 将分析阶段所获得的系统逻辑模型,转换成一个具体的计算机实现方案的物理模型。
系统设计应遵循以下原则,
1.系统性:系统设计要从整个系统的角度考虑;
2.灵活性:提高系统适应环境变化的能力;
3.可靠性:抵御外界干扰的能力和干扰时的恢复能力;
4.经济性:在满足系统需求的前提下,减小系统开销。
第一节 系统设计的任务
3
第二节 代码设计一、代码及其作用代码是人为确定的代表客观事物(实体)名称、属性或状态的符号或者是这些符号的组合。在系统开发过程中设计代码作用是,
1、唯一化最简单、最常见的例子就是职工编号。在人事档案管理中我们不难发现,人的姓名不管在一个多么小的单位里都很难避免重名。为了避免二义性,唯一地标识每一个人,因此编制了职工代码。
4
2、规范化国家公布了 GB2260- 80 中华人民共和国行政区划代码。
GB1988- 80信息处理交换的七位编码字符集等。
例如,财政部关于会计科目编码的规定,以,1”开头的表示资产类科目;以,2”表示负债类科目;,3”表示权益类科目;
,4”表示成本类科目等。
3、系统化系统所用代码应尽量标准化。在实际工作中,一般企业所用大部分编码都有国家或行业标准。
5
二、代码设计的原则合理的编码结构是信息处理系统是否具有生命力的一个重要因素。
1、必须保证有足够的容量要足以包括规定范围内的所有对象。如果容量不够,不便于今后变化和扩充,随着环境的变化这种分类很快就失去了生命力。
2、按属性系统化分类不能是无原则的,必须遵循一定的规律。根据实际情况并结合具体管理要求来划分是我们分类的基本方法。分类应按照处理对象的各种具体属性系统地进行。
6
3、分类要有一定的柔性所谓柔性是指在一定情况下分类结构对于增设或变更处理对象的可容纳程度。柔性好的系统在一般的情况下增加分类不会破坏其结构。但是柔性往往还会带来别的一些问题,如冗余度大等,这都是设计分类时必须考虑的问题。
4、注意本分类系统与外系统、已有系统的协调。
任何一项工作都是从原有的基础上发展起来的,故分类时一定要注意新老分类的协调性,以便于系统的联系、移植、协作以及新老系统的平稳过渡。
代码设计时还应遵守以下一些问题:唯一性,适当宽度,
标准化,不用易混淆的字符
7
三、代码的设计方法目前最常用的分类方法概括起来有两种,一种是线分类方法,一种是面分类方法,在实际应用中根据具体情况各有其不同的用途。
1、线分类方法线分类方法是目前用得最多的一种方法,尤其是在手工处理的情况下它几乎成了唯一的方法。线分类方法的主要出发点是,首先给定母项,母项下分若干子项,由对象的母项分大集合,由大集合确定小集 ……,最后落实到具体对象。
线分类划分时要掌握两个原则,
唯一性和不交叉性。否则分类后如果出现有二义性,将会给后继工作带来诸多不便。
8
分类的结果造成了一层套一层的线性关系,如下图所示。
系 列
( 02)
系 列
( 05)
系 列
( 01)
产品 ( 实体 )
……
型 号
( 02030V)
型 号
( 02031V)
型 号
( 02035V)
……
产 品
( 0230V208)
产 品
( 0230V508)……
( 对象 )产 品
( 0230V108)
9
线分类法的特点,
( 1)结构清晰,容易识别和记忆,容易进行有规律的查找。
( 2)与传统方法相似,对手工系统有较好的适应性。
( 3)主要缺点是结构不灵活,柔性较差。
10
例如:代码 3212表示材料为钢的 Φ1.0mm圆头的镀铬螺钉。
2、面分类方法面分类法主要从面角度来考虑分类。面分类方法的特点是,
( 1) 柔性好,面的增加、删除、修改都很容易。
( 2)可实现按任意组配面的信息检索,对机器处理有良好的适应性。
( 3)缺点是不易直观识别,不便于记忆。
11
四、代码的种类目前常用的代码种类:
1、顺序码以某种顺序形式编码。如各种票据的编号都是顺序。
2、数字码
( 1)区间码:将顺序码分成若干区段,每一区段代表部分编码对象。码中的数字的值和位置代表一定意义
( 2)层次码:在代码结构中,为实体的每个属性确定一位或几位编码,并排成一定的层次关系。
例如:我国目前使用的居民身份证就是采用一个 15位的数字码,前 6位表示地区编码,中间 6位表示出生年月日,
最后 3位表示顺序号和其它状态 (性别等 )。这种数字码属层次码。这种编码优点是易于校对,易于处理,缺点是不便记忆。
12
我国公民身份证代码的含义
13
3、字符码即以纯字符形式编码 (英文、汉语拼音等 )。这类编码常见的有我们在程序设计中的字段名、变量名编码。
例如:在开发一个成本管理信息系统时,在数据库设计时,所有表名均以 C-开始,视图名用 C-V-开始。例如产生各种材料汇总的视图:材料成本表 C-CLCB,C-V-CLHZ。
这就是一个典型的纯字符码。这种编码优点是可辅助记忆,
缺点是校对不易,不易反映分类的结构。
14
4、混合码即以数字和字符混合形式编码。混合码是在各类管理中最常用的另一类编码形式。这种编码的优点是易于识别,
易于表现对象的系列性,缺点是不易校对。
例如,GBxxxx表示国际标准的某类编码,所有的汽车牌照编号,都是混合码。又如,TV-C-34,TV-B-12
15
四、代码的校验
1、录入代码时的可能错误:
( 1)识别错误,1/7,0/O,Z/2,D/O,S/5,……
( 2)易位错误,12345/13245,……
( 3)双易位错误,12345/13254,……
( 4)随机错误:上述两种或两种以上的错误出现
16
2、避免代码录入出现错误的办法在设计好的代码后,再增加一位,作为代码的组成部分。增加的一位,即为校验位。使用中,没有特别性。
使用时,应录入包括校验位在内的完整代码,代码进入系统后,系统将取该代码校验位前的各位,按照确定代码校验位的算法进行计算,并与录入代码的最后一位(校验位)进行比较,如果相等,则录入代码 正确,否则录入代码错误,进行重新录入。
17
3、校验位的确定步骤:
设有一组代码为,C1C2C3C4… Ci
第一步:为设计好的代码的每一位 Ci确定一个权数 Pi(权数可为算术级数、几何级数或质数)。
第二步:求代码每一位 Ci与其对应的权数 Pi的成绩之和 S
S=C1*P1+C2*P2+…… +Ci*Pi (i=1,2,……,n)
n
= ∑Ci*Pi (i=1,2,……,n)
i=1
第三步:确定模 M
第四步:取余 R = S MOD M
第五步:校验位 Ci+1 = R
最终代码为,C1C2C3C4… CiCi+1
使用时,C1C2C3C4… CiCi+1
18
例 1.算术级数法原代码 1234
各乘以权 5432
乘积之和 5+8+9+8=40
以 11为模,取余数,40/11…… 7
代码为 12347
误码,1 3 2 4 7
5 4 3 2 5+12+6+8=31
31/11…… 9
例 2.几何级数法
1 2 3 4
8 4 2 1 8+8+6+4=26
26/11…… 4
代码为 12344
19
例 3.质数法
1 2 3 4
7 5 3 1 7+10+9+4=30
30/9…… 3
代码为 12343
误码,7 2 3 4 3
7 5 3 1 49+10+9+4=72
72/9…… 0
20
五、代码设计书
21
第三节 信息处理流程图一,信息处理流程图模块结构图主要从功能的角度描述了系统的结构,但在实际工作中许多业务和功能都是通过数据存储文件联系起来的,而这个情况在模块结构图中未能反映出来,系统流程图可以反映各个处理功能与数据存储之间的关系。系统流程图以新系统的数据流程图和模块结构图为基础,首先找出数据之间的关系,即由什么输入数据,产生什么中间输出数据 (可建立一个临时中间文件 ),最后又得到什么输出信息。然后,把各个处理功能与数据关系结合起来,
形成整个系统的信息处理流程图。
22
例:工资管理子系统的信息处理流程图,
23
1.主文件,存放固定属性数据的文件,如工资主文件、部门代码。
工资主文件:(职工编号 C( 4),姓名 C( 8),部门代码
N( 2),基本工资 N( 7,2),附加工资 N( 7,2))
部门代码:(部门代码 C( 2),部门名称 C( 20))
2.处理文件:存放事务数据的文件。如工资变动文件。
工资变动:(职工编号 C( 4),姓名 C( 8),部门代码 N
( 2),基本工资 N( 7,2),附加工资 N( 7,2),备注
( M))
24
3.工作文件:存放处理过程中暂时存放数据的文件。如工资发放文件。
工资发放:(职工编号 C( 4),姓名 C( 8),部门代码 N
( 2),基本工资 N( 7,2),附加工资 N( 7,2),水电气 N( 7,2),应发工资 N( 7,2))
4.周转文件:存放具有固定个体变动属性的数据的文件。如扣款文件。
扣款:(职工编号 C( 4),姓名 C( 8),部门代码 N
( 2),水电气 N( 7,2))
25
二,IPO图
IPO图是对每个模块进行详细设计的工具,是输入加工输出
(INPUT PROCESS OUTPUT)图的简称,它是由美国 IBM公司发起并完善起来的一种工具。在系统的模块结构图形成过程中,产生了大量的模块,在进行详细设计时开发者应为每一个模块写一份说明。 IPO图就是用来说明每个模块的输入、输出数据和数据加工的重要工具。
IPO图的主体是算法说明部分,该部分可采用结构化语言、判定表、判定树,也可用 N- S图等工具进行描述,要准确而简明的描述模块执行的细节。
目前常用的 IPO图的结构如下图所示:
26
27
在 IPO图中,输入、输出数据来源于数据词典。局部数据项是指个别模块内部使用的数据,与系统的其它部分无关,仅由本模块定义、存贮和使用。注释是对本模块有关问题作必要的说明。
开发人员不仅可以利用 IPO图进行模块设计,而且还可以利用它评价总体设计。用户和管理人员可利用 IPO图编写、
修改和维护程序。因而,IPO图是系统设计阶段的一种重要文档资料。
28
第四节 输出设计系统的详细设计过程是根据管理和用户的需要先进行输出设计,然后反过来根据输出所要求获得信息来进行输入设计。输出信息的使用者是用户,故输出的内容与格式等是用户最关心的问题之一,因此,在设计过程中,开发人员必须深入了解并与用户充分协商。
对输出信息的基本要求是:准确、及时而且适用。输出设计主要考虑输出要求的确定、输出方式的选择和输出格式的设计。输出设备和介质的选择也要考虑在内。
29
输出设计的内容:
( 1)输出信息使用情况:信息的使用者、使用目的、信息量、输出周期、有效期、保管方法和输出份数。
( 2)输出信息内容:输出项目、精度、信息形式(文字、
数字)。
( 3)输出格式:表格、报告、图形等。
( 4)输出设备和介质:设备如:打印机、显示器等;介质如:磁盘、纸张(普通、专用)等。
30
第五节 输入设计输入设计对系统的质量有着决定性的重要影响。
一 输入设计的原则输入设计包括数据规范和数据准备的过程,在输入设计中,
提高效率和减少错误是两个最基本的原则。
输入设计的目标:
1.控制输入量,只输入基本的信息。
2.减少输入延迟,可采用周转文件,批量输入等方式。
3.减少输入错误,可采用输入校验方法和有效性验证。
二 数据输入设备的选择键盘、磁盘等。
31
第六节 系统设计报告系统设计说明书是系统设计阶段的成果,它从系统设计的主要方面说明系统设计的指导思想、采用的技术方法和设计结果,是新系统的物理模型,也是系统实施阶段工作的主要依据。 文档的主要内容包括:
1、概述系统的功能,设计目标及设计策略项目开发者,用户,系统与其他系统或机构的联系;
系统的安全和保密限制。
2、系统设计规范程序名,文件名及变量名的规范化; 数据字典 。
32
3、计算机系统的配置硬件配置:主机,外存,终端与外设,其他辅助设备、网络形态;
软件配置:操作系统,数据库管理系统,语言,软件工具,
服务程序,通信软件。
4、系统结构系统的模块结构图;各个模块的 IPO图
5、代码设计各类代码的类型,名称,功能,使用范式及要求等。
33
6、文件(数据库)设计数据库总体结构:各个文件数据的逻辑关系文件结构设计:各类文件的数据项名称,类型及长度等;
文件存储要求:访问方法及保密处理。
7、输入设计输入数据的格式设计 ;输入数据的效验方法 。
8、输出设计输输出介质;输出内容及格式。
9、系统安全保密性设计关于系统安全保密性设计的相关说明