06.管理信息系统——设计_第1页
06.管理信息系统——设计_第2页
06.管理信息系统——设计_第3页
06.管理信息系统——设计_第4页
06.管理信息系统——设计_第5页
已阅读5页,还剩254页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章,系 统 设 计,第一节 系统设计概述,系统设计是新系统的物理设计阶段,根据系统分析阶段所确定的新系统的逻辑模型,综合考虑各种约束,利用一切可用的技术手段和方法,进行各种具体设计,提出一个能在计算机上实现的新系统的实施方案,解决“系统怎样做”的问题。,系统设计概述,系统设计概述,目标和任务 系统设计模型 设计方法 主要内容 解决系统“怎样做(How to do)” 的问题。,1 系统设计的目标 系统分析:解决“做什么” 系统设计:解决“怎么做”,一、系统设计的目标和任务,2 系统设计的任务 问题结构(系统需求) 系统结构 从系统分析说明书出发,形成系统的具体设计方案。,一、系统设计的目标

2、和任务(续),映射,数据 字典,数据 流图,E-R图,加工小说明,流,程,描,述,处理描述,数,据,对,描 述,象,数 据 设 计,模块结构设计,接口设计,过程设计,分析模型,设计模型,平 台 设 计,二、系统设计模型,二、系统设计模型(续),上图中通过数据、功能模型展示的系统需求被传送给设计阶段,运用某种设计方法,设计阶段产生出: 数据设计:将分析时创建的数据模型变换成实现系统所需的数据结构。 平台设计:将性能要求变换成对系统软硬件环境的配置 模块结构设计:定义系统模块元素之间的关系。 接口设计:描述了系统内部、系统和协作系统之间的以及系统同人之间如何通信。 过程设计:将加工说明变换为对系统

3、模块内部算法的具体描述。,三 系统设计方法,结构化设计方法(SD) 面向数据结构的设计方法(JSD方法) 面向对象的设计方法(OOD),四 系统设计主要内容,系统总体设计 系统详细设计 系统平台设计 代码设计 输入输出设计 对话设计 数据库或数据文件设计 模块内部的算法设计 写出系统设计报告,总体设计: 告诉用户系统具体将要做什么。一旦用户同意了这个总体设计,我们会将这个总体设计转换为更加详细的文档。,1 系统总体设计,总体设计包括: 工具 如何描述系统的总体结构 方法 用什么方法把问题结构导出系统结构 评价准则 什么样的系统结构是“最优的”,1 系统总体设计(续),1 系统总体设计(续),总

4、体结构: 系统的组成部分,即有哪些模块组成 系统的层次及调用关系 模块的处理功能 模块之间的界面,即模块间传递的数据,优秀的总体设计应该包含以下特征,不包括用户不熟悉的专业词汇 它描述系统功能 独立于实现过程 与系统分析文档相一致,2 系统详细设计,详细设计: 让系统建设者了解要解决用户的问题所需要的硬件和系统。主要描述系统的硬件配置、系统代码、人机界面、输入和输出、数据库和网络体系结构等。也就是说,详细设计是系统说明的一个技术层面上的描述。,2 系统详细设计(续),详细设计包括: 系统平台设计 代码设计 数据库设计 对话(人机界面)设计 输入/输出设计 模块内部的算法设计(处理流程设计),第

5、二节 结构化系统设计,结构化系统设计,结构化系统设计是“用一组标准的准则和工具帮助系统设计人员确定应该由哪些模块,用什么方式联结在一起,才能构成一个最好的系统结构”。 即,结构化设计方法(SD)是以数据流图为基础的,采用模块化、自顶向下逐步求精的基本思想,以数据流图为基础构造出模块结构图。,采用分解的方法,即把系统分解成由相对独立的、功能单一的若干模块组成的结构 采用图形表达工具 有一组基本的设计原则 有一组基本的设计策略 有一组评价标准和优化技术,一 结构化系统设计的特点,二 结构化系统设计的基本工具,在系统设计阶段,我们采用模块结构图来表达目标系统的物理模型,描述系统的结构。,三 结构化系

6、统设计原则,系统的观点 模块化结构 阶段性策略 模块的独立性 鼓励用户积极参与设计,第三节 系统 总体设计,系统总体设计(主要内容),系统的分解方法 模块结构图 基本设计原则 (模块耦合度与内聚度) 设计策略 (变换型、事务型) 设计优化技巧,一 系统的分解方法,系统分解的方法是把一个复杂的问题分解成简单的要素,把一个统一的整体分解为各个组成部分,然后对各个要素和组成部分分别进行研究。 借助于目标系统的逻辑模型(DFD)并根据部门机构设置情况进行系统分解,1.系统分解的原则,明确系统分解前、后的功能尽量一致 每次分解的结果是可以独立开发的子系统(或模块) 各子系统(或模块)间的关联尽量少 制定

