[工学]第7章软件设计.ppt

  1. 1、本文档共155页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第7章软件设计

第7章 软件设计 软件设计概述 优秀设计的基本概念 数据设计 软件体系结构及其设计 面向对象的设计 实时软件的设计 用户界面设计 构件级设计 7.1 软件设计概念 1、软件设计模型 软件设计是将软件需求转换为软件表示的过程,也是一个建模过程,以一系列迭代的步骤建立不同的视图来描述系统。 主要的设计活动包括: 数据设计、体系结构设计、接口设计、构件级设计、部署级(Deployment-Level)的设计。 下图显示分析模型到设计模型的转换。 2、设计目标和指导原则(参考教材1) 设计目标: ? 设计必须实现所有包含在分析模型中的需求。 ? 设计必须是可读、可理解的,便于实现和维护。 ? 设计应该提供软件的完整面貌,包括从不同角度看到的数据、功能、行为域。 常用的设计指导原则: (1)设计应该展示这样一种结构: ? 已经使用可识别的体系结构风格或模式创建; ? 由展示出良好设计特征的构件组成; ? 能够以演化的方式实现,从而便于实现与测试。 (2)设计应该模块化。即软件应按逻辑划分为元素或子系统。 (3)设计应该包括数据、体系结构、接口和模块的清楚表示。 常用的设计指导原则(续): (4)设计应该导出数据结构,这些数据结构适合于要实现的类,并由可识别的数据模式提取。 (5)设计应导出显示独立功能特征的构件。 (6)设计应导出接口,这些接口降低了构件之间以及与外部环境连接的复杂性。 (7)设计的导出应根据软件需求分析过程中获取的信息采用可重复使用的方法进行。 (8)应使用能够有效传达其意义的表示法来表达设计。 3、通常的设计任务集: (1)检查信息域模型,并为数据对象及其属性设计恰当的数据结构。 (2)使用分析模型,选择一个适合于软件的体系结构模式。 (3)将分析模型分割为若干个设计子系统,并在体系结构内分配这些子系统。子系统应功能内聚。 设计子系统接口。 为每个子系统分配分析类或功能。 (4)创建一系列的设计类或构件。将每个分析类转化为设计类。根据设计标准检查每个设计类,考虑继承问题。 定义与每个设计类相关的方法和消息。 评估设计类和子系统并为其选择设计模式。 评审设计类,并在需要时修改。 (5)设计外部系统或设备所需的说有接口。 (6)设计用户接口 评审任务分析的结果。 基于用户场景详细说明活动序列。 创建接口的行为模型。 定义接口对象、控制机制。 评审接口设计,并在需要时修改。 (7)进行构件级设计 在相对较低的抽象层次上详细的说明所有算法。 精化每个构件的接口。 定义构件级的数据结构。 评审每个构件并修改所有已发现的错误。 (8)开发部署模型。 计算机软件文档编制规范(GB/T8567-2006) 《软件设计说明》模版 §1. 引言 §1.1标识 文件状态(草稿/正式发布/正在修改);文件标识;当前版本; 作者 §1.2 系统概述(名称、功能、性能、上下文关系、用户、开发者) §1.3 文档概述(类型、描述方法、预期读者) §1.4 基线 §2. 引用文件 §3. 系统结构 §3.1 部署图 §3.2 体系结构图 §3.3 … §4. 运行行为(时序图、活动图、状态图等 )/ 详细设计说明(网页对象设计、实体类、数据库接口设计等) §5. 接口设计(如用户界面、硬件接口、子系统接口) §6. 系统出错处理 §7. 系统维护 7.2 优秀设计的基本概念 软件设计中最重要的一个问题就是软件质量问题,如何衡量软件设计的技术质量呢?本节介绍提高软件设计技术应掌握的一些基本概念。 1、分解与模块化 Wasserman(1995)提出了5种创建设计的方法: (1)模块化分解:功能分配给模块或构件 (2)面向数据的分解:基于全局数据结构 3、信息隐蔽 指在设计和确定模块时能够隐藏在模块内部的信息(数据、过程)尽量在模块内部存储和定义,尽可能的局部化。接口和模块内部设计应分离。

文档评论(0)

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

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

1亿VIP精品文档

相关文档