第5章 SA评估.pdf

上传人:qwe****56 文档编号:74652028 上传时间:2023-02-27 格式:PDF 页数:8 大小:5.32MB
返回 下载 相关 举报
第5章 SA评估.pdf_第1页
第1页 / 共8页
第5章 SA评估.pdf_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《第5章 SA评估.pdf》由会员分享,可在线阅读,更多相关《第5章 SA评估.pdf(8页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第5章章 SA评估评估ATAM:一种进行架构评估的综合方法:一种进行架构评估的综合方法ATAM(Architecture Tradeoff Analysis Method):):一种评估一种评估SA的综合全面的的方法的综合全面的的方法可以揭示出可以揭示出SA满足质量属性的情况,更清楚地认识到质量目标之间的联系满足质量属性的情况,更清楚地认识到质量目标之间的联系ATAM的参与人员(的参与人员(3个小组)个小组)评估小组评估小组SA项目的项目的外部外部人员组成,人员组成,3-5人人(每人扮演多个角色每人扮演多个角色)可能是常设小组,也可能是临时咨询人员可能是常设小组,也可能是临时咨询人员有能力、

2、没有偏见、私下没有其他工作要做有能力、没有偏见、私下没有其他工作要做项目决策者项目决策者对项目开发具有发言权,并有权要求进行改变对项目开发具有发言权,并有权要求进行改变项目管理人员、承担开发费用的客户、架构师、委托进行评估的人项目管理人员、承担开发费用的客户、架构师、委托进行评估的人构架涉众构架涉众开发人员、测试人员、集成人员、维护人员、性能工程师开发人员、测试人员、集成人员、维护人员、性能工程师、用户、系统构建人员、其他人员。(、用户、系统构建人员、其他人员。(12-15人)人)ATAM评估小组的角色评估小组的角色角色职责理想的素质角色职责理想的素质评估小组负责人准备评估;与评估客户协调;保

3、证满足评估客户的需求;签署评估合同;组建评估小组;负责检查最终报告的生成和提交(可授权由他人代笔)善于协调、安排、有管理技巧;善于同客户交流;能按时完成任务评估负责人负责评估工作;促进场景得出;管理场景选择及设置优先级;为现场分析提供帮助表现自如;能指点迷津;对构架问题理解深刻;具有实践经验;能从冗长的讨论中得出有价值的发现,能判断何时讨论已无价值,应进行调整场景书记员将场景写到活动挂图上或白板上;用已达成一致的措辞来描述每个场景,如果还没有想出合适措辞,先终止讨论,直到想出来为止书法好;能够在未搞清楚某问题之前坚持要求继续进行讨论;能快速理解所讨论的技术问题,并提出要点评估小组负责人准备评估

4、;与评估客户协调;保证满足评估客户的需求;签署评估合同;组建评估小组;负责检查最终报告的生成和提交(可授权由他人代笔)善于协调、安排、有管理技巧;善于同客户交流;能按时完成任务评估负责人负责评估工作;促进场景得出;管理场景选择及设置优先级;为现场分析提供帮助表现自如;能指点迷津;对构架问题理解深刻;具有实践经验;能从冗长的讨论中得出有价值的发现,能判断何时讨论已无价值,应进行调整场景书记员将场景写到活动挂图上或白板上;用已达成一致的措辞来描述每个场景,如果还没有想出合适措辞,先终止讨论,直到想出来为止书法好;能够在未搞清楚某问题之前坚持要求继续进行讨论;能快速理解所讨论的技术问题,并提出要点A