7、子系统(或模块)间的约束规范 区别稳定的和易变的子系统(或模块),2.系统分解的方法,(一)按企业业务管理部门划分 如:生产、销售、供应管理等;按部门设置 (二)按完成功能的类型来划分 如:顾客服务、技术与生产数据管理;按实际职能设置,二 模块结构图,结构化设计方法的基本思想就是模块化。即对每一个系统按功能逐步由顶向下,由抽象到具体的逐层分解,将系统分解成为多层次的独立功能模块,一直分解到能简单地用程序实现为止。,总体设计任务,(一) 模块,模块的定义: 模块是可以组成、分解、更换的系统,是易于处理的基本单位,具有四种属性的一组程序语句称为一个模块,这四种属性分别是输入输出、逻辑功能;(外部特

8、性) 内部数据、程序代码。(内部特性),(一) 模块(续),模块的例子: int max( int x, int y) int z; z=xy? x: y; return(z); ,模块名,数据,内部数据,内部语句,模块化思想:,模块化是好的系统设计的一个基本准则 高层模块 从整体上把握 问题,暂不考虑细节 复杂问题 较小问题 分解 可减小解题所需的总的工作,分解,模块和子系统的区别,模块和子系统的概念是有所区别的。子系统仍具有系统的特征(更大),模块则是指为完成某项功能的程序集合体(较小),它是一个不可分割的整体,但模块和子系统的概念有时又是兼容和不可绝对区分的。在日常工作中我们常将完成一个

9、管理功能的程序集称为模块,而它常常由多个很小的程序子模块组成,所以有的地方可称为子系统。,(二) 模块结构图MSC,1. 结构图的产生 程序流程图 系统流程图和功能图 HIPO技术(功能图和IPO图) 结构图(Structure Chart)。,2.结构图的主要成分,模块用方框表示,方框中写上模块名字,反映了这个模块的功能 调用从调用模块指向被调用模块的箭头 数据调用箭头旁的小箭头,表示从一个模块向另一个模块传送的数据,也指出了传送的方向,3.结构图基本符号及表示法,模块调用的例子: int max( int x, int y) int z; z=xy? x: y; return(z); Ma

10、in( ) : : max( 3, 4) : ,Main(),求最大值,Z,x,y,MSC中的四种模块,传入模块,(a),(b),A,A,传出模块,B,B,变换模块,(c),C,D,协调模块,E,(d),E,F,F,MSC中的简单调用,B,A,C,x,y,z,(a)表示法一,(b)表示法二,z,B,A,C,1,2,入,出,1,2,x,y,z,z,A调用B和C,MSC中的选择调用,A,C,B,D,A根据内 部判断决定是否调用B,A按另一判 定结果选择调用C或D,MSC中的循环调用,A,B,C,A根据循环条件重复调用B、C等模块,选择调用的例子: A( ) : if (条件.) B( ) else

11、 C( ) : ,A,B,C,循环调用的例子: A( ) : while (条件.) B( ); : ; : ,A,B,4.模块结构类型,内导结构:是结构图中数据以最低层模块输入,并逐级向高层传递,高一层模块接收低一层模块的输入。,主模块,A1,A4,A3,A2,外导结构:结构图中低一层模块接收上一层模块的数据信息,并把它们转换给下一级模块,直到输出给使用者。,转换结构:数据要在模块内经过一定的处理,下层模块从相应的上层模块接收数据,经转换后返回同一上层模块中去。,4.结构图与数据流图的差别,数据流程图是从数据流着眼,而结构图从程序模块着眼; 数据流程图描述的是系统的逻辑模型,而结构图是描述系

12、统的物理模型; 数据流程图是用不同的图来表示不同的层次,是“平面图”,而结构图能反映系统的层次结构,是“立体图”; 数据流程图是从具体到抽象,描述系统的要求,而结构图是从抽象到具体,描述系统的实现方法。,(三) 模块设计的原则,系统的可维护性是系统评价的一个重要因素,可维护性,局部修改,模块间的联系尽可能的少 (耦合) 而模块内的联系尽可能多(内聚),1.模块的独立性,模块独立的含义: 模块完成独立、单一的功能 符合信息隐蔽和信息局部化原则 模块间关连和依赖程度尽量小,2.模块独立性的度量,模块独立性取决于模块的内部和外部特性。 SD方法提出的定性的度量标准: 模块之间的耦合性(块间联系) 模

13、块自身的内聚性(块内联系),3.模块独立性的度量之一:耦合度,耦合度是模块间的联结关系,衡量不同模块间的相互依赖的紧密密程度,耦合的强弱取决于模块间接口的复杂程度;进入或访问一个模块的入口点;以及通过接口的数据。 耦合度越高,模块独立性越弱,无耦合没有依赖关系,松散耦合有 少量依赖关系,紧密耦合有 很多依赖关系,模块耦合度(续),耦合度强弱的因素:,一模块对另一模块的引用 一模块向另一模块传递的数据量 一模块施加到另一模块的控制的数量 模块间接口的复杂程度,模块间耦合的类型:,低 非直接耦合 耦 数据耦合 合 标记耦合 性 控制耦合 高 内容耦合,模 块 独 立 性,弱,(低耦合),强,(中耦

14、合),(较强耦合),(强耦合),公共耦合,(1) 非直接耦合,两个模块没有直接关系(模块1和模块2),模块独立性最强。,模块1,模块2,模块3,模块4,(2) 数据耦合,一模块调用另一模块时,被调 用模块的输入、输出都是简单 的数据。 属松散耦合。,数据耦合举例,开发票,计算水费,单价 数量,金额,数据耦合举例,计算水电费,计算水费,计算电费,用水量,用电量,水费,电费,(3) 标记耦合(特征耦合),如两个模块通过传递数据结构 (不是简单数据,而是记录、数组 等)加以联系,或都与一个数据 结构有关系, 则称这两个模块 间存在标记耦合。,标记耦合举例,计算水电费,计算水费,计算电费,住户情况,水

