软件工程 第五章 概要设计.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 概要设计 5.1 概要设计的任务及目标 5.2 概要设计的概念和原理 5.3 设计准则 5.4 概要设计的常用方法及工具 5.1 概要设计的任务及目标 5.1.1概要设计的任务 把总任务分解为许多基本的、具体的任务。这些具体任务合理地组织起来构成总任务,称为总体设计结构,又称为概要设计结构,其基本任务是:将系统划分为模块,决定每个模块的功能,决定模块的调用关系,决定模块的界面,以及模块间信息的传递。 概要结构设计是系统开发过程中很重要的一步。系统的质量及一些整体特性基本上就是在这个阶段决定的。系统越大,概要结构设计的影响越大。 5.1 概要设计的任务及目标 5.1.2概要设计的目标 McGlanghlin给出在将需求转换为设计时判断设计好坏的3条特征。 (1)设计必须实现分析模型中描述的所有显式需求,必须满足用户希望的所有隐式需 (2)设计必须是可读、可理解的,使得将来易于编程、易于测试并易于维打‘。 (3)设计应从实现角度出发,给出与数据、功能、行为相关的软件全貌。 5.2 概要设计的概念和原理 5.2.1软件结构和过程 概要设计过程要完成的工作 (1)制定规范。 (2)软件系统结构的总体设计。 (3)处理方式设计。 (4)数据结构设计。 (5)可靠性设计。 (6}编写概要设计阶段的文档。 (7)概要设计评审。 5.2 概要设计的概念和原理 (1)概要设计的概念 自顶向下,逐步细化。 (2)软件结构。软件结构包括两部分:程序的模块结构和数据的结构。 (3)程序结构。程序结构表明了程序各个部件(模块)的组织情况,是软件的过程表示。 软件总体设计的过程如下。 ①从DFD出发进行任务分解,不同的划分方法即对应不同的方案。 ②选择最佳方案并制订详细的实现计划。 5.2 概要设计的概念和原理 5.2.2模块化 1.模块化设计原理 模块是指具有相对独立性的,由数据说明,执行语句等程序对象构成的集合。程序中的每个模块都击要单独命名,通过名字可实现对指定模块的访问。软件系统的层次结构正是模块化的具体体现。就是说,整个软件被划分成若十单独命名和可编址的部分,称之为模块。 一个系统,即使不能按模块划分,必须以整体实现,但仍然可以按照模块化的概念进行设计,只是程序可以逐行编写,不划分成了程序。虽然从程序上看不出模块,但在程序设计上应用了模块化原理,这样的程序具有模块化的优点。 5.2 概要设计的概念和原理 2.抽象 抽象:忽略细节,分层理解问题,自顶向下层逐层加细。 (1)过程的抽象。 (2)数据抽象。 (3)控制抽象。 3.信息隐蔽 由painas方法提倡的信息隐蔽是指,每个模块的实现细节对于其他模块来说是隐蔽的。 5.2 概要设计的概念和原理 4.模块独立性 模块的独立性,是指软件系统中每个模块只涉及软件要求的具体的了功能,而和软件系统中其他的模块的接口是简单的。 一般采用两个准则度量模块独立性,即模块间的藕合和模块的内聚。 (1)藕合性。耦合是模块之间的相对独立性的度量,它取决于各个模块之间接口的复杂程度、调用模块的方式以及哪些信息通过接口。 (2)内聚性。内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)量。 5.3 设计准则 1.抽象化 对软件进行模块设计的时候,可以有不同的抽象层次。在最高的抽象层次上,可以使用问题所处环境的语言描述问题的解法。而在较低的抽象层次上,则采用过程化的方法。 2.自顶向下,逐步细化 这是由Niklaus Wirth提出的设计策略。将软件的体系结构按自顶向下方式,对各个层次的过程细节和数据细节逐层细化,直到用程序设计语言的语句能够实现为止,从而最后确立整个体系结构。 5.3 设计准则 3.模块化 软件系统的层次结构正是模块化的具体体现。就是说,整个软件被划分成若十单独命名和可编址的部分,称之为模块。这些模块可以被组装起来以满足整个问题的需求。 4.控制层次 控制层次也叫做程序结构,它表明了程序构件(模块)的组织情况。 5.结构划分 程序结构可以按水平方向或垂直方向进行划分。 5.3 设计准则 6.数据结构 数据结构是数据的各个元素之间的逻辑关系的一种表示。数据结构设计应确定数据的组织、存取方式、相关程度以及信息的不同处理方法。 7.软件过程 程序结构描述了整个程序的控制层次关系和各个部分的接口清况。 5.4 概要设计的常用方法及工具 5.4.1面向数据流的设计方法 结构化设计方法是在模块化、自顶向下细化以及结构化程序设计等程序设计技术基础上发展起来的。该方法实施的要点是:①建立数据流的类型;②指明流的边界;③将数据流图映射到程序结构;④用“因子化”方法定义控制的层次结构;⑤用设计测量和一些启发式规则对结构进行细化。 1.在系统结构图(sc)中的模块 在系统结构图中不能再

文档评论(0)

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

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

1亿VIP精品文档

相关文档