软件工程—第5章 传统的设计方法

上传人:飞*** 文档编号:5787407 上传时间:2017-08-07 格式:PPT 页数:181 大小:1.19MB
返回 下载 相关 举报
软件工程—第5章 传统的设计方法_第1页
第1页 / 共181页
软件工程—第5章 传统的设计方法_第2页
第2页 / 共181页
软件工程—第5章 传统的设计方法_第3页
第3页 / 共181页
软件工程—第5章 传统的设计方法_第4页
第4页 / 共181页
软件工程—第5章 传统的设计方法_第5页
第5页 / 共181页
点击查看更多>>
资源描述

《软件工程—第5章 传统的设计方法》由会员分享,可在线阅读,更多相关《软件工程—第5章 传统的设计方法(181页珍藏版)》请在金锄头文库上搜索。

1、第五章 传统的设计方法,5.1 概述5.2 结构化设计方法5.3 过程设计5.4 Jackson方法,教学内容:,软件设计的基本概念和原则,软件设计的重要作用: 软件设计处于软件工程过程中的技术核心位置,它将完成待建造软件的有意义的工程表示。,软件设计阶段的目标: 使用很多设计方法,产生数据设计、体系结构设计、接口设计和构件设计。为软件的编程阶段提供依据。,软件设计的依据:系统分析 系统设计,数据字典,实体关系图,数据流图,状态变迁图,数据对象描述,加工规约,控制规约,构件设计,接口设计,体系结构设计,数据设计,软件设计原则, 设计视点不要局限在局部范围 设计是来源于分析模型的,是分析模型可跟

2、踪的 设计应该尽量使用已有的模式,不应该总是从头开始 设计应尽可能模拟问题域的结构,缩短与现实问题的距离 设计应表现风格一致,应该有统一的规则和接口形式 设计应考虑可构造性 设计应考虑最恶略情况下的适应性,即健壮性 设计应避免考虑程序实现细节,因为它毕竟不是编码 应该根据质量度量标准来考虑设计 设计应注意对概念错误的评审,而避免过早注意细节,5.1概述,1.面向数据流设计和面向数据(或数据结构)设计,面向数据流的设计方法,这是一种概要设计技术,根据需求阶段对数据流的分析设计软件的总体结构。数据流中的每个转换代表了系统功能的某个部分,应该被映射成软件的一部分模块。面向数据流设计方法的步骤:确定信

3、息流的类型划定流界将数据流映射为软件结构提取层次控制结构通过设计复审和使用启发式策略精化软件结构。,面向数据或数据结构的设计,面向数据的设计(data structured-oriented design)方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的程序结构。 而面向数据结构的设计,则侧重于问题的数据结构,把程序结构设计成与问题的数据结构一致,不强调模块定义。模块只是设计过程的副产品,对于模块独立性原则也未过分强调。这种程序结构容易理解,也易于修改。面向数据设计方法一般都包括下列任务: 1确定数据结构特征; 2用顺序、选择和重复三种基本形式表示数据; 3把数据结构表示

4、映射为软件的控制结构; 4用与具体方法配套的设计指南进一步精化控制结构; 5开发软件的过程性描述。,比较面向数据流和面向数据结构两类设计方法的异同,相同点:(1) 遵守结构程序设计“由顶向下”逐步细化的原则,并以其为共同的基础;(2) 均服从“程序结构必须适应问题结构”的基本原则,各自拥有从问题结构(包括数据结构)导出程序结构的一组映射规则。不同点:(1) 面向数据流的设计以数据流图为基础,在分析阶段用DFD表示软件的逻辑模型,在设计阶段按数据流类型,将数据流图转换为软件结构。面向数据结构的设计以数据结构为基础,从问题的数据结构出发导出它的程序结构。(2) 面向数据流的设计的最终目标是软件的最

5、终SC图,面向数据结构的设计的最终目标是程序的过程性描述。,数据设计:将分析信息模型转换成数据结构,来自于 实体关系图和数据字典,体系结构设计:定义软件的主要结构元素、设计模式及应用约束(子系统的交互),接口设计:描述软件内部、软件和协作系统之间的通信,数据流或控制流的特定行为,构件设计:结构元素变换为软件过程的描述,来自于处理说明以及状态变换图,软件设计的4个活动,2.从分析模型导出设计模型,数据字典,数据流图,E-R图,状态变迁图,加,工,规,约,控制规约,数,据,对,描 述,象,数 据 设 计,体系结构设计,接口设计,过程设计,分析模型,设计模型,5.2 结构化设计方法,结构化设计方法,

6、模块设计体系结构设计,软件设计的任务-确定系统怎么做, 结构化设计活动划分为两个阶段: 确定系统的整体体系结构-总体设计 确定各模块的具体实现-详细设计,界面设计构件级程序设计, 表示工具: 总体设计 详细设计,层次图 (Hierarchy)IPO图(Input-Process-Output)模块说明,程序框图盒图(N-S图)决策表PDL语言,结构化设计的适用范围,尤其适用于采用结构化程序设计实现的系统;结构化设计并不是一种广泛适用的系统设计技术;结构化设计的结果。,SA与SD的关系,SD来源于SA,来源:结构化分析,来源:结构化分析,来源:结构化分析,数据流图字典项伪码实体关系图事务框图,环

