第3章 系统设计.ppt_第1页
第3章 系统设计.ppt_第2页
第3章 系统设计.ppt_第3页
第3章 系统设计.ppt_第4页
第3章 系统设计.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、第3章 系统设计,本章要点 系统设计概述 系统设计 数据库设计 用户界面设计 基于Rational Rose2003的UML建模,第3章 系统设计,3.1 系统设计的目的和任务 3.2 系统总体设计 3.5 经典例题讲解 3.4 系统详细设计 3.6 应用Visio进行数据库建模,3.1 系统设计的目的和任务,在设计阶段,我们将集中研究系统的软件实现问题,即在分析模型的基础上形成实现环境下的设计模型。一般情况下,它通常包括系统总体设计和系统详细设计(或对象设计)两个层次。 系统设计的目标是划分子系统并使子系统之间是高内聚低耦合的,从而提高软件的可理解性和可维护性。 在软件需求分析阶段,已经搞清

2、楚了软件“做什么”的问题,并把这些需求通过规格说明书描述了出来,这也是目标系统的逻辑模型。进入了设计阶段,要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求,并将设计的结果反映在“设计规格说明书”文档中。,3.2 系统总体设计,系统总体设计是问题求解及建立解答的高级策略。系统总体设计的主要任务是将系统分解成易于管理的子系统,并构造系统的策略,诸如系统运行的软硬件平台、数据管理策略等,最终得到系统的体系结构设计模型。,3.2.1 总体布局,系统的高层结构形式包括 (1) 系统分解 (2) 确定并发性 (3) 处理器及任务分配。 (4) 数据存储管理 (5) 全局资源的处

3、理 (6) 选择软件控制机制 (7) 人机交互接口设计,3.2.2 设计原则,1模块化 模块是数据说明、可执行语句等程序对象的集合,包含四种属性: (1) 输入/输出 一个模块的输入/输出都是指同一个调用者。 (2) 逻辑功能 指模块能够做什么事,表达了模块把输入转换成输出的功能,可以是单纯的输入/输出功能。 (3) 运行程序 指模块如何用程序实现其逻辑功能。 (4) 内部数据 指属于模块自己的数据。,2抽象 3信息隐蔽 4模块独立性 5模块的耦合 6模块的内聚 7软件复用,3.2.4 面向数据流的设计方法,变换流 事物流 变换分析 事务分析 软件模块结构的改进,3.2.5 面向对象的设计方法

4、,1面向对象设计过程 面向对象设计是根据已建立的系统分析模型,运用面向对象技术进行软件设计,它通常包括系统设计和对象设计(或详细设计)两个层次。 (1) 系统设计是选择合适的解决方案策略,并将系统划分成若干子系统,从而建立整个系统的体系结构; (2) 对象设计是细化原有的分析对象,确定一些新的对象、对每一个子系统接口和类进行准确详细的说明。,2识别设计元素 (1) 如果一个“分析类”比较简单,代表着单一的逻辑抽象,那么可以将其映射为“设计类”。通常,主动参与者对应的边界类、控制类和一般实体类都可以直接映射成设计类。 (2) 如果“分析类”的职责比较复杂,很难由单个“设计类”承担,则应该将其映射

5、成“子系统接口”。通常,被动参与者对应的边界类被映射成子系统接口。 (3) 子系统的划分应该符合高内聚低耦合的原则。,3数据存储策略,目前,常用的数据存储管理有三种方式: (1) 数据文件:数据文件是由操作系统提供的存储形式,应用系统将数据按字节顺序存储,并定义如何以及何时检索数据。 (2) 关系数据库:在关系数据库中,数据是以表的形式存储在预先定义好的成为Schema的类型中。表的每一列表示一个属性,每一行将一个数据项表示成一个属性值的元组。关系数据库是一种成熟的技术,使用费用较高而且会产生性能上的瓶颈。 (3) 面向对象数据库:与关系数据库不同的是,面向对象数据库将对象和关系作为数据一起存

6、储。它提供了继承和抽象数据类型,但其查询要比关系数据库慢。,4部署子系统 UML部署图反映了系统中软件和硬件的物理架构,表示系统运行时的处理节点以及节点中组件的配置。,3.2.6 总体设计的工具,1系统流程图 (1)系统流程图的符号 (2) 分层 2HIPO图 (1) HIPO图的H图 (2) IPO图,3.2.7 模块结构设计,设计软件模块的结构就是要把软件模块组成良好的层次系统,描述各模块之间的关系。顶层模块调用它的下层模块以实现程序的完整功能,每个下层模块再调用更下层的模块,最下层的模块完成最具体的功能。 软件设计方法主要有面向数据流的设计方法和面向数据结构的设计方法,在总体设计阶段,主

