当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

西安交通大学软件学院:《面向对象的软件工程》 第四章 软件设计

资源类别:文库,文档格式:PPT,文档页数:71,文件大小:1.28MB,团购合买
第4章软件设计 一、软件设计概述 二、软件体系结构 三、优秀设计的概念 四、传统的结构化设计 五、用户界面设计 六、构件级设计
点击下载完整版文档(PPT)

第4章软件设计 软件设计概述 软件体系结构 优秀设计的概念 ●传统的结构化设计 用户界面设计 构件级设计 西安交通大学刘海岩

西安交通大学 刘海岩 1 第4章 软件设计 ⚫ 软件设计概述 ⚫ 软件体系结构 ⚫ 优秀设计的概念 ⚫ 传统的结构化设计 ⚫ 用户界面设计 ⚫ 构件级设计

4.1软件设计概述 1、软件设计中的主要活动 软件设计是将软件需求转换为软件表示的过程,是构 造和验证软件所需的三项技术活动(设计、编码、测试) 设计过程主要有以下活动 (1)数据设计:将分析时创建的信息域模型(ERD、 DD)转换成软件构件级的数据结构和应用级的数据库体系 结构 为满足当今企业对大中型规模的业务信息的需求,遍 历现存的数据库以试图抽取合适的业务级信息而产生了数 据挖掘技术。由于多个数据库结构不同、库中信息命名格 式及详细程度不同以及许多其他因素造成了数据挖掘的困 难,需建立不同于一般数据库的大的数据仓库,存放以主 要业务主题进行组织的、展示统一定义标准的并在较长时 间内保持稳定的数据 西安交通大学刘海岩

西安交通大学 刘海岩 2 4.1 软件设计概述 1、软件设计中的主要活动 软件设计是将软件需求转换为软件表示的过程,是构 造和验证软件所需的三项技术活动(设计、编码、测试) 之一。设计过程主要有以下活动: (1) 数据设计:将分析时创建的信息域模型(ERD、 DD)转换成软件构件级的数据结构和应用级的数据库体系 结构。 为满足当今企业对大中型规模的业务信息的需求,遍 历现存的数据库以试图抽取合适的业务级信息而产生了数 据挖掘技术。由于多个数据库结构不同、库中信息命名格 式及详细程度不同以及许多其他因素造成了数据挖掘的困 难,需建立不同于一般数据库的大的数据仓库,存放以主 要业务主题进行组织的、展示统一定义标准的并在较长时 间内保持稳定的数据

(2)体系结构设计:定义软件系统的整体组织结构, 有时称为软件系统设计。指系统中有哪些主要结构性元 素,以什么样的模式连接,互相之间如何交互以及它们 的接口。设计体系结构的作用: 便于理解和沟通 便于组织开发 便于扩展 便于重用 (3)接口设计:描述软件内部、软件与协作系统之 间以及软件与人之间如何通信。一个接口意味着信息流 (如数据、事件)和特定的行为类型。 (4)构件级设计:对体系结构中的结构性元素进行 过程性描述(包括算法)并设计构件的接口 西安交通大学刘海岩

西安交通大学 刘海岩 3 (2)体系结构设计:定义软件系统的整体组织结构, 有时称为软件系统设计。指系统中有哪些主要结构性元 素,以什么样的模式连接,互相之间如何交互以及它们 的接口。设计体系结构的作用: • 便于理解和沟通 • 便于组织开发 • 便于扩展 • 便于重用 (3)接口设计:描述软件内部、软件与协作系统之 间以及软件与人之间如何通信。一个接口意味着信息流 (如数据、事件)和特定的行为类型。 (4)构件级设计:对体系结构中的结构性元素进行 过程性描述(包括算法)并设计构件的接口

2、软件设计文档 设计阶段的一个重要产品就是描述所构建的系统的文档。 主要内容 前言:系统目标;主要需求 数据设计 用一系列图形和符 体系结构设计 号描述系统、界面 接口设计(人机交互、外部接口)和构件的结构,包 每个模块(或构件)的过程性设计括各级抽象。 集成测试策略 设计约束 需求交叉引用表 参考文献 附录 文档中还可以包含描述系统如何运行的操作手册,以及出错 后系统的重新配置或特定的安全措施。 西安交通大学刘海岩

西安交通大学 刘海岩 4 2、软件设计文档 设计阶段的一个重要产品就是描述所构建的系统的文档。 主要内容: • 前言:系统目标;主要需求 • 数据设计 用一系列图形和符 • 体系结构设计 号描述系统、界面 • 接口设计(人机交互、外部接口) 和构件的结构,包 • 每个模块(或构件)的过程性设计 括各级抽象。 • 集成测试策略 • 设计约束 • 需求交叉引用表 • 参考文献 • 附录 文档中还可以包含描述系统如何运行的操作手册,以及出错 后系统的重新配置或特定的安全措施

4.2软件体系结构 1、什么是软件体系结构 随着软件系统越来越大、越来越复杂,软件设计的核 已经转移到新的计算模式,非传统的“程序=算法十数 据结构”,新的模式就是系统总体结的设计和规范。 软件体系结构( Architecture)为软件系统提供了一个结 构、行为和属性的高级抽象。由构成系统的元素(构件) 的描述、这些元素的相互作用、指导元素集成的模式以及 模式的约束组成。 软件体系结构不仅指出了系统的组织结构和拓扑结构 并显示了系统需求和构成系统元素之间的对应关系,提供 了一些设计决策的基本原理 西安交通大学刘海岩

