软件体系结构的质量特性
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件体系结构的质量特性
摘要:众所周知的是,为了降低风险和减少构建软件系统的困难,人们在软件开发过程的早期应该首先考虑质量问题。此外,系统的结构驱动着整个开发过程。备用的结构中非功能性质量需求的实现决定了选择衔接整个系统的便利结构。这一议题在可靠的变革的应用程序构建中非常重要。软件开发的思想并没有在这一重要阶段给与很多细节关注。这篇文章详述了软件体系结构的质量特性,并且介绍了一种基于ISO 9126-1标准的技术。ISO模型的质量特性被精炼成为一种属性。而这种属性可被度量以增加体系结构的信息。我们的技术通过比较各自的质量属性的值从一组候选中挑选出适当的体系结构。并以一个关于监制系统技术应用程序为例说明。我们的方法有助于在体系结构分析过程中正确选择的决定。它可以很容易的被并入一般软件开发的过程或者一种特别的体系结构设计思想。
简介:在软件开发早期阶段以非功能需求为目标的质量需求极大的影响了软件系统的体系结构。但是,系统核心功能需求的提取在初始的系统结构的确定上扮演着重要的角色。另一方面,质量需求在软件设计阶段需要平衡[Kazman et al. 2000]。仅仅在最近,精确的软件体系结构设计的重要性(并不是局限于笔纸图画符号的设计方式)为了可靠的系统结构而蓬勃的发展起来[Bachmann et al.1996], [Bosch 2000], [Krutchen 2000].。那些包括istribution, adaptability, interoperability, component reusability and real-time issues 现代的应用软件需要一个早期的体系结构的定义来满足可维护行和可靠性之类的质量需求。这些对于在架构之下的软件系统全部功能性需求目标的完成是至关重要的。特殊的,使用网络服务的新的信息系统,比如基于网络的电子商务应用程序,没有过多关心软件工程的时间而是因市场需求而发展的及其迅速。此外,此种产
品的质量不在讨论范围之内。然而,当一个HTML页面在浏览器端显示出来的时候,我们马上就能意识到我们是否使用了一个好的或者坏的网络应用程序。像可用性,可靠性或有效性等的因素涉及到这个快速的评估。事实上,自从系统开发之初,软件开发者们对网络应用程序的质量特性就没有一个清晰的描述,正如我们所指出的,软件工程的范例通常被忽略。比如,即使当应用程序数据的语义与描述分离是一个可接受的范例,H TML i s n o r m a ll y u se d
r e g a r d l e ss o f t h i s i ssue,直到最近,XML才被接受。于是,质量需求的详述就成为了一个有趣的问题。在功能需求的详述过程中,质量需求可能会隐藏的出现,比如在一个纯文本用例或一个方案中。但是在标准的面向对象思想中没有直接的指导方法和清晰的建模原理来捕获或详细描述质量需求。并且我们直到软件体系结构的设计不是一个独立的行为,而是软件产品开发和改良过程中的更进一步的阶段。软件体系结构应该作为一个主要的侧重点以建立更清晰可重用的软件框架f o r gu a r a n t ee i ng t o a c e r t a i n e x t e n t,t h e
o v e r a ll qu a li t y o f t h e r esu l t i ng so f t w a r e p r o du ct s.
本篇文章的主要目的是介绍(建议)一种基于ISO 9126-1 [ISO/IEC 1998]标准的技术来描述相应的软件质量特性,而这种技术为品质等级或其他可测量的要素所精确描述,并参与软件体系结构的设计过程之中。作为体系结构设计阶段中,质量特性的详细说明和规范度量是软件体系结构改进过程的基础,而这些改进过程允许对最初设计进行改进和增加。这种基于系统的某些关键功能需求而选择的备案在设计过程中不断被转变和改进以达到预期的质量目标,而这些质量目标正是系统应当达到的质量需求的价值所在。在这一过程中为了最终的系统,质量需求经常被转化为隐性的功能需求[B osch2000],比如最终的系统把这些需求表达为附加的机制。但是,在一般习惯性的软件分析和设计思想中,这些质量特性的
详述和评估的表述仅仅基于设计者的经验。ATMT(基于构架的权衡分析方法)[K a z m a n e t a l.2000]与我们的方法有一些共同之处。它使用了一种称之为
u t ili t y(sy s t e m g oo dn e ss)t r ee的质量特性详述标准来将基于精确质量特性的方案分清主次。体系结构和属性的信息被收集到ABAS
(A tt r i bu t e-B a se d A r ch i t e ct u r a l S t y l e)框架中[K l e i n a nd K a z m a n
1999].。但是如何获得质量视图是如此描述和为何仅有一个描述等级的utility tree并不清楚,并且质量特性的解释并不标准。utility tree通过一组可被驱动的体系结构测试方案来给与方案优先权来确定关键之处。特性的测量通过stimuli,参数和响应来显示。我们的方法使用根据ISO 9126-1标准的质量模型来考虑质量需求的详述。这个在结构上接近ATAM质量树的等级模型对于软件体系结构很合适。ISO质量模型现在是软件工业的标准并且它通过高度抽象的层次来解释。它由内部和外部因素和使用品质特性视图的质量决定的。这种质量特性(ATAM的特性)恰好被很标准的解释,并且特性的度量通常很普遍,它可以为详细的应用做更进一步的解释。软件运行环境的质量是由用例模型的质量决定的,也就是在上下文的使用中,用户对于质量的观点。此篇文章中我们只关心有关内外因素质量模型,而这个质量模型分别描述了用户和开发者的观点。为了完备使用的质量,这个系统必须达到内部和外部的目标。在软件开发过程中出现如下情况:当软件作为电脑系统中的一部分和内部软件评估或是实体属性测量的结果时,质量特性常常被详细描述为显现的外在子特性。在我们的例子中,不得不把这些属性转化或翻译成称之为媒介软件产品的软件体系结构。在软件开发过程中获得的特性的值可被用来校验内部的质量目标,而这些内部的质量目标有助于确认最终软件系统要求的外部目标[SO/I E C1998].。拥有质量特性详细描述这样的事实为体系结构详细说明增加了更多的信息,这样有助于为解决特定设计问题而挑选体系结构的设计过程。
除了介绍和结论,;论文的主要部分如下:——为详述软件体系结构的质量特性,给出了一个基于ISO 9126-1标准的通用质量模型的描述。——一个实例的研究,在这个实例中,我们将获得的通用质量模型来进行使用网络设备的实时监视系统