7、境的限制,质量的标准,转化分析,细化设计,进入实现阶段,初始结构框图,1. SC图(Structure Chart),(1)SC中的组成符号 SD方法在概要设计中的主要表达工具约定: 用矩形框表示模块,用带箭头的连线表示模块间的调用关系。在调用线的两旁,应标出传入和传出模块的数据流。,(2)SD方法在概要设计中的主要表达工具约定:,不加区分的数据,数据信息,控制信息,SC中的四种模块,在系统结构图中的模块,传入模块 从下属模块取得数据,经过某些处理,再将其传送给上级模块。它传送的数据流叫做逻辑输入数据流。传出模块 从上级模块获得数据,进行某些处理,再将其传送给下属模块。它传送的数据流叫做逻辑输

8、出数据流。变换模块 它从上级模块取得数据,进行特定的处理,转换成其它形式,再传送回上级模块。它加工的数据流叫做变换数据流。协调模块 对所有下属模块进行协调和管理的模块。,酒店管理信息系统功能结构图,客人登记,预定登记,客房处理,历史记录,客房查询,预定查询,餐桌安排,菜单作业,营业结帐,汇总打印,各类查询,初始设置,客帐处理,退房处理,夜审处理,客帐查询,报表打印,HIMS,客房管理子系统,收银管理子系统,餐饮管理子系统,大型零售商场管理信息系统功能结构图,2.SC图中的模块调用,X,Y,Z,Z,1,2,(1)简单调用,(2)选择调用,A,C,B,D,A根据内部判断决定是否调用B,A按另一判定

9、结果选择调用C或D,(3)SC中的循环调用,A,B,C,A根据内在的循环重复调用B、C等模块,2 .数据流图的类型与结构化设计方法(SD),面向数据流设计方法的基本概念 SD以数据流图为基础,它定义了把DFD变换成软件结构的不同映射方法,DFD(问题结构),软件系统的结构 (程序结构),映射,系统结构特征可归纳为两种典型形式:,变换型结构事务型结构数据流图可分为两种类型: 变换型数据流事务型数据流,(1)数据流图的类型,变换中心,输入,输出,变换型 结构,事务中心,接受路径,动作路径,基本模型 特征,事务型结构,由输入、变换中心和输出三部分组成,具有在多种事务中选择执行某类事务的能力,变换流示

10、意图,信息,时间,输入流,输出流,交换流,变换型数据流结构,传入,变换,传出,变换中心,传入部分,传出部分,事务分析,事务中心,动作 1,动作 2,动作 3,接受,接受部分,事务型数据流结构,变换型数据流举例,输入信息,物理输入,格式检查,处理,显示,正确信息,结果,物理输出,数据,变换中心,逻辑输入,逻辑输出,传入部分,传出部分,特点:具有明确的传入、变换(或称主加工) 和传出界面的DFD,变换型系统结构图,变换型数据处理问题的工作过程大致分为三步,即取得数据,变换数据和给出数据。相应于取得数据、变换数据、给出数据,变换型系统结构图由输入、中心变换和输出等三部分组成。,事务型系统结构图,它接

11、受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。在事务型系统结构图中,事务中心模块按所接受的事务的类型,选择某一事务处理模块执行。各事务处理模块并列。每个事务处理模块可能要调用若干个操作模块,而操作模块又可能调用若干个细节模块。,事务型数据流图举例,A,B,E,H,O,M,I,D,C,N,L,F,G,确定DFD中是否含有事务流,T,事务,.,.,.,事务流:沿多条路径之一触发的数据流,事务中心,动作路径,在一个大系统的DFD中,变换流和事务流可能是同时出现的,事务映射方法,事务映射方法,接收路径,C路径,B路径,A路径,C1,C2,C3,调度,事务控制,大型系统

12、DFD中,变换型和事务型 结构往往共存:,T,事务中心,传入,变换,传出,(2) 面向数据流设计方法的设计步骤,精化DFD确定DFD类型把DFD映射到系统模块结构设计 出模块结构的上层基于DFD逐步分解高层模块设计 出下层模块根据模块独立性原理,精化模 块结构,面向数据流方法的设计过程,精化数据流图,区分事务中心和数据接收路径,映射成变换结构,区分输入和输出分支,映射成事务结构,用启发式设计规则精化软件结构,导出接口描述和全程数据结构,详细设计,事务分析,变换分析,复查,事务,变换,流类型,SD方法的两种映射过渡方法,变换型DFD,事务型DFD,初始SC,初始SC,变换分析,事务分析,初始的S

13、C,主模块,输入模块,主加工模块,输入模块,事务控制模块,接受模块,动作发送模块,动作1模块,动作2模块,动作3模块,由变换分析产生,由事务分析产生,变换分析方法由以下四步组成: 重画数据流图; 区分有效(逻辑)输入、有效(逻辑)输出和中心变换部分; 进行一级分解,设计上层模块; 进行二级分解,设计输入、输出和中心变换部分的中、下层模块。,3. 变换分析设计方法,步骤:(1)区分传入、变换中心、传出部分,在 DFD 上标明分界线,变换分析设计方法步骤,确定DFD中是否含有变换流,输出,输入,变换,变换流:具有明显的输入、变换(或加工)、输出分界的数据流图,变换映射方法,B,C,A,D,E,Q,P,R,W,U,V,a,b,c,e,d,r,p,u,w,v,变换中心,传入部分,传出部分,变换分析设计方法步骤,(2)第一级分解(建立初始SC框架) 设计顶层和第一层模块,变换映射方法,输出,输入,变换,控制模块,输入处理模块,输出处理模块,主要处理模块,第一级分解的方法,MC,MT,MA,ME,第一级分解后的SC,MC,MT,MA,ME,第一层,顶层,c,e,c,e,u,w,u,w,传入模块,传出模块,中心变换模块,第一级分解后的SC(另一种画法),MC,MA1,c,e,u,w,c,p,Q,P,R,e,p,r,r,w,u,w,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号