第七讲面向服务的体系结构

上传人:飞*** 文档编号:50745258 上传时间:2018-08-10 格式:PPT 页数:35 大小:345KB
返回 下载 相关 举报
第七讲面向服务的体系结构_第1页
第1页 / 共35页
第七讲面向服务的体系结构_第2页
第2页 / 共35页
第七讲面向服务的体系结构_第3页
第3页 / 共35页
第七讲面向服务的体系结构_第4页
第4页 / 共35页
第七讲面向服务的体系结构_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第七讲面向服务的体系结构》由会员分享,可在线阅读,更多相关《第七讲面向服务的体系结构(35页珍藏版)》请在金锄头文库上搜索。

1、第十讲 软件体系结构的分析和评估刘玮*大纲软件体系结构的角色体系结构评价的主要方式SAAM评估方法ATAM评估方法简介软件体系结构的角色如果评判软件的唯一标准是正确,那么就不需要 体系结构,无结构的、单模块的系统已经足够。事实上还有很多其他问题,比如:开发时间可移植性性能工作组的协同这些问题通常体现在软件体系结构当中 (1)开发时间 划分为多个模块之后,软件开发可以有效 地并行实现工作组的协同 模块之间的关系这些问题通常体现在软件体系结构当中 (2)可移植性如B/S的可移植性比C/S强特征BSCS 硬件环境不同 广域网 局域网 结构 三层 两层或三层处理模式 网络协议软件、浏览器 客户端软件构

2、件重用 构件相对独立、重用性高整体、重用性低系统维护 系统的无缝升级 整体考察并处理 安全的要求 Intemet的开放性协议( TCPIP )局域网 、固定的用户群= 高度机密的信息系统 速度慢快、处理大量数据 交互性有限强这些问题通常体现在软件体系结构当中 (3)性能如“4+1”视图 中的处理视图,描 述了如何通过系统 功能实现系统性能 的要求为什么分析软件体系结构设计即折中体系结构极大地影响系统质量提高一个质量,经常会降低另一个质量(如安全性和响应时间)“选择与折中”是设计中首要考虑的问题,软件体系结构是软件生命周期中最早一个遇到此问题的大纲软件体系结构的角色体系结构评价的主要方式SAAM

3、评估方法ATAM评估方法简介质量属性每个属性都不是绝对量;它们的相关性直接与给定的情形联系在一起。例如,如果某个客户不太关心可移植性(也许所有系统都在运行相同的操 作系统),而是非常关心性能,则性能将优先于可移植性。这允许按照对客 户有重要意义的方面来组织任务。 功能性(functionality) 可用性(usability) 可靠性(reliability) 性能(performance) 容量(capacity) 可测量性(scalability) 可维护性(manageability) 兼容性(compatibility) 可扩展性(extensibility)体系结构评价的主要方式基

4、于度量的评价方式基于场景的评价方式 SAAM ATAM基于度量的评价方式三个基本活动建立质量属性和度量之间的映射原则从体系结构文档中获取度量信息根据映射原则推出质量属性度量技术的主要问题度量工具少已有度量工具对度量扩展支持不足=质量属性度量基于场景的评价方式场景:是一系列有序的、使用或修改系统的步骤基本活动1.确定应用领域的功能和体系结构结构之间的映射2.设计体现待评估质量属性的场景3.分析体系结构对场景的支持程度常用的方式SAAM:单个质量属性之间不相干ATAM:考虑各种质量属性之间的联系和冲突大纲软件体系结构的角色体系结构评价的主要方式SAAM评估方法ATAM评估方法简介SAAM简介sce

5、nario-based architecture analysis method 1993年SEI(卡耐基梅隆大学软件工程研究 所)最早形成文档并得到广泛使用的体系结构 的分析方法之一 SAAM评估步骤体系结构的描述场景的形成场景的分类和优先级的确定对间接场景的单个评估场景相互作用评估形成总体评估1.体系结构的描述体现系统的运算构件、数据构件以及构件之间的 关系运算构件:最底层的构件,又叫原子构件,用于 完成特定的业务计算和程序集成的相关构件称为运算 构件数据构件:用于完成数据模型定义,管理和数据操作的相关构件称为数据构件 采用参评各方都能理解的描述方法视图法结构化语言法等SAAM评估实例-体

6、系结构的描述KWIC系统(查询和重组关键词系统)基本功能:输入一些句子,KWIC系统把这些句 子中的词语重新组合成新的句子,按字母顺序输 出输入: predicting software quality architecture level evaluation 输出: architecture level evaluation evaluation architecture level level evaluation architecture predicting software quality quality predicting software software quality p