15、费,电费,住户情况,“住户情况”是一个数据结构,图中模块都 与此数据结构有关. “计算水费”和“计算电费”本无关,由于 引用了此数据结构产生依赖关系,它们之间 也是标记偶合.,将标记耦合修改为数据耦合举例,计算水电费,计算水费,计算电费,本月 用水量,本月 用电量,水费,电费,(4) 控制耦合,一模块通过开关量、标志、 名字等控制信息,明显地控 制另一模块的功能。,控制耦合举例,A,计算平均分 或最高分,B,平均/最高,成绩,设想一下A( )函数中调用B( )的语句是怎样的? 这个问题与前面的调用MAX( )的例子不同。 在MAX( )函数中,我们很清楚地看到:形式参数表是两个整数,表示要比较

16、的两个数。 函数说明为: MAX( int x, int y) 函数处理后,返回的结果为较大的那个数。 所以,在主调函数中,我们只需以两个被比较的数作为 实际参数,所以就可写出形如: .=MAX( 25, 36) 的调用语句。,设想一下A( )函数中调用B( )的语句是怎样的? 但在B( )函数中,我们虽然知道:形式参数表是一个整数,表示要取得的成绩类型是平均或最高。 函数说明为: B( int x) 函数处理后,返回的结果为取出的成绩数据(平均或最高)。 可是,在主调函数中,我们仍不知道以什么作为实际参数,是0?1?2?还是其他值,取决于B()中用什么值表示平均/最高标记。因此,就要去了解B

17、()内部的语句,而不能仅凭函数说明就写出调用语句。所以B()就成为灰箱/白箱,而非黑箱。,控制耦合举例,读入分数,输出结果,计算平均分,计算最高分,平均/最高?,调用逻辑性模块 B时,须先传递 控制信号(平均分 /最高分),以选 择所需的操作。 控制模块必须知 道被控模块的内 部逻辑,增强了 相互依赖.,B,控制耦合增加了模块之间的复杂性,调用模块必须知道被调模块的内部逻辑,增加了相互依赖。 去除模块间控制耦合的方法: (1)将被调用模块内的判定上移到调 用模块中进行 控制耦合增加了理解和编程的复 (2)被调用模块分解成若干单一功 能模块,改控制耦合为数据耦合举例,A,计算平均分,B1,平均成

18、绩,最高成绩,计算最高分,B2,控制耦合举例,A,发奖牌,名次 (开关量),奖牌,控制耦合,被调用模块内 处理逻辑模式,功能A,功能B,判别,改控制耦合为数据耦合举例,A,发金牌,发银牌,发铜牌,金牌,银牌,铜牌,A,取口令并核对,B,用户名、 口令,对/不对,控制耦合举例,A,取口令,B,用户名,口令,将B中核对口令功能划分到 A,(5) 公共耦合(公共数据区耦合),一组模块引用同一个公用数据区 (也称全局数据区、公共数据环境)。 公共数据区指: 全局数据结构 共享通讯区 内存公共覆盖区等,公共耦合举例, 公共数据区,松散的公共耦合, 公共数据区,紧密的公共耦合,公共耦合举例,公共数据区,C

19、,B,模块A、B、C间存在错综复杂的联系,公共耦合举例,所有的公共 耦合关系,A,E,B,C,D,6个模块共享一 个公共数据区,F,(1)系统可理解性降低 (模块间存在错综复杂的连系) (2)系统可维护性差 (修改变量名或属性困难) (3)系统可靠性差 (公共数据区及全程变量无保护措施) 慎用公共数据区和全程变量!,公共耦合存在的问题:,(6) 内容耦合,一模块直接访问另一模块的 内部信息(程序代码或数据) 最不好内容耦合形式 !,发生内容耦合的情形:,(1)一模块直接访问另一模块的 内部数据 (2)一模块不通过正常入口转到 另一模块内 (3)两模块有一部分代码重叠 (4)一模块有多个入口,模

20、块化设计对耦合度的要求:,耦合是影响系统复杂程度和设计 质量的重要因素 目标:建立模块间耦合度尽可能 松散的系统,如何降低模块间耦合度:,(1) 如模块必须存在耦合, 选择适当的耦合类型 原则:尽量使用数据耦合 少用控制耦合 限制公共耦合的范围 坚决避免使用内容耦合,如何降低模块间耦合度:,(2) 降低模块间接口的复杂性,接口复杂性与耦合类型的关系:,接 口 复 杂 性,接口方式,接口数据 的复杂性,无接口关系,直接引用,过程调用语句,数据项作参数,数据结构,变 量名作参数,内容耦合,其它耦合,开关量,起 控制变量作用,公用数据区,全程变量,,数据耦合,标记耦合,控制耦合,公共耦合,非直接耦合

21、,4. 模块独立性的度量之二:内聚度,衡量一个模块内部各成分之间彼此结合的紧密程度 设计目标:高内聚(一模块的所有 成分都直接参与并且 对于完成同一功能来 说都是最基本的),模块的内聚性类型:,低 偶然内聚 内 逻辑内聚 聚 时间内聚 性 过程内聚 通信内聚 顺序内聚 高 功能内聚,模 块 独 立 性,弱(功能分散),强(功能单一),(1) 功能内聚,一个模块内的所有成分的处理动作全部为完成某个功能,且只执行一个功能,缺一不可, 称为功能内聚。 内聚性最强 如:计算实发工资,打印发票等,(2) 顺序内聚,一个模块能完成多个操作,前一个操作处理的输出数据是下一个操作处理的输入数据,模块中各成份的

