软件工程导论第四章 结构化设计课件.ppt

软件工程导论第四章 结构化设计课件.ppt

ID:56966184

大小:2.83 MB

页数:218页

时间:2020-07-22

软件工程导论第四章 结构化设计课件.ppt_第1页
软件工程导论第四章 结构化设计课件.ppt_第2页
软件工程导论第四章 结构化设计课件.ppt_第3页
软件工程导论第四章 结构化设计课件.ppt_第4页
软件工程导论第四章 结构化设计课件.ppt_第5页
资源描述:

《软件工程导论第四章 结构化设计课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件设计是软件开发的关键步骤,直接影响软件质量。简单地说,软件设计就是根据需求分析所确立的“做什么(Whattodo?)”来确定系统应该“怎么做”(Howtodo?)的过程。软件设计阶段的任务与目标设计任务:采用合适的设计方法进行系统结构、数据和过程的设计,把分析阶段产生的软件需求说明书转换为用适当手段表示的软件设计文档。设计阶段主要任务是:第4章结构化设计软件体系结构的设计用户界面的设计数据结构的设计算法的设计开发阶段的信息流软件设计的目标就是构造一个高内聚低耦合的软件模型。过程设计系统结构设计数据设计界面设计软件设计软件设计的目标就是构造一个高内聚低耦合

2、的软件模型。软件设计高可靠性高可维护性高可理解性高效率软件设计的目标软件设计分为总体设计和详细设计两个阶段。其工作流程可用下图表示:总体设计需求说明书复审软件结构修改详细设计可接受模块描述复审修改设计说明书1、设计阶段结束要交付的文档是设计说明书,根据设计方法的不同,有不同的设计文档。2、每个设计步骤完成后,都应进行复审。常用的设计方法有:SD法、Jackson法、OOD法、HIPO法、Parnas法、Warnier法等。软件设计阶段软件设计阶段传统的软件工程方法学采用结构化设计(StructuredDesign,SD)技术,完成软件设计工作,通常把软件设计

3、工作划分为概要设计和详细设计这样两个阶段。概要设计的主要任务是,通过仔细分析软件规格说明,适当地对软件进行功能分解,从而把软件划分为模块,并且设计出完成预定功能的模块结构。详细设计阶段详细地设计每个模块,确定完成每个模块功能所需要的算法和数据结构。退出结构化设计的基本思想是将一个系统分为若干个彼此具有一定独立性,同时又有一定联系的组成部分,这些组成部分称为模块。对每一个系统都可以按功能由顶向下逐层分解为一个多层次的具有独立功能的许多模块,一直分解到每一个模块都能很容易实现为止。结构化设计方法集中体现了软件工程中的模块化原则,模块化可以使系统开发的整体工作量

4、变小。在使用模块化方法时应注意模块化是与模块独立性紧密相连的,如果模块之间联系过于密切,虽然每个模块工作量减小,但模块之间接口将很复杂,这将使得接口工作量增大。结构化设计的基本思想概要设计概要设计(总体设计)的基本任务:将系统划分成模块结构形式,决定每个模块要完成的功能,每个模块之间的调用关系,决定模块接口,定义数据传递关系。概要设计阶段的主要产品:模块结构图模块说明书每个模块的描述还有数据结构、数据库、测试计划和复查报告等。系统的模块组成及模块间的调用关系包含功能、接口、过程及注释4.1结构化设计与结构化分析的关系4.2软件设计的概念和原理4.3模块独立4

5、.4启发规则4.5表示软件结构的图形工具4.6面向数据流的设计方法4.7人机界面设计4.8过程设计4.9过程设计的工具4.10面向数据结构的设计方法4.11小结4.1结构化设计与结构化分析的关系软件设计必须依据对软件的需求来进行,结构化分析的结果为结构化设计提供了最基本的输入信息。分析模型(见3.3节)的每个元素都提供了创建设计模型时所需要的信息。图4.1描绘了软件设计过程中的信息流。由数据模型、功能模型和行为模型清楚地表示的软件需求被传送给软件设计者,他们使用适当的设计方法完成数据设计、体系结构设计、接口设计和过程设计。在软件设计期间我们所做出的

6、决策,将最终决定软件开发能否成功,更重要的是,这些设计决策将决定软件维护的难易程度。把分析模型转变成软件4.2软件设计的概念和原理4.2.1模块化模块是由边界元素限定的相邻的程序元素(例如,数据说明,可执行的语句)的序列,而且有一个总体标识符来代表它。像Pascal或Ada这样的块结构语言中的Begin…end对,或者C,C++和Java语言中的{…}对,都是边界元素的例子。因此,过程、函数、子程序和宏等,都可作为模块。面向对象范型中的对象(见第6章)是模块,对象内的方法也是模块。模块是构成程序的基本构件。图4.2模块化和软件成本模块化就是把程序划

7、分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。Meyer提出了五条标准,我们可以用这五条标准来评价一种设计方法定义有效的模块系统的能力。下面列出这五条标准。(1)模块可分解性如果一种设计方法提供了把问题分解为子问题的系统化机制,它就能降低整个问题的复杂性,从而可以实现一种有效的模块化解决方案。(2)模块可组装性如果一种设计方法能把现有的(可重用的)设计构件组装成新系统,它就能提供一种并非一切都从头开始做的模块化解决方案。(3)模块可理解性如果可以把一个模块作为一种独立单元(

8、无需参考其他模块)来理解,那么,这样的模块是易于构造

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

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

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