软件体系结构评估.pptx
第九章
软件体系结构评估1
内容9.1 软件体系结构评估简介9.2 ATAM方法9.3SAAM方法9.4ARID方法
基本介绍软件系统的基础是它的体系结构,软件体系结构将影响系统很多质量属性。在软件体系结构确定下来以后,软件系统的这些属性就是可预见的。软件体系结构评估的目的在开发过程的早期,通过分析系统的质量需求是否在软件体系结构中得到体现,来识别软件体系结构设计中的潜在风险,预测系统质量属性,并辅助软件体系结构决策的制定。
评估时机早评估:评估不需要完整的软件体系结构描述,可以在软件体系结构创建过程中的任何阶段使用评估方法,对已经做出的软件体系结构决策进行检查,或者确定还没有决定的软件体系结构选项。晚评估:迟评估的时机是软件体系结构已经明确并且实现已经完成的时候,这种情况在某个组织继承某些遗留系统时发生,这些遗留系统可能是在市场中购买的,也可能是从本组织现有的存档中发掘的。
评估人员(2/2)评估团队:其中的人员会实施评估并且进行分析,团队中成员和他们确切的角色将在后面定义;利益相关人员:是软件体系结构和基于它开发的系统的既得利益者。
评估结果和质量属性(1/4)软件体系结构评估会产生一个评估报告,报告的形式和内容随着所使用评估方法的不同而不一样。通过软件体系结构评估可以回答下面两类问题:软件体系结构是否适用于基于它的软件系统?如果对于目前的系统有多个软件体系结构可以选择,那个是最合适的?
评估结果和质量属性(2/4)如果一个软件体系结构满足以下两个标准,那么就认为它是适宜的:系统的结果满足质量目标。也就是说,系统的运行是可预期的,并且运行速度足够快,满足系统的性能或时间需求;系统的修改按照计划的方式进行,并且满足安全约束,系统能够提供必须的功能。系统能够使用现有的资源来开发,现有资源包括:人员、预算、任何遗留系统以及交付之前分配的时间。也就是说,软件体系结构是可构建的。
评估结果和质量属性(3/4)01系统响应能力性能02系统随着时间的进行而保持运行的能力可靠性03系统有效工作的时间比例可用性04系统在为合法用户提供服务的同时抵制未授权的使用请求和拒绝服务的能力安全性05快速有效地修改系统的能力可变性
评估结果和质量属性(4/4)系统在不同计算环境中运行的能力软件体系结构能够通过扩展或修改来得到新的软件体系结构的程度能够统一所有层面系统设计概念的能力系统能够按照预期工作的能力支持生产系统某个子集的能力0102030405可移植性01变化性03概念完整性0502功能性04可分解性
评估的益处和代价(1/2)把利益相关人员召集在一起添加标题强制特定质量目标的接合添加标题生成冲突目标的优先级添加标题对软件体系结构有一个清晰的说明添加标题提高软件体系结构文档的质量添加标题发现跨项目重用的机会添加标题得到优化后的软件体系结构实践添加标题评估的益处:
评估的益处和代价(2/2)减小评估代价的方法在相同领域内的重用评估的代价人员开销与参加软件体系结构评估的人员相关的机会成本
内容软件体系结构评估简介ATAM方法SAAM方法ARID方法
ATAM基本介绍ATAM方法能够反映一个软件体系结构满足某些特定质量目标的程度,同时还能够给出这些质量目标相互之间的交互方式。ATAM方法也可对遗留系统进行分析,提高对系统质量属性的理解。ATAM方法基本过程(4组)介绍、调查和分析、测试、报告
ATAM方法步骤ATAM方法介绍添加标题商业动机的介绍添加标题软件体系结构介绍添加标题确定软件体系结构方法添加标题产生质量属性效果树添加标题分析软件体系结构方法添加标题集体讨论并确定场景的优先级添加标题再次分析软件体系结构方法添加标题展示结果添加标题
步骤1、ATAM方法介绍评估负责人给召集在一起的利益相关人员介绍ATAM方法。ATAM方法中步骤的简要介绍。介绍评估中使用的获取和分析技术,包括效果树的生成、基于软件体系结构方法的获取和分析以及场景的集中讨论和优先级划分。介绍评估的结果,比如已经划分优先级的场景、用于理解和评估软件体系结构的问题、一组指定的软件体系结构方法、一组敏感点和折中点等。
步骤2、商业动机的介绍项目决策者(最好是项目经理或系统关键客户)会从商业的角度来介绍系统的概况。系统最重要的功能;任何技术、管理、经济或政治方面的相关约束;与项目相关的商业目标和上下文;主要的利益相关人员;软件体系结构的驱动因素,即形成软件体系结构的主要质量属性目标。
步骤3、软件体系结构介绍首席设计师会以恰当的详细程度来介绍软件体系结构软件体系结构相关文档的详细程度,可用的时间,行为和质量需求的实质软件体系结构视图是设计师用于展示软件体系结构的主要工具功能、并发、代码和物理视图
步骤4、确定软件体系结构方法评估团队会得到软