22、工作是有次序的,各成份的关系也较紧密,则称为顺序内聚。,顺序内聚模块例,模块1,模块2,(3) 通信内聚,模块内各部分使用相同的输入数据,或产生相同的输出结果,称为通信内聚,通信内聚模块例,产生工资报表,计算平均工资,职工工资记录,职工工资报表,平均工资,产生职工工资报表并计算平均工资模块,通信内聚模块例,开领 书单,登记 售书,发票,领书单,售 书 登记表,文件,删除,修改,(4) 过程内聚,一个模块内各处理成分的动作各不相同,彼此也没什么关系,但它们都受一个控制流的支配,且决定了它们的执行次序。,过程内聚模块,建立方程组系数矩阵,全部任务纳入一个 模块,得到一过程 性模块,高斯消去法,回

23、代,高斯消去法解题流程,(5) 时间内聚,模块完成的功能必须在同一时间 内执行,这些功能只因时间因素 关联在一起。 例如:初始化系统模块、 系统结束模块、 紧急故障处理模块等均是时间性内聚 模块.,(6) 逻辑内聚,把几种相关功能(逻辑上相似的功能)组合在一模块内,每次调用由传给模块的参数确定执行哪种功能。,逻辑内聚模块例,A,B,C,E,F,G,A,B,C,EFG,A1,B1,C1,EFG模块内部逻辑,E、F、G逻辑 功能相似,组 成新模块EFG,公用代码段,公用代码段,缺点:增强了耦合程度(控制耦合)不易修改,效率低,逻辑内聚缺点:,不易修改 增强了耦合程度(控制耦合) 效率低,(7) 偶

24、然内聚,模块内各部分间无联系,A,B,C,M,MOVE O TO R READ FILE F MOVE S TO T,模块M中的三个语句没有任何联系 缺点:可理解性差, 可修改性差,例:,模块内聚性的判断,5. 耦合、内聚与模块独立性关系,耦合与内聚都是模块独立性的 定性标准,都反映模块独立性 的良好程度。但耦合是直接的 主导因素,内聚则辅助耦合共 同对模块独立性进行衡量。,控制耦合举例,A,计算平均分 或最高分,B,平均/最高,成绩,逻辑内聚,改控制耦合为数据耦合举例,A,计算平均分,B1,平均成绩,最高成绩,计算最高分,B2,功能内聚,A,取口令并核对,B,用户名、 口令,对/不对,控制耦

25、合举例,顺序内聚,A,取口令,B,用户名,口令,将B中核对口令功能划分到 A,功能内聚,内聚与耦合密切相关,同其它模块强耦合的模块意味着弱内聚,强内聚模块意味着与其它模块间松散耦合. 设计目标:力争强内聚、 弱耦合,5. 耦合、内聚与模块独立性关系(续),三 数据流图导出初始结构图,从数据流程图导出系统的初始结构图,首先要区分数据流程图的结构类型,然后根据不同的类型采用不同的方法把数据流图映象成相应的模块结构。,(一)数据流程图DFD的结构类型,1变换型DFD一个数据流程图可以明显地分成输入、处理和输出三部分。 2事务型DFD事务型数据流程图一般呈束状形。,(1) 变换型结构,由输入、变换中心

26、(或称主加工)和输出三部分组成。 基本模型:,变换 中心,输入 路径,输出 路径,变换流示意图,信息,时间,信息流,输入流,输出流,变换流,外部 表示,内部 表示,变换型数据流图,输入 信息,物理 输入,格式 检查,处理,显示,正确 信息,结果,物理 输出,数据,变换中心,输出,逻辑 输入,逻辑 输出,输入,(2) 事务型结构,特征:具有在多种事物中选择 执行某类事物的能力 基本模型:,事务 中心,接受路径,动作 路径,(3)大型系统DFD中,变换型和事务型结构往往共存:,T,事务中心,传入,变换,传出,(二)DFD导出初始MSC的过程,两种转换策略/技术 变换分析 事务分析 一般过程 先设计

27、模块结构顶端的主模块 然后“由顶向下逐步细化” 最后得到一个与数据流图相对应的程序结构,SD方法的两种转换方法,变换型DFD,事务型DFD,初始MSC,初始MSC,变换分析,事务分析,“由顶向下逐步细化”的思想,找出“顶”在哪里,设计一个相应的主控模块 每创建一个新的模块时,必须决定该模块的外部特征 该模块的功能,即该模块“做什么” 该模块同其调用模块的界面,即调用时传送的参数 对已创建的模块进行细化,考虑这个模块应该“怎样做”才能完成它的功能,于是又要创建下一层的新模块,再回到上一步 通过这样“先决定做什么,再考虑怎样 做”,循环往复,设计过程就有序地进行, 直至获得整个完整的结构层次。,变

28、换型,事务型,(三)变换分析设计方法 (Transform Analysis),步骤: 1 找出主加工、逻辑输入和逻辑输出 2 设计模块结构的顶层和第一层 3 设计中、下层模块,1 区分输入、主加工、输出部分,在DFD上标明分界线,(1)确定逻辑输入离物理输入端最远的,但仍可被看作系统输入的那个数据流 方法:从物理输入端开始,一步步向系统的中间移动,直至达到这样一个数据流:它已不能再被看作为系统的输入,则其前一个数据流就是系统的逻辑输入。,1 区分输入、主加工、输出部分,在DFD上标明分界线,(2)确定逻辑输出离物理输出端最远的,但仍可被看作系统输出的那个数据流 方法:从物理输出端开始,一步步

