第3章 软 件 设 计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 软 件 设 计 本章要点 : 软件设计的基本任务 软件设计的概念和原则 结构化和面向对象的设计方法 用户界面设计过程及原则 程序复杂性的度量 常用的软件设计工具 第3章 软 件 设 计 本章学习目标 : 深刻理解软件设计的基本任务 深刻理解模块化、模块独立性、抽象、细化、信息隐蔽、可重用等概念,掌握定性度量模块独立性的标准 熟练掌握结构化设计的总体和详细设计的描述工具,以及面向数据流的设计方法。理解JSP方法的思想和步骤 理解面向对象的系统设计和对象设计内容,了解设计模式的概念以及使用设计模式的重要性 了解用户界面的设计过程,理解用户界面设计的一般原则 理解并掌握程序复杂性度量McCabe方法和Halstead方法 了解并掌握常用的软件设计CASE工具 第3章 软 件 设 计 软件设计通常分为两个阶段:总体设计阶段和详细设计阶段。 总体设计又称概要设计或初步设计,该阶段主要给出一个系统的构造和构造元素,详细设计阶段再对构造元素进行细化设计。但在具体的软件开发过程中,这两个阶段的分界线并不很清晰,有时可以合二而一。 软件设计阶段是软件开发过程中决定软件产品质量的关键阶段 。 3.1 软件设计的基本任务 3.1.1 总体设计的基本任务 软件总体设计是概要地回答系统应该如何实现。该阶段具体地完成以下几个方面的基本任务: ⑴.最佳方案的设计。 ⑵.软件结构设计。 ⑶. 数据结构及数据库设计 ⑷. 网络系统设计。 ⑸. 文档编写。 ⑹.评审。 3.1 软件设计的基本任务 3.1.2 详细设计的基本任务 详细设计是总体设计的进一步的具体化,主要确定每个模块的具体执行过程,故也称为过程设计。其基本任务有: (1).为每个模块进行详细的算法设计。 (2).为模块内的数据结构进行设计。 (3).对数据库进行物理设计 。 (4).界面设计。 (5).其它设计。 (6).编写文档。 (7).评审。 3.2 软件设计的概念和原则 3.2.1 模块化与模块独立性 1. 模块化 模块是数据说明、可执行语句等程序对象的集合。模块可以被单独命名,而且可通过名字来访问。在面向对象的方法学中,对象和对象内的方法也是模块。在软件的体系结构中,模块是可组合、分解和更换的单元。模块是构成程序的基本构件。模块具有以下几个基本属性: 1).接口:指模块的输入与输出。 2).功能:指模块实现什么功能。 3).逻辑:描述内部如何实现要求的功能及所需的数据,即描述模块内部怎样做。 4).状态:指该模块的运行环境,即模块的调用与被调用关系。 3.2.1 模块化与模块独立性 功能、状态与接口反映模块的外部特性,逻辑反映它的内部特性。在软件设计阶段通常首先要确定模块的外部特性,这就是软件总体设计需要解决的问题。然后再确定模块的内部特性,这就是软件详细设计需要解决的问题。 模块化就是把程序划分成若干个模块,每个模块具有一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能,实现问题的求解。 目前,模块化方法已被广泛接受和应用,特别是在面向对象的软件开发模式中很自然地支持了把系统划分成模块化的思想。 3.2.1 模块化与模块独立性 2. 模块独立性 模块独立性是软件系统中每个模块只涉及软件要求的具体子功能.而和软件系统中其他的模块接口是简单的。 模块的独立程度可以由模块间的耦合和模块的内聚两个定性标准度量。耦合是衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚是衡量一个模块内部各个元素彼此结合的紧密程度。 2. 模块独立性 一个模块内部各个元素之间的联系越紧密,它的内聚性就越高,对应地它与其他模块之间的耦合性就会减低,模块独立性就越强。相反,模块内聚性越低,模块间耦合性就越强,模块的独立性也就越弱。 在软件设计中我们要追求高内聚低耦合的模块,尽量提高模块的独立性 。 (1).耦合 耦合是程序结构中各个模块之间相互关联的度量。耦合强弱取决于模块间接口的复杂程度、调用模块的方式以及通过接口的信息。Myers从耦合的机制上将耦合分为非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合、内容耦合七种类型, (1).耦合 Myers的七种耦合类型,在设计中我们处理耦合的总体原则是:尽量使用数据耦合,少用标记耦合和控制耦合,限制外部耦合和公共耦合的范围,完全不用内容耦合。 在面向对象的方法学中,对象是最基本的模块,因此耦合主要指不同对象之间相互关联的

文档评论(0)

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

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

1亿VIP精品文档

相关文档