软件工程第9章-结构化设计.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程第9章-结构化设计.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 结构 设计
- 资源描述:
-
1、第9章 结构化设计本章目标 p了解结构化设计与结构化分析的关系。p掌握面向数据流的软件设计方法。p熟悉面向数据结构的设计方法。p熟悉接口设计和数据设计。p掌握过程设计的工具和方法。p掌握利用Visio绘制结构图的方法。9.1 结构化软件设计概述 结构化软件设计的任务是从软件需求规格说明书出发,设计软件系统的整体结构、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案,解决“怎么做”的问题。在结构化设计中,概要设计(总体设计)阶段将软件需求转化为数据结构和软件的系统结构。概要设计阶段要完成体系结构设计、数据设计及接口设计。详细设计阶段要完成过程设计,因此详细设计一般也称为过程设计,
2、它详细地设计每个模块,确定完成每个模块功能所需要的算法和数据结构。在软件设计期间我们所做出的决策,将最终决定软件开发能否成功,更重要的是,这些设计决策将决定软件维护的难易程度。软件设计之所以如此重要,是因为设计是软件开发过程中决定软件产品质量的关键阶段。9.2 结构化设计与结构化分析的关系 要进行结构化的设计,必须依据结构化分析的结果,结构化设计与结构化分析的关系如图所示。图的左边是用结构化分析方法所建立的模型,图的右边是用结构化设计方法所建立的设计模型。9.3体系结构设计 9.3.1 表示软件结构的图形工具1 层次图和HIPO图通常使用层次图描绘软件的层次结构。在层次图中一个矩形框代表一个模
3、块,框间的连线表示调用关系(位于上方的矩形框所代表的模块调用位于下方的矩形框所代表的模块)。每个方框可以带编号,像这样带编号的层次图称为HIPO(Hierarchy Input-Process-Output)图。如图所示。9.3体系结构设计 2结构图结构图是描绘软件结构的图形工具,图中一个方框代表一个模块,框内注明模块的名字或主要功能;方框之间的箭头(或直线)表示模块的调用关系。在结构图中通常还用带注释的箭头表示模块调用过程中来回传递的信息。如果希望进一步标明传递的信息是数据还是控制信息,则可以利用注释箭头尾部的形状来区分:尾部是空心圆表示传递的是数据,实心圆表示传递的是控制信息。9.3体系结
4、构设计 9.3.2面向数据流的设计方法面向数据流的设计方法是常用的结构化设计方法,多在概要设计阶段使用。它主要是指依据一定的映射规则,将需求分析阶段得到的数据描述从系统的输入端到输出端所经历的一系列变换或处理的数据流图转换为目标系统的结构描述。在数据流图中,数据流分为变换型数据流和事务型数据流两种。所谓变换,是指把输入的数据处理后转变成另外的输出数据。信息沿输入路径流入系统,在系统中经过加工处理后又离开系统,当信息流具备这种特征时就是变换流。所谓事务,是指非数据变换的处理,它将输入的数据流分散成许多数据流,形成若干个加工,然后选择其中一个路径来执行。9.3体系结构设计 变换型数据流事务型数据流
5、9.3体系结构设计 9.3.3面向数据结构的设计方法顾名思义,面向数据结构的设计方法就是根据数据结构设计程序处理过程的方法,具体地说,面向数据结构的设计方法按输入、输出以及计算机内部存储信息的数据结构进行软件结构设计,从而把对数据结构的描述转换为对软件结构的描述。使用面向数据结构的设计方法时,分析目标系统的数据结构是关键。面向数据结构的设计方法通常在详细设计阶段使用。比较流行的面向数据结构的设计方法包括Jackson方法和Warnier方法。在这里,主要介绍Jackson方法。9.3体系结构设计 Jackson方法把数据结构分为3种基本类型:顺序型结构、选择型结构和循环型结构。在顺序型结构中,
6、数据由一个或多个元素组成,每个元素按照确定的次序出现一次。在顺序型图示中,数据A由B、C和D3个元素顺序组成。在选择型结构中,数据包含两个或多个元素,每次使用该数据时,按照一定的条件从罗列的多个数据元素中选择一个。在选择型图示中,数据A根据条件从B或C或D中选择一个,元素右上方的符号“”表示从中选择一个。在循环型结构中,数据根据使用时的条件由一个数据元素出现零次或多次构成。在循环型图示中,数据A根据条件由元素B出现零次或多次组成。元素B后加符号“*”表示重复。9.4 接口设计 9.4.1 接口设计概述 软件系统结合业务、功能、部署等等因素将软件系统逐步分解到模块,那么模块与模块之间就必须根据各
7、模块的功能定义对应的接口。概要设计(总体设计)中的接口设计主要用于子系统/模块之间或内部系统与外部系统进行各种交互。接口设计的内容应包括功能描述、接口的输入输出定义、错误处理等。软件系统接口的种类以及规范很多,可以有API、服务接口、文件、数据库等等,所以设计的方法也有很大的差异。但是总体来说接口设计的内容应包括通讯方法、协议、接口调用方法、功能内容、输入输出参数、错误/例外机制等。从成果上来看,接口一览表以及详细设计资料是必须的资料。9.4 接口设计 接口设计一般包括3个方面:(1)用户接口-用来说明将向用户提供的命令和它们的语法结构以及软件回答信息(2)外部接口-用来说明本系统同外界的所有
8、接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系(3)内部接口-用来说明本系统之内的各个系统元素之间的接口的安排。9.4 接口设计 9.4.2界面设计 界面设计是接口设计中的重要组成部分。用户界面的设计要求在研究技术问题的同时对人加以研究。Theo Mandel在其关于界面设计的著作中提出了3条“黄金原则”。1)置用户于控制之下2)减少用户的记忆负担3)保持界面一致 这些黄金原则实际上构成了指导用户界面设计活动的基本原则。9.4 接口设计 界面设计是一个迭代的过程,其核心活动包括:1)创建系统功能的外部模型;2)确定为完成此系统功能人和计算机应分别完成的任务;3)考虑界面设
9、计中的典型问题;4)借助CASE工具构造界面原型;5)实现设计模型;6)评估界面质量。在界面的设计过程中先后涉及4个模型:1)由软件工程师创建的设计模型(design model);2)由人机工程师(或软件工程师)创建的用户模型(user model);3)终端用户对未来系统的假想(system perception或users model);4)系统实现后得到的系统映象(system image)。9.4 接口设计 在界面设计中,应该考虑4个问题。1)系统响应时间:指当用户执行了某个控制动作后(如,点击鼠标器等),系统做出反应的时间(指输出信息或执行对应的动作)。系统响应时间过长、不同命令在
展开阅读全文