软件体系结构(终)_第1页
软件体系结构(终)_第2页
软件体系结构(终)_第3页
软件体系结构(终)_第4页
软件体系结构(终)_第5页
已阅读5页,还剩1页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章第一章 构件的组成是什么 构件的特点是什么 构件的组成是什么 构件的特点是什么 组成 语义描述 通讯接口 实现代码 特点 语义完整 语法正确 有可重用价值 构件开发的目的是重用 简述构件库的使用者必须完成的 构件开发的目的是重用 简述构件库的使用者必须完成的 工作 工作 检索与提取构件 理解与评价构件 修改构件 构件组 装 青鸟构件模型 青鸟构件模型 刻面检索法 是由北京大学杨芙清院士等人 提出的 它充分吸收了通用对象请求代理结构 分布式对象 构建模型 EJB 等模型的优点并与它们相容 青鸟构建模型由外部接口与内部结构两部分 构件分类 构件分类 独立而成熟 有限制 适应性 装配 可修改 构件与软件重用 构件与软件重用 软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程 软件元素软件元素包括程序代码 测试用例 设计文档 设计过程 需求分析文档甚至领域知识 这些可重用的元素称做 软构件 简称构件软构件 简称构件 由于构件大都经过严格的质量认证 并在实际运行环境中得到检验 因此 重用构件有助于改善软件质量 构件模型及实现 构件模型及实现 构件是指语义完整 语法正确和有可重用价值的单位软件 是软件重用过程中可以明确辨识的 系统 结构上 它是语义描述 通信接口和实现代码的复合体 简单地说 构件是具有一定的功能 能够独立工 作或能同其它构件装配起来协调工作的程序体 构件模型是对构件本质特征的抽象描述 构件获取 构件获取 在建立基于构件的软件开发 component based software development CBSD 中 构件获取可以有多种 不同的途径 从现有构件中获得符合要求的构件 直接使用或作适应性修改 得到可重用的构件 通过遗留工程 将具有潜在重用价值的构件提取出来 得到可重用的构件 从市场上购买现成的商业软件 即 CTOS commerical off the shell 构件 开发新的符合要求的构件 一个组织在进行以上决策时 必须考虑到不同方式获得构件的 一次性成本和以后的维护成本 然后做出最优的选择 构建管理构建管理 对大量的构件进行有效的管理 以方便构件的存储 检索和提取 是成功重用构件的必要保证 构件管 理的内容包括构建描述 构建分类 构件库组织 人员及权限管理和用户意见反馈等 体系结构的定义体系结构的定义 软件体系结构为软件系统提供了一个结构 行为和属性的高级抽象 由构成系统的元素的描述 这些元素的相互作用 指导元素集成的模式以及这些模式的约束组成 软件体系结构不仅指定了系统的组织结构 和拓扑结构 并且显示了系统需求和构成系统的元素之间的对应关系 提供了一些设计决策的基本原理 第二章第二章 1 软件体系结构模型分为 软件体系结构模型分为 5 种种 结构模型 核心是体系结构描述语言 ADL 框架模型 更侧重于整体的结构 动态模 型 研究系统的 大颗粒 的行为性质 例如 描述系统的重新配置或演化 过程模型 构造系统的步骤和过程 功 能模型 体系结构是由一组功能构件按层次组成 下层向上层提供服务 第三章第三章 经典的软件体系结构风格 经典的软件体系结构风格 数据流风格 批处理序列 管道 过滤器 调用 返回风格 主程序 子程序 面向对象 风格 层次结构 独立构件风格 进程通讯 事件系统 虚拟机风格 解释器 基于规则的系统 仓库风格 数 据库系统 超文本系统 黑板系统 4 4 个阶段个阶段 需求分析 建立软件体系结构 设计 实现 需要全面考虑多方面因素 合适的软件体系结构风格 对于同 一个问题 可以有多种设计结果 是在各种制约条件下取得的较好折衷方案 科学 经验 艺术 体系结构的生命周期 体系结构的生命周期 软件体系结构的非形式化描述 使用自然语言表示相关概念和原则 软件体系结构的规范 化描述与分析 使用合适的理论模型精确 无歧义描述软件体系结构 软件体系结构的求精与验证 大型系统的 体系结构总是从抽象到具体 逐步求精而得到的 软件体系结构的实施 将求精后的软件体系结构应用于系统设 计过程中 形成系统的设计框架 面向对象的系统的应用场合 面向对象的系统的应用场合 面向对象的体系结构模式适用于数据和功能分离的系统中 也适用于问题域模型比 较明显 或需要人机交互界面的系统 大多数应用事件驱动风格的系统也常常应用了面向对象风格 3 层层 C S 表示层是应用的用户接口部分 担负着用户与应用间的对话功能 它用于检查用户从键盘等输入的数据 显示应用输出的数据 功能层相当于应用的本体 它是将具体的业务处理逻辑编入程序中 通常 在功能层中包 含确认用户对应用和数据库存取权限的功能以及记录系统处理日志的功能 数据层就是数据库管理系统 负责管 理对数据库数据的读写 C S 体系结构风格的优点有哪些 三层体系结构风格的优点有哪些 三层 CS 风格相较两层风格相较两层 CS 风格有哪些优点 风格有哪些优点 1 C S 体系结构具有强大的数据操作和事务处理能力 模型思想简单 易于人们理解和接受 2 系统的客户 应用程序和服务器构件是彼此独立和充分隔离的 这使得软件环境和硬件环境的配置具有极大的灵活性 而且易 于对系统进行扩展和缩小 3 客户应用程序的开发集中于数据的显示和分析 而数据库服务器的开发则集中于 数据的管理 不必在每一个新的应用程序中都要对一个 DBMS 进行编码 4 将大规模的应用处理任务分布到许 多通过网络连接的低成本计算机上 一定程度上降低了系统的整体开销 三层 C S 安全性大于两层 C S 利用功能层有效地隔离开表示层与数据层 未授权的用户难以绕过功能层而利用数据 库工具或黑客手段去非法地访问数据层 为严格的安全管理奠定了坚实的基础 请从多个角度对 请从多个角度对 B S 与与 C S 风格进行比较 风格进行比较 C S 胖客户端 两层 C S 显示 业务处理 使用 下载客户端 安装后就可以使用 特点 响应速度快 保障安全性 通常用于局域网 维护成本高 B S 主流 瘦客户端 浏览器 极少事务 使用 只要 Web 浏览器 无需安装客户端 特点 广域网 只需升级服务器 响应速度慢 维护方便 成本低 安全性差 第六章第六章 已知一个外部 已知一个外部 DTD 文档 如下 要求用文档 如下 要求用 XML 文档描述一个文件信息 包括文件名和作者 其中文件名为软件体文档描述一个文件信息 包括文件名和作者 其中文件名为软件体 系结构 作者为张明 试将右下角的系结构 作者为张明 试将右下角的 XML 文档补充完整 文档补充完整 软件体系结构 张明 XML 可扩展标记语言 与 可扩展标记语言 与 HTML 的比较总结 的比较总结 XML 是用来存储 传输和交换数据的 HTML 是用来显示数据的 HTML 标记由权威团体制定 种类有限且不能随意添加 XML 可由用户按需要增加标记 HTML 语法规则比较多元化 具有较大灵活性 XML 对语法有严格的要求 文件格式容易转换 适合跨域跨平 台传递数据 第八章第八章 简述 简述 Web Service 技术中的三大角色 三种操作 三大协议 并说明三大协议各自的作用 技术中的三大角色 三种操作 三大协议 并说明三大协议各自的作用 三种角色 服务提供者三种角色 服务提供者 是服务的所有者 负责定义并实现服务使用 WSDL 对服务 进行详细 准确 规范的描述并 将描述发布到服务注册中心 服务请求者 服务请求者 是服务的的使用者是查找绑定并调用服务或与服务进行交互 应用的程序 人或程序 服务注册中心 服务注册中心 是连接提供者和请求者的纽带有时也是整个模型中的可选角色 三种操作 三种操作 发布 为用户访问服务 提供者发布服务描述便于请求者查找 查找 请求者直接检索服务描述或服务注 册中心查询所要求得服务 绑定 请求者使用服务描述中的绑定细节来定位 联系并调用服务从而运行时 与服务进行交互 三大协议 三大协议 WSDL UDDI SOAP WSDL 是基于 XML 的用于描述 Web 服务以及如何访问 Web 服务的语言 UDDI 管理 注册和查找服务 SOAP 作为传输层 用来在消费者和服务提供者之间传送消息 第九章第九章 传统 传统 Web 应用程序存在那些缺点 造成这些缺点的原因是什么 应用程序存在那些缺点 造成这些缺点的原因是什么 传统传统 Web 应用程序存在缺点 应用程序存在缺点 操作复杂性 数据复杂性 交互复杂性 造成传统造成传统 Web 应用程序缺点的原因 应用程序缺点的原因 1 传统的 Web 应用程序不断发送 HTTP 请求 并且是同步请求 每个请 求是有成本的 包括时间成本和资源成本 一个完整的请求都需要经过 DNS 寻址 与服务器建立连接 发送数据 等待服务器响应 接收数据这样一个 漫长 的过程 2 传统的 Web 应用程序受限于 HTML 网页技术的先天不 足 不能表达高度的复杂性 AJAX 技术的核心是什么 技术的核心是什么 AJAX 是如何将多种已有的技术绑定在一起的 这些技术各自起到什么作用 是如何将多种已有的技术绑定在一起的 这些技术各自起到什么作用 AJAX 技术的核心是 javascript 调用 XML 的异步传输 借助于 AJAX 可以在用户单击按钮时 使用 JavaScript 和 DHTML 立即更新用户界面 并向服务器发出异步请求 以执行更新或查询数据库 当请求返回时 就可以使 用 JavaScript 和 css 来相应的更新用户界面 而不是刷新整个页面 最重要的是 用户甚至不知道浏览器正在与 服务器通信 Web 站点看起来是即时响应的 XML 的高拓展性 高灵活性 使得其可以描述各种不同类的应用软件中的不同类型的数据 可以实现不同数据的 集成 XHTML 结合了部分 XML 的强大功能和 HTML 的简单特性 JavaScript 主要用来传递用户界面上的数据 到服务端并返回结果 XMLHttpRequest 用来响应通过 HTTP 传递的数据 一旦数据返回到客户端 就可以立 刻使用 DOM 将数据显示在网页上 DOM 为 XML 文档的已解析版本定义了一组接口 XSLT 能够减少大量的用 JavaScript 编写的应用逻辑 CSS 提供了从内容中分离应用样式和设计的机制 RIA 富互联网应用 中 富互联网应用 中 富富 的含义是什么 的含义是什么 RIA 的优点有哪些 试说出几个 RIA 客户端的开发技术 富 丰富的数据模型 丰富的用户界面 RIA 的优点 的优点 1 RIA 结合了 C S 架构反应速度快 交互性强的优点 以及 B S 架构传播范围广及容易传播的特 性 2 RIA 简化并改进了 B S 架构的用户交互 3 数据能够被缓存在客户端 从而可以实现一个比基于 HTML 的 响应速度更快且数据往返于服务器的次数更少的用户界面 4 RIA 可以继续使用现有的应用程序模型 包括 J2EE 和 NET 因而无需大规模替换现有的 Web 应用程序 5 RIA 可以帮助企业提供多元化的重要业务效益 典型的 典型的 RIA 客户端开发技术客户端开发技术 Flex AJAX JAVA XUL 等 第十一章第十一章 软件质量属性软件质量属性 可用性可用性 可靠性可靠性 容错 健壮性 周期内系统平均无故障运行时间 安全性安全性 系统在向合法用户提供服务的 同时 能够阻止非授权用户使用的企图或拒绝服务的能力 性能 可修改性 可维护 可扩展 结构重组 可移植 功能性 可 变性 集成性 互操作性 一般提高可靠性的同时 也同时提高了可用性 提高可靠性需要强调减少系统中断 故障 的次数 提高可用性强调减少从故障中恢复的时间 可靠性可靠性 工作时间工作时间 发生故障数发生故障数 就是平局正常工作时间就是平局正常工作时间 简述软件体系结构评估的必要性 简述软件体系结构评估的必要性 A 体系结构评估可以减少后期测试和纠错的开销 B 评估是挖掘隐性需求并将其补充到设计的最后机会 C 体系结构是开发过程的中心 不良的体系结构会带来一蹋糊涂的效果 C S 架构与集中式计算那个架构在性能方面表现更好 架构与集中式计算那个架构在性能方面表现更好 B S 与与 RIA 分别说明理由 分别说明理由 RIA B S C S 文件服务器 RIA C S B S 文件服务器 RIA 结合了 RIA 结合了 C S 架构反应速度快 交互性强的优点 以及 B S 架构传播范围广及容易传播的特性 B S 以网页为单位 不断发送 HTTP 请求 并且是同步请求 响应速度慢 C S 客户端针对一个小的 特定的数据集 如表的行来进行操作 对某一条记录封锁 而不像文件服务器那样针对 整个文件进行操作 进行封锁 因此保证了系统的并发性 使得网络上传输的数据量减到最少 从而改善系统的 性能 三层 三层 C S 两层 两层 C S 与与 B S 那个架构在安全性方面表现更好 那个架构在安全性方面表现更好 三层 C S 功能层包括对用户数据存取权限的确认 和记录系统处理日志的功能 利用功能层有效地隔离开表示层与数据层 未授权的用户难以绕过功能层而利用数 据库工具或黑客手段去非法地访问数据层 为严格的安全管理奠定了坚实的基础 B S 面向大量不可知用户 因此 三层 C S 两层 C S B S 可移植性好 可移植性好 正交体系软件结构 SOA 结构 集成性好 SOA 结构 可变性好 JAVA 到 RIA 6 主要评估方式 主要评估方式 基于调查问卷或检查表的评估方式 基于场景的评估方式 体系结构权衡分析方法 ATAM 和软件体系结构分析方法 SAAM 基于度量的评估方式 ATAM 评估方法的基本步骤是什么 评估方法的基本步骤是什么 1 描述 ATAM 方法 2 描述业务动机 3 描述体系结构 4 确定体 系结构方法 5 生成质量属性效用树 6 分析体系结构方法 7 讨论和分级场景 8 分析体系结构方法 9 描述评估结果 第十二章第十二章 中间件的概念中间件的概念 中间件是一种软件 处于系统软件 操作系统和网络软件 与应用软件之间 它能使处于应用层中的各应用成分 之间实现跨网络的协同工作 互操作 中间件的功能中间件的功能负责客户机与服务器之间的连接和通信 以及客户机与应用层之间的高效率通信机制 提供应用层 不同服务之间的互操作机制 以及应用层与数据库之间的连接和控制机制 提供一个多层体系结构的应用开发和 运行的平台 一集一个应用开发框架 支持模块化的应用开发 屏蔽硬件 操作系统 网络和数据库的差异 提 供应用的复杂均衡和高可用性 安全机制与管理功能 保证交易的一致性 提供一组通用的服务区执行不同的功 能 避免重复的工作和使应用之间可以协作 主要的中间件 事务处理中间件 消息中间件 数据库主要的中间件 事务处理中间件 消息中间件 数据库 远程过程调用 远程过程调用 对象请求代理 对象请求代理 J2EE 中间件的分类中间件的分类 底层中间件 主要技术 JVM CLR ACE 通用型 RPC ORB MOM 集成型 WorkFlow EAI 中间件与构件的关系 本质上说是对分布式应用的抽象 抛开与应用相关的业务逻辑细节 保留了典型的分布交互模式的关键特征 与 体系结构在本质上是一致的 术语 名词解释 名词解释 ABSD 设计元素 复审 设计元素 复审 ABSD 基于体系结构的软件设计 设计元素 设计元素 系统 概念子系统 概念构件 复审 复审 目的是标识潜在的风险 及早发现体系结构设计中的缺陷和错误 包括体系结构能否满足需求 质量需求 是否在设计中得到体现 层次是否清晰 构件的划分是否合理 文档表达是否明确 构件的设计是否满足功能与 性能的要求等等 基于体系结构的软件开发过程 基于体系结构的软件开发过程可分为实验原型阶段实验原型阶段 这一阶段的重点是获得对问题域的理解 为此 需要构建一 系列原型 与实际的最终用户一起进行讨论和评审 决定是否可以实现最终系统 如果可以 则进入第二个阶段 和演化开发阶段演化开发阶段 两个阶段两个阶段 重点是放在最终产品的开发上 也就是要将重点转移到构件的精确化上 这时 原型 既被当作系统的规格说明 又可当作系统的演示版本 ABSD 方法与生命周期方法与生命周期 左图左图 ABSD 方法的步骤方法的步骤 ABSD 方法定义的设计元素 设计元素的产生顺序 设计元素的活 动 定义逻辑视图 功能分解 选择体系 为风格分配功能 细化模板功能 校验创建并发视图 创建 配置视图 验证质量场景 验证约束 下图是一个电力系统变电综合管理信息系统的体系结构示意图 请指出该实例的 下图是一个电力系统变电综合管理信息系统的体系结构示意图 请指出该实例的 体系结构采用了那种异构结构模型 分析该实例为什么采用这种模型 体系结构采用了那种异构结构模型 分析该实例为什么采用这种模型 内外有别型 变电站内部用户通过局域网直接访问数据库服务器 外部用户 包括县调 地调和 省局的用户及普通 Internet 用户 通过 Internet 访问 Web 服务器 再通过 Web 服 务器访问数据库服务器 外部用户只需要一台接入 Internet 的计算机 就可以通过 Internet 查询运行生成管理情况 无需做太大的投入和复杂的设置 这样也方便所 属电业局及时了解各变电站所的运行生产情况 对各变电站的运行生产进行宏观调 控 使得系统有较好的开放性和易扩展性 CORBA 的技术规范包括哪几部分内容 的技术规范包括哪几部分内容 接口定义语言 接口池 动态调用接口 对象适配器 import Java io import java util public class TestP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论