软件设计与体系结构秦航12分解.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
清华大学出版社 第12章软件体系结构评估 内容提要 12.1 软件体系结构评估定义 12.2 SAAM软件架构分析方法 12.3 ATAM体系结构权衡分析方法 12.4 评估方法比较 12.5 小结 12.1 软件体系结构评估定义 12.1.1 质量属性 功能性 可靠性 可用性 有效性 可维护性 可移植性 12.1 软件体系结构评估定义 12.1.2 评估的必要性 软件架构是软件工程早期设计阶段的产物,它对软件系统或软件项目的开发具有深远的影响。主要表现在以下两个方面 不恰当的架构 架构决定着项目的结构。 12.1 软件体系结构评估定义 12.1.3 基于场景的评估方法 基于场景的软件架构分析方法的基本观点是,大多数软件质量属性极为复杂,根本无法用一个简单的尺度来衡量。 同时,质量属性并不是处于隔离状态,只有在一定的上下文环境中才能做出关于质量属性的有意义的评判。 利用场景技术则可以具体化评估的目标,代替对质量属性(可维护性、可修改性、健壮性、灵活性等)的空洞表述,使对软件体系结构的测试成为可能。 基于场景的软件架构分析方法步骤 1、分析问题域,建立功能场景库。 针对具体项目在应用领域中的定位,展开需求分析,汇总系统预期功能并按对功能进行分类以确保每项功能都能够得到详细描述,并为每个功能定义相应的场景,建立功能场景库。 基于场景的软件架构分析方法步骤 2、通过功能场景库测试评价软件架构对各功能的支持度,并针对支持度差的功能展开架构分析。 支持度的评价涉及到架构是否满足功能场景、是否容易扩展该功能等。 一旦发现支持度差的功能,则进一步分析是否是由架构设计导致的,从中发现可能的架构设计缺陷和不足。 基于场景的软件架构分析方法步骤 3、建立非功能指标参数树。 选择一组感兴趣的非功能性指标,如可移植性、安全性、性能等,并详细定义每一个指标的衡量属性、期望值和相应的场景。 基于场景的软件架构分析方法步骤 4、应用指标参数树对软件架构进行非功能性分析。 通过比较架构在场景中的实际输出值和期望值,来评价架构对各个指标的各个属性的支持度,并在该过程中发现软件架构的缺陷,找出风险决策、无风险决策、敏感点、权衡点。 基于场景的评估方法的特征: 场景是这类评估方法中不可缺少的输入信息,场景的设计和选择是评估成功与否的关键因素。 这类评估是人工智力密集型劳动,评估质量在很大程度上取决于人的经验和技术。 基于场景的评估方法是研究最广泛,应用最成熟,数量最多的一类软件体系结构评估方法。 基于场景的评估方法的不足 (1)评估的效果对评估师经验的依赖程度较高。 (2)“重量级”的评估技术,成本较高。 (3)没有考虑知识的积累和应用问题,造成资源的浪费。 (4)缺乏实用的评估信息管理工具。 12.2 SAAM软件架构分析方法 SAAM方法,是卡耐基梅隆大学软件工程研究所的Kazman等人于1983年提出的一种非功能质量属性的体系结构分析方法,是最早形成文档并被广泛使用的软件体系结构分析方法。 12.2 SAAM软件架构分析方法 特定目标: SAAM的目标是对描述应用程序属性的文档, 验证基本的体系结构假设和原则。此外, 该分析方法有利于评估体系结构固有的风险。SAAM指导对体系结构的检查,使其主要关注潜在的问题点, 如需求冲突, 或仅从某一参与者的观点出发的不全面的系统设计。SAAM不仅能够评估体系结构对于特定系统需求的使用能力, 也能被用来比较不同的体系结构。 评估技术: SAAM所使用的评估技术是场景技术。场景代表了描述体系结构属性的基础, 描述了各种系统必须支持的活动和将要发生的变化。 质量属性: 这一方法的基本特点是把任何形式的质量属性都具体化为场景, 但可修改性是SAAM分析的主要质量属性。 12.2 SAAM软件架构分析方法 风险承担者: SAAM协调不同参与者所感兴趣的方面,作为后续决策的基础, 提供了对体系结构的公共理解。 体系结构描述: SAAM用于体系结构的最后版本, 但早于详细设计。体系结构的描述形式应当被所有参与者理解。功能、结构和分配被定义为描述体系结构的三个主要方面。 方法活动: SAAM的主要输入问题是问题描述、需求声明和体系结构描述。 12.2.1 SAAM的一般步骤 (1)场景形成。 (2)描述软件体系结构 (3)场景的分类和优先级划分 (4)间接场景的单独评估 (5)评估场景交互 (6)形成总体评估 12.2.2 场景形成 在形成场景的过程中,要注意全面捕捉系统的主要用途、系统用户类型、系统将来可能的变更、系统在当前及可预见的未来必须满足的质量属性等信息。 形成场景的过程也是集中讨论的过程。 12.2.3 描述软件体系结构 软件体系结构设计师应该采用参加评估的所有人员都能

文档评论(0)

ee88870 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档