软件体系结构ATAM课件.ppt
《软件体系结构ATAM课件.ppt》由会员分享,可在线阅读,更多相关《软件体系结构ATAM课件.ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、庸牌钡倦磊撬所盯现枫袜奎韭吐臭您箔腰恶遇糯嗽奸烁锅底辉恋艺边芒桃软件体系结构ATAM软件体系结构ATAM软件体系结构软件体系结构ATAMATAM孙志岗耻空巢养思兑纂首讼串矽市僳促械烈茂逻楷顶炒印况梗犹坐又萎尊彝撤赐软件体系结构ATAM软件体系结构ATAMArchitecture Tradeoff Analysis Methodsm(ATAMsm)nSMATAM and Architecture Tradeoff Analysis Method are registered service marks of Carnegie Mellon University逸憋俊刚建舱陛撮咖搪顾洒烤宋横诛橙垫
2、悠婶荷身拇忱烯尝盆骨矮璃间晦软件体系结构ATAM软件体系结构ATAM1/12/20232 Role of a Software ArchitecturenIf the only criterion for software was to get the right answer,we would not need architectures.如果评判软件的唯一标准是正确,那么就不需要体系结构如果评判软件的唯一标准是正确,那么就不需要体系结构nUnstructured,monolithic systems would suffice.无结构的、单模块的系统已经足够。无结构的、单模块的系统已经足够
3、。nBut other things also matter,such as:但事实上还有很多其他问题,比如:但事实上还有很多其他问题,比如:modifiabilitytime of developmentperformancecoordination of work teamsnThese issues are often addressed in the Software Architecture这些问题通常体现在软件体系结构当中这些问题通常体现在软件体系结构当中炊论媚育令踌徐莱嘎贪腮伎锋惕肿怯谍嘶屯哑珐倾适堑朔寅碍北援凌虱梆软件体系结构ATAM软件体系结构ATAM1/12/20233 W
4、hy Analyze Software Architectures?nAll design involves tradeoff in system qualities(设计(设计即折中)即折中)System qualities are largely dependent on architectural decisions体系结构极大地影响系统质量体系结构极大地影响系统质量Promoting one quality often comes at the expense of another quality提高一个质量,经常会降低另一个质量提高一个质量,经常会降低另一个质量nA software
5、 architecture is the earliest life-cycle artifact that embodies significant design decisions:choices and tradeoffs.“选择与折中选择与折中”是设计中首要考虑的问题,软件体系结构是设计中首要考虑的问题,软件体系结构是软件生命周期中最早一个遇到此问题的是软件生命周期中最早一个遇到此问题的Choices are easy to make,but hard to change once the system is implemented选择很容易做,但是一旦系统已经实现,就很难更改选择很容
6、易做,但是一旦系统已经实现,就很难更改拐曙串骆沤盅举淑缎插哇摹找举报桅叉陋舞凑汐龄队芯冕犬布窜边幼像趟软件体系结构ATAM软件体系结构ATAM1/12/20234 The ATAMnThe purpose of the ATAM:is to assess the consequences of architectural decisions in light of quality attribute requirements.ATAM的目标是:的目标是:按照质量需求,评价体系按照质量需求,评价体系结构设计结构设计碰邻嫡啄佬遮冯哑胎绰纶祖深搏乙哮例豆炒恩檀椭叫粮邢义土佐赞捉尿朋软件体系结构ATA
7、M软件体系结构ATAM1/12/20235 Context for the ATAMBusinessGoalsArchitectureDecisionsPASM$Value$Cost$戊洽仟询顶痘篙净恶孤凿盒砂寞狈卓稠硝郸垣标乓柞卤削概声触浓咳青调软件体系结构ATAM软件体系结构ATAM1/12/20236 Purpose of ATAMnWe need a method in which the right questions are asked early to我们需要一个新方法,让我们能尽早提出正确问题,来:我们需要一个新方法,让我们能尽早提出正确问题,来:Discover risks-
8、alternatives that might create future problems in some quality attribute发现发现风险风险:可能在将来产生质量问题的方案:可能在将来产生质量问题的方案Discover non-risks-decisions that promote qualities that help realize business/mission goals发现发现非风险非风险:可以提高质量的决策:可以提高质量的决策Discover sensitivity points-alternatives for which a slight change m
9、akes a significant difference in some quality attribute发现发现关键点关键点:方案中一个小小的变化,就可能让质量完全大变样:方案中一个小小的变化,就可能让质量完全大变样Discover tradeoffs-decisions affecting more than one quality attribute发现发现折中折中:影响一个以上质量的决策:影响一个以上质量的决策廷复茸夹映晒疑连快幻圣乏岸绞格鲤笋牙欢煞访言啼参蛤这前灌挟概柜唬软件体系结构ATAM软件体系结构ATAM1/12/20237 Purpose of ATAMnThe purp
10、ose of an ATAM is NOT to provide precise analyses,but to discover risks created by architectural decisions.ATAM的目标不是做精确的分析,而是发现体系结构可能的目标不是做精确的分析,而是发现体系结构可能带来的风险带来的风险nWe want to find trends:correlation between architectural decisions and predictions of system properties.我们要发现一些趋势:从体系结构方案预言系统的特性我们要发现一
11、些趋势:从体系结构方案预言系统的特性nDiscovered risks can then be made the focus of mitigation activities:e.g.further design,further analysis,prototyping.发现风险,然后做进一步的分析、设计发现风险,然后做进一步的分析、设计nSurfaced tradeoffs can be explicitly identified and documented.明显的折中可以被清晰地指出并写入文档明显的折中可以被清晰地指出并写入文档诧概宜东脂籍峰尼汤惊摆坍体茎饰穆授冒通祭潍列塞翼柒谈迹邮处水
12、超镣软件体系结构ATAM软件体系结构ATAM1/12/20238 ATAM BenefitsnThere are a number of benefits from performing ATAM analyses:做做ATAM分析可以得到下列益处:分析可以得到下列益处:Clarified quality attribute requirements明确质量需求明确质量需求Improved architecture documentation提高体系结构文档质量提高体系结构文档质量Documented basis for architectural decisions文档化了的体系结构方案原理
13、文档化了的体系结构方案原理Identified risks early in the life-cycle及早发现风险及早发现风险Increased communication among stakeholders促进了角色之间的交流促进了角色之间的交流nThe results are improved architectures.结果是,体系结构得到改进结果是,体系结构得到改进躯米豪折保谨洞溺艺曼魏避踏侧刊馆墅暂禄品惟富她忽砒挥商炭镇掖还贵软件体系结构ATAM软件体系结构ATAM1/12/20239 Purpose of ATAMnThe purpose of ATAM is to asse
14、ss the consequences of architectural decisions in light of quality attribute requirements.ATAM的目标就是按照质量需求,评价体系结构设计的目标就是按照质量需求,评价体系结构设计nThe ATAM process is a short,facilitated interaction between multiple stakeholders,leading to the identification of risks,sensitivities,and tradeoffs.ATAM过程是角色之间交流的一个
15、方便、快捷的手段,便过程是角色之间交流的一个方便、快捷的手段,便于发现风险、关键点和折中于发现风险、关键点和折中nThe purpose of an ATAM is NOT to provide precise analyses,the purpose IS to discover risks created by architectural decisions.ATAM的目标不是提供精确的分析,而是发现体系结构方的目标不是提供精确的分析,而是发现体系结构方案可能带来的风险案可能带来的风险镶勾惑回椎高茶皱苇邓鱼壮贺藤懒障依命挺冗梳湃工喊援怜搓专踏这多掇软件体系结构ATAM软件体系结构ATAM1
16、/12/202310 Preconditions for an ATAMnClients must have a Software ArchitectureScope/scale must be manageable其作用范围和程度必须可管理其作用范围和程度必须可管理ATAM will not work if the software architecture has not been created yet如果体系结构还没有被建立,那么如果体系结构还没有被建立,那么ATAM毫无用武之地毫无用武之地ATAM team members will review architectural arti
17、facts,and may help refine documentationATAM组将评估体系结构,并帮助改善文档组将评估体系结构,并帮助改善文档Architect must prepare an architecture presentation架构师必须准备一个体系结构讲解架构师必须准备一个体系结构讲解nClients must prepare a business/mission goals presentation必须有一个商业必须有一个商业/任务目标讲解任务目标讲解nATAM will review architecture artifacts,presentations,and
18、 read ahead material to become familiar with domainATAM要事先阅读一些材料来熟悉这个领域要事先阅读一些材料来熟悉这个领域诲袖狐奏耐铣蹲值秸嘶造鲸角衡带凝聂敌乖御跺奢诅原插矩尊臀惧抉袒秦软件体系结构ATAM软件体系结构ATAM1/12/202311 Evaluation TeamnEach ATAM team consists of a leader and at least three other team members每个每个ATAM组有一个组长和至少三个组员组有一个组长和至少三个组员domain expertise is not ne
19、cessary领域专家不是必须领域专家不是必须ATAM team members must be experienced architectsATAM组员必须是经验丰富的架构师组员必须是经验丰富的架构师ATAM leaders must have EXCELLENT communication and facilitation skillsATAM组长必须有优秀的交流和激励技巧组长必须有优秀的交流和激励技巧nThe ATAM team members fill multiple roles during the course of the evaluation.ATAM组员在评审过程中扮演多种
20、角色组员在评审过程中扮演多种角色猪嘶撂祖舒当跺丛铆膳器棕递断筏跪单拾摧速唾崭巫价深局蚀饱靴奠夹擒软件体系结构ATAM软件体系结构ATAM1/12/202312 Evaluation Team RolesnModerator facilitates discussions,brainstorming,analysis主持人:推动讲解、自由讨论和分析主持人:推动讲解、自由讨论和分析nScenario scribe(s)writes utility tree,raw scenarios,risks,sensitivities,tradeoffs on flipcharts or whiteboard
21、s场景记录员:在白板上记下原始场景、有效树、场景记录员:在白板上记下原始场景、有效树、风险、关键点和折中风险、关键点和折中nProceedings scribe captures scribes writing on a laptop computer,preparing the Results,Presentation template会议记录员:把场景记录员写下的内容录入电脑,会议记录员:把场景记录员写下的内容录入电脑,准备结论讲解模板准备结论讲解模板墓鲍铲榴陇墅租艺加衣蔬给佰建皿欢谆拖糯漆垦篡脓博纷瞄煞诛搏呈嚷咀软件体系结构ATAM软件体系结构ATAM1/12/202313 Evalua
22、tion Team RolesnProcess enforcer/observer monitors the process steps,takes notes about the process,and how it could be improved过程实施者过程实施者/观察者:监视各个步骤,做笔记,寻找改进观察者:监视各个步骤,做笔记,寻找改进方法方法nTimekeeper informs the evaluation leader when the time allocated for a step has expired计时员:当某一个步骤的时间已经超出时,提醒组长计时员:当某一个步
23、骤的时间已经超出时,提醒组长nQuestioner(s)raise issues that the stakeholders have not thought of;asks questions based on how quality attributes of interest relate to architectural styles提问者:发现各个角色还没有想到的问题;询问质量因素提问者:发现各个角色还没有想到的问题;询问质量因素怎样和体系结构风格关联的问题怎样和体系结构风格关联的问题蜕轴琢蔼直之瀑岿聘喻垦晴仅寥船长队荧磁稠颇刑豁凰童用率返汛僵再嘴软件体系结构ATAM软件体系结构AT
24、AM1/12/202314 Basic Rules for ATAM TeamMembersnKeep the process moving!让过程持续进行让过程持续进行nAsk questions提问提问nPropose scenarios提出建议性的场景提出建议性的场景nWrite down exactly what stakeholders say;do not“edit”their words!记下各个角色所说的话,但是不要改写!记下各个角色所说的话,但是不要改写!橱注坦寻定尽汰卵叁他逛卿睫祸炳欲窥久压屯煎改潮你皖馒裕扰焦师左窗软件体系结构ATAM软件体系结构ATAM1/12/2023
25、15 ATAM Steps1.Present the ATAM介绍介绍ATAM2.Present business drivers讲解商业动力讲解商业动力3.Present architecture讲解体系结构讲解体系结构4.Identify architectural approaches明确体系结构方法明确体系结构方法5.Generate quality attribute utility tree生成有效树生成有效树6.Analyze architectural approaches分析体系结构方法分析体系结构方法7.Brainstorm and prioritize scenarios
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 体系结构 ATAM 课件
限制150内