资源描述
第7章 管理信息系统设计,7.1 系统设计的目标与原则 7.2 系统概要设计 7.3 系统详细设计,系统设计的任务主要是解决“怎么做”的问题。其目标是进一步实现系统分析阶段提出的系统模型,详细地确定新系统的结构、应用软件的研制方法和内容。,第7章 管理信息系统设计,7.1 系统设计的目标与原则,系统工作效率(处理能力、处理速度、响应时间) 系统的可靠性(抗干扰、平均无故障时间、平均修复时间) 系统的工作质量(准确及时性、用户友好性) 系统的可变性(可修改性、易维护性) 系统的经济性(直接、间接经济效益、社会效益),7.1.1 系统设计的目标,系统性(代码统一,设计规范标准,数据一次输入多次利用) 灵活性(开放性和结构可变性,尽量采用模块化结构,提高模块 的独立性) 可靠性(安全保密性、查错及纠错能力等) 经济性(硬件投资应以满足需要为前提,系统设计应尽量避免不 必要的复杂化,各模块应尽量简洁),7.1.2 系统设计的原则,7.1 系统设计的目标与原则,系统概要设计也就是对系统进行总体结构设计,它是根据系统分析的结果对新系统的总体结构形式和可利用的资源进行大致的设计,它是一种宏观、总体上的设计和规划。通过总体结构设计划分出子系统并对系统功能模块进行描述,给出系统平台的设计方案。,划分子系统 系统功能模块设计 系统平台设计,7.2 系统概要设计,按功能划分,7.2.1划分子系统,根据对系统业务流程、数据流程以及数据/功能(U/C矩阵)分析的结果,结合系统设计要求,进行子系统的划分。 要作到功能独立、数据完整、规模适中。如:项目系统:进度、质量、合同等。,应考虑的因素: 子系统在功能上应有相对的独立性; 子系统在数据上应有较好的数据完整性; 子系统在规模上应有一定的适中性,可以根据功能独立性、数据完整性综合考虑。 例如:工程项目管理信息系统可以分为进度控制子系统、成本控制子系统、质量控制子系统、合同管理等子系统等。,将系统划分成若干个子系统,再把子系统划分为若干个模块。每一个子系统或模块,无论是设计或是调试、修改或扩充,基本上可以互不干扰地进行。,7.2 系统概要设计,结构化设计(Structured Design,SD)方法,SD方法是由美国IBM公司的WStavens,GMyers,LConstantinl等人提出的,适用于任何软件系统的软件结构设计。SD方法通常与系统分析阶段的SA方法衔接起来使用,借助SA方法得到用数据流图和数据词典描述的系统分析报告,SD方法则以数据流图为基础得到软件的模块结构。,是将系统设计成由相对独立、单一功能的模块组成的结构,从而简化研制工作,防止错误蔓延,提高系统的可靠性。在这种模块结构中,模块之间的调用关系非常明确与简单,每个模块可以单独地被理解、编写、调试、查错与修改。模块结构整体上具有较高的正确性、可理解性与可维护性。,基本思想,7.2 系统概要设计,7.2.2 功能模块设计,在从数据流图导出初始模块结构图时采用一组基本的设计策略变换分析与事务分析。 在对初始模块结构图改进和优化方面有一组基本的设计原则耦合小、内聚大,和一组质量优化技术。,模块结构图,模块结构图由五种基本符号组成:,可以组合、分解和更换的单元,是组成系统、易于处理的基本单位。系统中的任何一个处理功能都可以看作是一个模块。也可以理解为用一个名字就可以调用的一段程序语句。,调用模块可以把数据传送到被调用模块处供处理,而被调用模块又可以将处理的结果数据送回到调用模块。,模块间传送某些控制信息,以指导程序下一步的执行。,7.2 系统概要设计,7.2.2 功能模块设计,相关概念 :, 统帅与从属 深度 宽度 扇出数 扇入数,A,J,M,N,A扇出5,B扇出3,F扇出2,宽度5,宽度2,M扇入2,N扇入3,A统帅B、C、D、E、F,B、C、D、E、F从属 A,模块结构图,7.2 系统概要设计,7.2.2 功能模块设计,系统平台选择,(1)单项业务系统。选用各类PC机、数据库管理系统为平台 (2)综合业务管理系统。以计算机网络为系统平台,如Novell网络和关系型数据库管理系统 (3)集成管理系统。综合性更强,规模更大,系统平台也更复杂,涉及异型机、异种网络、异种库之间的信息传递和交换,计算机处理方式选择,根据系统功能、业务处理的特点、性能价格比等因素,选择批处理、联机实时处理、联机成批处理、分布式处理等方式。,计算机网络系统的设计,包括中小型主机方案与微机网络方案的选取、网络互连结构及通信介质的选型、局域网拓扑结构的设计、网络应用模式及网络操作系统的选型、网络协议的选择、网络管理、远程用户等工作。,在信息处理模式上常采用客户机/服务器 (Client/Server) 模式或浏览器/服务器 (Browser/Server) 模式。,7.2 系统概要设计,7.2.3 系统平台设计,代码的概念 代码是客观实体或属性的一种表示符号。在管理信息系统中,代码是人与计算机的共同语言,起着沟通人与计算机的作用。 代码设计的目的 采用代码,可以使数据表达标准化,简化程序设计,加快输入,减少出错,便于计算机处理(记录、检索、排序等),节省存储空间,提高处理速度。 代码设计的意义 代码设计是一项重要的基础工作,设计质量的好坏,不仅关系到计算机的处理效率,而且直接影响MIS的推广与使用。,7.3 系统详细设计,7.3.1 代码设计,代码设计的原则 唯一确定性 每一代码仅代表唯一的实体或属性,每一实体和属性都用一个确定的代码来表示。 标准化与通用性 尽可能利用国际、国内、部门的标准代码。 可扩充性 考虑系统的发展与变化,当增加新的实体(或属性)时,不需要变动原代码体系。 简明性 尽可能简短、统一。 系统性 代码要有规律,逻辑性强。这样既便于计算机处理,也便于识别和记忆及人工处理使用。 易修改性 这是代码具有标准化又具有灵活性的一面,当系统条件发生某些变化时,代码应容易进行修改。,7.3 系统详细设计,7.3.1 代码设计,明确代码目的; 确定代码对象; 确定代码的使用范围和期限; 分析代码对象特征。包括代码使用频率、变更周期、追加及删除情况等; 决定采用何种代码,确定代码结构及内容; 编制代码表; 编制相应的代码使用管理维护制度,保证代码使用。,代码设计步骤,7.3 系统详细设计,7.3.1 代码设计,按文字种类分 数字代码、字母代码、数字字母混合码 按功能划分 顺序码、层次码、十进制码、助记码,代码的种类,用连续数字表示编码对象。例如企业职工代码可以编为“0001,0002,0003等。顺序码简单明了,易扩充,但不便于分类汇总,删除数据易造成空码。 作为顺序码的一个特例是分区顺序码,它将顺序码分为若干个区,给每个区以特定的意义,并可在每个区预留些空码,为以后插入之用。例如课程分区顺序码: 0109 公共课(如公共课只有6门,从0106,预留3个位置) 1029 基础课; 3039 专业基础课; 4060 专业课 这种码在使用中预留多少备用码不好估计。,顺序码,层次码也称区间码。按位被分成若干个区间,每个区间有不同的意义,这样每位码本身和其所在的位置都代表一定的意义。,层次码,7.3 系统详细设计,7.3.1 代码设计,例:我国公民身份证代码的含义,优点:是分类基准明确,码中的数字(或字母)与位置都代表一定 的意义,因而检索、分类或排序都很方便。 缺点:有时会造成代码过长。,层次码,7.3 系统详细设计,7.3.1 代码设计,先把整体分成十份,进而把每一份再分成十份,这样继续不断。,十进制码,助记码,将编码对象的名称、规格等用汉语拼音或英文缩写等形式编成代码,可帮助记忆。,以上几种主要代码,在实际应用中,可根据需要进行选择,或将几种编码方法结合起来使用。,例如:“SX-2”表示2厘米直径的石硝建材; “YSZE”表示预算总额; “PMIS”表示项目管理信息系统。 助记码适用于数据较少的情况,否则容易引起联想错误。,7.3 系统详细设计,7.3.1 代码设计,部门代码 一般采用区间码或分组码。,2位部门码又可以采用区间码。 例如:0049表示基本生产部门 5099表示管理科室。,人员代码 采用部门代码加顺序码。,代码设计示例,物资代码 采用分组码或区间码,并辅以助记码。 设备代码 一般按类别设置代码。 产品代码 一般采用分组码或助记码设计。,物资(设备)代码示例,产品代码示例,7.3 系统详细设计,7.3.1 代码设计,工程代码 一般采用分组码。 会计科目代码 一般采用3222代码结构。 业务往来单位代码 一般采用邮政编码加序号。,会计科目代码示例,工程代码示例,业务往来单位代码示例,代码设计示例,7.3 系统详细设计,7.3.1 代码设计,输出设计所要解决的问题是针对不同用户的特点和要求,以最适当的形式,输出最切合需要的信息。,输出方式的选择 输出报表的设计 输出设计说明,7.3 系统详细设计,7.3.2输入输出设计,输出方式的选择 显示器:内容不多,无需保存的检索信息。 打印机、绘图仪:系统最终结果,以图表或文件的形式输出。 音箱:以声音方式输出。 磁盘:以磁盘文件的形式输出中间结果信息。 调制解调器或网络:可通过电话线或网络传至其他系统。,输出报表的设计 标准化,使用方便,符合用户习惯,便于计算机实现。 输出设计说明 选用的输出设备、信息输出的频率和数量、 各种输出文件及输出报表的格式及表格样本等。,针对不同用户的特点和要求,以最适当的形式,输出最切合需要的信息。,7.3 系统详细设计,7.3.2输入输出设计,在保证输入信息正确性和满足输出需要的前提下,做到输入方法简便、迅速、经济。,输入方式的选择 键盘、鼠标、扫描仪、声音等。 输入数据的获得 考虑数据产生的部门,了解数据的产生周期、平均发生量及最大量,确定收集的时间和方法等。 输入格式设计 输入格式一般与单据格式一致或设计专门的输入记录单,按屏幕填表或对话方式输入。,输入数据的校验(检验方法) 静态校验:输入,打印,校对; 声音校验:边输入计算机边读; 词典校验:以预先存入的词典作为校验样本; 格式检验:检验数据是否符合预先规定格式; 逻辑校验:检验数据值是否合理; 界限校验:检验数据值是否在规定范围内; 顺序校验:检查顺序排列的记录; 记录计数检验:通过记录个数检查是否遗漏; 平衡校验:检验数据的合计是否正确.,7.3 系统详细设计,7.3.2输入输出设计,规范化理论:Normalization Theory,为了使数据存储有一定的标准和简化数据存储的结构,美国IBM公司的科德(EFCodd)在1971年首先提出了规范化理论,如今这个理论有了很大的发展。 用规范化方法设计数据存储结构,可以提高数据的完整性,一致性和可修改性。 规范化理论虽然以关系数据模型为背景,设计一个关系数据库,但是它对一般的数据库逻辑设计,同样具有重要的指导意义。,数据存储结构规范化,7.3 系统详细设计,7.3.3 数据存储设计,第一范式(1NF),为将其转换成规范化的关系,需把“职工档案”数据结构分解成若干个二维表记录。,职 工 档 案,数据存储结构规范化,在一个数据结构中没有重复出现的数据项。 例如:职工档案表示的数据结构(不是规范化的),7.3 系统详细设计,7.3.3 数据存储设计,将上表中的数据项分解成如下两表所示的两个文件存储,这两个文件表示的数据结构是规范化的。,职工基本情况文件,职工简历文件,数据存储结构规范化,第一范式(1NF),7.3 系统详细设计,7.3.3 数据存储设计,函数依赖(Functional Dependence) 如果在一个数据结构R中,数据元素B的取值依赖于数据元素A的取值,我们称B函数依赖于A。或称A决定B,用“A B”表示。,所有非关键字数据元素完全函数依赖于整个关键字。( 关键字仅由一个数据元素所组成必为第二 范式 ),数据存储结构规范化,第二范式(2NF),供应商文件 * 供应商名称 供应商地址,材料编号 材料名称 规格 供应商名称 供应商地址 价格 库存量 库存占用资金,材料文件 * 材料编号 材料名称 规格,材料库存文件 * 材料编号 * 供应商名称 价格 库存量 库存占用资金,例如:“材料-供应商-库存”中的数据元素关系,7.3 系统详细设计,7.3.3 数据存储设计,一个属于第三范式的数据结构,所有的非关键字数据元素都是彼此函数独立的。,A B C,函数依赖:如果在一个数据结构R中,数据元素B的取值依赖于数据元素A的取值, 称B函数依赖于A。 传递依赖:设A,B,C分别是同一个数据结构R中的三个数据元素,如果C函数依赖于B,而B又函数依赖于A,那么C也函数依赖于A,称C传递依赖于A。,数据存储结构规范化,第三范式(3NF),7.3 系统详细设计,7.3.3 数据存储设计,如下材料库存结构,已是第二范式,但存在着传递依赖关系。即库存占用资金”函数依赖于“ 库存量”和“ 价格”,这三个元素均为非关键字域,而“ 库存量”和“ 价格”都完全依赖于整个关键字。显然, “ 库存占用资金”是冗余数据元素。去掉它,就去掉了传递依赖关系,而转换成第三范式的数据结构。,材料库存文件 *材料编号 *供应商名称 价格 库存量,材料库存文件 材料编号 供应商名称 价格 库存量 库存占用资金,数据存储结构规范化,第三范式(3NF),7.3 系统详细设计,7.3.3 数据存储设计,第二步:如果关键字多于一个数据元素, 确保每个非关键字数据元素完全函数 依赖于整个关键字,第一步:把所有有重复的数据结构分解为 若干个二维表的数据结构,指定关键 字唯一标识出每个元组。,第三步:检查所有的非关键字数据元素是 彼此独立,如果不是,消除函数传递 依赖关系,通过去掉冗余或分解的办 法转换成若干个满足这种要求的数据 结构。,非规范化的数据结构 (含有重复出现的数据组项),第一规范化模式 (没有重复组项的数据结构),第二规范化形式 (所有非关键字数据元素都 完全依赖于整个关键字),第三规范化形式 (所有的非关键字数据元素都 完全函数依赖于整个关键字 并且仅依赖于整个关键字),数据存储结构规范化的步骤,7.3 系统详细设计,7.3.3 数据存储设计,(1)去掉重复的数据项,转换成1NF,(2)去掉部分函数依赖,转换成2NF,(3)去掉传递依赖,转换成 3NF,数据存储结构规范化的步骤,7.3 系统详细设计,7.3.3 数据存储设计,主文件 长期保存、用以存储重要数据,对主文件经常进行调用和更新。 业务文件 临时存储数据、实时记载业务过程中数据发生的变化,用于统一更新主文件。 输入文件 需要输入的大量数据先建立数据文件,经校验后,一次输入进行处理。 输出文件 输出的结果文件,它可以是打印文件或其他形式的文件。 工作文件 在处理过程中暂时使用的中间文件,处理结束后文件即可删除。 转存文件 用于存储在一定恢复点上系统部分状态的拷贝文件。转存文件主要是为了安全目的。,7.3 系统详细设计,文件设计,7.3.3 数据存储设计,文件设计的步骤,了解已有的或可提供的计算机系统功能文件,外存配备:磁盘、磁带、光盘的配备数量、功能、容量和有关文件的转贮条件等; 终端和其他外设的配备:涉及文件可能使用的范围,多终端操作的可能性及文件输入、输出和更新的条件; 系统所能提供的文件组织方式和存取方法等,7.3 系统详细设计,7.3.3 数据存储设计,与其他文件的接口:搞清有关文件之间的相互关系及数据项的协调。 文件的数据量:根据文件用途和记录长度,并从将来的需要量考虑,估算文件的数据量(记录数)。 文件的逻辑结构:根据需要,确定文件记录的长度、逻辑结构组成以及各数据项的描述。 文件处理方式:由用途决定文件的处理方式,可以是批处理、实时处理或混合方式等。 文件的更新情况:从文件使用情况考虑,估计插入、修改和删除等操作的频率和更新要求。 文件的使用率:估算文件记录的实际使用频率。 文件存取时间:根据业务处理的需要,对文件存取时间提出的不同要求 文件的保密性:用户对文件机密程度的要求。,文件设计的步骤,确定文件设计的基本指标,7.3 系统详细设计,7.3.3 数据存储设计,文件设计的步骤,下面是以FoxPro数据库文件为例给出的记录设计工作表。 数据库文件名:GZWJ 字段 字 段 名 类型 长度 小数位 姓名 XM C(字符) 6 工资 GZ N(数字) 7 2,记录设计工作表,7.3 系统详细设计,7.3.3 数据存储设计,数据库设计与系统开发阶段对照,数据库系统已形成一门独立的学科,所以,当把数据库设计原理应用到管理信息系统开发中时,数据库设计的几个步骤就与系统开发的各个阶段相对应,且融为一体。,数据库设计,7.3 系统详细设计,7.3.3 数据存储设计,概念结构设计应在系统分析阶段进行。任务是根据用户需求,设计数据库的概念数据模型(简称概念模型)。概念模型是从用户角度看到的数据库,可用E-R模型表示。,数据库的概念结构设计,数据库设计,7.3 系统详细设计,7.3.3 数据存储设计,一、概念模型:实体联系模型,1.实体(entity): 现实世界中各种事物的抽象。 实体可以是具体存在的各种事物, 如学生、教师、仓库、图书等, 也可以是抽象的概念, 如课程、部门、学校等。,实体联系模型,2.属性(attribute):描述实体的特征或性质 如学生实体的属性有:学号、姓名、性别、年龄等。 课程实体的属性有:课程号、课程名、学分等。 3.码(key): 唯一标识实体的属性集 如学生实体的码是学号, 课程实体的码是课程号,实体联系模型,4.域(domain):属性的取值范围 如性别的域为男,女, 学号的域为长度为9的字符串,实体联系模型,5.实体型(entity type): 具有相同属性的实体集合, 由实体名和一组属性来定义 如学生实体型为:学生(学号,姓名,性别,年龄) 课程实体型为:课程(课程号,课程名,学分) 6.实体集(entity set): 同型实体的集合。 如全体学生、所有课程都是实体集,E-R图的表示方法,实体型用矩形表示,矩形框内写明实体名。 属性用椭圆表示,并用无向边与实体连接。,7.联系(relationship),实体(型)内部和实体(型)之间都存在联系。 实体内部的联系: 组成实体的各属性之间的联系。 (10.3.1)实体之间的联系: 不同实体集之间的联系。 1:1 联系 1:n 联系 m:n 联系,一对一(1:1)联系,如果对于实体集A中的每一个实体, 实体集B中至多有一个实体与之联 系,反之亦然,则称实体集A和实体 集B具有一对一联系,记为1:1,一对多(1:n)联系,如果对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系,反之, 实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A和实体集B具有一对多联系,记为1:n,多对多(m:n)联系,如果对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系,反之, 对于实体集B中的每一个实体,实体集A中也有m(m=0)个实体与之联系。则称实体集A和实体集B具有多对多联系,记为m:n,1.联系的属性,二、关于E-R模型的几点说明,2.两个不同型实体间的多种联系,一个职工可以参加多个工程, 一个工程可以有多个职工参加 一个工程由一个职工负责, 一个职工可以负责多个工程,3.两个以上实体间的多元联系,一门课程可以有若干个教师讲授,使用若干本参考书。每一个教师只讲授一门课程,每一本参考书只供一门课程使用,4.三个实体集之间的多对多联系,一种商品可以由多个售货员 销售给多个顾客, 一个售货员可以将多种商品 销售给多个顾客, 一个顾客可以从多个售货员 那里购买多种商品,5.同一实体内部个体间的二元联系,一个学生(如班长)可以管理 其他多个学生,而每个学生 仅被一个学生管理,三、一个实例,工厂物资管理,完整的E-R图,学生管理模块,宿舍管理模块,教师管理模块,合成后的E-R图,逻辑结构设计是将概念结构设计阶段完成的概念模型转换成能被选定的数据库管理系统(DBMS)支持的数据模型。数据模型可以由实体联系模型转换而来。 逻辑结构设计阶段提出的关系数据模型应符合第三范式3NF的要求。如果选用的DBMS是支持层次、网络模型的DBMS,则还需完成从关系模型向层次或网络模型转换的工作。 用DBMS提供的数据描述语言DDL对数据模型予以精确定义,即所谓模式定义。例如FoxPro中的CREATE命令,其作用类似于DDL,可用来定义逻辑数据结构。,数据库的逻辑结构设计,逻辑结构设计,概念结构是各种数据模型的共同基础 为了能够用某一DBMS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务,1.E-R图向关系模型的转换,E-R图由实体、实体的属性和实体之间的联系三个要素组成 关系模型的逻辑结构是一组关系模式的集合 将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式,(1)实体和属性的转换,实体的属性就是关系模式的属性 实体的码就是关系模式的码,举例1,举例2,(2)联系的转换,1:1联系,转换为一个独立的关系模式 该关系模式的属性为:与该联系相连的各个实体的码及联系本身的属性 每个实体的码均是该关系模式的候选码,举例,1:1联系,与任意一端对应的关系模式合并 在该端关系模式中加入另一个关系模式的码及联系本身的属性 另一个关系模式的码为该关系模式的外码,举例,1:n联系,转换为一个独立的关系模式 该关系模式的属性为:与该联系相连的各个实体的码及联系本身的属性 n端实体的码是该关系模式的码,举例,1:n联系,与n端对应的关系模式合并 在该端关系模式中加入另一个关系模式的码及联系本身的属性 n端关系模式的码不变 1端关系模式的码成为n端关系模式的外码,举例,举例,m:n联系,m:n联系转换为一个独立的关系模式 该关系模式的属性为:与该联系相连的各个实体的码及联系本身的属性 各个实体码的组合是该关系模式的码 各个实体的码成为该关系模式的外码,举例,举例,物理结构设计是为数据模型在设备上选定合适的存储结构和存取方法,以获得数据库的最佳存取效率。物理结构设计的主要内容包括:,库文件的组织形式。如选用顺序文件组织形式、索引文件组织形式等; 存储介质的分配。例如将易变的、存取频度大的数据存放在高速存储器上,稳定的、存取频度小的数据存放在低速存储器上; 存取路径的选择等。,数据库的物理结构设计,数据库设计,7.3 系统详细设计,7.3.3 数据存储设计,1概述 (1)系统的功能、设计目标及设计策略; (2)项目开发者、用户、系统与其它系统或机构的联系; (3)系统的安全和保密限制。 2系统设计规范 (1)程序名、文件名及变量名的规范化; (2)数据字典。 3计算机系统的配置 (1)硬件配置:主机、外存、终端与外波、其它辅助设备、网络形态;,(2)软件配置:操作系统、数据库管理系统、语言、软件工具、服务程序、通讯软件; (3)计算机系统的分布及网络协议文本。 4系统结构 (1)系统的模块结构图; (2)各个模块的IPO图。 5代码设计 各类代码的类型、名称、功能、使用范围及要求等。,7.3 系统详细设计,7.3.4 系统设计说明书,(2)文件结构设计:各类文件的数据项名称、类型及长度等; (3)文件存贮要求,访问方法及保密处理。 9模型库和方法库设计 关于模型库和方法库设计的相关说明。 10. 系统安全保密性设计 关于系统安全保密性设计的相关说明。 11. 系统实施方案及说明 实施方案、进度计划、经费预算等。,6.输入设计 (1)各种数据输入方式的选择; (2)输入数据的格式设计; (3)输入数据的校验方法。 7输出设计 (1)输出介质; (2)输出内容及格式。 8文件(数据库)设计 (1)数据库总体结构:各文件数据问的逻辑关系;,7.3 系统详细设计,7.3.4 系统设计说明书,
展开阅读全文