7、redictingSAAM评估实例描述体系结构(1)共享内存的解决方案读入句子,存储句子,循环转换句子,按字母顺序排列句子,输出句子SAAM评估实例描述体系结构(2)抽象数据类型解决方案2.场景的形成和分类任务场景表明系统支持的活动类型客户希望对系统做出的更改分类直接场景:开发的系统已能满足的场景间接场景:对现有的体系结构的构件和连接件适 当变化才能满足的场景SAAM评估实例-定义角色和场景角色:用户和开发人员场景:修改KWIC程序,使之成为一个增量式而不是批处 理式的系统修改KWIC程序,使之能够删除在句子前端的噪音 单词(如代名词,连词等)改变句子内部表示(如,压缩和解压缩)改变中间数据结

8、构的内部表示(如,直接存储置 换后的句子或存储置换后词语的地址)3.对间接场景的单个评估和场景的相互作用(1)列出为支持场景而需要对体系结构所做的改动,形成文档。场景编号场景描述直接/间接需要做的更 改更改/新增的 构件数 3改变句子内 部表示间接除Master Control外 都受影响33.对间接场景的单个评估和场景的相互作用(2)当两个或多个间接场景要求更改同一个构件时, 这些场景相互作用。场景1场景2构件更改更改相互作用3.对间接场景的单个评估和场景的相互作用(3)场景交互较多的部分是功能分离不够好的 部分,重审体系结构的描述工作。场景1场景2SAAM评估实例-评估体系结构场景1:修改

9、为为一个增量式系统 两种体系结构受影响均等场景2:能够删除在句子前端的噪音单词 两种体系结构受影响均等场景3:改变句子内部表示 1除Master Control外都受影响,2中由Sentences提供 缓冲,因此2比1好场景4:改变中间数据结构的内部表示 1需要修改Circular shift, Alphabetizer和Output,2需 要修改Shifted Sentences和Alphabetized Sentences,因此 2比1好SAAM评估实例评估结果场景1场景2场景3 场景4比较共享内存00-抽象数据00+大纲软件体系结构的角色体系结构评价的主要方式SAAM评估方法ATAM评估

10、方法简介什么是ATAMarchitecture trade-off analysis method ,1998 它提供一个在多个质量属性(易修改性,安全,性 能等)之间互相影响的情况下分析理解软件体系 结构的原则化方法认为识别出多个质量属性之间的折中权衡在软件 体系结构的设计中非常重要 ATAM的目标是:按照质量需求,评价体系结构 设计ATAM的目标我们需要一个新方法,让我们能尽早提出正确问题,来:发现风险:可能在将来产生质量问题的方案发现非风险:可以提高质量的决策发现关键点:方案中一个小小的变化,就可能让质量完全大变样发现折中:影响一个以上质量的决策ATAM 优点做ATAM分析可以得到下列益

11、处:明确质量需求提高体系结构文档质量文档化了的体系结构方案原理及早发现风险促进了角色之间的交流结果是,体系结构得到改进ATAM的前提条件客户必须有一个体系结构文档其作用范围和程度必须可管理如果体系结构还没有被建立,那么ATAM 毫无用武之地ATAM组将评估体系结构,并帮助改善文 档架构师必须准备一个体系结构讲解ATAM要事先阅读一些材料来熟悉这个领域评估小组每个ATAM组有一个组长和至少三个组员领域专家不是必须ATAM组员必须是经验丰富的架构师ATAM组长必须有优秀的交流和激励技巧ATAM组员在评审过程中扮演多种角色评估小组的角色主持人:推动讲解、自由讨论和分析场景记录员:在白板上记下原始场景

12、、有效树、风险、关 键点和折中会议记录员:把场景记录员写下的内容录入电脑,准备结 论讲解模板过程实施者/观察者:监视各个步骤,做笔记,寻找改进 方法计时员:当某一个步骤的时间已经超出时,提醒组长提问者:发现各个角色还没有想到的问题;询问质量因素 怎样和体系结构风格关联的问题ATAM 阶段ATAM通常被分为两个阶段在阶段1,架构师描述质量目标,和体系结构如何达到目标在阶段2,确认是否各个角色都同意这些目标和结果何时使用ATAM.学术上说,应该在体系结构确定之后使用ATAM ,此时没有或者仅有少量的代码在实践中,ATAM在以下情况下表现得非常有效评审候选的体系结构在升级之前,评审已有的系统无法决定是升级还是替换时

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号