软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt

软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt

ID:50213983

大小:268.00 KB

页数:38页

时间:2020-03-10

软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt_第1页
软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt_第2页
软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt_第3页
软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt_第4页
软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt_第5页
资源描述:

《软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章概要设计软件设计的目标和任务概要设计的过程软件设计的原理启发规则概要设计阶段使用的工具结构化设计方法主要学习内容4.1软件设计的目标和任务4.1.1软件设计的目标1、数据设计主要侧重于数据结构的定义。2、系统结构设计系统结构设计将定义软件系统各主要成份之间的关系3、过程设计过程设计就是把结构成份转换成软件的过程性描述4.1.2软件设计任务1、概要设计(也称为系统设计)将软件需求转化为数据结构和软件的系统结构。2、详细设计(也称为过程设计)即过程设计。通过对结构表示进行细化,得到软件的详细的数据结构和算法

2、。4.2概要设计的过程设想供选择的方案选取合理的方案功能分解设计软件结构数据库设计制定测试计划书写文档审查和复查4.3软件设计的原理4.3.1模块化的概念软件系统的模块化是指整个软件被划分成若干单独命名和可编址的部分,称之为模块。这些模块可以被组装起来以满足整个问题的需求。把问题/子问题的分解与软件开发中的系统/子系统或系统/模块对应起来,就能够把一个大而复杂的软件系统划分成易于理解的比较单纯的模块结构。公式E(P1+P2)>E(P1)+E(P2)4.3软件设计的原理模块化和软件成本4.3软件设计的原理4.3

3、.2抽象软件系统进行模块设计时,可有不同的抽象层次。在最高的抽象层次上,可以使用问题所处环境的语言概括地描述问题的解法。在较低的抽象层次上,则采用过程化的方法。1、过程的抽象2、数据的抽象例4.1开发一个CAD软件时的三种抽象层次(1)过程抽象抽象层次Ⅰ.用问题所处环境的术语来描述这个软件: 该软件包括一个计算机绘图界面,向绘图员显示图形,以及一个数字化仪界面,用以代替绘图板和丁字尺。所有直线、折线、矩形、圆及曲线的描画、所有的几何计算、所有的剖面图和辅助视图都可以用这个CAD软件实现……。抽象层次Ⅱ.任务需

4、求的描述。CADSOFTWARETASKSuserinteractiontask;2-Ddrawingcreationtask;graphicsdisplaytask;drawingfilemanagementtask;end……在这个抽象层次上,未给出“怎样做”的信息,不能直接实现。抽象层次Ⅲ.程序过程表示。以2-D(二维)绘图生成任务为例:PROCEDURE:2-DdrawingcreationREPEATUNTIL(drawingcreationtaskterminates)DOWHILE(digiti

5、zerinteractionoccurs)digitizerinterfacetask;DETERMINEdrawingrequestCASE;Line:linedrawingtask;Rectangle:rectangledrawingtask;Circle:circledrawingtask;(2)数据抽象在不同层次上描述数据对象的细节,定义与该数据对象相关的操作。例如,在CAD软件中,定义一个叫做drawing绘图的数据对象。可将drawing规定为一个抽象数据类型,定义它的内部细节如下:TYPEdra

6、wingISSTRUCTUREDEFINDnumberISSTRINGLENGTH(12);geometryDEFIND……notesISSTRINGLENGTH(256);BOMDEFINDENDdrawingTYPE;4.3软件设计的原理4.3.3信息屏蔽模块中所包含的信息(包括数据和过程)不允许其它不需要这些信息的模块使用。4.3.4模块独立模块(Module)“模块”,又称“组件”。它一般具有如下三个基本属性:功能:描述该模块实现什么功能逻辑:描述模块内部怎么做状态:该模块使用时的环境和条件在描述一个

7、模块时,还必须按模块的外部特性与内部特性分别描述模块的外部特性模块的模块名、参数表、其中的输入参数和输出参数,以及给程序以至整个系统造成的影响模块的内部特性完成其功能的程序代码和仅供该模块内部使用的数据4.3.4模块独立模块独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。每个模块完成一个相对独立的子功能,并且与其它模块间的接口简单。若一个模块只具有单一的功能且与其它模块没有太多的联系,则称此模块具有模块独立性。衡量模块独立程度的定性标准----内聚、耦合4.3.4模块独立1、耦合(模块之间的互相连接

8、的紧密程度的度量)控制耦合数据耦合公共环境耦合内容耦合尽量用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全不用内容耦合耦合程度越高4.3.4模块独立2、内聚模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量。模块独立性比较强的模块--高内聚低耦合4.4启发规则改进软件结构提高模块独立性模块规模应该适中适当控制深度、宽度、扇出、扇入模块的作用域应该在控制域之内力争降低模块接口的复杂程度

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

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

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