管理信息系统的系统设计.docx
管理信息系统的系统设计 第七章管理信息系统的系统设计 1. 系统设计的主要工作 1.1 系统设计的任务 ?系统设计的任务是:在系统分析提出的逻辑模型的基础上,科学合理地进行物理模型的设计。 1.2 系统设计的主要内容 ?总体设计 ?信息系统流程图设计、功能结构图设计和功能模块图设计等。 ?代码设计和设计规范的制定 ?系统物理配置方案设计 ?设备配置、通信网络的选择和设计以及数据库管理系统的选择 ?数据存储设计 ?数据库设计、数据库的安全保密设计等。 ?计算机处理过程设计 ?输出设计、输入设计、处理流程图设计及编写程序设计说明书 1.3 系统设计的原则 ?系统性 ?系统的代码要统一,设计规范要标准,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享,使一次输入得到多次利用。 ?灵活性 ?尽量采用模块化结构,提高各模块的独立性,尽可能使各子系统间的数据依赖减至最低限度。 ?可靠性 ?安全保密性、检错及纠错能力、抗病毒能力等。 ?经济性 ?在硬件投资上不能盲目追求技术上的先进,而应以满足应用需要为前提;系统设计中应尽量避免不必要的复杂化,各模块应尽量简洁,以便缩短处理流程、减少处理费用。 2 代码设计 2.1 代码的功能 代码是代表事物名称、属性、状态等的符号,为了便于计算机处理,一般用数字、字母或它们的组合来表示。 ?代码的功能: 为事物提供一个概要而不含糊的认定,便于数据的存贮和检索;可以提高处理的效率和精度;提高了数据的全局一致性;是人和计算机的共同语言,是两者交换信息的工具。 2.2 代码的设计 ?代码设计时,应注意以下一些问题: ?设计的代码在逻辑上必须能满足用户的需要,在结构上应当与处理的方法相一致; ?代码要系统化,一个代码应惟一标志它所代表的事物或属性; ?在代码设计时,要预留足够的位置,以适应不断变化的需要; ?要注意避免误解,不要使用易于混淆的字符,如O、Z、I、S、V与0、2、1、5、U易混; ?不要把空格作代码; ?要使用24小时制表示时间等; ?要注意尽量采用不易出错的编码结构。例如字母字母数字的结构(如WW2 )比字母数字字母的结构(如W2W)发生错误的机会要少一些。 ?当代码长于4个字母或5个数字字符时,应分成小段,这样人们读写时不易发生错误。如726-499-6135比7264996135易于记忆,并能更精确地记录下来。 2.3 代码的种类 ?顺序码 ?顺序码又称系列码,是一种用连续数字代表编码对象的码。 例如: ?用1代表厂长 ?2代表科长 ?3代表科员 ?4代表生产工人等 ?区间码 ?区间码把数据项分成若干组,每一区间代表一个组,码中数字的值和位置都代表一定意义。 典型的例子是邮政编码。 ?区间码的分类: ?多面码 ?上下关联区间码 ?十进位码 ?多面码一个数据项可能具有多方面的特性。如果在码的结构中,为这些特性各规定一个位置,就形成多面码。例如,对于机制螺钉,可作如下表那样的规定。代码2342 表示材料为黄铜的1.5mm方形头镀铬螺钉。 ?上下关联区间码。上下关联区间码由几个意义上相关的区间码组成,其结构一般由左向右排列。例如,会计核算方面,用最左位代表核算种类,下一位代表会计核算项目。 ?十进位码。此法相当于图书分类中的十进位分类码,如610.736,小数点左边的数字组合代表主要分类,小数点右边的指出子分类。 助忆码:助忆码用文字、数字或文字来描述,也可用文字与数字结合起来描述。例如,用TV-C-20代表20英寸彩色电视机,其中C代表彩色。 ?助忆码适用于数据项数目较少情况(一般少于50个),否则可能引起联想出错。 2.4 代码结构中的校验位 ?加入校验位的原因: ?人们重复抄写代码和将它通过人手输入计算机时,发生错误可能性更大。为了保证正确输入,有意识地在编码设计结构中原有代码的基础上,另外加上一个校验位,使它事实上变成代码的一个组成部分。 ?校验位的计算: ?校验位通过事先规定的数学方法计算出来。代码一旦输入,计算机会用同样的数学运算方法按输入的代码数字计算出校验位,并将它与输入的校验位进行比较,以证实输入是否有错。 3 功能结构图设计 ?功能结构图是按功能从属关系画成的图表,图中每一个框称为一个功能模块,功能分解的过程就是一个由抽象到具体、由复杂到简单的过程。功能模块可以根据具体情况分得大一点或小一点。分解得最小的功能模块可以是一个程序中的每个处理过程,而较大的功能模块则可能是完成某一任务的一组程序。 ?功能结构图中各层功能与新的信息系统中数据流程图中的处理(功能)是对应的。例如,工资管理子系统被分解为建立主文件、更新主文件、建立扣款文件以及计算和打印等四个子功能,其中每个子功能还可以继续分解下去。 工资管理子系统功能结构图 4 信息系统流程图设计 信息系统流程图属于计算机处理流程图,它用来表示信息在计算机系统中的处理流程。信息系统流程图可以新系统的数据流程图为基础绘制,具体思路如下: ?首先为数据流程图中的处理功能画出数据关系图。 ?最后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即信息系统流程图。 常用的系统流程图符号 新系统逻辑模型转换为系统流程图示例 生产计划优化系统的信息系统流程图 5 系统物理配置方案设计 5.1 设计依据 ?系统的吞吐量 ?系统的响应时间 ?系统的可靠性 ?集中式还是分布式 ?地域范围 ?数据管理方式 5.2 计算机硬件选择 ?计算机硬件的选择取决于数据的处理方式和运行的软件。管理对计算机的基本要求是速度快、容量大、通道能力强、操作灵活方便,但计算机的性能越高,其价格也就愈昂贵。 ?系统的数据处理是集中式的,系统应用的主要目的是利用计算机的强大计算能力,则可以采用主机终端系统,以大型机或中小型机作为主机。 ?系统应用的目的是进行企业管理,其应用本身就是分布式的,则应选择微机网络方式。 ?确定了数据的处理方式以后,在计算机机型的选择上则主要考虑应用软件对计算机处理能力的需求,包括: ?计算机主存; ?CPU时钟; ?输入、输出和通信的通道数; ?显示方式; ?外接转储设备及其类型。 5.3 计算机网络的选择 ?网络拓扑结构 ?网络拓扑结构一般有总线型、星型、环形、混合型等。在网络选择上应根据应用系统的地域分布、信息流量进行综合考虑。 ?网络的逻辑设计 ?按软件将系统从逻辑上分为各个分系统或子系统,然后按需要配备设备,如主服务器、主交换机、分系统交换机、子系统集线器(Hub)、通讯服务器、路由器和调制解调器等,并考虑各设备之间的连接结构。 ?网络操作系统 ?目前,流行的网络操作系统有UNIX、Windows 等。 5.4 数据库管理系统的选择 ?在数据库管理系统的选择上,主要考虑: ?数据库的性能 ?数据库管理系统的系统平台 ?数据库管理系统的安全保密性能 ?数据的类型 ?目前,市场上数据库管理系统较多,流行的有Oracle、Sybase、SQL Server、Informix、FoxPro 和Visual Basic等, 5.5 应用软件的选择 ?选择应用软件应考虑: ?软件是否能够满足用户的需求: ?根据系统分析的结果,验证软件在功能上能否满足数据表示(如记录长度、文件最大长度等)、数据存储量和查询等方面的要求。 ?软件是否具有足够的灵活性。 ?软件是否能够获得长期、稳定的技术支持? 6 制订设计规范 ?设计规范是整个系统的“公用标准”,它具体地规定了文件名和程序名的统一格式、编码结构、代码结构、统一的度量名等。 ?有关设计规范例子请参见本章实例7.2。 7 数据存储设计 7.1 文件的分类 ?文件是系统中存放数据的基本方式。 ?(一) 按文件的用途可把文件分为以下几种: ?主文件 ?主文件是系统中最重要的共享文件,主要存放具有固定值属性的数据。 ?处理文件 ?处理文件又称事务文件,是用来存放事务数据的临时文件,包含了对主文件进行更新的全部数据。 ?工作文件 ?工作文件是处理过程中暂时存放数据的文件。 ?周转文件 ?周转文件用来存放具有固定个体变动属性的数据。 ?其它文件 ?(二) 按文件的组织方式可把文件分为: ?顺序文件 ?索引文件 ?直接存取文件 7.2 文件组织方式 顺序文件: ?顺序文件刚建立时,记录按其来到的先后次序顺序排列,其物理顺序和逻辑顺序并不一定完全一致,称之为串行文件。文件的记录按照鉴别键大小依次重新排列所得到的文件叫做排好序的顺序文件( 简称顺序文件)。因此,排好序的顺序文件是物理顺序和逻辑顺序一致的文件. ?一切存于磁带上的记录,都只能是顺序的,在磁盘上存放记录,既可以顺序地存放,也可以随机地存放。存在顺序存取存贮器上的顺序文件,只能按顺序扫描法查找。存在随机存取存贮器上的顺序文件,可以按顺序扫描法查找,也可以折半查找法进行查找。 ?折半查找法是将待查找区域中点处的记录的鉴别键K和要查找的记录的鉴别键KS相比较,若K=K S,那么键号为K的记录就是要找的记录,若KKS,则取出整个区域的一半(在文件按升序排列时),若KS>K,取下一半;若KS<K,则取上一半。这样继续进行下去,直到找到为止。 索引文件: ?带有索引表的数据文件叫索引文件。 ?增加索引表是为了加快检索记录的速度。索引表的索引项应当按顺序排列,而数据文件本身则可以按顺序排列,也可以不按顺序排列。 ?按索引文件组织方式组织文件时,文件包括索引区和数据区。索引表建立在索引区,数据文件建立在数据区。 ?索引表本身也是一个文件,其中列有每个记录的关键字和相应的物理存储地址,这两项合称为索引项。索引表是由系统程序自动生成的,在为数据文件输入数据的同时建立索引表,表 中的索引项按记录输入的先后顺序排列,待全部记录输入后,软件就对索引表排序。最后的索引表是按关键字的升序或降序排列的关键字与地址的对照表。索引表在排序前按记录的物理顺序排列 ?索引文件优点: ?加快检索记录的速度; ?索引文件组织方式可以保证地址的唯一性,而不产生重号。访问记录时,只要从索引表找到地址,就可得到所需记录,其存取机构的动作也比较简单。 ?索引文件缺点: ?索引表本身需要占有一定存储空间。 直接存取文件 直接地址法: ?程序员或数据库管理员可以直接把存放某一记录的地址作为该记录的键号。 ?直接地址法的优点是:存取机构动作简单,用户使用方便,不会产生重号。 ?缺点是: ?把记录的存贮地址作为键号,不易记忆。 浪费存储空间:有一个文件,其鉴别键号分散在10000到50000号之间,但其记录总数只有5000个。如果用直接地址法存贮记录,就要浪费35001 个记录空间。 杂凑法 ?可以采用,即利用一种称之为杂凑法函数的算法,把键号转换为相应记录的地址,达到压缩存贮空间的目的。杂凑法也叫随机法或转化法。杂凑函数的算法很多 7.3 文件设计 ?文件设计通常从设计共享文件开始。 ?文件由记录组成,所以设计文件主要是设计文件记录的格式。 ?文件记录设计表中详细填写了记录中每一数据项的名称、变量名、类型、宽度和小数位数。 记录设计中还应注明记录由哪个程序形成,又输出到哪个程序。 7.4 数据库设计的基础知识 (一) 数据模型: ?数据模型是数据库系统设计中用于提供信息表示和操作手段的形式构架,是数据库系统实现的基础。 ?根据模型应用的不同目的,可以将模型分为:层次模型,网状模型,关系模型和面向对象模型。 ?目前,主要的数据模型是关系模型(Relational Model)。 ?关系模型应用关系代数和关系演算等数学理论来处理数据库系统中的数据关系。 ?从用户的观点来看,在关系模型下,数据的逻辑结构是一张二维表。每一个关系为一张二维表,相当于一个文件。实体间的联系均通过关系进行描述。 ?关系模型中的主要术语有: 关系:一个关系对应于一张二维表。 元组:表中一行称为一个元组。 属性:表中一列称为一个属性,给每列起一个名即为属性名。 主码(Primary Key,也称主关键字) :表中的某个属性组,它的值唯一地标识一个元组。 域:属性的取值范围。 分量:元组中的一个属性值。 关系模式:对关系的描述,用关系名(属性1,属性2,.,属性n)来表示。 关系模型具有以下特点: ?关系模型的概念单一。 ?对于实体和实体之间的联系均以关系来表示。 ?关系是规范化的关系。 ?规范化是指在关系模型中,关系必须满足一定的给定条件,最基本的要求是关系中的每一个分量都是不可分的数据顶。 ?高度的数据独立性和易操作性 ?关系模型中,用户对数据的检索和操作实际上是从原二维表中得到一个子集,该子集仍是一个二维表。因而易于理解,操作直接、方便,关系模型把存取路径向用户隐藏起来,用户只需指出“做什么”,而不必关心“怎么做”,从而大大提高了数据的独立性。 (二) 关系的规范化 ?规范化理论是E.F.Codd在1971年提出的。他及后来的研究者为数据结构定义了五种规范化模式(Normal Form,简称范式),即第一范式、第二范式、第三范式、BCNF范式和第四范式。?关系必须是规范化的关系,应满足一定的约束条件。范式表示的是关系模式的规范化程度,也即满足某种约束条件的关系模式,根据满足的约束条件的不同来确定范式。 ?在五种范式中,通常只使用前三种。 ?第一范式(1NF) ?属于第一范式的关系应满足的基本条件是元组中的每一个分量都必须是不可分割的数据项。简言之,第一范式指在同一表中没有重复项存在。 ?第二范式 ?所谓第二范式,指的是这种关系不仅满足第一范式,而且所有非主属性完全依赖于其主码。?第三范式(3NF) 所谓第三范式,指的是这种关系不仅满足第二范式,而且它的任何一个非主属性都不传递依赖于任何主关键字。 7.5 数据库设计 ?数据库的逻辑结构设计 ?逻辑结构设计是将概念结构设计阶段完成的概念模型转换成能被选定的数据库管理系统(DBMS)支持的数据模型。数据模型可以由实体联系模型转换而来,将E-R模型转换为关系数据模型的规则: ?每一实体集对应于一个关系模式。 ?实体间的联系一般对应一个关系,联系名作为对应的关系名,不带属性的联系可以去掉。 ?实体和联系中关键字对应的属性在关系模式中仍作为关键字。 ?根据这些规则, 实体和联系就很容易转换成下述对应的关系数据模型。 ?数据库的物理结构设计 ?物理结构设计是为数据模型在设备上选定合适的存储结构和存取方法,以获得数据库的最佳存取效率。 ?物理结构设计的主要内容包括: ?库文件的组织形式。如选用顺序文件组织形式、索引文件组织形式等。 ?存储介质的分配。例如将易变的、存取频繁的数据存放在高速存储器上;稳定的、存取频度小的数据存放在低速存储器上。 ?存取路径的选择等。