- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
体系结构的分析与评估幻灯片
软件体系结构的分析与评估 体系结构评估概述 体系结构评估是一种避免灾难的低成本手段; 体系结构评估的时机一般是在明确了体系结构之后、具体实现开始之前; 实践原则是:应该在开发小组开始制定依赖于体系结构的决策时、修改这些决策的代价超过体系结构的评估的代价时,实施体系结构评估。 体系结构评估的参与者 评估小组:负责组织评估并对评估结果进行分析。组成人员通常为评估小组负责人、评估负责人、场景书记员、进展书记员、计时员、过程观察员、过程监督者、提问者。 风险承担者:在该体系结构及根据该体系结构开发的系统中有既得利益的人。有些也将是开发小组成员,如编程人员、集成人员、测试人员和维护人员。比较特殊的是项目决策者,包括体系结构设计师、组件设计人员和项目管理人员。 评估所关注的质量属性 性能(performance) 性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段事件内系统所能处理的事件的个数。 经常用单位事件内所处理事务的数量或系统完成某个事务处理所需的时间来对性能进行定量的表示。 性能测试经常要使用基准测试程序(用以测量性能指标的特定事务集或工作量环境)。 评估所关注的质量属性 可靠性(reliability)(1) 可靠性是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。 可靠性通常用平均失效等待时间(MTTF)和平均失效间隔时间(MTBF)来衡量。在失效率为常数和修复时间很短的情况下,MTTF和MTBF几乎相等。 评估所关注的质量属性 可靠性(reliability)(2) 容错:在错误发生时确保系统正确的行为,并进行内部修复。如在一个分布式软件系统中失去了一个与远程构件的连接,接着恢复了连接,在修复这样的错误后,系统可以重新或重复执行进程间的操作。 健壮性:保护应用程序不受错误使用和错误输入的影响,在遇到意外错误事件时确保应用系统处于已经定义好的状态。 评估所关注的质量属性 可用性(availability) 可用性是系统能够正常运行的时间比例。经常用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示。 评估所关注的质量属性 安全性(security) 安全性是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。安全性是根据系统可能受到的安全威胁的类型来分类的。 安全性又可划分为机密性、完整性、不可否认性及可控性等特性。其中,机密性保证信息不泄露给未授权的用户、实体或过程;完整性保证信息的完整和准确,防止信息被非法修改;可控性保证对信息的传播及内容具有控制的能力,防止为非法者所用。 评估所关注的质量属性 可修改性(modifiability) 指能够快速地以较高的性能价格比对系统进行变更的能力。 通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性。 评估所关注的质量属性 可修改性(modifiability) 可维护性(maintainability):主要体现在问题的修复上:在错误发生后“修复”软件系统; 可扩展性(extendibility):使用新特性来扩展软件系统,以及使用改进版本来替换构件并删除不需要或不必要的特性和构件。为实现可扩展性,需要松散耦合的构件。 评估所关注的质量属性 可修改性(modifiability) 结构重组(reassemble):重新组织软件系统的构件及构件间的关系。 可移植性(portability):使软件系统适用于多种硬件平台、用户界面、操作系统、编程语言或编译器。是系统能够在不同计算环境(硬件或软件)下运行的能力。 评估所关注的质量属性 功能性 (functionality) 功能性是系统所能完成所期望的工作的能力。一项任务的完成需要系统中许多或大多数构件的相互协作。 评估所关注的质量属性 可变性 (changeability) 可变性是指体系结构经扩充或变更而成为新体系结构的能力。这种新体系结构应该符合预先定义的规则,在某些具体方面不同于原有的体系结构。当要将某个体系结构作为一系列相关产品(例如,软件产品线)的基础时,可变性是很重要的。 评估所关注的质量属性 可集成性 (integrability) 可集成性是指系统能与其他系统协作的程度。 评估所关注的质量属性 互操作性(interoperation) 作为系统组成部分的软件不是独立存在的,经常与其他系统或自身环境相互作用。为了支持互操作性,软件体系结构必须为外部可视的功能特性和数据结构提供精心设计的软件入口。程序和用其他编程语言编写的软件系统的交互作用就是互操作性的问题,这种互操作性也影响应用的软件体系结构。 基本概念 敏感点(sensitivity point
原创力文档


文档评论(0)