29、向系统的中间反方向移动,直至达到这样一个数据流:它已不能再被看作为系统的输出,则其后一个数据流就是系统的逻辑输出。,1 区分输入、主加工、输出部分,在DFD上标明分界线(续),(3)对系统的每一股输入和输出,都用上 面的方法找出相应的逻辑输入、输出 (4)确定主加工位于逻辑输入和逻辑输出之间的加工,就是系统的主加工,1 区分输入、主加工、输出部分,在DFD上标明分界线(续),(5)几点说明: 有的系统只有输入和输出两部分,没有主加工 根据经验,几股数据流的汇合处往往是 系统的主加工 每个人都可以有自己的看法,找出来的主加工可能也不同,但一般不会相差太远。,1,2,3,4,5,6,7,a,b,c

30、,e,d,r,p,u,w,v,变换中心,输入部分,输出部分,输入,输出,加工,2 设计MSC的顶层和第一层模块:,(1) 设计一个顶层模块(主模块),它的功能是完成整个程序要做的工作。 (2) 设计结构的第一层: 为逻辑输入设计一个输入模块,它的功能是向主模块提供数据 为逻辑输出设计一个输出模块,它的功能是输出主模块提供的数据 为主加工设计一个变换模块,它的功能是将逻辑输入变换成逻辑输出 第一层模块同顶层主模块之间传送的数据应与数据流图相对应。这里主模块控制并协调一层的输入、变换、输出模块的工作,注意识别出选择或循环调用以及调用条件。,第一级分解后的MSC,MC,MT,MA,ME,第一层,顶层

31、,c,e,c,e,u,w,u,w,传送信息,第一级分解后的MSC(另一种画法),MC,MA1,c,e,u,w,c,p,MA2,4,5,6,ME1,ME2,e,p,r,r,w,u,w,3 第二级分解(分解MSC各分支)自顶向下分解,设计出每个分支(输入、加工、输出)的中、下层模块:,(1)为每一个输入模块设计两个下层模块,一个是输入模块,接受数据来源;另一个是变换模块,模块调用时传送的参数应同数据流图相对应 (2)输出模块也有两部分组成,一部分是变换模块,将数据变换成输出的形式;另一部分是输出模块 上述设计过程由顶向下递归进行,直至达到系统的输入端或输出端 (3) 变换模块的下层模块,根据数据流

32、图中相应加工的组成情况而定。,输入分支的分解,MA,Get C,b,a,c,Read D,d,e,c,e,B to C,b,c,d,e,a,b,Get E,Get B,D to E,A to B,Read A,DFD图,输出分支的分解,ME,Write V,u,u,w,u,v,v,Put U,U to V,Write W,w,DFD图,加工分支的分解,MT,5,4,6,e,c,p,r,u,w,p,r,DFD图,任何情况下都可使用变换 分析方法设计软件结构, 但如数据流具有明显的事 务特点时(有一个明显的事 务中心),以采用事务分析 方法为宜。,(四) 事务分析设计方法,事务分析设计方法步骤:,

33、(1)在DFD上确定事务中心。 (2)为DFD上的事务中心设计主模块,再为每一种类型的事务处理设计一个事务处理模块。 (3)为每个事务处理模块设计下面的操作模块,再为操作模块设计细节模块。某些操作模块和细节模块可以被几个上一层模块共用。,事务型DFD的划分,T,事务 中心,传入,变换,传出,接收部分,发送 部 分,a,事务型MSC的上层结构(1),事务控制,Get a,顶层,第一层,a,事务1,事务型MSC的上层结构 (2),事务控制,事务分析,发送,动作分支的典型结构,P,T 2,T 1,T i,A 2,D 2,A 1,D 1,A 3,A j,D k,事务层,操作层,细节层,处理层,变换分析

34、举例-DFD,变换分析举例-转换后的MSC,事务分析举例-转换后的MSC,练习:将DFD用变换分析和事务型 分析导出初始MSC,初始MSC,第四节 系统详细设计,系统详细设计(主要内容),系统平台设计 代码设计 对话(人机界面)设计 输入/输出设计 数据库设计 模块内部的算法设计(处理流程设计),一 系统平台设计,管理信息系统的平台设计包括计算机处理方式、软硬件选择、网络系统的设计、数据库管理系统的选择 等。,一 系统的平台设计(续) 计算机处理方式 根据系统功能、业务处理的特点、性能/价格比等因素,选择批处理、联机实时处理、联机成批处理、分布式处理等方式,也可以混合使用各种方式,一 系统的平

35、台设计(续) (2) 软硬件选择 根据系统需求和资源约束进行软、硬件的选择 硬件选择:选择技术上成熟可靠的系列机型;处理速度快;数据存储容量大;具有良好的兼容性与可扩充性、可维护性;有良好的性能/价格比;售后服务与技术服务好;操作方便;在一定时间内保持一定先进性的硬件。 软件选择:操作系统、数据库管理系统、开发语言、开发工具、应用软件包等软件的选择。如Oracle Server、Microsoft SQL Server、Visual FoxPro等。,一 系统的平台设计(续) (3)网络系统的设计 计算机网络系统的设计主要包括中小型主机方案与微机网络方案的选取、网络拓扑结构、互连结构及通信介质