西安交通大学 刘海岩 5 4.2 软件体系结构 1、什么是软件体系结构 随着软件系统越来越大、越来越复杂,软件设计的核 心已经转移到新的计算模式,非传统的“程序=算法+数 据结构”,新的模式就是系统总体结的设计和规范。 软件体系结构(Architecture)为软件系统提供了一个结 构、行为和属性的高级抽象。由构成系统的元素(构件) 的描述、这些元素的相互作用、指导元素集成的模式以及 模式的约束组成。 软件体系结构不仅指出了系统的组织结构和拓扑结构, 并显示了系统需求和构成系统元素之间的对应关系,提供 了一些设计决策的基本原理

软件体系结构的模型有下列几种: 结构模型:是构件、连接件(定义构件之间交互 规则、消息协议的构造模块)有组织的集合。反映系 统的重要语义内容,包括系统的配置、约束等。 框架模型:与结构模型类似,不侧重细节,侧重 于系统的整体结构(模式) 动态模型:补充模型,强调系统的行为性质。 过程模型:注重系统系统必须适应业务和技术的 过程。 功能模型:一组功能构件按层次组成,下层向上 层提供服务,是一种特殊的框架模型。 西安交通大学刘海岩

西安交通大学 刘海岩 6 软件体系结构的模型有下列几种: • 结构模型:是构件、连接件(定义构件之间交互 规则、消息协议的构造模块)有组织的集合。反映系 统的重要语义内容,包括系统的配置、约束等。 • 框架模型:与结构模型类似,不侧重细节,侧重 于系 统的整体结构(模式)。 • 动态模型:补充模型,强调系统的行为性质。 • 过程模型:注重系统系统必须适应业务和技术的 过程。 • 功能模型:一组功能构件按层次组成,下层向上 层提供服务,是一种特殊的框架模型

这些模型可用语言(ADL)描述,也可用图形(UML) 描述。 Bass等人对软件体系结构的定义强调了软件构件的角 色。构件( component):具有明确功能并可以分离出来的软 件或硬件。在体系结构设计的语境内,一个软件构件可以 是简单的程序模块,如:源程序文件、可执行文件,也可 以扩展到包括数据库以及网络配置中的“中间件”。构件 间的关系可以简单地从一个模块到另一个模块的过程调用, 也可以是复杂的数据库访问协议。 西安交通大学刘海岩

西安交通大学 刘海岩 7 这些模型可用语言(ADL)描述,也可用图形(UML) 描述。 Bass等人对软件体系结构的定义强调了软件构件 的角 色。构件(component): 具有明确功能并可以分离出来的软 件或硬件。在体系结构设计的语境内,一个软件构件可以 是简单的程序模块,如:源程序文件、可执行文件,也可 以扩展到包括数据库以及网络配置中的“中间件”。构件 间的关系可以简单地从一个模块到另一个模块的过程调用, 也可以是复杂的数据库访问协议

2、体系结构的风格 体系结构风格也是构造的一种模式( Pattern),类似于 建筑行业中的建筑风格,是描述某一特定应用域中系统组 织方式的惯用模式,反映了领域中众多系统所共有的结构 和语义特性。 研究体系结构风格的意义: 有利于发现不同系统在较高级别上的共同特性 对体系结构的了解,使得在设计软件结构时选择合适 的模式,进行正确地设计。 使用常用的、规范的模式来组织结构,使别的设计者 易于理解、便于交流。 有利于较高级别上的软件复用。判断能否在不同的软 件系统中使用同一体系结构。 Garlan和Shaw(1996)对体系结构的分类如下 西安交通大学刘海岩

西安交通大学 刘海岩 8 2、体系结构的风格 体系结构风格也是构造的一种模式(Pattern),类似于 建筑行业中的建筑风格,是描述某一特定应用域中系统组 织方式的惯用模式,反映了领域中众多系统所共有的结构 和语义特性。 研究体系结构风格的意义: • 有利于发现不同系统在较高级别上的共同特性。 • 对体系结构的了解,使得在设计软件结构时选择合适 的模式,进行正确地设计。 • 使用常用的、规范的模式来组织结构,使别的设计者 易于理解、便于交流。 • 有利于较高级别上的软件复用。判断能否在不同的软 件系统中使用同一体系结构。 Garlan和Shaw(1996)对体系结构的分类如下:

数据流风格:批处理序列;管道/过滤器 调用/返回风格:主程序/子程序;面向对象风格;层次 结构 仓库风格:数据库系统;超文本系统;黑板系统 虚拟机风格:解释器 独立构件风格:进程通信;基于事件系统 介绍几种主要的体系结构风格: (1)仓库风格 基于一个共享数据库的系统模型。(见下图) 西安交通大学刘海岩

西安交通大学 刘海岩 9 • 数据流风格:批处理序列;管道/过滤器 • 调用/返回风格:主程序/子程序;面向对象风格;层次 结构 • 仓库风格:数据库系统;超文本系统;黑板系统 • 虚拟机风格:解释器 • 独立构件风格:进程通信;基于事件系统 介绍几种主要的体系结构风格: (1)仓库风格 基于一个共享数据库的系统模型。(见下图)

客户软件 客户软件 客户软件 中心数据存储 客户软件 (仓库或黑板) 客户软件 客户软件 数据为中心的体系结构 仓库系统中有两类构件:中心数据存储构件及对 心数据进行各种操作的一组构件集。中心数据存储与外 部构件集之间的信息交互是该模式的至关重要的问题, 系统承担的功能不同,信息交互的方式也不同 西安交通大学刘海岩 10

西安交通大学 刘海岩 10 数据为中心的体系结构 仓库系统中有两类构件:中心数据存储构件及对中 心数据进行各种操作的一组构件集。中心数据存储与外 部构件集之间的信息交互是该模式的至关重要的问题, 系统承担的功能不同,信息交互的方式也不同

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共71页,可试读20页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有