第九章 系统设计 第一节 系统设计的任务 第二节 系统结构设计 第三节 系统功能设计 第四节 处理流程图设计 第五节 代码设计 第九章 系统设计 第一节 系统设计的任务 第二节 系统结构设计 第三节 系统功能设计 第四节 处理流程图设计 第五节 代码设计 第六节 输入输出设计 第七节 数据文件和数据库设计 第八节 系统物理配置方案设计 第九节 系统安全与数据完整性设计 第十节 系统设计说明书 复习思考题九
第一节 系统设计的任务 系统设计就是详细定义基于计算机的各种活动的解决方案。在系统设计阶段,把系统分析过程当中得到的逻辑模型结合相应的网络技术、数据库技术等详细的描述出来,并为系统实施阶段的各项工作准备必要的技术资料和有关文件。 一、系统设计的目标 系统设计的基本目标就是要使所设计的系统必须满足系统逻辑模型的各项功能要求,同时尽可能地提高系统的性能。系统设计的目标是评价和衡量系统设计方案优劣的基本标准,也是选择系统设计方案的主要依据。评价与衡量系统设计目标实现程度的指标主要有以下方面:
第一节 系统设计的任务 一、系统设计的目标 (一)系统的效率 第一节 系统设计的任务 一、系统设计的目标 (一)系统的效率 系统的效率主要反映在系统对处理请求的响应时间和单位时间内处理的业务量方面。主要和硬件平台的选择、系统软件的性能、系统的工作方式(系统结构)等因素有关。 (二)系统的工作质量 系统的工作质量是指系统处理数据的正确性、友好的人—机界面,即操作的方便性与输出信息的易读易懂性。主要与系统的硬件设备和软件设计的质量有关。 (三)系统的可变更性 系统的可变更性是指系统的可维护或可修改性。也可称为系统的适应性。
第一节 系统设计的任务 一、系统设计的目标 (四)系统的通用性 第一节 系统设计的任务 一、系统设计的目标 (四)系统的通用性 系统的通用性是指同一软件系统在不同使用单位的可应用程度。这一指标对商品化软件尤为重要。提高系统通用性的措施主要是进行充分的系统分析、业务处理的规范化、标准化、功能与数据结构设计的模块化以及系统参数的较大包容性等等。 (五)系统的可靠性 系统的可靠性是指系统在正常运行时对各种外界干扰的抵抗能力。 提高系统可靠性可基本归结为保证系统安全和提高数据的完整性,需要从立法、硬件、软件、数据及运行规程多方面综合考虑。
第一节 系统设计的任务 返回 二、系统设计的内容 系统设计的主要内容包括:总体结构设计和具体物理模型的设计。 第一节 系统设计的任务 二、系统设计的内容 系统设计的主要内容包括:总体结构设计和具体物理模型的设计。 总体结构设计包括划分子系统、功能结构图设计、处理流程图设计、代码详细设计、物理系统配置方案设计、数据文件和数据库设计等。 具体物理模型的设计包括数据存储设计、输入输出设计和编写程序模块设计说明书等。 返回
第二节 系统结构设计 一、结构化设计的概念和原理 (一)结构化设计的起因 第二节 系统结构设计 系统结构设计是从计算机实现的角度出发,对前一阶段划分的子系统进行校核,使其界面更加清楚和明确,并在此基础上,将子系统进一步逐层分解,直至划分到模块。在众多的系统结构设计方法中,结构化设计方法是应用比较广泛并且比较受重视的一种方法。 一、结构化设计的概念和原理 (一)结构化设计的起因 在进行系统结构设计时,必须把系统的可变更性放在首要位置考虑。因为整个系统的工作效率、工作质量和可靠性等都在很大程度上依赖于系统的可变更性。
第二节 系统结构设计 (一)结构化设计的起因 第二节 系统结构设计 (一)结构化设计的起因 如果能将一个系统分解为由一些相互独立、功能简单、易于理解的模块所组成的系统,则这样的系统就会容易修改和维护。由模块组合构成的系统一般称之为模块化结构系统。在模块化结构系统中,由于各个模块之间基本上是相互独立的,所以每个模块都可以独立地被理解、编程、调试和修改,使复杂的系统设计工作变得相对简单。模块的相对独立性也能有效地防止某个模块出现错误在系统中扩散的问题,从而可以提高系统的可靠性。另外,在模块化结构系统中,想要增加或删除一些功能时,只要增加或删除相应的模块就可以了,对系统的其他功能和结构不会产生太大的影响,使系统的修改和维护工作比较容易进行。而采用结构化设计发法就是要将系统设计成模块化结构系统。
第二节 系统结构设计 (二)结构化设计的原理 (三)结构化设计的工具 第二节 系统结构设计 (二)结构化设计的原理 结构化设计方法的基本思想是使系统模块化,即把一个系统自上而下逐步分解为若干个彼此独立而又有一定联系的组成部分,这些组成部分称为模块。在这一基本思想的指导下,系统设计人员以逻辑模型为基础,并借助于一套标准的设计准则和图表等工具,逐层地将系统分解成多个大小适当、功能单一、具有一定独立性的模块,把一个复杂的系统转换成易于实现、易于维护的模块化结构系统 。 (三)结构化设计的工具 系统结构化设计的主要工具是结构图。结构图的构成主要有以下几个基本部分: 1、模块。模块用矩形方框表示。矩形方框中要写有模块的名称、模块的名称应恰当地反映这个模块的功能。
第二节 系统结构设计 (三)结构化设计的工具 2、调用。用从一个模块指向另一个模块的箭头线,表示前一个模块中含有对后一个模块的调用关系。 第二节 系统结构设计 (三)结构化设计的工具 2、调用。用从一个模块指向另一个模块的箭头线,表示前一个模块中含有对后一个模块的调用关系。 3、数据。调用箭头线旁边带圆圈的小箭头线,表示从一个模块传送给另一个模块的数据。 4、控制信息。调用箭头线旁边带圆点的小箭头,表示从一个模块传递给另一个模块的控制信息。 图9.1(a)的结构图说明了模块A调用模块B的情况。当模块A调用模块B时,同时传递数据x和y,处理完后将数据z返回模块A。如果模块B对数据y修改后,再送回给模块A,则数据y应该出现在调用箭头线的两边,如图9.1(b)所示。图9.1(c)表示模块A调用模块B,且模块A把数据x和y及控制信息C传送给模块B,模块B把数据z返回到模块A。
第二节 系统结构设计 (c) (b) (a) x、y A B z y、z C 图9.1 结构图的简单示例 在结构图中,除了以上几个基本符号之外,还有表示模块有条件调用和循环调用的符号。图9.2(a)表示模块A有条件地选择调用模块B或C或D,图中的菱形符号表示选择调用关系。图9.2(b)表示模块A循环地调用模块B和C,图中的弧形箭头表示循环调用关系。
第二节 系统结构设计 A B C D 图9.2 选择调用和循环调用示意图 第二节 系统结构设计 (b) (a) A B C D 图9.2 选择调用和循环调用示意图 应该指出的是,我们把结构图设定为树状组织结构,以保证系统的可靠性。一个模块只能有一个上级,可以有几个下级。在结构图中,一个模块只能与它的上一级模块或下一级模块进行直接联系,而不能越级或与它同级的模块发生直接联系。若要进行联系时,则必须通过它的上级或下级模块进行传递。另外,这里谈到的结构图与程序框图是两个不同的概念。结构图是从空间角度描述了系统的层次特征,而程序框图则主要描述了模块的过程特征。
第二节 系统结构设计 (四)模块划分的标准 评价和衡量系统的结构化程度及模块的独立性可以通过模块与模块之间的关联度和模块内部各个组成部分之间的聚合度两条标准。 1、模块的关联度 模块的关联度是用来表示系统中一个模块与其他外部模块之间联系的紧密程度。关联度越低则说明模块之间的联系越少,模块的独立性就越强,就越容易独立地进行编程、调试和修改,一个模块中产生的错误对其他模块的影响也就越小。 2、模块的聚合度 模块的聚合度是用来描述和评价模块内部各个组成部分之间联系的紧密程度。一个模块内部的各个组成部分之间联系的越密切,其聚合度越高,模块的独立性也就越强。
第二节 系统结构设计 返回 (四)模块划分的标准 第二节 系统结构设计 (四)模块划分的标准 在划分系统模块的设计时,除了要考虑降低模块之间的关联度和提高模块的聚合度这两条基本原则之外,还要考虑到模块的层次数和模块结构的宽度。如果一个系统的层数过多或宽度过大,则系统的控制和协调关系也就相应复杂,系统的模块也要相应地增大,结果将使设计和维护的困难增大。 返回
3.模块之间的关联度 按关联程度由低到高分为: 数据关联:如果两个模块彼此之间通过数据交换信息,而且每一个参数仅仅为数据,称为数据关联,或数据耦合。 控制关联:如果两个模块之间彼此传递的信息中有控制信息,则称为控制关联或控制耦合。 公共环境关联:如果两个模块彼此之间通过一个公共的数据区域传递信息,则称为公共环境关联。 内容关联:如果一个模块需要涉及另外一个模块的内部信息时,称为内容关联或内容耦合。
模块之间的关联度的比较 形式 可读性 错误扩散性 可修 改性 通用性 程度 数据 好 弱 强 控制 中 公共 不好 差 内容 最差 最强
4.模块内部聚合度类型(1) 偶然性聚合:将几个毫无联系的程序组合成一个模块。只是为节省存储空间,提高运算速度。 逻辑性聚合:将几个逻辑上相似的程序组合成一个模块。内部功能靠控制变量选择调动,类似子程序调动。 时间性聚合:将几个需要在同一时间段内执行的程序聚合成一个模块。如系统的初始化模块,关机模块等。 过程性聚合:将为完成某一工作,执行条件受同一控制流支配的几个程序聚合成一个模块。如若干报表的制作。
模块内部聚合度类型(2) 数据性聚合:将对同一数据库(数据文件)加工处理的几个程序聚合成一个模块。如工资输入、工资查询、做工资报表的聚合。 顺序性聚合:将几个顺序执行,一个程序的输出是另一个程序输入的程序聚合成一个模块。如:“销售数据采集程序”与“销售数据分析”程序的聚合。 功能性聚合:将为完成一项工作所必须的几个小程序聚合成一个模块。如 “打印工资发放表”由“打印机设置”、“读工资数据”、“打印表头”、“循环输出每行数据”,“打印表尾”聚合而成,缺一不可,切不宜再分。
模块内部聚合度的比较 组合 联结形式 可修改行 可读性 通用性 程度 功能 好 高 低 顺序 中 数据 不好 过程 时间 最坏 逻辑 偶然
复习思考题 何谓模块的关联度? 何谓模块的聚合度? 功能结构图、程序框图各自的作用是什么?它们之间存在什么关系?
第三节 系统功能设计 一、系统设计的原则 系统设计总的原则是保证系统设计目标的实现,并在此基础上使技术资源的运用达到最佳。系统设计中,应遵循以下原则: (一)系统性原则 系统是一个有机整体。因此,在系统设计中,要从整个系统的角度进行考虑,使系统有统一的信息代码、统一的数据组织方法、统一的设计规范和标准,以此来提高系统的设计质量。 (二)经济性原则 经济性原则是指在满足系统要求的前提下,尽可能减少系统的费用支出。一方面,在系统硬件投资上不能盲目追求技术上的先进,而应以满足系统需要为前提。另一方面,系统设计中应避免不必要的复杂化,各模块应尽可能简洁。
第三节 系统功能设计 一、系统设计的原则 (三)可靠性原则 第三节 系统功能设计 一、系统设计的原则 (三)可靠性原则 可靠性既是评价系统设计质量的一个重要指标,又是系统设计的一个基本出发点。只有设计出的系统是安全可靠的,才能在实际中发挥它应有的作用。一个成功的管理信息系统必须具有较高的可靠性,如安全保密性、检错及纠错能力、抗病毒能力、系统恢复能力等。 (四)管理可接受的原则 一个系统能否发挥作用和具有较强的生命力,在很大程度上取决于管理上是否可以接受。因此,在系统设计时,要考虑到用户的业务类型、用户的管理基础工作、用户的人员素质、人机界面的友好程度、掌握系统操作的难易程度等诸多因素的影响。因此在系统设计时,必须充分考虑到这些因素,才能设计出用户可接受的系统。
第三节 系统功能设计 二、功能结构图设计的方法 第三节 系统功能设计 二、功能结构图设计的方法 系统功能结构图的设计通常用功能结构图的形式来描述系统的层次结构和功能的从属关系,功能结构图的一般形式如图9.3所示。图中每一长方框代表一种功能。目标可看成是系统,第二层功能可看作是子系统,再下面表示被分解的各项更具体的功能。 功能B3 功能B2 功能B1 功能N 功能C 功能B 功能A 目标 图9.3 功能结构图的一般形式
第三节 系统功能设计 二、功能结构图设计的方法 第三节 系统功能设计 二、功能结构图设计的方法 对于综合性的企事业管理信息系统,进行子系统划分时,可以将管理职能作为主要因素,如图9.4所示。 企业管理信息系统 计划子系统 财务子系统 销售子系统 生产子系统 帐务处理子系统 工资核算子系统 成本核算子系统 图9.4 企业管理信息系统功能结构图
第三节 系统功能设计 返回 二、功能结构图设计的方法 第三节 系统功能设计 二、功能结构图设计的方法 在此基础上,可以进一步划分功能模块,形成某一个子系统的功能结构图。图9.5是工资管理子系统的功能结构示意图。 工资管理信息子系统 计算和打印 建立扣款文件 更新主文件 建立主文件 建立主处理文件 打印工资单 数据维护 数据录入 更新 打印工资汇总表 计算 图9.5 工资管理子系统功能结构图 返回
第四节 处理流程图设计 一、系统处理流程图设计 第四节 处理流程图设计 一、系统处理流程图设计 系统处理流程图是以新系统的数据流程图为基础绘制的。首先为数据流程图中的处理功能画出数据关系图。图9.6是数据关系的一般形式,它反映了数据之间的关系,即输入什么数据、产生什么中间数据和输出什么信息之间的关系。 输入数据B 处理功能 中间文件D 输出文件F 输入数据C 输入数据A 输入数据E 图9.6 数据关系的一般形式
第四节 处理流程图设计 最后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即系统处理流程图。 第四节 处理流程图设计 最后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即系统处理流程图。 绘制系统处理流程图应当使用统一符号。目前我国国家标准GB1526—79信息处理流程图符号和国际标准化组织标准ISO1028、2636以及美国国家标准协会ANSI的图形符号大致相同,常用的符号如图9.7所示。 网络 磁带 显示 处理 决策 端点、中断符 收集数据 人工输入 打印文件 手工操作 读取信息 磁盘 联机存储 辅助操作 处理流程线 信息流向线 图9.7 常用的系统流程图符号
第四节 处理流程图设计 一、系统处理流程图设计 图9.8是某库存管理子系统的数据流程图中的一部分,图9.9是所转换的信息系统流程图。 第四节 处理流程图设计 一、系统处理流程图设计 图9.8是某库存管理子系统的数据流程图中的一部分,图9.9是所转换的信息系统流程图。 月报表 出库单 库存台帐 查询 统计打印 查询条件 显示结果 入库单 出入库处理 出库单 入库单 出库处理 库存台帐 统计打印 查询 查询条件 月报表 显示结果 图9.8库存管理子系统数据流程图 图9.9 库存管理子系统信息系统流程图
第四节 处理流程图设计 二、程序框图设计 程序框图,又称程序流程图。它是用统一规定的标准符号描述程序运行具体步骤的图形表示。是描述模块内部处理过程的主要工具。程序框图的设计是在系统处理流程图的基础上,通过对输入输出数据的详细分析,然后将具体的处理过程在计算机中的主要运行步骤标识出来,作为程序设计的最基本依据。 运用结构化程序设计方法描述模块内部的处理过程,主要采用以下五种基本的处理结构:顺序处理结构、选择处理结构、先判断后执行的循环结构、先执行后判断的循环结构、多种选择处理结构。如图9.10所示。
第四节 处理流程图设计 顺序处理 选择处理 先判断后执行的循环处理 多条件选择处理 先执行后判断的循环处理 图9.10 程序框图的基本结构 第四节 处理流程图设计 B A 条件 A B 输入数据E 条件 A 顺序处理 选择处理 先判断后执行的循环处理 条件 A1 A2 A3 条件 A N Y 多条件选择处理 先执行后判断的循环处理 图9.10 程序框图的基本结构
第四节 处理流程图设计 三、程序设计说明书 程序设计说明书是对程序框图注释性的书面文件,以帮助程序设计人员进一步了解程序的功能和设计要求。 第四节 处理流程图设计 三、程序设计说明书 程序设计说明书是对程序框图注释性的书面文件,以帮助程序设计人员进一步了解程序的功能和设计要求。 程序设计说明书主要包括以下内容: 1、程序名称。它包括反映程序功能的文字名称和标识符。如录入模块LU.PRC2等。 2、程序所属的系统和子系统名称。 3、编写程序所用的语言。 4、输入数据的方式与格式。当有多种数据输入时,应当分别对每种数据的输入方式和格式作出具体而详细的说明。 5、输出信息的方式与格式。当有多种信息按不同方式输出时,应当分别说明按各种方式输出时的格式要求。
第四节 处理流程图设计 返回 三、程序设计说明书 程序设计说明书主要包括以下内容: 第四节 处理流程图设计 三、程序设计说明书 程序设计说明书主要包括以下内容: 6、程序处理过程说明。它包括在程序中使用的计算公式、数学模型和控制方法等。 7、程序运行环境的说明。它主要是指保证程序能够正常运行所需要的输入、输出设备的类型和数量,内部存储器的容量,以及支持程序运行的操作系统等内容进行说明。 程序设计说明书不仅是程序设计人员进行程序设计时的重要参考,也是系统修改和维护的技术依据。 返回
第五节 代码设计 一、代码的功能与设计原则 (一)代码的功能 第五节 代码设计 代码是代表客观存在事物名称、属性和状态等的符号。代码的符号可以是数字、字母或者是由数字和字母混合组成 。 一、代码的功能与设计原则 (一)代码的功能 使用代码可以提高计算机处理的效率和精度。按代码对事物进行分类、合并、更新、检索,可以十分迅速。 利用代码可以节省计算机的存储空间,提高运算速度。例如在物资管理系统中,通过相应的代码就可以反映出物资的种类、规格、型号等内容,因此可以减少计算机处理的数据量,提高处理速度,并可以节省存储空间。 利用代码可以提高系统的可靠性。通过在代码中加入校验码,可以在输入数据时利用计算机进行检验,以保证输入的数据准确可靠,从而可以提高整个系统的可靠性。
第五节 代码设计 (一)代码的功能 (二)代码设计的原则 第五节 代码设计 (一)代码的功能 利用代码可以提高数据的全局一致性。对同一事物,即使在不同场合有不同的叫法,都可以用代码统一起来,减少了因数据不一致而造成的错误。 代码是人和计算机的共同语言,是两者交换信息的工具。 (二)代码设计的原则 1、唯一性。每一个代码只能唯一地代表系统中的一个实体或实体属性。而一个实体或实体属性也只能唯一地由一个代码来表示。 2、标准性。代码设计时要尽量采用国际或国家的标准代码,以方便信息的交换和共享,并可为以后对系统的更新和维护创造有利条件。
第五节 代码设计 (二)代码设计的原则 3、合理性。代码设计必须与编码对象的分类体系相适应,以使代码对编码对象的分类具有标识作用。 第五节 代码设计 (二)代码设计的原则 3、合理性。代码设计必须与编码对象的分类体系相适应,以使代码对编码对象的分类具有标识作用。 4、可扩充性。编码时要留有足够的备用代码,以适应今后扩充代码的需要。但备用代码也不能留得过多,以免增加处理的难度。 5、简单性。代码结构要简单,要尽量缩短代码的长度,以方便输入,提高处理效率,并且便于记忆,减少读写的差错。 6、适用性。代码设计要尽量反映编码对象的特点,以便于识别和记忆,使用户容易了解和掌握。 7、规范化。代码的结构、类型、编码格式必须严格统一,以便于计算机处理。
第五节 代码设计 二、代码的种类 (一)顺序码 从编码对象实际状况和使用方便两个方面进行考虑,常用的代码主要有以下几种: 第五节 代码设计 二、代码的种类 从编码对象实际状况和使用方便两个方面进行考虑,常用的代码主要有以下几种: (一)顺序码 顺序码是用一串连续的数字来代表系统中的客观实体或实体属性。 例如,一个大学里面的各个学院可以采用顺序编码: 01 经济管理学院 02 化工学院 03 纺织学院 : : 14 机械工程学院
第五节 代码设计 (一)顺序码 顺序码的优点是简单、易处理。缺点是不能反映编码对象的特征,代码本身无任何含义。另外,由于代码按顺序排列,新增加的数据只能排在最后,删除数据则要产生空码、缺乏灵活性。所以通常作为其他编码的一个组成部分。 (二)区间码 区间码是按编码对象的特点把代码分成若干个区段,每一个区段表示编码对象的一个类别。例如,全国行政区邮政编码即为典型的区间码。 区间码的优点是从结构上反映了数据的类别,便于计算机分类处理,排序、分类,插入和删除也比较容易。它的缺点是代码的位数一般都比较多。区间码往往要和顺序码混合使用。
第五节 代码设计 (三)助忆码 (四)缩写码 助忆码是指用可以帮助记忆的字母和数字来表示编码对象。例如,表示电视接收机可以用代码: 第五节 代码设计 (三)助忆码 助忆码是指用可以帮助记忆的字母和数字来表示编码对象。例如,表示电视接收机可以用代码: TV—B—30表示30cm黑白电视机; TV—C—51表示51cm彩色电视机。 助忆码的优点是直观、便于记忆和使用。缺点是不利于计算机处理,当编码对象较多时,也容易引起联想出错,所以这种编码主要用于数据量较少的人工处理系统。 (四)缩写码 缩写码是把人们习惯使用的缩写字直接用于代码。 例如: kg—千克;cm—厘米。 缩写码的优点是简单、直观,便于记忆和使用。但是,由于缩写字有限,所以它的使用范围也有限。
第五节 代码设计 三、代码的校验 (五)尾数码 使末尾位的数字码具有一定含义,可以不增加主要代码位数而进行分类,即利用尾位数字修饰主要代码。 第五节 代码设计 (五)尾数码 使末尾位的数字码具有一定含义,可以不增加主要代码位数而进行分类,即利用尾位数字修饰主要代码。 例如,用02301表示230毫米,用02302表示230厘米。 三、代码的校验 代码作为数据的一个组成部分,是系统的重要输入内容之一,它的正确与否直接影响到整个处理工作的质量。为了保证输入代码的正确性,人们在设计代码时,可以在原有代码的基础上再加上一个校验位,使其成为代码的一个组成部分。校验位通过事先规定好的数学方法计算出来,当带有校验码的代码输入到计算机中时,计算机也利用同样的计算方法计算代码的校验位,并将它和输入的代码校验位进行比较,以检验输入是否正确。
第五节 代码设计 三、代码的校验 (一)校验码的设计 第五节 代码设计 三、代码的校验 利用代码校验位可以检测出以下各种在代码使用中产生的错误:抄写错误,如1写成7;易位错误,如12345写成12534;双易位错误,如36819写成31869;随机错误,由以上两种或三种错误综合形成的错误 。 (一)校验码的设计 校验码的设计过程可以分为以下步骤: 1.对原代码的每一位乘以一个权数,然后求它们的乘积之和。 设 原代码有n位:C1C2C3…Cn 对应的权数因子:P1 P2 P3 …Pn 它们的乘积之和:S= C1 P1+ C2 P2 + C3 P3 +…+ Cn Pn 其中:权数因子可以取自然数列1,2,3,…N;几何级数2,4,8,…,2N;或质数等其他数列。
第五节 代码设计 2.对乘积之和取模 R=Smod(M) 其中:R表示余数,S为乘积之和,M为模数,可选用11或12等数。 第五节 代码设计 2.对乘积之和取模 R=Smod(M) 其中:R表示余数,S为乘积之和,M为模数,可选用11或12等数。 3.用模减去余数即得校验码 Cn+1=M-R 其中:Cn+1表示校验位,M表示模,R表示余数。 下面举例说明校验码的设计过程。例如: 设原代码为:12345 对应的权数:32,16,8,4,2 求乘积之和:S=1×32+2×16+3×8+4×4+5×2=114 取模(设模为11):R= Smod(11)=4 得校验码:C6 =11-4=7 最后得到带校验位的代码123457,其中7是校验码。
(原代码与权数乘积之和+校验码)÷模=整数 第五节 代码设计 (二)对输入的代码进行校验 利用校验码对输入的代码进行校验的过程是上述校验码设计的逆过程。因此可利用下面的公式对输入的代码进行检验,若 (原代码与权数乘积之和+校验码)÷模=整数 则认为输入是正确的,否则认为输入有错 。 返回
第六节 输入输出设计 一、输出设计 (一)输出设计的内容 1、确定输出内容 第六节 输入输出设计 一、输出设计 输出设计的目的是使系统能输出满足用户需要的有用信息。对于大多数用户来说,输出是系统开发的目的和评价系统开发成功与否的标准。因此,输出设计的出发点是保证系统输出的信息能够方便地为用户所使用,能够为用户的管理活动提供有效的信息服务。 (一)输出设计的内容 1、确定输出内容 输出信息使用方面的内容,包括信息的使用者、使用目的、报告量、使用周期、有效期、保管方法和复写份数等。 输出信息的内容,包括输出项目、位数、精度、数据形式(文字、数字)、数据来源与生成算法等。
第六节 输入输出设计 (一)输出设计的内容 2、确定输出格式 3、选择输出设备和确定输出介质 第六节 输入输出设计 (一)输出设计的内容 2、确定输出格式 输出信息的格式设计,是为了给用户提供一种清晰、美观、易于阅读和理解的信息。因此,输出信息的格式必须考虑到用户的要求和习惯,要尽量与现行系统的表格形式相一致。表格的输出设计工作可由专门的表格生成器软件完成,图形的输出设计也有专门的软件。 3、选择输出设备和确定输出介质 信息的用途决定了输出设备和输出介质。需要送给其他有关人员或者需要长期存档的材料,必须使用打印机打印输出;若是需要作为以后处理用的数据,可以输出到磁带或者磁盘上;如果只是需要临时查询的信息,则可以通过屏幕显示。输出设备主要是指打印机和显示器。表9.1为输出设备和介质一览表。
第六节 输入输出设计 (二)输出报告 表9.1 输出设备和介质一览表 第六节 输入输出设计 表9.1 输出设备和介质一览表 输出 设备 行式 打印机 卡片或纸带输出机 磁带机 磁盘机 终端 绘图仪 缩微胶卷输出机 介质 打印纸 卡片或纸带 磁带 磁盘 屏幕 图纸 缩微胶卷 用途和特点 便于保存,费用低 可代其他系统输入之用 容量大,适于顺序存取 容量大,存取更新方便 响应灵活的人机对话 精度高,功能全 体积小,易保存 (二)输出报告 输出报告是系统设计的主要内容之一,它定义了系统的输出。输出报告中既标出了各常量、变量的详细信息,也给出了各种统计量及其计算公式、控制方法。 设计输出报告之前应收集好各项的有关内容,填写到输出设计书上(参见表9.2),这是设计的准备工作。
第六节 输入输出设计 表9.2 输出设计书 输出设计书 资料代码 GZ—01 输出名称 工资主文件一览表 处理周期 每月一次 形式 第六节 输入输出设计 表9.2 输出设计书 输出设计书 资料代码 GZ—01 输出名称 工资主文件一览表 处理周期 每月一次 形式 行式打印表 种类 0—001 份 数 1 报送 财务科 项 目 号 项目名称 位数及编辑 备注 部门代码 X(4) 2 工号 X(5) 3 姓名 X(12) 4 级别 X(3) 5 基本工资 9999.99 6 房费 999.99
第六节 输入输出设计 二、输入设计 (一)输入设计的原则 第六节 输入输出设计 二、输入设计 输入设计是整个系统设计的关键环节之一,对系统的质量起着决定性的影响。输入数据的正确性直接决定处理结果的正确性。 (一)输入设计的原则 输入设计包括数据规范和数据准备的过程,在输入设计中,提高速度和减少错误是两个最根本的原则。与此同时,设计好原始单据的格式、控制输入量、减少输入延迟、输入过程应尽量简化以及减少输入错误也是输入设计应遵循的原则。
第六节 输入输出设计 (二)输入检验 1、输入错误的种类 2、数据出错的校验方法 第六节 输入输出设计 (二)输入检验 1、输入错误的种类 数据本身的错误。主要是指原始单据的填写错误或者在输入数据时产生的错误。 数据不足或多余。在数据收集过程中产生的差错。如数据(单据、卡片等)的散失、遗漏或重复等引起的数据差错。 数据的延误。这是指在数据收集过程中,由于提供数据的时间延误所产生的错误。 2、数据出错的校验方法 数据的校验方法有人工直接检查、计算机用程序校验以及人与计算机两者分别处理后再相互查对校验等多种方法。常用的方法是以下几种:
第六节 输入输出设计 2、数据出错的校验方法 (1)重复输入检验。将同一数据由两个人先后输入一次,由计算机比较两次输入的结果,以判断输入的数据是否正确。如两次输入的不一致,计算机显示或打印机打印出错信息。 (2)视觉检验。输入的同时,由打印机打印或屏幕显示出输入的数据,并由人工逐一核对,以检查输入的数据是否正确。 (3)控制总数检验。先由人工计算出输入数据的某数据项总值,然后在输入过程中再由计算机统计出该数据项的总值,比较两次计算结果以验证输入是否正确。 (4)记录数点计检验。通过计算输入数据的记录个数来检验输入的数据是否有遗漏和重复。 (5)格式校验。即校验数据记录中各数据项的位数和位置是否符合预先规定的格式。例如,姓名栏规定为18位,而姓名的最大位数是17位,则该栏的最后一位一定是空白。该位若不是空白,就认为该数据项错误。
第六节 输入输出设计 2、数据出错的校验方法 (6)逻辑校验。即根据业务上各种数据的逻辑性,检查有无矛盾。例如,月份最大不会超过12,否则出错。 (7)界限校验。即检查某项输入数据的内容是否位于规定范围之内。例如,商品的单价,若规定在100元至500元范围内,则检查是否有比100元小及比500元大的数目即可。凡在此范围之外的数据均属出错。 (8)顺序校验。即检查记录的顺序。例如,要求输入数据无缺号时,通过顺序校验,可以发现被遗漏的记录。又如,要求记录的序号不得重复时,即可查出有无重复的记录。 (9)平衡校验。平衡校验的目的在于检查相反项目间是否平衡。例如,会计工作中检查借方会计科目合计与贷方会计科目合计是否一致。又如银行业务中检查普通存款、定期存款等各种数据的合计,是否与日报表各种存款的分类合计相等。
第六节 输入输出设计 三、输入输出的界面设计 (一)菜单式 2、数据出错的校验方法 第六节 输入输出设计 2、数据出错的校验方法 (10)对照校验。对照校验就是将输入的数据与基本文件的数据相核对,检查两者是否一致。例如,为了检查销售数据中的用户代码是否正确,可以将输入的用户代码与用户代码总表相核对。当两者的代码不一致时,就说明出错。 三、输入输出的界面设计 从屏幕上通过人机对话输入是目前广泛使用的输入方式。 (一)菜单式 通过屏幕显示出可供选择的功能和功能代码,由操作者根据需要进行选择。菜单设计应向着既美观又方便的方向发展。目前,在系统设计中常用的菜单设计方法主要有以下几种:
第六节 输入输出设计 (一)菜单式 1、一般菜单。在屏幕上显示出各个选择项每个选择项指定一个代号,然后根据操作者通过键盘输入的代号,计算机决定招待何种后续操作。 2、光带菜单。这是由于在屏幕上以一条光带来提示菜单中的当前候选项而得名。通过光标控制键把光带移到所需的功能项目上,然后按下回车键即执行相应的操作。 3、下拉菜单。这是一种两级菜单,第一级是选择栏,第二级是选择项。各个选择栏横排在屏幕的第一行上,用户可利用光标的左右移动键选定当前选择栏,在当前选择栏下立即显示出该栏中的各项功能,用户可利用光标的上下移动键进行选择。
第六节 输入输出设计 返回 (二)填表式 (三)选择性问答式 第六节 输入输出设计 (二)填表式 填表式屏幕设计通常用于需要通过终端向系统中输入数据。系统将要输入的项目显示在屏幕上,然后由用户逐项填入有关数据。另外,填表式屏幕设计也用于系统的输出。 (三)选择性问答式 选择性问答式屏幕设计是指当系统运行到某阶段时,通过屏幕向用户提问,系统根据用户回答的结果决定下一步执行什么操作。这种方法通常用在提示操作人员确认输入数据的正确性,或者询问用户是否继续某项处理等方面。例如,当用户输入完一条记录后,可以通过屏幕向用户询问“输入是否正确(Y/N)?”,计算机根据用户的回答来决定是继续输入数据还是对刚输入的数据进行修改。 返回
第七节 数据文件和数据库设计 一、概述 二、数据文件设计 (一)数据文件的分类 第七节 数据文件和数据库设计 一、概述 数据文件和数据库设计的目的是对系统分析阶段数据存储的初步设计进一步细化,针对已选定的计算机硬件与软件的性能要求,完成数据存储的详细设计。 二、数据文件设计 数据文件设计就是根据文件的使用要求、处理方式、存储量、数据的活动性以及硬件设备的条件等因素,合理地确定文件类别,选择文件介质,决定文件的组织方式和存取方式。 (一)数据文件的分类 数据文件可以从不同的角度进行分类: 按库文件的存储介质分类,可分为卡片文件、磁盘文件、磁带文件、纸带文件和打印文件等。
第七节 数据文件和数据库设计 (一)数据文件的分类 (二)数据文件设计 数据文件的组织方式分类,可分为顺序文件、索引文件和直接存取文件。 第七节 数据文件和数据库设计 (一)数据文件的分类 数据文件的组织方式分类,可分为顺序文件、索引文件和直接存取文件。 数据文件的信息流向分类,可分为输入文件(如卡片文件)、输出文件(如打印文件)和输入输出文件(如磁盘文件)。 数据文件的用途分类。可分为主文件、处理文件、工作文件、周转文件等。 (二)数据文件设计 数据文件设计是根据系统分析提出的目标系统逻辑模型或开发者与用户协商提出的数据存储要求,确定数据处理方式、文件的存储介质、计算机操作系统提供的文件组织方式、存取方式、对存取时间、处理时间的要求;设计出记录中每一数据项的名称、变量名、类型、宽度和小数位;还应确定记录由哪个程序形成,又输出到哪个程序以及文件的管理制度。
第七节 数据文件和数据库设计 (二)数据文件设计 第七节 数据文件和数据库设计 (二)数据文件设计 数据文件不同的组织方式和文件处理方式所表现出来的存取性能是不一样的,如表9.3所示。表中的活动率指的是文件中被存取的记录占总记录数的百分数。如文件中的总记录数是5000,被存取的记录数是3000,则活动率为60%。 表9.3 常用文件组织方式性能比较 使用效果 组织方式 文件处理方式 文件 大小 随机查找速度 顺序查找速度 适于何种活动率 对软件要求 备注 顺序 随机 很好 不好 无限制 慢 很快 高 低 索引 好 中等大 快 中 有限制 注:表中的随机组织方式,指存取时可以随机地直接定位到任一条记录进行处理。
第七节 数据文件和数据库设计 返回 三、数据库设计 第七节 数据文件和数据库设计 组成文件的基本单位是数据项,相关的数据项组成一条记录。文件的存取主要操作的是记录。设计数据文件主要是设计文件记录的内容与格式。数据文件的设计通常从设计共享文件开始,其它文件中与它相同的数据项目就可以用它作基础。 设计记录,主要是设计文件记录应包含的数据项的名称、变量名、类型、宽度与小数位数。 三、数据库设计 数据库设计是在选定的数据库管理系统基础上建立数据库的过程。(略) 返回
第八节 系统物理配置方案设计 一、设计依据 (一)系统的吞吐量 (二)系统的响应时间 (三)系统的可靠性 第八节 系统物理配置方案设计 一、设计依据 (一)系统的吞吐量 每秒钟执行的作业数成为系统的吞吐量,用TPS(transaction per second)表示。系统的吞吐量越大,系统的处理能力越强。 (二)系统的响应时间 从用户向系统发出一个作业请求开始,经系统处理后,再给出应答结果的时间称为系统的响应时间。如果一个系统的响应时间越快,则计算机的运算速度越快,并且通信线路的传递速率也越高。 (三)系统的可靠性 系统的可靠性可以用连续工作的时间来表示。例如,每天需要24小时连续工作的系统,则系统的可靠性就应该很高 ,这时可以采用双机双工系统结构方式。
第八节 系统物理配置方案设计 一、设计依据 (四)数据管理方式 (五) 集中式还是分布式 第八节 系统物理配置方案设计 一、设计依据 (四)数据管理方式 如果用文件系统管理数据,则操作系统应具备文件管理功能;如果用数据库方式规律数据,那么系统中应配备DBMS或分布式DBMS系统软件和其他网络管理软件。 (五) 集中式还是分布式 如果一个系统的处理方式是集中式的,既可以是单机系统,也可以是网络系统。如果一个系统的处理方式是分布式的,则必须采用网络方案。 (六)单机系统还是多机系统 如果一个系统的功能比较简单,并且规模不大,那么采用单用户或多用户的单机系统可以满足要求;否则就要采用多机系统,以便解决资源共享问题,通常为网络结构形式。
第八节 系统物理配置方案设计 一、设计依据 二、计算机硬件选择 (七)地域范围 需要根据系统覆盖的地域范围来决定是采用广域网还是局域网。 第八节 系统物理配置方案设计 一、设计依据 (七)地域范围 需要根据系统覆盖的地域范围来决定是采用广域网还是局域网。 二、计算机硬件选择 计算机硬件的选择取决于数据的处理方式和运行的软件。管理对计算机的基本要求是速度快、容量大、通道能力强、操作灵活方便,但是计算机的性能越高,其价格也就越昂贵,因此,在计算机硬件的选择上应全面考虑。 确定了数据的处理方式后,在计算机型的选择上则主要考虑应用软件对计算机处理能力的需求,包括:计算机主存,CPU时钟,输入、输出和通信的通道数目,显示方式,外接转储设备及其类型。
第八节 系统物理配置方案设计 返回 三、数据库管理系统的选择 四、应用软件的选择 第八节 系统物理配置方案设计 三、数据库管理系统的选择 管理信息系统都是以数据库系统为基础,一个好的数据库管理系统对管理信息系统的应用有着举足轻重的重要影响,在数据库管理系统的选择上,主要考虑:数据库的性能、数据库管理系统的系统平台、数据库管理系统的安全保密性能、数据的类型。 四、应用软件的选择 商品化应用软件具有技术成熟,设计规范,管理思想先进的特点。直接应用商品化软件既可以节省投资,又能够规范管理过程,加快系统应用的进度。选择应用软件应考虑:软件是否能够满足用户的需求以及软件是否具有足够的灵活性和稳定的技术支持等因素。 返回
第九节 系统安全与数据完整性设计 一、计算机安全 “安全”一词在词典中被定义为“没有危险;不受威胁;不出事故”。 第九节 系统安全与数据完整性设计 “安全”一词在词典中被定义为“没有危险;不受威胁;不出事故”。 系统安全指的是MIS的各组成部分都处于安全状态,包括计算机安全、网络安全与数据库安全等方面。 一、计算机安全 计算机安全的主要目标是保护计算机资源以免受损坏、替换、盗窃和丢失。计算机资源包括:计算机设备、存储介质、软件、计算机输出材料和数据等等。影响计算机安全的因素主要有:人为或自然造成的硬件故障,包括磁盘故障、I/O控制器故障以及主板、芯片、存储器、设备、备份等方面的故障;人为或自然造成的软件故障;数据交换错误;病毒侵入;人为侵害等。在系统设计上可以采取如下措施 :
第九节 系统安全与数据完整性设计 一、计算机安全 1、访问控制 第九节 系统安全与数据完整性设计 一、计算机安全 1、访问控制 访问控制是指进入系统的控制。通常工作站或终端上使用凭“用户名”(USER –ID)和“口令”(PASSWORD)进入系统的措施,以防范非法侵入。在设计上尽量用长口令(5位以上)和字母与符号的混合口令。口令输入时加以屏蔽。另外在设计上还要考虑强制要求定期的口令更换,限制登录时间与次数,并进行必要的提示,记录登录过程以备核查。 2、选择性访问控制 选择性访问控制(DAC—Discretionary Access Control)指对进入系统的不同用户授予不同级别的访问权限,如允许有的用户可以操作输入子系统,有的可以操作输出或系统管理子系统等。还可对用户的读(允许读一个文件)、写(允许建立和修改一个文件)、执行(运行一个程序)的访问权力进行限定。
第九节 系统安全与数据完整性设计 一、计算机安全 3、加密 第九节 系统安全与数据完整性设计 一、计算机安全 3、加密 加密指将原有的可读信息(程序与数据)进行翻译,译成密码或密文的代码形式,以保护信息的安全。解密是加密的逆过程,即把经加密后的代码形式的密文恢复成原来的可读信息的过程。 4、生物识别技术 生物识别技术是指某些对人而言是唯一的特征,其中包括指纹、声音、图像、笔迹甚至人的视网膜血管图像等识别信息用于满足各种不同要求的安全系统中。这种识别技术只用于控制访问极为重要的MIS,用于极为仔细地识别人员。 5、物理安全 通过物理措施,如制定安全运行制度、采取对门、锁、访问卡等方面的安全措施,限制对计算机的物理接触。
第九节 系统安全与数据完整性设计 一、计算机安全 二、网络安全 6、设备自身的运行安全 第九节 系统安全与数据完整性设计 一、计算机安全 6、设备自身的运行安全 选性能优良的服务器和工作站。服务器应具有完善的容错能力、允许带电热插拔、附带智能I/O性能和良好的扩展性。在设计上要考虑服务器的热备份和冷备份工作方式。 7、计算机病毒的防范与杀灭 要设计信息I/O制度,防范病毒。要定期核查病毒,加以杀灭。另外,要做好各种信息的备份,以消除隐患。 二、网络安全 网络安全主要指联网设备上的系统、程序和数据的安全。在系统设计时可采取以下措施以保证网络安全: 访问控制与鉴别 包括口令与用户的设定与判断,选择性访问控制与信息的鉴别等措施。
第九节 系统安全与数据完整性设计 加密 将信息编码成不易被侵入者阅读或理解的形式,以此方法保护数据的信息。 调制解调器安全 第九节 系统安全与数据完整性设计 加密 将信息编码成不易被侵入者阅读或理解的形式,以此方法保护数据的信息。 调制解调器安全 防止对网络拨号设备的非授权访问,以及限制只有授权的用户才能对系统进行访问。 传输介质的安全 传输介质可能受到电磁干扰或截获窃听的威胁。应考虑防电磁泄露的防护措施和利用加密方法对抗截获窃听。 防火墙(Fire wall) 在网络中心或关键之处建成专用的防火墙,以防止攻击能容易地在网络之间移动,四处传播的数据。防火墙通常有二部分:门和闸。门的功能是在网络之间移动数据;闸的功能是阻拦数据从一个网络传到另一个网络中去,实际是数据过滤包。
第九节 系统安全与数据完整性设计 三、数据库安全 四、数据完整性 第九节 系统安全与数据完整性设计 三、数据库安全 数据库的安全是指数据库的任何部分都不允许受到恶意侵害,或未经授权的存取与修改。 四、数据完整性 数据完整性泛指与损坏和丢失相对的数据的状态,通常表明数据的可靠性与准确性是可以信赖的。 针对硬件故障、网络故障、逻辑问题、灾难性事件与人为因素,在系统设计时可用以下办法提高数据完整性: 1、镜像技术。执行时可用逻辑镜像,也可用物理镜像。 2、归档。将文件从在线存储器上拷贝到磁带或光学介质上以便长期保存。
第九节 系统安全与数据完整性设计 返回 四、数据完整性 第九节 系统安全与数据完整性设计 四、数据完整性 3、分级存储管理。与归档相似,是一种能将数据从在线存储器上归档到靠近在线存储器上的自动系统,也可以进行相反的过程。 4、奇偶校验。是提供一种监视的机制来保证不可预测的内存错误不至于引起服务器出错以至造成数据完整性的丧失。 5、灾难恢复计划。是编制在自然灾害或重大人为灾害造成的废墟上如何重建系统的指导性文件。 6、故障前预兆分析。设计出一个分析判断故障前兆的系统,以防患于未然。 7、电源调节。是指在不间断电源基础上增加一套电源调节装置,为MIS提供恒定平衡的电压。 返回
第十节 系统设计说明书 一、系统设计说明书的意义 二、系统设计说明书内容 第十节 系统设计说明书 一、系统设计说明书的意义 系统设计阶段的最后一项工作是将系统设计的各项成果编辑成一套完善的文档资料,即系统设计说明书。设计说明书是整个系统设计的完整描述,是系统设计的阶段性成果的具体体现,也是系统实施的最重要依据。 二、系统设计说明书内容 1.系统模块结构设计说明。系统的模块化结构及其说明,各主要模块处理流程图及其说明等。 2.输入输出设计和人—机对话说明。输入输出设备的选择,输入输出的格式,以及输入数据的编辑校验方法等。 3.网络设计说明。画出网络的拓扑结构图。说明所选网络软硬件平台、线路种类以及连网的目标和具体方案等。
第十节 系统设计说明书 返回 二、系统设计说明书内容 4.代码设计说明。说明编码对象的名称、代码结构、校验位的设计方法和相应的编码表等。 第十节 系统设计说明书 二、系统设计说明书内容 4.代码设计说明。说明编码对象的名称、代码结构、校验位的设计方法和相应的编码表等。 5.数据文件和数据库的设计说明。说明各数据文件和数据库的命名、功能、结构等。 6.安全说明。说明系统安全设计措施及细节,说明数据完整性设计的具体内容,给出系统安全计划文本。 7.其它说明。 编写好的系统设计说明书,交有关部门批准后,即可正式转入系统实施阶段。 返回
复习思考题九 系统设计的任务和目标是什么? 何谓模块的关联度? 何谓模块的聚合度? 功能结构图、处理流程图、程序框图各自的作用是什么?它们之间存在什么关系? 代码设计的主要功能与原则是什么? 代码分为哪些种类?特点是什么? 身份证号码属于什么代码?有何优点? 一所大学里有12个学院,每个学院有2~5个系,每个系负责1~2个专业的教学工作,每个学院每年招4~10个新生班,每班有35人。请设计学籍管理信息系统中的学生代码。
复习思考题九 有一组代码:5613,给定权数16,8,4,2,模为11,按除模取余方法计算出代码的校验位。 I/O界面常用哪几种方式? 说明系统输入与输出有哪些主要设备? 试设计一座高六层、每层12台工作站,信息传递较多的综合管理办公大楼的网络拓扑结构。 请说明用结构化生命周期法和原型法设计数据库的相同点和不同点。 如何保证系统安全和数据完整。