36、的选型、网络计算模式、网络操作系统及网络协议等的选择。 网络计算模式原来一般采用客户机/服务器(C/S)模式,但随着Internal技术的发展和广泛应用,MIS的网络计算模式开始更多的采用浏览器/Web服务器/数据库服务器(B/W/D)模式。,一 系统的平台设计(续) (4)系统环境的配置 确定系统的网络结构体系(网络设计) 网络拓扑结构,传输介质,组网方式,网络设备,网络协议,网络操作系统等。 硬件的配置 对C/S,B/S服务器和工作站,机型、性能指标、数量、涉及的机构(或部门)、外围设备。 软件的选择(系统软件和工具软件) 对C/S,B/S分服务器和工作站上的软件选择,操作系统,网络管理软

37、件、数据库系统,开发平台与工具,中间介质。,一 系统的平台设计(续) 系统的平台设计结果: 提交如下材料 硬件网络结构图 服务器:硬件、软件选型 工作站:硬件、软件选型 硬件配置清单等表格。,X公司是服务于客户与航空公司、轮船公司之间的国内货运代理公司,其服务的内容是为客户代办托运、报关手续。建立X公司管理信息系统的目的是缩短货运周期,提高服务质量和增强竞争力量。 1、网络建设需求 (1)提供信息通道。X公司网络信息系统连接该公司在全国的28个城市的分公司和办事处,要求提供通信通畅,无断点、无瓶颈的信息通道。 (2)提供Internet信息服务。在总公司/北京分公司设一主出口,与因特网联网。在

38、Internet上,建立公司的WWW主页,提供Email、Telnet、FTP、WWW等信息服务功能。 (3)提供智能化电子邮件功能。能使网上用户通过电子邮件相互访问,并能够通过总部的Internet电子邮件网关与国外进行电子邮件通信。 (4)提供全局命名服务功能。全网统一的名字服务系统可方便网络管理与使用。 (5)提供信息安全功能。在企业网范围内提供信息的安全保密功能,不仅能控制用户对网络和文件访问,还能对网上的所有资源提供保护,对非法入侵者进行防范和跟踪。,案例: X公司的网络系统设计,2、网络系统设计 系统设计的出发点是为用户提供一个既切合实际又具有扩展升级能力的方案,使用户能够获得最大

39、的经济效益。在设计中遵循了以下原则: A.切实可行:符合当今通信技术的发展现状,能够利用所有成熟的通讯手段灵活地构造网络系统。 B.开放性:遵循主流的接口规范和协议标准,不基于特定机型、操作系统或厂家的体系结构,从而保证将来系统扩展与升级以及与其它系统互联的方便可行,避免今天的投资成为明天的浪费。 C.整体优化:不片面追求单机、子系统的高性能,而是以保证子系统有较高的整体性能为目的,整个系统在用户界面上应是一个透明的完整体。 D.技术先进:所选的技术与设备应是成熟的,先进实用,稳定可靠。 E.设计周密:操作系统及网络结构应充分考虑到将来联网的要求。,案例: X公司的网络系统设计(续),案例:

40、X公司的网络系统设计(续),3、X公司企业网系统 由局域网系统、区域网系统、广域网系统三个层次组成。 (1)广域网系统 总部是整个广域网系统的信息枢纽,设有全网络系统的主数据库,被所有分公司、代理和办事处访问与共享。总部与CHINAPAC,Internet,PSTN等都有直接的连接。在总部设有通往Internet的出口。 大多数分公司与总公司连接,各分公司之间的连接都通过CHINAPAC进行,一些较为重要的分公司与总部通过DDN数字专线连接。 在总部设有网络管理工作站,通过中心一套基于PC的网管软件,对整个企业网中所有的路由器进行管理和性能监控,从而提高网络的可维护性与可靠性。,案例: X公司

41、的网络系统设计(续),(2)区域网系统 由于X公司的某些分公司其下属的多个业务部门往往不在一个建筑物内,而是分布在一个城市的不同地区,所以需要进行区域网建设。这些业务部门有的组建规模不同的局域网,通过分组交换网或DDN专线互联;有的小营业点,采用单台PC拨号上网的方式与分公司通信。,(3)局域网系统 根据X公司各分公司规模的不同,其局域网的建设方案分为A、B、C、D四种。 A类:A类局域网采用交换式局域体系结构,具有局域网网管功能和较强的广域网连结能力。选用交换式集成器3COMLinkSwitch2200作为局域网的枢纽。选用3COM的LinkBuilderFMSManagementModul

42、e实现网络管理功能。选用Cisco公司的中档路由器Cisco4500作为广域网的接入设备。 B类:B类方案采用传统的共享式以太网结构。选用可堆叠式的集线器作为网络连接设备,使网络易于扩展,保护现有投资。选用Cisco2501作为广域网的接入设备。比较大的分公司采用这种方案。 C类:C类方案在局域网构成上与B类方案相似。其广域接入设备采用更低档的Cisco路由器Cisco1005。采用这种方案的主要是那些本地需建小型局网的分公司。 D类:D类方案采用单机形式,无局域网设备,无路由器。通过PC计算机上的串口资源或广域网卡与其他分公司进行数据交换。业务规模较小的分公司和一些办事处采用D类方案。,案例