5、TAM评估小组的角色(续评估小组的角色(续1)角色职责理想的素质角色职责理想的素质进展书记员以电子形式记录评估进展;捕获原始场景;捕获促成每个场景的问题(这种信息在对场景的描述中往往找不到);对应的进展书记员以电子形式记录评估进展;捕获原始场景;捕获促成每个场景的问题(这种信息在对场景的描述中往往找不到);对应的SA解决方案;打印分发所有场景列表打字快质量高;工作条理好,能快速查找信息;对解决方案;打印分发所有场景列表打字快质量高;工作条理好,能快速查找信息;对SA问题理解深;能融会贯通地快速理解技术问题;勇于打断正在进行的讨论以验证对某个问题的理解,从而保证所捕获信息的准确性;计时员帮助评估

6、负责人保证评估工作按时进行;在评估阶段帮助控制用在每个场景上的时间勇于不顾情面地中断讨论,宣布时间到问题理解深;能融会贯通地快速理解技术问题;勇于打断正在进行的讨论以验证对某个问题的理解,从而保证所捕获信息的准确性;计时员帮助评估负责人保证评估工作按时进行;在评估阶段帮助控制用在每个场景上的时间勇于不顾情面地中断讨论,宣布时间到ATAM评估小组的角色(续评估小组的角色(续2)角色职责理想的素质角色职责理想的素质过程观察员记录如何可以改进评估过程或评估如何偏离了原计划;通常不发表意见,但可以提出经过谨慎考虑的基于过程的建议;评估完成后,负责汇报评估过程,应吸取哪些教训,以便在未来加以改进;善于观

7、察和发现问题;熟悉评估过程;曾参加过采用该评估方法进行的评估过程监督者帮助评估负责人记住并执行评估方法的各个步骤对评估方法的各个步骤非常熟悉;愿意并能够给评估负责人提供经过慎重考虑的指导提问者提出涉众或许未曾想到的关于过程观察员记录如何可以改进评估过程或评估如何偏离了原计划;通常不发表意见,但可以提出经过谨慎考虑的基于过程的建议;评估完成后,负责汇报评估过程,应吸取哪些教训,以便在未来加以改进;善于观察和发现问题;熟悉评估过程;曾参加过采用该评估方法进行的评估过程监督者帮助评估负责人记住并执行评估方法的各个步骤对评估方法的各个步骤非常熟悉;愿意并能够给评估负责人提供经过慎重考虑的指导提问者提出

8、涉众或许未曾想到的关于SA的的问题问题对对SA有出色见解;对涉众的需要有出色见解;对涉众的需要具有敏锐的洞察力;了解同类系统;勇于提出可能有争议的问题,并能不懈地寻求其答案;熟悉相关的质量属性。具有敏锐的洞察力;了解同类系统;勇于提出可能有争议的问题,并能不懈地寻求其答案;熟悉相关的质量属性。ATAM的结果的结果一个简洁的一个简洁的SA描述描述ATAM要求在一个小时内表述要求在一个小时内表述SA,一个简洁描述,一个简洁描述表述清楚的业务目标表述清楚的业务目标一些开发人员,往往在一些开发人员,往往在ATAM中第一次见到清楚表述的业务目标中第一次见到清楚表述的业务目标通过场景集合捕获的质量需求通过

9、场景集合捕获的质量需求架构决策到质量需求的映射架构决策到质量需求的映射所确定的敏感点和权衡点集合所确定的敏感点和权衡点集合例如采用一个备份数据库很明显是一个构架决策,因为它影响可靠性,是一个可靠性敏感点。但会降低性能。因此是一个权衡点。例如采用一个备份数据库很明显是一个构架决策,因为它影响可靠性,是一个可靠性敏感点。但会降低性能。因此是一个权衡点。判断哪些是有风险决策和无风险决策判断哪些是有风险决策和无风险决策风险主题的集合风险主题的集合ATAM的结果的结果评估结果用于建立一个最终书面报告。评估结果用于建立一个最终书面报告。概述概述ATAM方法;总结评估会议记录;捕获场景及其分析;对得到的结果

10、进行分类方法;总结评估会议记录;捕获场景及其分析;对得到的结果进行分类评估会产生一些附带结果评估会产生一些附带结果简洁的简洁的SA表述可能比已存在的任何表述都清晰表述可能比已存在的任何表述都清晰创建的场景是业务目标和创建的场景是业务目标和SA需求的表示,可以用来指导架构的演变需求的表示,可以用来指导架构的演变报告中的分析内容可以作为对指定某些报告中的分析内容可以作为对指定某些SA决策的基本原理的阐述。决策的基本原理的阐述。无形结果无形结果涉众产生社群感;为设计师和涉众之间提供公开交流渠道;使所有参与人员更好地理解涉众产生社群感;为设计师和涉众之间提供公开交流渠道;使所有参与人员更好地理解SA及

11、其优劣点及其优劣点ATAM的阶段的阶段0阶段(关系和准备)阶段(关系和准备)评估小组负责人和主要的项目决策者进行非正式的会晤,确定评估的细节评估小组负责人和主要的项目决策者进行非正式的会晤,确定评估的细节项目代表向评估人员简介项目,项目代表向评估人员简介项目,两个小组就后勤问题达成一致,会议时间地点,由谁负责挂图,由谁负责提供饮食和咖啡两个小组就后勤问题达成一致,会议时间地点,由谁负责挂图,由谁负责提供饮食和咖啡就参与评估的涉众列表协商一致,还应就何时、向何人提交最终评估报告进行协商就参与评估的涉众列表协商一致,还应就何时、向何人提交最终评估报告进行协商形式问题:工作说明和保密协议形式问题:工

12、作说明和保密协议评估小组负责人解释希望管理人员和设计师在第一阶段提供什么信息。如果有必要的话,帮助构造其演示评估小组负责人解释希望管理人员和设计师在第一阶段提供什么信息。如果有必要的话,帮助构造其演示ATAM的阶段的阶段第第1和第和第2阶段(评估)阶段(评估)每个人都应认真考虑分析工作每个人都应认真考虑分析工作评估小组开始研究评估小组开始研究SA文档,并对系统、所采用的总体架构方法以及非常重要的质量属性有一个很好的理解文档,并对系统、所采用的总体架构方法以及非常重要的质量属性有一个很好的理解评估小组和项目决策者进行了会晤(评估小组和项目决策者进行了会晤(1天时间)天时间)第第2阶段,涉众加入到

13、评估中,分析继续进行,一般用阶段,涉众加入到评估中,分析继续进行,一般用2天时间,天时间,ATAM的阶段的阶段第第3阶段(后续阶段)阶段(后续阶段)评估小组需要生成一个最终的书面报告评估小组需要生成一个最终的书面报告本质是评估小组的自我检查和改进本质是评估小组的自我检查和改进讨论哪些活动比较理想,哪些不尽如人意讨论哪些活动比较理想,哪些不尽如人意对第对第1,2 阶段发给参与人员的调查表进行分析和,过程观察员阐述自己的观点。阶段发给参与人员的调查表进行分析和,过程观察员阐述自己的观点。小组成员在如何完成其职责上寻求改进,下次能更好的完成任务,小组成员在如何完成其职责上寻求改进,下次能更好的完成任

14、务,评估小组将评估小组将3个小组的工作编成目录个小组的工作编成目录数月后,小组负责人与评估客户联系,以评定此次评估数月后,小组负责人与评估客户联系,以评定此次评估的长期效果,对成本和收益进行分析的长期效果,对成本和收益进行分析ATAM的阶段的阶段阶段活动参与人员一般需要的时间阶段活动参与人员一般需要的时间0关系和准备评估小组负责人和主要的项目决策者根据需要进行,大概几周关系和准备评估小组负责人和主要的项目决策者根据需要进行,大概几周1评估评估小组和项目决策者评估评估小组和项目决策者1周,中间可能有周,中间可能有2-3周的中断时间周的中断时间2评估(继续)评估小组,项目决策者以及评估(继续)评估

15、小组,项目决策者以及涉众涉众2天天3后续工作评估小组和评估客户后续工作评估小组和评估客户1周周评估阶段的步骤:一个九个评估阶段的步骤:一个九个第第1步:步:ATAM方法的表述方法的表述向参加会议的代表介绍向参加会议的代表介绍ATAM第第2步:商业动机的表述:由项目决策者或系统的客户从商业角度介绍系统的概况步:商业动机的表述:由项目决策者或系统的客户从商业角度介绍系统的概况系统最重要的功能系统最重要的功能任何相关的技术、管理、经济和政治限制任何相关的技术、管理、经济和政治限制与该项目相关的商业目标和上下文与该项目相关的商业目标和上下文主要的涉众主要的涉众架构的驱动因素(主要质量属性)架构的驱动因

16、素(主要质量属性)评估阶段的步骤:一个九个评估阶段的步骤:一个九个第第3步:步:SA的表述的表述由首席架构师或构架小组进行由首席架构师或构架小组进行包括以下内容:操作系统、硬件、中间件、必须与本系统交互的其他系统、描述用来满足需求的构架方法包括以下内容:操作系统、硬件、中间件、必须与本系统交互的其他系统、描述用来满足需求的构架方法传达本质内容,忽略不太重要的方面,不要过分详细地讲述某几个方面(最好将评估小组需要的信息告知架构师)传达本质内容,忽略不太重要的方面,不要过分详细地讲述某几个方面(最好将评估小组需要的信息告知架构师)一个架构表述的模板一个架构表述的模板需求、与需求相关的可度量的量、满

17、足这些需求的任何现有标准模型方法(张幻灯片)需求、与需求相关的可度量的量、满足这些需求的任何现有标准模型方法(张幻灯片)重要的信息(张幻灯片)重要的信息(张幻灯片)上下文图上下文图系统所处环境系统所处环境模块或分层视图模块或分层视图描述系统功能分解的模块、以及作为具体内容并体现其相互关系的对象、过程和函数描述系统功能分解的模块、以及作为具体内容并体现其相互关系的对象、过程和函数组件连接器视图组件连接器视图进程、线程及其同步关系、数据流,及将其连接起来的事件进程、线程及其同步关系、数据流,及将其连接起来的事件部署视图部署视图CPU、存储器、外设传感器以及连接它们的网路和通信设备;显示在各个处理器

18、上执行的进程、存储器、外设传感器以及连接它们的网路和通信设备;显示在各个处理器上执行的进程构架方法、模式、所采用战术,包括它们实现了什么质量属性、以及这些方法如何实现这些质量属性的描述(张幻灯片)构架方法、模式、所采用战术,包括它们实现了什么质量属性、以及这些方法如何实现这些质量属性的描述(张幻灯片)商业产品使用及其选择集成(张幻灯片)商业产品使用及其选择集成(张幻灯片)对个最重要的用例场景的介绍(幻灯片)对个最重要的用例场景的介绍(幻灯片)对个最重要的变更场景的介绍。对个最重要的变更场景的介绍。与需求相关的构架问题风险(张幻灯片)与需求相关的构架问题风险(张幻灯片)术语表(张幻灯片)术语表(

19、张幻灯片)评估阶段的步骤:一个九个评估阶段的步骤:一个九个第步:对构架方法进行分类(重要的模式风格)第步:对构架方法进行分类(重要的模式风格)第步:生成质量属性效用树第步:生成质量属性效用树使质量属性需求具体化使质量属性需求具体化效用是树的根结点;质量属性是树的级结点效用是树的根结点;质量属性是树的级结点对每个质量属性再进一步求精(例如性能被分解为数据延迟和交易吞吐量;数据延迟又被分解为:数据库存储延迟减小到对每个质量属性再进一步求精(例如性能被分解为数据延迟和交易吞吐量;数据延迟又被分解为:数据库存储延迟减小到ms,提供帧秒的视频图像,等)提供帧秒的视频图像,等)效用树的叶子就是所期望质量属

20、性的具体场景(我们在上一章介绍了场景:刺激环境和响应)效用树的叶子就是所期望质量属性的具体场景(我们在上一章介绍了场景:刺激环境和响应)一些场景可能会表达多个质量属性,因此会出现在效用树的多个地方。一些场景可能会表达多个质量属性,因此会出现在效用树的多个地方。树的叶点可能包含几十个场景,不可能对所有场景进行评估。因此要给每个场景分配一个优先级。从中选出一些。把宝贵的时间放在最难实现的场景上。树的叶点可能包含几十个场景,不可能对所有场景进行评估。因此要给每个场景分配一个优先级。从中选出一些。把宝贵的时间放在最难实现的场景上。评估阶段的步骤:一个九个评估阶段的步骤:一个九个第步:分析所采用的构架方

21、法第步:分析所采用的构架方法每次选最高优先级的场景分析每次选最高优先级的场景分析要求架构师解释如何支持每个场景。要求架构师解释如何支持每个场景。评估小组把相关的架构决策编成文档,确定有风险决策、无风险决策、敏感点、权衡点,并对其进行分类。评估小组把相关的架构决策编成文档,确定有风险决策、无风险决策、敏感点、权衡点,并对其进行分类。对于众所周知的方法,询问架构师如何克服已知缺点,如何确保该方法能够满足要求。对于众所周知的方法,询问架构师如何克服已知缺点,如何确保该方法能够满足要求。针对某个质量属性的构架决策称为针对某个质量属性的构架决策称为敏感点敏感点,当发现构架,当发现构架决策属于多个质量属性

22、的敏感点时,指定其为决策属于多个质量属性的敏感点时,指定其为权衡点权衡点评估阶段的步骤:一个九个评估阶段的步骤:一个九个评价阶段,一共两个部分,评价阶段,一共两个部分,前六步是评价阶段的第一个部分。参与人员主要是评估小组和项目决策者前六步是评价阶段的第一个部分。参与人员主要是评估小组和项目决策者第二个部分,项目的所有涉众都到场,继续评估。包括后三步第二个部分,项目的所有涉众都到场,继续评估。包括后三步第第7步:集体讨论并确定场景的优先级步:集体讨论并确定场景的优先级群策群力,发挥创造性群策群力,发挥创造性鼓励涉众考虑效用树中未分析过的场景鼓励涉众考虑效用树中未分析过的场景公开投票决定选取哪些场

23、景进行讨论公开投票决定选取哪些场景进行讨论评估阶段的步骤:一共九个评估阶段的步骤:一共九个第八步:分析所采用的架构方法第八步:分析所采用的架构方法第九步:结果的表述:把第九步:结果的表述:把ATAM分析中得到的各种信息进行归纳总结,并呈现给涉众分析中得到的各种信息进行归纳总结,并呈现给涉众已编写了文档的架构方法已编写了文档的架构方法经过讨论得到的场景集合及其优先级经过讨论得到的场景集合及其优先级效用树效用树所发现的有风险决策所发现的有风险决策已编成文档的无风险决策已编成文档的无风险决策所发现的敏感点和权衡点所发现的敏感点和权衡点ATAM列表总结:列表总结:符号含义:符号含义:*表示该步骤是此结

24、果的主要来源表示该步骤是此结果的主要来源*表示该步骤是此结果的次要来源表示该步骤是此结果的次要来源a:商业动机中包括刚开始时对质量属性的粗略描述:商业动机中包括刚开始时对质量属性的粗略描述b:商业动机的表述可能会揭露出某个应捕获的已发现或长期存在的风险商业动机的表述可能会揭露出某个应捕获的已发现或长期存在的风险c:设计师在自己的表述中可能会发现某个风险:设计师在自己的表述中可能会发现某个风险d:设计师在自己的表述中可能会发现某个敏感点或权衡点:设计师在自己的表述中可能会发现某个敏感点或权衡点e:许多架构方法都有与之相关的标准风险许多架构方法都有与之相关的标准风险f:许多架构方法都有与之相关的标

25、准敏感点或权衡点许多架构方法都有与之相关的标准敏感点或权衡点g:分析步骤可能会得出在第分析步骤可能会得出在第4步中未发现的一个或多个架构方法,这可能会产生新的针对架构方法的问题步中未发现的一个或多个架构方法,这可能会产生新的针对架构方法的问题ATAM评估方法的步骤、结果及其关联评估方法的步骤、结果及其关联ATAM案例分析案例分析Nightingale系统系统客户:客户:卫生保健系统软件的主要生产者,销售目标为医院、诊所、卫生保健系统软件的主要生产者,销售目标为医院、诊所、HMO(Health Maintenance Organization)市场)市场Nightingale几百万行代码,进展良

26、好,已到了实现阶段几百万行代码,进展良好,已到了实现阶段第第1个客户,是一个医疗连锁机构,由遍及美国西南部的约个客户,是一个医疗连锁机构,由遍及美国西南部的约40家医院组成家医院组成客户想进行评估的原因客户想进行评估的原因如果如果SA存在缺陷,早发现比迟发现好存在缺陷,早发现比迟发现好该组织的目标是卖给尽可能多的客户,却发现必须根据客户具体需要、应用和环境裁减软件。因此想要保证该组织的目标是卖给尽可能多的客户,却发现必须根据客户具体需要、应用和环境裁减软件。因此想要保证SA具有足够的健壮性和可修改性,以作为具有足够的健壮性和可修改性,以作为HMO整个产品系列的基础。整个产品系列的基础。Nigh

27、tingale系统系统卫生保健机构的信息骨干卫生保健机构的信息骨干提供病人的治疗历史,跟踪其保险和其他支付信息提供病人的治疗历史,跟踪其保险和其他支付信息提供数据仓储能力以帮助发现趋势(病)提供数据仓储能力以帮助发现趋势(病)定期产生大量报告,每个报告都要根据机构的具体需要进行裁剪定期产生大量报告,每个报告都要根据机构的具体需要进行裁剪对于自费病人,要管理病人一生中,与启动和维护贷款数量有关的工作流对于自费病人,要管理病人一生中,与启动和维护贷款数量有关的工作流对机构的配置做出响应:识别用户(更换站点)对机构的配置做出响应:识别用户(更换站点)评估的前期工作评估的前期工作签署一个工作说明的协义

28、,签署一个工作说明的协义,1个月个月组建了一个组建了一个6人小组,具体分工如下人小组,具体分工如下评估的前期工作评估的前期工作为时为时1天的开工会议天的开工会议参加者:评估小组、项目经理、首席设计师和参加者:评估小组、项目经理、首席设计师和Nightingale的第的第1位客户的项目经理位客户的项目经理听取了能力和需求的更多信息,收到了可用的架构文档的目录(从中选择希望进行分析的),编写了一个参加评估第听取了能力和需求的更多信息,收到了可用的架构文档的目录(从中选择希望进行分析的),编写了一个参加评估第2阶段涉众的名单阶段涉众的名单对对1,2阶段会议时间和最终报告提交时间达成了一致阶段会议时间

29、和最终报告提交时间达成了一致评估小组发现文档是不完整的,不清楚的。没有章节内容,基本上是一些定义不充分的框线图的集合。又给设计师打电话,请他补充了一些空白评估小组发现文档是不完整的,不清楚的。没有章节内容,基本上是一些定义不充分的框线图的集合。又给设计师打电话,请他补充了一些空白评估第评估第1阶段阶段第第1步:步:ATAM方法表述方法表述用用1小时时间表述了该方法的步骤和阶段,描述了小时时间表述了该方法的步骤和阶段,描述了ATAM的概念基础(场景,构架方法,敏感点),列出了评估将产生的后果的概念基础(场景,构架方法,敏感点),列出了评估将产生的后果进展顺利进展顺利评估第评估第1阶段阶段第第2步

30、:商业动机的表述步:商业动机的表述第第1位客户的项目经理从开发组织、使用该系统的组织的角度,表述了商业目标位客户的项目经理从开发组织、使用该系统的组织的角度,表述了商业目标开发组织提出了如下业务需求开发组织提出了如下业务需求支持不同用途(治疗跟踪,支付历史,趋势发现)支持不同用途(治疗跟踪,支付历史,趋势发现)创建一个面向多位客户的新版本,以使组织能把产品卖给其他客户创建一个面向多位客户的新版本,以使组织能把产品卖给其他客户评估第评估第1阶段阶段第第2步(续步(续1)第第2个商业动机表明该构架是面向整个软件产品线的,而非一个系统个商业动机表明该构架是面向整个软件产品线的,而非一个系统对于于第对

31、于于第1位客户(正在参与评估)来说,位客户(正在参与评估)来说,Nightingale将替代多个早期系统:将替代多个早期系统:老系统(老系统(25年历史)年历史)基于过时的语言和技术(基于过时的语言和技术(COBOL和和IBM汇编语言)汇编语言)很难维护很难维护无法对卫生保健站点当前的和预计的业务需要迅速作出反应无法对卫生保健站点当前的和预计的业务需要迅速作出反应评估第评估第1阶段阶段第第2步(续步(续2)第第1位客户的业务需求包括:位客户的业务需求包括:处理不同的文献和地域差异的能力处理不同的文献和地域差异的能力处理多种语言和货币的能力处理多种语言和货币的能力至少要和所更换的早期系统一样快至

32、少要和所更换的早期系统一样快一个组合了不同早期财务管理系统的单一系统一个组合了不同早期财务管理系统的单一系统该系统的业务限制包括:该系统的业务限制包括:承诺对现有员工进行再培训,使其不失工作承诺对现有员工进行再培训,使其不失工作采用一个采用一个“购买而非构建购买而非构建”的软件方法的软件方法该系统技术限制包括该系统技术限制包括在任何可能的时候,都使用商业软件组件在任何可能的时候,都使用商业软件组件用两年的时间来实现该系统,每用两年的时间来实现该系统,每26周更换一次物理硬件周更换一次物理硬件评估第评估第1阶段阶段第第2步(续步(续3)如下的质量属性被确定为高优先级质量属性如下的质量属性被确定为

33、高优先级质量属性性能:快速的性能:快速的 响应时间响应时间易用性:是决定系统用户量的关键因素。易用性:是决定系统用户量的关键因素。可维护性:必须可维护、可配置、可扩展,以支持新的市场、新的客户需求、州的法令变更以及不同的地区和文化的需要可维护性:必须可维护、可配置、可扩展,以支持新的市场、新的客户需求、州的法令变更以及不同的地区和文化的需要经理将下述质量属性确定为重要,但优先级较低的属性经理将下述质量属性确定为重要,但优先级较低的属性安全性、可用性、可扩充性、模块性、可测试性和可支持性安全性、可用性、可扩充性、模块性、可测试性和可支持性评估第评估第1阶段阶段第第3步:构架的表述步:构架的表述N

34、ightingale主要由两个子系统组成:主要由两个子系统组成:在线事务管理器在线事务管理器OLTM(OnLine Transaction Manager),支持交互性能支持交互性能决策支持与报表生成管理器决策支持与报表生成管理器DSRGM(Decision Support and Report Generation Manager),定期启动该任务定期启动该任务要使要使Nightingale具有极高的可配制性具有极高的可配制性OLTM字系统要进行分层字系统要进行分层Nightingale是一个基于存储库的系统,其中心有一个大型的商业数据库是一个基于存储库的系统,其中心有一个大型的商业数据库N

35、ightingale采用了很多采用了很多COTS软件软件(Commercial Off The Shell),包括中心数据库、规则引擎、工作流引擎、包括中心数据库、规则引擎、工作流引擎、CORBA、Web引擎、软件分配工具等引擎、软件分配工具等Nightingale高度面向对象,它依赖对象框架来实现大多数的可配置性高度面向对象,它依赖对象框架来实现大多数的可配置性设计师用非正式表示法所描绘的设计师用非正式表示法所描绘的OLTM分层视图分层视图OLTM的通信、数据流、处理器的视图的通信、数据流、处理器的视图OLTM的数据流构架图的数据流构架图评估第评估第1阶段阶段第第4步:对构架方法进行分类步:

36、对构架方法进行分类评估小组根据他们听到的表述,以及以前所了解的方法,列出主要架构方法(模式)评估小组根据他们听到的表述,以及以前所了解的方法,列出主要架构方法(模式)分层分层面向对象面向对象无需重新编码或重新编译,使用配置文件实现可修改性无需重新编码或重新编译,使用配置文件实现可修改性客户机客户机-服务器服务器以数据为中心的构架模式,(仓储)以数据为中心的构架模式,(仓储)评估第评估第1阶段阶段第第5步:生成质量效用树步:生成质量效用树有时对某个质量属性,人们能想出一个好的求精方法,但当他们自己在上下文中有用例进行说明时,却发现该求精实际上并不适用有时对某个质量属性,人们能想出一个好的求精方法

37、,但当他们自己在上下文中有用例进行说明时,却发现该求精实际上并不适用为了捕获效用树以使所有人都能看到,进展书记员对每个质量属性都用一页活动挂图进行描述,并把它贴在了墙上为了捕获效用树以使所有人都能看到,进展书记员对每个质量属性都用一页活动挂图进行描述,并把它贴在了墙上下表中的每一对有序字母,第下表中的每一对有序字母,第1个表示其能力的重要性,第个表示其能力的重要性,第2个市设计师的对实现该质量属性的困难的估计个市设计师的对实现该质量属性的困难的估计效用树表格一效用树表格一效用树表格二效用树表格二评估第评估第1阶段阶段第第6步:分析所采用的构架方法步:分析所采用的构架方法选择最重要且最难实现的场

38、景选择最重要且最难实现的场景COTS尽管降低了风险,但会使人感觉系统受许多尽管降低了风险,但会使人感觉系统受许多COTS厂商的支配厂商的支配与设计师一起对每个场景进行了分析,平均每个场景用时半小时,了解到以下一些情况与设计师一起对每个场景进行了分析,平均每个场景用时半小时,了解到以下一些情况用另外厂家提供的数据库更换商业数据库很困难(需要几个人用另外厂家提供的数据库更换商业数据库很困难(需要几个人/年的工作,对可修改性负面影响)年的工作,对可修改性负面影响)更换操作系统非常简单:更换操作系统非常简单:改变规则引擎引发了几个问题:需要编写改变规则引擎引发了几个问题:需要编写c+代码生成器规则,这

39、是困难且未知的开发工作,将其记录为一个风险。使用规则引擎是架构的一个平衡点,它使开发和改变规则变得简单,但会降低性能,尤其是需要培训开发人员,测试困难代码生成器规则,这是困难且未知的开发工作,将其记录为一个风险。使用规则引擎是架构的一个平衡点,它使开发和改变规则变得简单,但会降低性能,尤其是需要培训开发人员,测试困难评估评估1阶段一共记录了阶段一共记录了6个敏感点、个敏感点、1个权衡点,个权衡点,4个有风险决策、个有风险决策、5个无风险决策。个无风险决策。评估第评估第2阶段(继续评估)阶段(继续评估)9位涉众参加了会议:开发、维护、第位涉众参加了会议:开发、维护、第1个客户的代表、两个最终用户

40、个客户的代表、两个最终用户第第7步:集体讨论并确定场景的优先级步:集体讨论并确定场景的优先级涉众表达了他们的观点:有一些场景值得投入比第一阶段更多的精力涉众表达了他们的观点:有一些场景值得投入比第一阶段更多的精力注意,下图其中一些场景的结构并不好,含义非常模糊,但这反映了集体讨论的一个本质,即每个人都积极参与其中注意,下图其中一些场景的结构并不好,含义非常模糊,但这反映了集体讨论的一个本质,即每个人都积极参与其中 最后每个人都有最后每个人都有22张选票(张选票(70个场景的个场景的30%),涉众分两轮,投给他们认为重要的场景。然后我们开始分析),涉众分两轮,投给他们认为重要的场景。然后我们开始

41、分析得票最多的场景得票最多的场景集体讨论确定的场景集体讨论确定的场景1集体讨论确定的场景集体讨论确定的场景2评估第评估第2阶段(继续评估)阶段(继续评估)第第8步:分析所采用的构架方法步:分析所采用的构架方法第第9步:结果的表述步:结果的表述一到两小时,总结此次评估的结果一到两小时,总结此次评估的结果评估小组在第评估小组在第2阶段的后期碰头。把到目前为止的结果编辑在一起。包括有风险决策、无风险决策、敏感点、权衡点阶段的后期碰头。把到目前为止的结果编辑在一起。包括有风险决策、无风险决策、敏感点、权衡点对于每个风险主题,明确陈述了它为什么重要,这对客户很重要,因可能危及商业目标对于每个风险主题,明

42、确陈述了它为什么重要,这对客户很重要,因可能危及商业目标评估第评估第2阶段(继续评估)阶段(继续评估)第第9步:续步:续列出了列出了3个风险主题个风险主题过分依赖过分依赖COTS产品产品:更换数据库、删除规则引擎、一个涉及移植性的老的可能不再支持的软件版本。困难:更换数据库、删除规则引擎、一个涉及移植性的老的可能不再支持的软件版本。困难没有完全定义错误恢复过程没有完全定义错误恢复过程,客户关于可用工具的知识不全面客户关于可用工具的知识不全面文档问题文档问题:文档陈述不充分。早在第:文档陈述不充分。早在第1阶段陈述时,该小组就注意到了此问题,尽管有大量详细文档(通过阶段陈述时,该小组就注意到了此

43、问题,尽管有大量详细文档(通过UML和和Rose模型生成的文档),当该构架几乎没有介绍性的或概述性的文档,而这对于培训、维护、测试、指导开发都非常重要。第模型生成的文档),当该构架几乎没有介绍性的或概述性的文档,而这对于培训、维护、测试、指导开发都非常重要。第2个是管理个是管理Nightingale的行为的扩展的规则库还没有编成文档,客户因此无法维护该系统,危及到关键商业动机:支持客户的组织。的行为的扩展的规则库还没有编成文档,客户因此无法维护该系统,危及到关键商业动机:支持客户的组织。后续工作:用文件模板样板,生成了最终报告后续工作:用文件模板样板,生成了最终报告理解什么不是理解什么不是AT

44、AMATAM不是需求评估不是需求评估ATAM不是代码评估不是代码评估ATAM不包括实际的系统测试不包括实际的系统测试ATAM不是一个准确的手段,但它识别了构架中可能存在风险的区域。不是一个准确的手段,但它识别了构架中可能存在风险的区域。依赖于设计师的知识,因此可能无法检测出某些风险。依赖于设计师的知识,因此可能无法检测出某些风险。被检测出来的风险没有量化被检测出来的风险没有量化其他评估方法其他评估方法CBAM:构架设计决策制定的定量方法:构架设计决策制定的定量方法ATAM主要考虑对技术权衡进行评估,但遗漏了对经济性的考虑主要考虑对技术权衡进行评估,但遗漏了对经济性的考虑Cost Benefit Analysis Method:成本收益分析方法成本收益分析方法

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

当前位置:首页 > 应用文书 > 财经金融

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com