[互联网]MIS的系统设计.ppt
第八章 管理信息系统的系统设计,系统设计概述系统功能结构设计系统物理配置方案设计代码设计数据库设计用户界面设计处理流程设计系统设计报告,第一节 系统设计概述,系统设计的目的与任务系统设计的依据 系统设计的原则,一、系统设计的目的与任务,主要目的:将系统分析阶段所提出的、充分反应用户信息需求的新系统逻辑模型转换成可以实施的、基于计算机与网络技术的物理(技术)模型。逻辑模型主要确定系统“做什么”,而物理模型则主要解决“系统怎样做”的问题。,一、系统设计的目的与任务,主要任务:从信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的要求,并考虑到经济、技术和运行环境等方面的条件,确定系统的总体结构和系统各组成部分的技术方案,合理选择计算机和通信的软、硬件设备,提出系统的实施计划。,一、系统设计的目的与任务,系统设计阶段的工作包括如下主要活动:总体设计:导出系统的功能模块结构图,确定合适的计算机处理方式和计算机总体结构及系统配置。详细设计:包括:代码设计、数据库设计、输出设计、输入设计、对话设计、处理流程设计、制定设计规范等。编写“系统设计说明书”:是系统设计阶段的成果,是系统实施阶段工作的主要依据。,二、系统设计的依据,可从以下几个方面考虑:系统分析的成果 现行技术 现行的信息管理和信息技术的标准、规范和有关法律制度用户需求系统运行环境,三、系统设计的原则,应遵循以下的主要原则:系统性灵活性可靠性经济性,第二节 系统功能结构设计,主要包括:系统功能结构设计的原则、结构化设计方法、模块结构图及评价标准、转换策略、优化技巧等。系统的功能结构是在遵循结构化和模块化设计思想的基础上,以信息系统功能结构图和信息系统流程图来表示的。,一、系统功能结构设计的原则,应遵循以下的主要原则:分解协调原则 模块化原则 自顶向下的原则 抽象的原则明确性原则,二、结构化设计方法,结构化设计方法是1974年由美国IBM公司首先提出的。其思想是以数据流程图为基础,采用自顶向下、逐层分解的方法,把系统划分为若干子系统,子系统又划分为若干功能模块,模块又划分为子模块,层层划分直到相对独立、功能单一的独立程序为止,最后构造出模块结构图。结构化设计的宗旨是要使设计工作简单化、标准化。,二、结构化设计方法,主要考虑以下几个问题:每个子系统如何划分成多个模块。如何确定子系统之间、模块之间传送的数据及其调用关系。如何评价并改进模块结构的质量。如何从数据流程图导出模块结构图。,三、模块结构设计,模块结构图又称控制结构图或系统结构图,它是反映模块层次分解关系、调用关系、数据流和控制信息流传递关系的一种重要工具。模块结构图由模块、调用、数据、控制信息四种基本符号组成。,(一)模块结构图基本符号,模块,模块是系统中有名称的、具有一定状态和方法的一个实体,是组成系统的基本元素。模块可以是一个程序,也可以是一个函数或过程子函数。模块具有四个属性:输入与输出、处理功能、内部数据、程序代码。,修改库存,调用,数据,用带空心圆的箭头表示传送的数据,并标上数据名,箭头的方向为数据传送的方向。,控制信息,用带实心圆的箭头表示控制信息,并标上信息名,箭头的方向为传送的方向。,(二)模块化,模块化:把系统划分为若干个模块,每个模块完成一个特定的功能,然后将这些模块汇集起来组成一个整体,完成指定功能的一种方法。优点:使整个系统设计简易、结构清晰,可读性、可维护性强,提高系统的可行性,同时也有助于管理信息系统开发和组织管理。,(二)模块化,目标:每个模块完成一个相对独立的特定功能;模块之间的关联和依赖程度尽量小;接口简单。度量标准:模块之间的耦合性(块间联系)模块自身的聚合性(块内联系),1.块间耦合,块间耦合:系统内不同模块之间互联程度的度量。模块间的耦合度越低,模块的独立性越好。形式有:数据耦合、控制耦合、公共耦合、内容耦合,数据耦合,两个模块之间通过数据交换信息,且每一个参数均为数据。,控制耦合,两个模块之间,一个模块通过开关量、标志、名字等控制信息,明显地控制另一模块的功能。,控制耦合,数据耦合,公共耦合,模块之间通过一个公共的数据区域传递信息。,内容耦合,一个模块需要使用另一个模块的内部信息,或者转移进入另一个模块中时,这种联系方式则称为内容耦合。发生内容耦合的情形主要有:一个模块直接访问另一个模块的内部数据;一个模块不通过正常入口转到另一个模块内;两模块有一部分代码重叠;一个模块有多个入口或出口。,块间耦合遵循下列原则,模块间尽量使用数据耦合;必要时才采用控制耦合;限制公共耦合的范围;坚决避免使用内容耦合。,2.块内聚合,块内聚合:衡量模块内各组成部分的凝聚程度。模块内的聚合度越高,模块的独立性越好。形式有:功能聚合、顺序聚合、通讯聚合、过程聚合、时间聚合、逻辑聚合、偶然聚合,2.块内聚合,功能聚合:模块内部各组成部分全部为执行同一功能而结合为一个整体。顺序聚合:模块内部各组成部分,前一部分处理动作的输出是后一部分处理动作的输入。通讯聚合:模块内部各组成部分的动作都使用相同的输入或产生相同的输出。过程聚合:模块内部各组成部分的动作彼此间无关系,但必须以特定的顺序执行。,2.块内聚合,时间聚合:模块内部各组成部分的动作必须在同一时间执行。逻辑聚合:模块内部各组成部分在逻辑上具有相似的处理动作,但功能上、用途上却彼此无关。偶然聚合:模块内部各组成部分之间没有任何关系。,块内聚合比较,(三)从数据流程图导出初始结构图,从数据流程图导出系统的初始结构图,首先要区分数据流程图的结构类型,然后根据不同的类型采用不同的方法把数据流程图映象成相应的模块结构。,1.数据流程图的结构类型,变换型数据流程图 一个数据流程图可以明显地分成输入、处理和输出三部分。,1.数据流程图的结构类型,事务型数据流程图 事务型数据流程图一般呈束状形,即一束数据流平行输入或输出,可能同时有几个事务要求处理或加工。,2.转换策略,以变换为中心的设计步骤:找出主处理、逻辑输入和逻辑输出 设计模块结构的顶层和第一层 设计中、下层模块,变换型数据流程图,转换后的结构图,2转换策略,以事务为中心的设计步骤:确定事务的来源;确定以事务为中心的系统结构;确定每一种事务以及它所需要的处理动作;合并具有相同处理动作的模块,组成公共处理模块加入系统;为每个事务处理模块设计下面的操作模块,再为操作模块设计细节模块。,事务型数据流程图,转换后的结构图,(四)优化设计,将初始结构图根据模块独立性原则进行精化,对模块进行合并、分解修改、调整,得到高内聚、低耦合的模块,得到易于实现、易于测试和易于维护的软件结构,产生设计文档的系统最终结构图。,(四)优化设计,优化设计基本原则:合理控制系统的深度与宽度合理控制模块的扇入和扇出数 模块的大小要适当(一张A4纸)消除重复的功能 设计单入口单出口模块模块应设计成“暗盒”形式,第三节 系统物理配置方案设计,管理信息系统的物理配置方案设计主要包括:计算机软硬件的选择、网络系统的设计、数据库管理系统的选择等。,一、设计依据,系统的吞吐量 系统的响应时间 系统的可靠性 系统的处理方式地域范围或计算模式 数据管理方式,二、设计的基本原则,根据实际业务需要情况配置设备;根据实际业务性质配置设备;根据组织中各部门地理分布情况配备系统设备;根据系统调查分析所估算出的数据容量配备存储设备;根据系统通信量、通信频度确定网络结构、通信媒体、网络类型、通信方式等;根据系统的规模和特点配备系统软件,选择软件工具;根据系统实际情况确定系统配置的各种指标。,第四节 代码设计,代码是指代表事物名称、属性、状态等的符号,它以简短的符号形式代替具体的文字说明。代码设计的任务:设计出一套供管理信息系统开发和运行所需的代码系统。,一、代码的功能,便于录入 节省存储空间,提高处理速度 提高数据标准化程度便于计算机识别和处理 提高处理精度,二、代码设计的原则,惟一性 通用性(标准化)可扩充性 简洁性 系统性 易修改性,三、代码的种类,1顺序码:连续的数字或字母代表编码对象如:职工号可以编成0001,0002,00031565优点:简单,位数少,易追加,易管理;缺点:可识别性差,无逻辑性。2层次码:按区间划分代码,每个区间有一定的含义如:某大学的学生代码*优点:分类明确,有严格的隶属关系,容量大;缺点:位数多。,三、代码的种类,3多面码:按分类对象的属性或特征分“面”,“面”内的类目按其规律编码 如:螺钉可选用材料、直径、螺钉头形状等三个“面”第一面:1-不锈钢 2-黄铜 3-钢 第二面:1-0.5 2-1 3-1.5 第三面:1-圆头 2-平头 3-六角形头 4-方形头 代码234表示“黄铜 1.5方形头螺钉”优点:具有一定的柔性,适合计算机处理;缺点:利用率较低,易出现大量空码。,三、代码的种类,4十进制码:图书馆常用的图书编码方法,与层次码的编码原理相同,所不同点是在十进制码结构中采用了小数点符号。如:C931.6105助记码:用具有特定意义的字母代表某一类项目如:“TV-C-34”表示34英寸彩色电视机;优点:可用汉字拼音或英语联想帮助记忆;缺点:位数多,处理不便,易产生重复。,四、代码的校验,为了保证关键代码输入的准确性、减少输入错误,有意识地在编码设计的基础上,通过事先规定的某种数学方法,计算出校验码,附加在编码之后,作为编码的一部分。输入时与代码一起输入,此时计算机会用同种数学方法,将输入的代码进行数学计算,并与所输入的校验码进行比较,以校验是否正确,并发现错误。,四、代码的校验,采用校验位的方法可以发现以下几种错误:抄写错误:例如,1写为7;3写为8易位错误:例如,1234写为1324 双易位错:例如,36912写为21963 随机错误:包括以上两种或三种综合性错误或其它错误,四、代码的校验,确定校验位的方法:将代码各位(Ci)乘以权因子(Pi),求出各位的积:C1P1,C2P2,.CnPn求出加权和:S=C1P1+C2P2+.+CnPn以称为模的常数(M)除加权和,求出余数R 即:R=S mod M 把模 M 减去余数 R 作为校验位,J=M-R注:当J为10、11、12时,其校验位码为A、B、C;而对于字母编码要使用校验位检查,计算时要将AZ转换为1035。,四、代码的校验,权因子的选取:几何级数,如 1,2,4,8,16,32,算术级数,如 1,2,3,4,5,6,7,质数,如 1,3,5,7,11,13,17,有规律的数,如 1,3,7,1,3,7,模的选取:通常,可取 10,11,13等。,四、代码的校验,例子:原代码1238,权因子为质数,模M=10,以 J=M R 为校验码,设计出其校验码。解:原代码:1 2 3 8 权因子:11 7 5 3 S=11+14+15+24=64 R=S mod M=64 mod 10=4 J=M-R=10-4=6(校验位)原代码加校验码:1 2 3 8 6,原代码23424,权因子为:16,8,4,2,1,模 M=13。以 J=M R 为校验码,设计出其校验码。解:原代码:2 3 4 2 4 权因子:16 8 4 2 1 S=32+24+16+4+4=80 R=S mod M=80 mod 13=2 J=M-R=13-2=11 原代码加校验码:2 3 4 2 4 B,课堂练习,第五节 数据库设计,数据库设计的内容 数据库设计就是在对环境进行需求分析的基础上,进行满足要求及符合语义的逻辑设计,进行具有合理的存储结构的物理设计,实现数据库的运行。,第五节 数据库设计,数据库设计的基本步骤:1.需求和约束分析2概念模式设计3逻辑模式设计4物理数据库设计5实施阶段6运行和数据库维护 其中,5和6是在系统实现阶段所做的工作,一、需求和约束分析,进行数据库设计首先必须准确了解与分析用户需求。调查用户要求 掌握:数据要求、加工要求和各种限制条件。数据分析 明确:数据的有效性、完整性、冗余性、数据的类型和表示、数据之间的联系、数据的标准化、数据总量和数据密级划分。确定环境约束条件,二、概念模式设计,概念模式设计是整个数据库设计的关键。通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。工具:实体联系模型(E-R模型),1E-R模型,E-R模型的三要素:实体、联系和属性。实体:客观存在并可相互区分的事物 如:学生张三、工人李四等 属性:实体所具有的某一特性 如:学生的学号、姓名、性别、年级、成绩等 联系:实体之间的相互关联 如:学生与课程之间有选课联系 联系有一对一(1:1)、一对多(1:n)、多对多(m:n),实体间的联系,例:学生选修课程,学生,课程,选修,姓名,学号,系别,课程编号,课程名,主讲老师,成绩,用矩形表示实体集,在框内写上实体名,用椭圆表示实体的属性,用无向边把实体与其属性连接起来,用菱形表示实体间的联系,将参与联系的实体用线段连接,n,m,标注联系类型,2.E-R模型设计的主要步骤,划分和确定实体;划分和确定联系;确定属性;画出E-R模型.,练习:构造一个基本的教学E-R模型,有学生、教师、课程三个实体,每个实体的属性为:教师(教师编号、教师姓名、职称);学生(学号、姓名、性别);课程(课程编号、课程名、学时、学分、教材名称)教师和课程之间,存在“讲授”关系,有“效果”属性;学生和课程之间,存在“学习”关系,有“成绩”属性。,标识实体 有教师,学生,课程三个实体。划分和确定联系 教师和课程之间,存在“讲授”这个关系,是一个M:N的关系;学生和课程之间,存在“学习”这个关系,是一个L:N的关系;,练习:构造一个基本的教学E-R模型,确定属性实体的属性:教师(教师编号、教师姓名、职称);学生(学号、姓名、性别);课程(课程编号、课程名、学时、学分、教材名称);联系的属性:讲授(效果);学习(成绩);,练习:构造一个基本的教学E-R模型,画出E-R模型,练习:构造一个基本的教学E-R模型,三、逻辑模式设计,逻辑模式设计是把概念模型(即E-R模型)转换为与选用的数据库管理系统所支持的数据模型相符的逻辑数据模型。,三、逻辑模式设计,将E-R模型转为关系数据模型的转换原则:一个实体用一个二维表来表示,实体的所有属性就是表的属性,实体的主码就是表的主码。一个联系用一个二维表来表示,与该联系相连的各实体的主码以及联系本身的属性均成为此表的属性。而表的主码为与联系相连的各实体的主码的组合。,例:学生选修课程的E-R模型,学生,课程,选修,姓名,学号,系别,课程编号,课程名,主讲老师,成绩,n,m,例:学生选修课程的关系数据模型,实体:学生(学号,姓名,性别);课程(课程编号,课程名,主讲老师);联系:选修(学号,课程编号,成绩)。,练习:教学E-R模型转为关系数据模型,练习:教学E-R模型转为关系数据模型,实体:教师(教师编号,教师姓名,职称);学生(学号,姓名,性别);课程(课程编号,课程名,学时,学分,教材名称);联系:讲授(教师编号,课程编号,效果);学习(学号,课程编号,成绩);,四、物理数据库设计,物理数据库设计是指对给定的逻辑模式,选取一个最适合应用环境的物理数据库结构的过程。主要任务包括以下几个方面:确定文件的存储结构、选取存取路径、确定数据存放位置和确定存储分配。,第六节 用户界面设计,用户界面是指信息系统与用户交互的接口,用户界面设计通常包括输出设计、输入设计等。,一、输出设计,2003年4月,上海市徐汇区法院对中国首起因航空公司机票标识不清而导致误机的赔偿案件做出一审判决:被告中国南方航空股份有限公司退还乘客原告杨艳辉女士机票款770元,赔偿80元。同时,法院还向有关主管部门提出司法建议,对今后出售的机票加以文字规范。上海有浦东和虹桥两个机场,而航空公司的机票却仅用英文标示。“PVG”代表前者,“SHA”代表后者。但这一标识并非为所有旅客都知晓。原告杨女士在民惠售票处购买了1月30日下午4时10分南方航空公司班机从上海飞往厦门的9折机票,登机地点是“PVG”。杨女士误认为国内航班的登机地点是虹桥机场,可当她赶至虹桥机场时,却被告知走错了地方,应在浦东机场登机。此时,她再转乘登机为时已晚。最后花了850元买了当日下午一航班的全价机票抵达厦门。,【引导案例】机票标识不清误人,航空公司被判赔偿,【引导案例】机票标识不清误人,航空公司被判赔偿,原告认为,机票不用本国文字清楚标示,只用英文代号标明机场,侵犯了她的知情权;被告南方航空公司和代理商民惠航空服务有限公司没有履行告知、通知的义务。她要求南方航空公司和售票单位退还误机废票款770元,并赔偿误机各项损失700元。民惠公司辩称,按照中国民航总局有关规定,所有机票代理商均应使用国家统一的一套BSP打印系统出票,这套打印系统只能打上英文标示,自从上海有了两个机场,就统一用“PVG”和“SHA”分别表示浦东机场和虹桥机场,原告在购票时没有向出票方询问,误机是自身疏忽造成的。法院认为,客票是客运合同成立的凭据,应当载明出发地、目的地、航次等内容。上海有两大机场人尽皆知,但两个机场的代码为SHA、PVG并非一般人所熟知。本案中,该客运合同的主体是第一被告南航公司,作为承运人和出票人,在出售机票的时候,应当有义务使用通用文字,或以其他方式作明确说明。故南航应承担疏忽告知的过错责任,参照误机处理办法全额退票。,一、输出设计,输出设计工作主要包括:输出类型的确定:外部输出和内部输出 内部输出:指一个处理过程向另一个处理过程的输出;外部输出:指向计算机系统外的输出。输出设备与介质的选择 输出设备:打印机、磁带机、磁盘机、光盘机等;输出介质:打印纸、磁带、磁盘等。输出内容的设计 包括输出内容的项目名称、项目数据的类型、长度、精度、格式设计、输出方式等。,一、输出设计,注意事项:报告应注明名称、标题、日期、图号;尽量将相类似的项目归纳在一起;尽量将位数相同的项目归纳在一起;当一行打印的位数有多余时,项目与项目之间的空格可以加大,使布局合理、醒目;决定数据位数时,要考虑编辑结果的最大数(包括货币符号、逗号所占的位数);字符从左对齐,空格和数字从右对齐;注意“0”和空格的含义;“合计”要醒目;打印时,应把已代码化的名称复原,以求一目了然;,某进销存MIS的报表打印输出示例,二、输入设计,输出信息的正确性很大程度取决于输入信息的正确性和及时性。因此,必须科学地进行输入设计,使之正确地、及时地、方便地收集信息、录入信息。输入设计的原则:最小量 简单性 早检验 少转换,二、输入设计,输入设计工作主要包括:输入内容的确定 包括:数据项的名称、数据类型、位数和精度、数值范围及输入处理方式。输入方式及设备的选择 外部输入:如键盘输入、扫描仪、磁盘导入等。计算机输入:网络传送数据等。输入设备:键盘、鼠标、扫描仪、光电阅读器、光笔、磁盘、磁带、网络传输等。,二、输入设计,输入设计工作主要包括:输入数据的格式设计 尽量与原始单据格式类似,屏幕界面要友好,数据输入格式有录入式、选择式等,屏幕格式有简列式、表格式、窗口编辑方式等。输入数据的检验 检验方法:重复录入校验、视觉校验、分批数据汇总校验、数据类型格式范围校验、加检验位校验等。,某ERP软件中报价单的录入示例,第七节 处理流程设计,处理流程设计就是对系统结构图中的每一个功能模块,用各种符号具体地规定处理过程内的各个步骤,为程序员提供详细的技术资料。常见的设计工具:程序流程图、N-S图、PAD图、PDL语言等。,一、程序流程图,程序流程图使用以下三种符号:(1)矩形框表示一个处理动作;(2)菱形框表示逻辑判断;(3)箭头表示程序流向。程序流程图具有顺序、选择、循环三种基本结构,任何复杂的程序流程图都可以由这三种基本结构组成。,一、程序流程图,Y,Y,Y,N,N,选择结构,循环结构,顺序结构,二、N-S图,N-S图用方框图代替传统的流程图。,选择结构,循环结构,顺序结构,先判断后循环,先循环后判断,三、PAD图,PAD图也称问题分析图。,选择结构,循环结构,顺序结构,第八节 系统设计报告,系统设计阶段的最终成果是写出系统设计报告。系统设计报告既是系统设计阶段的工作成果,也是下一阶段系统实施的基础。系统设计报告的内容包括:系统总体设计方案代码设计方案输入和输出设计方案文件设计方案程序模块说明书,小 结,系统设计概述系统功能结构设计系统物理配置方案设计代码设计数据库设计用户界面设计处理流程设计系统设计报告,