43、: X公司的网络系统设计(续),二 代码设计,代码,是用来代表事物名称、属性、状态等的符号和记号。以简短的符号形式代替了具体的文字说明。 代码设计的任务:设计出一套供管理信息系统开发和运行所需的代码系统。,(一) 代码的作用,便于录入 节省存储空间,提高处理速度 便于计算机识别和处理 提高数据标准化程度 提高处理精度,(二) 代码系统具有的特点,唯一性:每个代码都仅代表唯一的实体或属性; 通用性:表示采用一有的国家标准通用化码(标准化); 可扩充性:当增加新的实体或属性时,直接利用原代码扩充,而不需要变动代码系统; 简洁性:如果代码太长会影响所占存贮空间,输入输出速度,以及输入时的出错率,应尽

44、量减短; 系统性:代码要有规律,逻辑性强,即便于计算机处理,也便于识别,记忆和人工处理的使用; 可修改性:当系统条件发生变化时,代码应容易进行修改。,(三) 编码的分类,1. 顺序编码:用连续数字代表编码对象 , 如:张平的职工号为0001;李立为0002等 优点:简单,易追加; 缺点:可识别性差,无逻辑性。 2. 区间编码:代码分为组,每组具有一定的含义,如某大学的学生代码* * * * * *, 前两位代表年级编号(大分类), 中间两位代表专业及班级编号(中分类), 后两位代表学生在班上的编号(小分类)。 优点:分类明确,每层之间有严格的隶属关系,容量大; 缺点:位数多。,3. 字母编码:

45、用具有特定意义的字母代表某一类项目。 如:“TV”:电视,“CM”厘米 优点:可用汉字拼音或英语联想帮助记忆; 缺点:位数多,处理不便 ,易产生重复。 4. 组合编码:用上述编码组合而成。 按位编码和顺序码组合:学号 01164015 按字线码和数字码组合:汽车号 闽C-1002,(三) 编码的分类(续),(四) 代码设计的原则,选择最小值 要适合计算机处理 要便于使用 要具有系统性、通用性和可扩展性 代码标准化,(五) 代码的校验,校验: 为了保证关键代码输入的准确性、减少输入错误,有意识地在编码设计的基础上,通过事先规定的某种数学方法,计算出校验码,附加在编码之后,作为编码的一部分。输入时

46、与代码一起输入,此时计算机会用同种数学方法,输入代码进行数学计算,并与所输入的代码进行比较,以校验是否正确,并发现错误。,代码输入时常见的错误,抄写错误 易位错误 双位错误 随机错误,1将代码(Ci)各位乘以权因子(Pi),求出各位的积:C1P1,C2P2,.CnPn2求出加权和: S=C1P1+C2P2+.+CnPn3以称为模的常数 M 除和,求出余数R即 R=S mod M4把模 M 减去余数 R 作为校验位, J=M-R 当J为10、11、12时,其校验位码为A、B、C;,确定校验位的方法,校验码例子,原代码1238,权因子为质数法,模M=10 ,以 J=M R 为校验码,设计出其校验码

47、。,2. S=11+14+15+24=64,原编码:1 2 3 8 权因子:11 7 5 3 11 14 15 24,1.,R= S MOD M =64 MOD 10 =4,4. J = M R=10-4=6,原代码加校验码:1 2 3 8 6,思考,原代码1 2 3 4 5,权因子为2 的位数法:2,4,6,8,10,模M=11 ,以 J = M R 为校验码,写出校验码的设计过程。,三 对话设计,1 对话设计的原则: “用户友好” 对话界面要美观、醒目; 提示要清楚、简单,不能有二义性; 要便于操作和学习,有帮助功能; 能及时反馈错误信息等。,三 对话设计(续),2 实现用户友好的三个要点

48、: 树立用户第一的观点 实现界面友好的工作必须融于系统开发的全过程 采用软件开发技术改善界面友好性,三 对话设计(续),3 对话设计的基本类型 菜单:用菜单方式使整个界面清晰,简洁; 图像:在用户界面中,加入丰富多彩的画面能够更形象地为用户提供有用的信息,达到可视化的目的; 对话框:在系统必要时,显示于屏幕上的一个矩形区域内的图形和正文信息,通过对话框实现用户和系统之间的联系; 窗口:通过窗口显示观察其工作领域全部或一部分内容,并可对所显示的内容进行各种系统预先规定好的正文和图形操作。,下拉式菜单、瀑布式菜单,瀑布式菜单,弹出式菜单,图标式菜单,四 输入/输出设计,输出设计 输入设计,输入/输

49、出设计的标准,应尽量减少汉字的输入。 屏幕显示应尽量直观、逼真。 输入数据时应尽量采用选择的方式。 有较强的检错和容错能力。 具有一定的数据恢复能力。 具有完善的帮助系统。 界面风格应当尽量向标准化靠近。,(一) 输出设计,用户所需的信息、报表都要由系统输出完成. 输出设计工作主要包括: 确定输出方式 确定输出的类型与内容 进行输出格式的设计,1 输出方式的选择,输出方式应根据输出信息的要求,信息量的大小、输出设备的限制等备件来决定。一般有: 显示输出 打印输出 图形输出,2 输出的类型与内容,输出类型的确定 输出有外部输出和内部输出之分,内部输出是指一个处理过程(或子系统)向另一个处理过程(

50、或子系统)的输出;外部输出是指向计算机系统外的输出,如有关报表、报盘等。 输出设备与介质的选择 输出设备有打印机、磁带机、磁盘机、光盘机等,输出介质有打印纸、磁带、磁盘等。 输出内容的设计 输出内容的设计包括输出内容的项目名称、项目数据的类型、长度、精度、格式设计、输出方式等。,3 输出格式设计的注意点,报告应注明名称、标题、日期、图号; 尽量将相类似的项目归纳在一起; 尽量将位数相同的项目归纳在一起; 当一行打印的位数有多余时,项目与项目之间的空格可以加大,使布局合理、醒目; 决定数据位数时,要考虑编辑结果的最大数(包括货币符号、逗号所占的位数); 字符从左对齐,空格和数字从右对齐; 注意“