7、要采用面向数据流的结构化设计方法,通过把不够详细的数据流图进一步细化至适当层次,从而映射出软件结构,用层次图或软件结构图来描述,可以直接从数据流程图映射出软件结构。,3.2.8 数据存储设计,数据存储管理是系统存储或检索对象的基本设施,它建立在某种数据存储管理系统之上,并且隔离了数据存储管理模式的影响。 目前,常用的数据存储管理有三种方式: 数据文件:数据文件是由操作系统提供的存储形式,应用系统将数据按字节顺序存储,并定义如何以及何时检索数据。显然,文件形式给应用系统带来更多的灵活性,但是应用系统需要自己处理并发访问和数据恢复等问题。 关系数据库:在关系数据库中,数据是以表的形式存储在预先定义

8、好的成为Schema的类型中。表的每一列表示一个属性,每一行将一个数据项表示成一个属性值的元组。关系数据库是一种成熟的技术,使用费用较高而且会产生性能上的瓶颈。 面向对象数据库:与关系数据库不同的是,面向对象数据库将对象和关系作为数据一起存储。它提供了继承和抽象数据类型,但其查询要比关系数据库慢。,3.4 系统详细设计,3.4.1 详细设计阶段的任务 1算法设计 2数据结构设计 3物理设计 4其他设计 5编写详细设计说明书 6评审,3.4.2 详细设计的原则,1可复用性 2可扩展性 3健壮性 4协作性,3.4.3 详细设计工具,详细设计阶段的工具可分: 1程序流程图 2盒图(Nassi-Shn

9、eiderman图) 3PAD图 4判定表 5判定树 6PDL语言,3.4.4 代码设计,(1)方法建模 (2) 属性建模 (3) 状态建模 (4) 关系建模,3.4.5 数据库设计,3.4.5 数据库设计 1. 数据库的设计 数据库的设计指数据存储文件的设计,主要进行以下几方面设计: (1) 概念设计 (2) 逻辑设计 (3) 物理设计。,2. 关系数据库的基本概念 关系数据库在整个数据库领域中占据主导地位,目前比较流行的关系数据库包括Oracle、SQLServer、DB2等产品。 (1) 表与键 (2) 实体关系图 (3) 存储过程与索引,3. 将对象映射到关系数据库 (1) 属性与类的

10、映射 (2) 继承的映射 (3) 关联与聚合的映射,3.4.6 用户界面设计,1用户界面设计原则 用户控制 界面一致性 界面容错性 界面美观性 界面可适应性,2用户交互方式 直接操作 菜单选择 命令 表格填写 自然语言,3信息显示 4用户支持 错误信息 帮助系统,3.4.7 Jackson程序设计方法,给出了三种基本结构的表示。 (1) 顺序结构 (2) 选择结构 (3) 重复结构,JSP方法一般通过以下五个步骤来完成设计: (1) 分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图来表示这些数据结构; (2) 找出输入数据结构和输出数据结构中有对应关系的数据单元; (3) 按一

11、定的规则由输入、输出的数据结构导出程序结构; (4) 列出基本操作与条件,并把它们分配到程序结构图的适当位置; (5) 用伪码写出程序。,3.4.8 Warnier程序设计方法,1Warnier方法的基本思想 Warnier程序设计方法另一种面向数据结构的设计方法,又称为逻辑地构造程序的方法,简称LCP(Logical Construction of Programs)方法。Warnier方法的原理和Jackson方法类似,也是从数据结构出发设计程序,但是这种方法的逻辑更严格。Warnier图在Warnier方法中使用的一种专用表达工具。,2Warnier方法的设计技术 Warnier设计方法

12、基本由以下步骤组成: (1) 分析和确定输人数据和输出数据的逻辑结构,并用Warnier图描绘这些数据结构; (2) 依据输入数据结构导出程序结构,并用Warnier图描绘程序的处理层次; (3) 画出程序流程图,并自上而下地依次给每个处理框编排序号; (4) 分类写出伪码指令。 Warnier定义了下列三类指令: 输入和输出准备; 分支和分支准备; 计算。,3Warnier图 单向花括号“”来区分数据结构的层次,其中的所有名字都属于同一类信息; 异或符号“”表示这些信息不能同时出现; 名字后面的圆括号“( )”中的数字表明这类信息在此数据结构中可以重复出现及出现的次数。,3.4.9 基于组件的设计方法,基于组件的设计是使用可重用的组件或商业组件建立复杂的软件系统,即在确定需求描述的基础上,开发人员首先进行组件分析和选择,然后设计或者选用已有的体系结构框架,复用所选择的组件,最后将所有的组件集成在一起,并完成系统测试。,3.8 小结,软件设计包括分而治之、高内聚低耦合、软件复用等基本原则。面向对象设计是根据已建立的系统分析模型,运用面向对象技术进行软件设计,通常包括系统设计和对象设计(或详细设计)两个层次。 系统设计是选择合适的解决方案策略,并将系统划分成若干子系统,从而建立整个系统的体系结构;对象设计是细化原有的分析对象,确定一些新的对象、

温馨提示

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

评论

0/150

提交评论