资源预览内容
第1页 / 共49页
第2页 / 共49页
第3页 / 共49页
第4页 / 共49页
第5页 / 共49页
第6页 / 共49页
第7页 / 共49页
第8页 / 共49页
第9页 / 共49页
第10页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第四章 软件设计主要内容: 软件体系结构的概念 软件设计思想 结构化设计方法 面向对象设计方法讨论要点(1)什么是软件结构?(2)如何建立设计模型?软件设计的目标和目的软件需求:解决“做什么”软件设计:解决“怎么做”软件设计的任务问题结构(软件需求) 软件结构从软件需求规格说明书出发,形成软 件的具体设计方案。映射软件的总体结构主要回答的问题 软件的组成部分 软件的层次关系 模块的内部处理逻辑 模块之间的界面软件体系结构软件体系结构包括两部分: (1)过程构件(模块)的层次结构 (2)数据构件4.1 软件体系结构软件体系结构的有关概念 软件体系结构的层次性软件体系结构的设计原理软件体系结构的有关概念什么是软件体系结构 软件体系结构的发展软件体系结构的研究范畴软件设计的目标 设计应该是便于维护和升级的,因而应该 是模块化的 设计应该是便于移植的 设计应该具有适应性 设计过程应该受到理性化的控制 设计应该表现出概念的完整性软件设计思想 强调信息隐蔽的单元概念 应用基于操作和数据封装构成的单元设计 技术 应用专门的机制可靠地处理并发控制和分 布系统问题 提出基于模型的系统结构和设计方法 明确提出软件体系结构的设计思想什么是软件体系结构 软件体系结构定义了软件局部和 总体计算部件的构成,以及这些部件之 间的相互作用关系。 从整体看,软件体系结构是由结构和 功能各异、相互作用的部件集合,按照层 次构成的。它包括了系统基础构成单元、 它们之间的作用关系、在构成系统时它们 的合成方法以及对合成约束的描述。普通部件及其支持的相互作用序 号部件类类型部件支持的相互作用类类型1模块块(Module)过过程调调用、数据共享 2对对象(Object)方法调调用 3过滤过滤 器(Filter)数据流4过过程(Process)消息传递传递 、远远程调调用、 通讯协议讯协议 、同步 5数据文件(Data file) 读读写 6数据库库(Database)模式、查询语查询语 言 7文档(Document)共享表示假设设软件体系结构可分为四种不同的体系:概念结构包括部件、互连、原则和性能等 代码结构包括软件的配置管理、系统建造等 模块结构包括模块界面、模块管理、模块控制和一致性等 执行结构包括性能分析、调度分析、动态配置和不同的 执行系统之间的接口等与软件体系结构有关的研究:体系结构风格(Architecture Styles)表示软件系统的一种特别的基本结构,以及相 关的构造方法 设计模式(Design Patterns)构造型模式、结构型模式、行为型模式 框架(Framework)另一种研究和构造软件体系结构的方法,更多 的是关于应用领域问题的已建立的系统结构。软件体系结构的层次结构软件的构成 软件的物质基础软件的结构基础 软件的层次结构模型 软件体系结构的层次结构模型 软件体系结构的体系软件的构成 软件体系结构需要基础 软件体系结构需要层次软件体系结构需要模式软件的物质基础软件设计的物质基础是计算 机硬件,当前的计算机硬件决定 了软件设计和实现的出发点,计 算机硬件的发展影响着软件体系 结构。计算机硬件体系结构分类SISD单指令流单数据流计算机控制控制处理处理存储存储指令数据指令计算机硬件体系结构分类SIMD单指令流多数据流计算机控制控制处理处理2 2存储存储2 2指令数据2存储存储1 1存储存储n n处理处理1 1处理处理n n数据1数据n计算机硬件体系结构分类MISD多指令流单数据流计算机控制控制2 2处理处理2 2存储存储2 2指令1存储存储1 1存储存储n n处理处理1 1处理处理n n数据数据控制控制1 1控制控制n n指令2指令n指令1指令2指令n计算机硬件体系结构分类MIMD多指令流多数据流计算机控制控制2 2处理处理2 2存储存储2 2指令1存储存储1 1存储存储n n处理处理1 1处理处理n n控制控制1 1控制控制n n指令2指令n指令1指令2指令n数据2数据1数据n多处理机系统具有共享存储结构的多处理机控制控制处理处理MAPMAP控制控制处理处理MAPMAP存储存储存储存储互连网络互连网络通道通道I/OI/O通道通道I/OI/O多处理机系统具有分布存储结构的多处理机控制控制处理处理MAPMAP控制控制处理处理MAPMAP互连网络互连网络I/OI/O存储存储存储存储分布计算系统分布计算网络交换机交换机电信网络网络软件的结构基础 结构控制流 部件连接方式 结构化连接模式 基本数据类型 抽象数据类型 进程及运行环境 分时并发计算 资源共享/并行同步 实时系统 软件结构的四视图观软件体系结构的四视图概念视图模块视图代码视图运 行 视 图部件 连接器 配置模块 子系统 层模块限制新模块分割部件 连接器 配置运行限制新模块分割模块变化成运行实体运行实体源代码硬 件 和 操 作 系 统 体 系 结 构软件的层次结构模型计算机网络的体系结构 计算机操作系统的体系结构软件体系结构的层次结构模型第第6 6层:应用层层:应用层第第5 5层:系统结构模式层层层:系统结构模式层层第第4 4层:资源和管理调度层层:资源和管理调度层第第3 3层:基础控制描述层层:基础控制描述层第第2 2层:软化的硬件层层:软化的硬件层第第1 1层:计算机硬件层层:计算机硬件层客户机/服务器体系结构应用系统的组成: 显示逻辑部分(表示层):实现与用户交互 应用处理部分(功能层):进行具体运算和数据处理 数据管理部分(数据层):对数据库中数据进行查询 、修改、更新等任务应用分层表示层功能层数据层三层明确分割, 逻辑上独立 瘦客户机和胖客户机客户机“胖” 客户机应用 处理 逻辑显 示 逻 辑服务器数据 管理 逻辑数据库“瘦” 客户机表示显 示 逻 辑数据 管理 逻辑数据库表示应用处理应用 处理 逻辑客户机服务器三层C/S的基本硬件结构 将三层功能装载到硬件的三种基本方法表示层表示层表示层功能层数据层数据层功能层功能层数据层客 户 机服 务 器(1)将数据层和功能层放在一台服务器上(2)将数据层和功能层放在不同服务器上服 务 器(3)将功能层放在客户机上层次模型的结构关系客户层N层N-1层1使用抽象的最高层抽象的最低层2. 软件设计的问题工具 如何描述软件的总体结构 方法 用什么方法有问题结构导出 软件结构 评估准则 什么样的软件结构是“最优的”公认的、被多次使用的系统结构被称为结 构风格、设计模式、(设计)框架。 如果说一门工程技术的成熟表现在其基本 设计构件的提出和系统化,那么体系结构 的风格、模式、框架就是软件工程中的基 本构件。 体系结构概念能否成熟到使软件设计发生 根本革命的水平?广泛提及的体系结构风格: v管道和过滤器 (Pipe and Filters) v数据抽象或对象(Data Abstraction and Object Orientted) v隐式调用/消息(Event-Based/Implicit Invocation) v层次(Layered System) v仓库(Repositories) v解释器(Interpreters) v过程控制(Process Control) v分布式系统(Distributed System) v客户/服务器(Client/Server) v主程序/子程序(Main/Sub Programs) v状态转换(State Transition) v专用领域(Domain Specific Styles)对体系结构风格的理解v结构风格以结构组织为特性定义了一个软件系统 族,表达了部件以及部件之间的关系。v体系结构风格通过组件应用的限制及其与构建有 关的组成和设计规则来表现组件和组件之间的关 系。v体系结构风格表示了软件系统的一种特别的基本 结构,以及相关的构造方法。v体系结构风格应该使一些对软件构成带有整体性 、普遍性、一般性的结构和结构关系的方法。在 设计中,遵循这些风格的构成原则,对软件的开 发和维护十分有益。面向电子商务的应用体系结构图网络平台以有应用系统数据库中间件基础设施 J2EE/CORBA/COM+传统中间件操作系统B2B集成平台应用集成平台应用系统工作流o5S(o5)o6S(o6)分布式对象体系结构o1S(o1)o2S(o2)o3S(o3)o4S(o4) 基本系统组件是对象,提供一组服务,对外给出服务的接口 对象之间不存在客户机与服务器的界限,接受服务者扮演客户机角色,提供服务者就是服务器 对象可能分布在网络的多台计算机上,通过中间件相互通信软件总线 (中间件)OMG体系结构和服务参考模型公共对象服务与特定非标准化应 用系统有关的对象横向工具对象与特定纵向领 域有关的对象应用系统接口领域接口CORBA工具接口CORBA对象请求代理(ORB) CORBA服务接口.NET体系通用语言运行时刻环境(CLR)基本类库数据和XMLWeb服务用户接口通用语言运行规范(CLS)VB.NETC+C#PerlVisual Studio .NET某制造企业的架构 用户界面销 售 公 司子 系 统生 产 计 划 部生 产 设 备 处采 购财 务 处人 事 处劳 资 处专 卖 处科 技 处仓 库办 公 室市 场 部DDL专用 构件库采 购 管 理分 析 对 比财 务 管 理销 售 管 理计 划 管 理汇 总 执 行文 档 审 计文 档 批 阅特 权 管 理文 档 转 发MIS通用构件库查 询统 计计 帐报 表计 划OA构件库录 入通 信维护构件库 归 档恢 复转 储基本构件库ODBC应用数据库运行和维护平台UNIXWindow NTTCP/IPORACLE领域框架示例之一:政府招商引资招商服务相关单位招商引资工商 管理财政 结算税务 管理电子 银行信息 发布统计 分析咨询 服务业务 受理业 务 预 审流 程 定 制业 务 流 转投 资 咨 询网 上 洽 谈投 诉 受 理政 策 法 规办 事 流 程招 商 简 报领域框架示例之二:统计局信息 输入系统 管理统计 查询数据 收集数据 上报统计局综 合信息库数据接口基础 数据库综合 信息库统计局综合管理系统政 府 信 息 资 源 库MIS的构件提取的案例采购半成品库供应商原料库成品库成 品顾客原料 本成品仓库 管理生产 车间仓库 管理销售成 品成 品半成品半成品半成品原料原料采 购供 应 商三 级 商 品 库仓 库 管 理销 售商 品 顾 客二 级 商 品 库一 级 商 品 库仓 库 管 理仓 库 管 理商 品商 品商 品在不同行业的仓库物流模型寻找共性,进行模式复用采购MIS的构件提取的案例物资库供应商原料库物资物流模型的构件提取仓库 管理顾客仓库 管理销售物资物资物资物资物资采购和销售的仓库物流模型 在MIS领域中模式复用 可作为MIS通用构件库的高级构件MIS的构件提取的案例再一次模式复用采购物资库供应商原料库物资仓库 管理顾客仓库 管理销售物资物资物资物资物资供应者输入 接受者处理输出所有处理过程的基本IPO(Input,Process,Output)模式 可作为基本构件库的高级构件或标准,来检验所有MIS 系统或非MIS系统中处理过程是否全面包括输入、输出 和处理三部分。入库申请商品仓库系 统调度模型进库出库申请仓库管理出库仓库入库批准出库批准入库商品出库商品递交申请脱机打印系 统管理模型打印申请执行申请打印管理打印机打印任务集递交批准执行批准递交的任务执行的任务生产申请资源的生产 消费模式资源生产消费请求资源管理资源消费资源仓库生产批准消费批准生产的资源消费的资源从两个不同领域且不同侧面 的模型,抽象出一个模式可把该模式转化为构件
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号