51、0”和空格的含义; “合计”要醒目; 打印时,应把已代码化的名称复原,以求一目了然;,(二) 输入设计,输出信息的正确性很大程度取决于输入信息的正确性和及时性。因此,必须科学地进行输入设计,使之正确地、及时地、方便地收集信息、录入信息。输入设计工作主要包括: 输入数据的分析与内容的确定 输入方式及设备的选择 输入数据的格式设计 输入数据的检验方法,1 输入设计的原则,在保证处理需求的前提下尽量减少输入量,输入过程尽量简单方便(如减少汉字输入、条形码扫描输入),输入界面友好,在输入数据时要采取有效措施,减少输入错误。,2 输入方式,键盘输入 OCR或 OMR输入 媒体化后成批输入 联机输入,3

52、输入设计的步骤,1) 分析与确定输入数据的内容 根据处理要求来确定的,包括确定输入数据项的名称、数据类型、位数和精度、数值范围及输入处理方式。 2) 确定数据的输入方式数据输入的类型有外部输入(如键盘输入、扫描仪、磁盘导入等)和计算机输入(网络传送数据等),输入设备有键盘、鼠标、扫描仪、光电阅读器、光笔、磁盘、磁带、网络传输等。,3)设计输入数据的记录格式 输入格式要尽量与原始单据格式类似,屏幕界面要友好,数据输入格式有录入式、选择式(如:单选、列表选择)等,屏幕格式有简列式、表格式、窗口编辑方式等。 4)对输入数据的正确性检验设计常用的检验的方法有: 重复录入校验、视觉校验(如代码输入时,屏

53、幕立即显示出代码的相关信息以方便校验)、数据类型格式范围校验、分批数据汇总校验、加检验位校验、平衡校验等。,3 输入设计的步骤(续),思考,用户输入某事物的代码后,计算机能自动地在屏幕上显示出该事物的名称 请你说明实现以上功能的原理,五 数据库设计,数据库概述 数据库设计步骤 概念设计方法 逻辑设计方法,(一) 数据库概述,1 数据库系统,数据处理: 指对各种数据进行收集、存储、加工和传播的一系列活动的总和。 数据管理 指的是对数据的进行分类、组织、编码、存储、检索和维护等,它是数据处理的中心问题。 随着计算机软硬件技术的发展,经历了从手工管理到文件系统、数据库系统等阶段,1 数据库系统,1)

54、 相关术语 数据库DB 长期储存在计算机内的、有组织的、可共享的数据的集合 由DBMS统一管理,多用户共享 数据库管理系统DBMS 系统软件,对数据库进行统一管理和控制 数据库系统 带有数据库的整个计算机系统,包括硬件、软件、数据、人员,数据库,长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按照一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 为满足某部门各种用户的多种应用需要,在计算机系统中按照一定的数据模型组织、存储和使用的互相关联的数据集合,2)数据库的发展 数据库系统是在文件系统的基础上发展起来的。 早期的数据处理系统

55、是由大量的文件构成的。这些文件的数据面向应用,一个文件对应一个或几个应用程序,数据冗余度大;不便于多用户共享;对数据的维护也非常困难;而且要修改数据时,要多处去改动,容易造成数据的不一致性;文件不便扩充;不能表述复杂的数据模型。随着数据量增大,共享性要求高,再加上软磁盘的问世,传统文件系统已不能适应要求,因此产生了数据库。,1 数据库系统(续),1 数据库系统(续),3) 数据库的主要特征 数据的共享 数据结构化 数据反映了客观事物间的本质联系,而不是着眼于面向某个应用,是有结构的数据。这是数据库系统的主要特征之一,与文件系统的根本差别。 数据的独立性 最小的冗余度 数据的安全性 数据的完整性

56、 并发控制,2 现实世界、信息世界和数据世界的关系,2 现实世界、信息世界和数据世界的关系(续),3 概念模型,概念模型即实体-关系模型,其具有三种基本成份:实体、关系(联系)和属性。用E-R图来表示。,3 概念模型(续),1) 基本概念 实体(Entity): 客观存在并可相互区分的事物叫实体。 如学生张三、工人李四、计算机系、数据库概论。 属性(Attribute): 实体所具有的某一特性。一个实体可以由若干个属性来刻画。 例如,学生可由学号、姓名、年龄、系、年级等组成。 域(Domain): 属性的取值范围。 例如,性别的域为(男、女),月份的域为到的整数。,3 概念模型(续),1) 基本概念(续) 实体型(Entity Type): 实体名与其属性名集合共同构成实体型。 例,学生(学号、姓名、年龄、性别、系、年级)。 注意实体型与实体(值)之间的区别,后者是前者的一个特例。 如(9808100,王平,21,男,计算机系,2)是一个实体。 实体集(Entity Set): 同型实体的集合称为实体集。 如全体学生。,3 概念模型(续),基本概念(续) 联系(Relationship): 实体之间的相互关联。如学生与老师间的授课关系,学生与学生间有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论