软件体系结构的质量属性.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 体系结构 质量 属性
- 资源描述:
-
软件体系结构的质量属性2即将探讨的问题概念与方法案例个人体会内容软件体系结构的质量属性2012/9/2331 即将探讨的问题软件体系件体系结构究竟如何定构究竟如何定义?虽然软件体系结构已经在软件工程领域中有着广泛的应用,但迄今为止还没有一个被大家所公认的定义。注意注意工程中的构件的复用是因为工程师只想集中精力做设计中真正创新的部分为何不可照搬建筑工程的何不可照搬建筑工程的Architecture来解决来解决软件工程里的件工程里的Architecture?软件工程的确在朝着工程学科发展的一般模式靠拢,但是大规模的复复用用才刚刚开始尝试。软件体系结构的质量属性2012/9/2341 即将探讨的问题更直更直观的表象:失效曲的表象:失效曲线来自于设计或生产的缺陷与时间的函数关系。时间(年)时间(年)失效率失效率初期后期磨损理想曲线实际曲线变更副作用软件体系结构的质量属性2012/9/23注意注意实际上更变的副作用从设计阶段就初现端倪。51 即将探讨的问题启启发软件的质量问题暗示了设计缺陷或者从设计转化到机器代码的过程中产生的错误。关注前者(即软件体系结构),是否可以用高质量的设计来提高最终产品的质量?软件体系结构的质量属性2012/9/23工具方法过程质量关注点软件工程层次图61 即将探讨的问题在在设计阶段段评估体系估体系结构构对于投资人:将赌注提前放在赢家对于用户:保证系统不偏离对于架构师:用一种好的方法验证经验软件体系结构的质量属性2012/9/23我我们需需要要一一种种方方法法,以以便便让我我们评估估每每个个候候选的的体体系系结构构,以确定哪种体系以确定哪种体系结构最适合解决构最适合解决问题。72 概念与方法软件体系件体系结构的构的质量量功能性需求是影响体系结构设计的核心,实际上大量的影响因素还包含在质量需求中。但是标准的OOA和OOD中,没有一个清晰的指导方法捕获这些需求,体系结构的设计也不是一个独立的过程,而是作为细化迭代的一个小块穿插在复杂的功能设计中,这就使得质量需求更加难以捕获了。软件体系结构的质量属性2012/9/2382 概念与方法解决解决问题的途径的途径建立一种清晰的,可重用的框架来评估体系结构的质量,提炼出属性层和测量项,应用于评估当中。软件体系结构的质量属性2012/9/23采用分解的方法评估92 概念与方法体系体系结构的构的权衡分析方法衡分析方法Architecture Tradeoff Analysis Method(ATAM)1.收集场景2.引出需求、约束和环境描述3.列出所有的候选体系结构风格/模式4.单独考虑每个属性来评估质量属性5.针对特定的体系结构风格确定质量属性对各个候选项的敏感性6.使用第5步中的鉴定结果软件体系结构的质量属性2012/9/23注意注意上述步骤只是一次迭代,基于第5步和第6步的结果,某些候选体系结构被删除,其他可进一步细化再使用ATAM102 概念与方法体系体系结构的构的权衡分析方法衡分析方法(ATAM)还是存在是存在问题ATAM使用效用树来将质量特性划分主次,但是这个效用树如何达到?为什么只有一层?甚至连质量特性的定义也不是很清晰。软件体系结构的质量属性2012/9/23还有其他改有其他改进的方法的方法吗?2 概念与方法基于基于ISO9126-1建立体系建立体系结构构质量模型量模型模型结构和ATAM类似,基于ISO9126-1构建。软件体系结构的质量属性2012/9/23什么是什么是ISO9126-1ISO9126-1标准?标准?Software Quality CharacteristicsSoftware Quality Characteristics更多资料可参阅:更多资料可参阅:ISO/IEC ISO/IEC 9126 9126 in in practice:practice:What What do do we need to knowwe need to know112 概念与方法关于关于ISO9126-1质量模型量模型根据ISO9126-1,质量被描述为一组特性,用于评估其满足需求(显性和隐性)的能力。从用户角度:最终产品的质量从开发人员角度:不同开发人员提供的中间产品的质量从客户角度:市场的需求注意注意作为开发人员通常只考虑前两项软件体系结构的质量属性2012/9/23122 概念与方法关于关于ISO9126-1质量模型量模型ISO9126-1广泛用于产品质量评估当中,作为评估质量的一个State-of-art标准。ISO9126-1包含六个高度独立的质量特性,质量特性在开发的各个阶段作为外部确认和内部审查的目标,一旦获得可测量的实体,就按照图中所示的过程精化。软件体系结构的质量属性2012/9/23特性-子特性-属性-度量 分解过程132 概念与方法ISO9126-1质量模型框架量模型框架为了在开发中监控质量,外部的质量属性通常转换为中间产品的需求,这个过程实际上无章可循。所以提出ISO9126-1的标准软件体系结构的质量属性2012/9/23ISO9126-1质量模型的特性142 概念与方法ISO9126-1质量模型框架量模型框架软件体系结构的质量属性2012/9/23ISO9126-1质量模型的细化152 概念与方法ISO9126-1质量模型框架量模型框架应用于体系用于体系结构构一个特定的体系结构可以视为一种高级组件,同样由连接器连接。按照ISO9126-1标准中的划分,组件每个特性的质量属性都可以被度量。软件体系结构的质量属性2012/9/23注意注意随着体系结构的确定,进一步分解体系结构是否可以增强结构的质量?这个问题的回答是肯定的,但是不是我们要讨论的问题范围。162 概念与方法ISO9126-1质量模型框架量模型框架应用于体系用于体系结构构质量的度量按直觉评价,一般方法是列出产品的特性,然后用一个属性组来描述它。只要达到预期的值,则认为是一个达标的产品,至于达标的值的界定,一般包含在需求当中。下面下面进一步解一步解释如何如何细化属性并将其用于体系化属性并将其用于体系结构构软件体系结构的质量属性2012/9/23注意注意我们假定这些特性都是彼此独立的,否则就太过复杂,无法讨论下去了。172 概念与方法1 功能性功能性适合性适合性(Suitability)拥有符合特定任务需求的足够的功能。存在:任务已被详细说明正确:正确的解释任务的详细说明。从从软件体系件体系结构的构的层次上次上说明:明:1.系统的功能性必须被识别出来。在此种情况下,根据确定与否取值为1或0。2.由功能需求所获得的时序图必须被详细精化。在拥有一个体系结构说明书的情况下,特定的功能被分解成与构件有关的子功能,并且这些子功能合起来应满足系统的功能性需求。软件体系结构的质量属性2012/9/23182 概念与方法软件体系结构的质量属性2012/9/23192 概念与方法1 功能性功能性互操作性互操作性(Interoperability)在一个系统内或多个系统间相互作用的能力。可替代性replaceability兼容性compatibility从从软件体系件体系结构的构的层次上次上说明:明:1.识别与外部特定系统进行交互的中间件。2.根据中间件的存在与否决定属性值为1或者0。软件体系结构的质量属性2012/9/23202 概念与方法1 功能性功能性安全性安全性(Security)防止未经授权访问程序或者数据的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.应有一种机制或者设备(软件或硬件)来明显地完成这个任务。可以是组件(如中间件提供的一项服务)或集成在组件里的功能。2.根据机制或者设备的存在与否决定属性值为1或者0。软件体系结构的质量属性2012/9/23212 概念与方法1 功能性功能性依从性依从性(Compliance)软件遵循有关标准、约定、法规或类似规定的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.很笼统,无法直接应用到体系结构设计。2.根据要求的标准的应用与否决定属性值为1或者0。3.体系结构的依从性可以认为是对体系结构相关的约束的满足情况。软件体系结构的质量属性2012/9/23222 概念与方法软件体系结构的质量属性2012/9/23232 概念与方法2 可靠性可靠性容容错性性(Tolerance)在软件发生故障或违反指定接口的情况下,软件产品维持规定的性能水平的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.它意味着拥有某种机制或软件设备。它可以是一个构件或被集成到构件中,如异常处理以及冗余。2.根据这种机制或设备的出现与否定义其值为1或者0。3.它可以被精确为一种属性,这种属性的值与机制或者设备相关。软件体系结构的质量属性2012/9/23242 概念与方法2 可靠性可靠性可恢复性可恢复性(Recoverability)1、重建、重建规规定的性能水平的能力。定的性能水平的能力。2、恢复受影响的数据的能力。、恢复受影响的数据的能力。3、恢复所需的、恢复所需的时间时间。从从软软件体系件体系结结构的构的层层次上次上说说明:明:软软件件中中存存在在一一种种机机制制或或者者软软件件设设备备,其其独独自自成成为为构构件件或或被被集集成成在在构构件件中中,其其功功能能是是重重建或恢复数据建或恢复数据(冗余就是一个典型的例子冗余就是一个典型的例子)。如如果果这这种种机机制制存存在在,则则可可恢恢复复性性就就可可被被细细化化为为一一种种和和时时间间、代代价价相相关关的的性性能能属属性性,每每个支持此机制的个支持此机制的组组件都需件都需计计算出算出这样这样的属性。的属性。软件体系结构的质量属性2012/9/23252 概念与方法3 易用性易用性易理解性易理解性(Understandability)是指软件产品使用户能理解软件产品是否合适以及如何能将软件用于特定的任务和使用环境的能力。易学易学习性性(Learnability)软件产品使用户能学习它的能力。易操作性易操作性(Operability)软件产品使用户能操控和控制它的能力。GUI软件体系结构的质量属性2012/9/23注意注意从软件体系结构的层次上说明:它们独立于体系结构(体系结构对用户来说是透明的),在此不予论述。262 概念与方法软件体系结构的质量属性2012/9/23272 概念与方法4 效率效率资源利用源利用(Resource utilization)在规定的条件下,软件产品执行其功能时,所使用的资源数量、类型及其使用时间。复复杂性(性(complexity)从从软件体系件体系结构的构的层次上次上说明:明:每个功能都可以测量这个属性,时间和空间与组件密切相关。软件体系结构的质量属性2012/9/23282 概念与方法5 可可维护性性易分析性易分析性(Analyzability)软件产品可被诊断软件中的缺陷或失效原因,以及判定待修改部分的能力。易改易改变性性(Changeability)软件产品使指定的修改可以被实现的能力。稳定性定性(Stability)软件产品避免软件避免由于软件修改而造成意外结果的能力。易易测性性(Testability)软件产品使已做修改能被确认的能力。软件体系结构的质量属性2012/9/23292 概念与方法6 可移植性可移植性适适应性性(Adaptability)软件产品无需采用有别于为考虑该软件的目的而准备的活动或手段,就可以适应不同的指定的环境的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.为适应而出现的机制,比如特定的类或者参数。2.度量根据机制的出现与否来决定其值为1或者0。软件体系结构的质量属性2012/9/23312 概念与方法6 可移植性可移植性可安装性可安装性(Installability)软件产品在指定环境下可被安装的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.安装机制的存在。2.这个子特性根据机制的出现与否来决定其值为1或者0.软件体系结构的质量属性2012/9/23322 概念与方法6 可移植性可移植性可共存性可共存性(Co-existence)软件产品在公共环境中同与其分享公共资源的其他独立软件共存的能力。从从软件体系件体系结构的构的层次上次上说明:明:1.为满足共存的设计的机制。2.这个子特性根据机制的出现与否来决定其值为1或者0.软件体系结构的质量属性2012/9/23332 概念与方法6 可移植性可移植性可替代性可替代性(Replaceability)是指软件产品在环境相同、目的相同的情况下替代另一个指定软件产品的能力。从从软件体系件体系结构的构的层次上次上说明:明:这个属性用表格来列出每个组件可以被替代的候选项。软件体系结构的质量属性2012/9/23343 案例通通过案例分析来案例分析来说明本模型的明本模型的应用用股票交易监控系统(StockExchangeMonitoringSystem)该软件监视股票市场的变化并向用户发送信息提示,只提取部分需求分析。部分需求表述部分需求表述该系统包含一个feedserver,提供feed反馈给dataserver,feed中包含了股票变化的相关信息。Client分布在不同地理位置,全部依靠dataserver提供数据,当feed改变,dataserver就广播出去,系统的延迟取决于网络结构。系统要求安全性高,易用性强,跨平台,可信度高,并使用Internet和定制的浏览器。软件体系结构的质量属性2012/9/23353 案例考考虑使用的两种不同的体系使用的两种不同的体系结构构-发布布订阅模式模式Publisher/Subscriber(push model)用户订阅信息记录在CSDB中股票数据在DB中软件体系结构的质量属性2012/9/23ClientsubscriptionsDBsubscriberpublisherDBFeedreceiverSubscriptionSendchangedvaluesBrowsersClientsSendchangedvaluesSendFeedsStoreAntenna基于发布订阅模型的体系结构363 案例考考虑使用的两种不同的体系使用的两种不同的体系结构构-资源源库模式模式Repository客户请求在CIDB中股票数据在DB中软件体系结构的质量属性2012/9/23ClientinvoicesDBDataServerDBFeedreceiverRequestfromclientAcknowledgmentResponsetoclientBrowsersClientsresponseSendFeedsStoreAntennaRequest基于资源库模型的体系结构373 案例比比较两种不同的体系两种不同的体系结构构软件体系结构的质量属性2012/9/23CharacteristicsSub-characteristicsPublisher/SubscriberRepositoryCommentsandresultsFunctionalitySuitabilityyesyesAccuracy=NospecialcomputationrequiredInteroperabilityyesyesCommunicationthroughbrowsersSecurityMechanismforasubscriptionMechanismforeachclientrequestPublisher/subscriber is better383 案例比比较两种不同的体系两种不同的体系结构构软件体系结构的质量属性2012/9/23CharacteristicsSub-characteristicsPublisher/SubscriberRepositoryCommentsandresultsReliabilityMaturityMaturity(Reception)+Maturity(DB)+Maturity(Publisher)+Maturity(Subscriber)+Maturity(SubscriptionDB)Maturity(Reception)+Maturity(DB)+Maturity(DataServer)+Maturity(ClientinvoicesDB)Repository is betterFaultTolerance(availability)=DependsonadditionalmechanismRecoverability=DependsonadditionalmechanismUsability=DependsonthebrowsersGUI393 案例比比较两种不同的体系两种不同的体系结构构软件体系结构的质量属性2012/9/23CharacteristicsSub-characteristicsPublisher/SubscriberRepositoryCommentsandresultsEfficiencyTimebehavior(timespentfromthedatareceptiontothedatadelivery)time(Reception)+time(storeinDB)+time(sendchanges)+time(Publisher)+time(sendchangedvalues)time(ClientRequest)+time(ClientinvoicesDB)+time(DataServer)+time(request)+time(DB)+time(responseDataServer)+time(ResponsetoClient)Publisher/subscriberisbetterResourceutilization(time)BrowserdisplaysalwaysBrowserdisplaysonrequestRepositoryisbetterResourceutilization(space)Size(subscriptionDB)Size(invoicesDB)Dependsonexternalissues,suchasthevolumeofclientrequests403 案例比比较两种不同的体系两种不同的体系结构构软件体系结构的质量属性2012/9/23CharacteristicsSub-characteristicsPublisher/SubscriberRepositoryCommentsandresultsMaintainability=DependsonthecodeinmodulesPortability=Dependsonadditionalmechanisms413 案例比比较后的后的结论基于发布订阅模型的体系结构在安全性和时效性方面超越基于资源库的体系结构,而资源库模型在成熟度方面(具体表现在该架构所使用的组件)和资源利用强于发布订阅模型(具体表现在请求和响应机制)。更注重哪个更注重哪个质量?量?质量的评估结果最后要结合需求,再做出选择。软件体系结构的质量属性2012/9/23424 总结比比较软件体系件体系结构,构,权衡衡优劣的劣的过程建立在程建立在质量属性的量属性的规则说明之上明之上步步骤描述如下:描述如下:1.分析主要功能需求和非功能需求,建立质量需求和质量目标。2.使用ISO9126质量模型建立软件体系结构质量评估框架。3.列出所有候选的体系结构。4.为候选的结构建立比对表。5.为质量需求和质量目标的特性排序,利用ISO9126来组织和指定质量的优先等级。6.根据5中的优先级分析表中列出的项。7.从候选架构中选择最优架构。8.要进一步进行更精细的分析,可以使用基于场景的分析方法,考虑和质量属性相关的问题,如5中描述的那样开始分析。软件体系结构的质量属性2012/9/2343THANKS医学资料仅供参考,用药方面谨遵医嘱展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




软件体系结构的质量属性.ppt



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2947464.html