论文部分内容阅读
性能是衡量软件系统质量的一个重要指标。随着网格计算技术的飞速发展,越来越多基于网格的各种应用系统被开发出来并投入使用,网格资源的异构性、动态性、自治性等特征使得网格环境下的分布式实时系统成为当今最复杂的软件之一,性能对其来说尤为重要。以往,软件的性能评价常被置于软件产品成形之后,但是发现问题后却要耗费大量人力和资金补救。实际上,重大的性能问题大多是由于基本体系结构等设计因素造成的。“以后修正”的方式显然难以弥补这种代价。软件性能工程认为在软件开发的早期阶段就应当通过研究软件体系结构来预测性能,提前识别性能瓶颈。这样可以在发现无法满足性能目标的情况时,采取更简单和经济的方式来解决问题。面向方面技术很好的解决了横切关注点的模块化问题。它的一个核心思想是,不同方面可以独立开来使用不同方法来描述和建模。分布式实时系统的时间分析是非常复杂的,不同的功能可能具有不同的时间特性需求。可以从分布式实时系统的关键属性——时间性出发,把时间方面进一步分解为确定的、不确定的和模糊的时间子方面,以便于使用合适的形式化语言表达。基于此,本文提出一个面向方面的性能分析过程,在软件开发早期进行性能建模,并对软件性能做出评价。该过程的关键在于,对涉及不同时间子方面的性能场景,可以独立使用不同的、最合适的建模和分析技术,最后把分析结果综合起来考虑,作为系统性能评价的重要依据。在分析过程中,首先要识别出包含不同时间特性的性能场景;对这些场景,参照SPE过程,为UML设计视图,包括描述系统体系架构的结构图和描述性能场景的行为图,添加SPT性能注释,以规范化的形式表达性能参数;之后进一步转换为形式化方法的模型,再通过相应的解析工具获得详尽、准确的分析结果。结合一个分布式Web应用例子,研究了一种从添加了性能注释的UML模型到LQN性能模型的转换方法,该方法适合于对确定时间性能方面的性能建模。