软件工程--传统软件设计方法概述.ppt

软件工程--传统软件设计方法概述.ppt

ID:51472861

大小:845.00 KB

页数:78页

时间:2020-03-23

软件工程--传统软件设计方法概述.ppt_第1页
软件工程--传统软件设计方法概述.ppt_第2页
软件工程--传统软件设计方法概述.ppt_第3页
软件工程--传统软件设计方法概述.ppt_第4页
软件工程--传统软件设计方法概述.ppt_第5页
资源描述:

《软件工程--传统软件设计方法概述.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、软件工程SoftwareEngineering计算机学院软件工程课程组软件生存期维护软件计划需求分析测试软件设计实现(编码)定义时期开发时期使用和维护时期退役第5章传统软件设计方法概要设计和详细设计阶段的任务是什么?什么是结构化设计方法?结构化设计与结构化分析的关系?什么是面向数据结构的设计方法?什么是结构化程序设计?常用的过程设计工具?一、软件设计的任务和作用两个阶段概要设计详细设计SE核心过程二、设计的启发规则1、提高模块独立性松耦合,高内聚增加内聚减少耦合软件结构的划分方式水平划分垂直划分水平划分(HorizontalPartitioning)按主要功能定义模块结构的各

2、分支顶层控制模块,下层输入、处理、输出三个分支优点:功能分离,易修改扩充缺点:模块接口传递数据多,信息流的整体控制复杂化function1function3function2垂直划分(VerticalPartitioning:Factoring)自顶向下逐层分布工作顶层模块控制,低层模块实际处理优点:对低层模块的修改不易引起副作用便于将来的维护设计的启发规则2、模块规模适中过大不易理解,分解不充分太小则接口开销过大注意分解后不应降低模块的独立性optimalnumberofmodulescostofsoftwarenumberofmodulesmoduleintegratio

3、ncostmoduledevelopmentcost设计的启发规则3、深度、宽度、扇入、扇出适当深度=层数过大表示分工过细管理模块过分简单,适当合并宽度=跨度数的最大值过大表示系统复杂设计的启发规则扇出=模块直接调用/控制的模块数fan-out5扇入=直接调用该模块的上级模块数fan-in≤5AA的扇出AA的扇入设计的启发规则4、作用域在控制域内控制域模块本身以及所有直接或间接从属于它的模块的集合作用域受该模块内一个判定影响的所有模块的集合MACBABCIfflagThenBElseCM的控制域={M,A,B,C}A的作用域={B,C}作用域在控制域内修改软件结构判断点上移

4、把A中的if移到M中受影响块下移把C移到A下面A:…………if……thengotoB1……………………B:……………………B1:……………………A作用域在控制域内MACBA的控制域={A,B}A:…………if……thengotoM……………………M:……………………M1:gotoC……………………A作用域超出了控制域C:…………………………………………设计的启发规则5、降低接口的复杂程度接口复杂可能表明模块的独立性差接口复杂或不一致(看起来传递的数据间无联系),是紧耦合或低内聚的征兆【例】求一元二次方程的根解法1……Vara,b,c,x1,x2:real;Beginread(

5、a,b,c);P;write(x1,x2)End.ProcedureP;beginend;解法2……TypeTA=array[1..3]ofreal;TB=array[1..2]ofreal;VarA:TA;B:TB;Beginread(A[1],A[2],A[3]);P(A,B);write(B[1],B[2])End.ProcedureA(A:TA;varB:TB);beginend;解法3……Vara,b,c,x1,x2:real;Beginread(a,b,c);P(a,b,c,x1,x2);write(x1,x2)End.ProcedureP(a,b,c:real;

6、varx1,x2:real);beginend;全局变量,紧耦合!可读性差!局部变量,可读性好!设计的启发规则6、单出单入,避免内容耦合7、模块功能可预测相同输入必产生相同输出模块中使用全局变量可能导致不可预测A:………………………………entry1:………………………………entry2:………………………………三、表示软件结构的图形工具层次图和HIPO图结构图1.层次图和HIPO图层次图(HierarchyDiagram)正文加工系统编辑3.0加标题4.0输出2.0存储5.0……插入3.3删除3.2追加3.1修改3.4合并3.5列表3.6改写3.4.1……输入1.0检索6.

7、0编目录7.0格式化8.0层次图描述软件结构,而非数据结构矩形框:模块连线:调用关系,而非组成关系模块a模块bHIPO图H图+IPO图(Input-process-outputDiagram)对每个模块附一张IPO图每个IPO图中应明确标出对应模块的编号IPO图旧的主文件事务文件1.校验主记录2.校验事务记录3.更新主记录有效的主记录有效的事务记录更新后的主文件InputProcessOutputIPO表被调用:调用:输入:输出:处理:局部数据元素:注释:系统:作者:模块:日期:编号:IPO表2.结构图

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。