第6章 软件设计ppt课件.ppt

第6章 软件设计ppt课件.ppt

ID:58698969

大小:738.50 KB

页数:83页

时间:2020-10-04

第6章 软件设计ppt课件.ppt_第1页
第6章 软件设计ppt课件.ppt_第2页
第6章 软件设计ppt课件.ppt_第3页
第6章 软件设计ppt课件.ppt_第4页
第6章 软件设计ppt课件.ppt_第5页
资源描述:

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

1、第6章软件设计需求分析阶段的工作主要是回答系统做什么,设计阶段工作的主要目标则是如何做。设计的任务就是在用户需求和系统实现之间起到桥梁的作用,它的工作是从系统分析结果出发,进行目标选定、方案设计、方案选择、结构设计、数据库设计、文档实现与审查等一系列工作。6.1软件设计的概念在一个软件结构内,模块可以分为三类:(1)顺序(Sequential)模块:在引用与执行的过程中没有明显的中断现象出现。(2)渐增(Incremental)模块:在执行过程中可以被中断,然后再在中断点恢复执行。(3)并行(Parallel)模块:它是在并发多处理器环境中与另一模块同步地执行。对于一个高质量的软件元

2、素来说,它应该要求各模块具有下述特性:(1)简明性。每个模块应该简单易懂,易于实现。(2)完整性。每个模块在逻辑上应当是一个自身与环境隔绝的整体,它应表示一个独立而完整的功能。(3)独立性。每个模块都应当是彼此独立的。它们可以由不同的设计者设计,不同的程序员来实现,改变其内部结构不会对其所在的环境产生影响。抽象软件工作过程的每一步都是对软件解决方案的抽象层次的一次细化。在系统定义阶段,软件被看作是一个完整的系统部分。在软件计划和需求分析期间,我们用在问题环境内熟悉的方式描述软件解决方案。当我们从概要设计转向详细设计时,抽象的程度再次降低。最后,当产生源程序时,也就达到了抽象的最低层。

3、信息隐蔽在设计和规定模块时:该模块由(数据与过程)应该对不需要了解这些信息的模块隐藏起来。只有为了完成软件的总体功能而必须在模块之间交换的信息,才允许在模块间进行传递。软件的度量代码行数度量法霍尔斯特德(Halstead)度量法[阅读教材]麦凯布(McCabe)度量法把程序流程图 映射成流图由PDL翻译成的流图由包含复合条件的PDL映射成的流图6.2软件设计基本原理抽象与求精、模块化和信息隐蔽、模块独立性等是经过时间考验的、实用的软件设计基本原理,是用来衡量软件设计质量(或指导软件设计)的基本手段或指南。抽象与求精抽象是一种常用的思考和解决问题的方式,即抽取事物的本质的共同特性而暂时

4、避开不必要的低层细节。抽象的概念广泛应用于软件工程领域,实际上整个软件开发过程就是一个从抽象到具体的过程。在需求分析时,使用“问题环境中熟悉的”语言来描述待开发的软件系统;在软件设计时,往往同时使用面向问题环境的术语和面向实现的术语来报述软件系统;在编码时,则使用直接实现的方式(源程序代码)来描述软件系统;在软件开发过程中,过程抽象和数据抽象是两种常见的抽象方式。模块化和信息隐藏模块(Module)是系统设计中最重要的一个概念。系统设计中一个非常重要的步骤就是要设计软件的结构。合理的软件结构应该是分块的结构,也就是说,软件应该分解成可单独命名的且可访问的部件,这些部件称为模块,所有这

5、些模块集成在一起以满足问题的需求。这种将软件分成具有一定结构的模块的过程称为模块化。模块化与软件成本之间的关系模块独立性模块独立性是模块化、抽象和信息隐藏的直接产物,其基本含义是每一个模块只完成功能需求中的一个特定的子功能,而且从程序结构的其他部分来看这一模块只具有一个简单的接口。模块的功能独立性可以使得模块既容易开发又容易维护。模块独立性有两个定性的度量标准:内聚度和耦合度。内聚度内聚度(Cohesion)是指模块内部各成分联系紧密的程度,它是衡量模块独立性的一种重要的标准。通常,内聚度越高,模块的独立性就越强。(1)偶然内聚(2)逻辑内聚(3)时间内聚(4)过程内聚(5)通信内聚

6、(6)信息内聚(7)功能内聚2.内聚一个模块内部元素在功能上相互关联的强度设计目标:高内聚,模块在软件过程中完成单一的任务(1)功能内聚(FunctionalCohesion)一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作,紧密联系,不可分割的。则称该模块为功能内聚模块。内聚性最强(2)信息内聚(InformationalCohesion)这种模块完成多个功能,各个功能都在同一数据结构上操作,每一项功能有一个唯一的入口点。这个模块将根据不同的要求,确定该执行哪一个功能。由于这个模块的所有功能都是基于同一个数据结构(符

7、号表),因此,它是一个信息内聚的模块。信息内聚模块可以看成是多个功能内聚模块的组合,并且达到信息的隐蔽。即把某个数据结构、资源或设备隐蔽在一个模块内,不为别的模块所知晓(3)通信内聚(CommunicationCohesion)如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称之为通信内聚模块。通常,通信内聚模块是通过数据流图来定义的。(4)过程内聚(ProceduralCohesion)模块内各处理成分相关,且必须以特定次序执行

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

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

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