[工学]软件工程课件 第四章.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]软件工程课件 第四章

信息科学与技术学院 总体的设计过程 软件结构设计 软件结构设计 数据结构设计 软件设计原理 启发式规则 改进软件结构提高模块独立性 模块规模应该适中 深度、宽度、扇出和扇入应适当 模块的作用域应在控制域之内 尽量降低模块接口的复杂程度 设计单入口出口的模块 模块功能应该可以预测 图形工具--层次图和HIPO图 面向数据流的设计方法 控制范围:指包含模块本身的所有下属模块。 作用域:模块内一个条件判断可能引起的的被执行模块。 设计得好的系统,模块的作用域应在模块的控制范围内。 例: A的控制范围为:A、B、C、D、E、F 若A的作用域也是A、B、C、D、E 、 F,则是合理的。 若A的判断要影响到G的执行过程,则应调整软件结构。 M A G B C D E F 模块接口设计原则:易理解,传递信息简单且与模块功能一致。 例:求一元二次方程的根: Quad_Root(Tal,x); Tal--系数数组; x--根数组 Quad_Root(a,b,c,Root1,Root2); 接口复杂或不一致,是紧耦合或低内聚的征兆。 尽可能不用全局变量是降低接口复杂性的一个方面。 前一页 对模块的执行,通过模块调用语句进入模块,模块执行完后应返回到模块调用语句的下一个语句位置。 模块作为一个黑箱,只要输入数据相同就产生同样的输出,这个模块的功能就是可预测的。 带有内部“存储器”(如某个标志状态)的模块的功能是不可预测的,因为它的输出不仅取决于输入,而且还取决于内部“存储器”的状态。这样的模块难理解、难测试、难维护。全程变量使用不当或数组初始化不当会导致这种情况。 以面向对象的类为模块,不能保证输入数据相同就能产生相同的输出。 层次图:描述软件的层次结构(H图)。 层次图中每个矩形框代表一个模块,矩形框之间的连线表示模块调用关系。 层次图适合用来描绘软件的层次结构。 HIPO图:层次图+IPO图 对H图的每个方框,都有一张IPO图与之对应,来描述方框所代表的模块的处理过程。并且对每个IPO图都对应H图中方框相同的标记和编号,便于追踪。 前一页 图形工具 层次图和HIPO图 前一页 图形工具--结构图 Yourdon提出的结构图是进行软件结构设计的另一个有力工具。在结构图中,通常还用带注释的箭头表示模块调用过程中来回传递的信息。如果希望进一步标明传递的信息是数据还是控制信息,则可以利用注释箭头尾部的形状来区分: 尾部是空心圆,表示传递的是数据 尾部是实心圆,表示传递的是控制信息 前一页 图形工具--结构图 前一页 图形工具概述 层次图和结构图并不严格表示调用次序,只表明一个模块调用哪些模块,至于模块是否还有其它成分则完全没有表示。 通常用层次图作为描述软件结构的文档。结构图作为文档很不适合。但用HIPO图道出结构图的过程可以作为检查设计正确性和评价模块独立性的好方法。 面向数据流的设计方法 基本思想:根据软件需求分析的数据流图,将其转换成软件系统的结构。 面向数据流的设计方法定义了一些“映射”,利用这些映射可以把数据流图变换成软件结构。 通常所说的结构化设计方法(简称SD方法),也就是基于数据流的设计方法。 数据流的类型决定了映射的方法。 主要内容 概念 变换流分析设计 事物流分析设计 混合流分析设计 设计优化 概念—交换流 数据流图呈线性变换特征,而且可以抽象成三部分:I-P-O。 信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。当数据流图具有这些特征时,这种信息流就叫作变换流 。 计算、分析型软件的数据流图通常具有这种形式。 变换流图 概念--事务流 数据流图呈辐射型,根据输入数据的性质选择加工路径。 若处理沿输入通道达到一个处理T,处理T根据输入数据的类型在若干动作序列中选择一个来执行。这类特殊的数据流称为事务流。处理T称为处理中心。处理中心的任务: (1)接收输入数据(输入数据又称为事务); (2)分析每个事务以确定它的类型; (3)根据事务类型选取一条活动通道。 概念--事务流 设计过程 信息科学与技术学院 变换流分析设计

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档