论文部分内容阅读
随着Web应用的迅速发展和广泛应用,其性能验证与提高也越来越受到重视,而大型软件开发都是按照软件生命周期完成的,性能问题总是在Web应用实现之后才能准确地表现出来,而这时的评价已经没有意义,因为这时的性能失败很可能意味着整个Web应用项目的失败。因此,在Web应用开发生命周期内引入性能的评价机制对保证Web应用开发的顺利开展具有重要的意义。UML(Unified Modeling Language)作为现行的工程建模标准语言,利用软件开发生命周期内所得的UML文档来提取软件性能数据是软件性能评价方法的主流途径。然而UML是半形式化语言,缺少进行软件性能评价的完备性方法,因此需要借助形式化语言的计算方法与分析技术对由UML文档表达的性能场景进行性能评价与验证。着色Petri网(CPN)是一种形式化语言,而且基于模拟仿真的性能分析不涉及状态空间爆炸的问题,不过真正做到性能评价必须要求评价者按照CPN的规范自己建立评价模型,然而这要求评价者对CPN规范的熟练掌握,这对一般的性能评价人员是极大挑战。基于UML在软件建模以及CPN在动态模拟方面的各自优势,将UML图扩展为评价模型,进而向CPN模型转换被认为是最适合解决软件性能评价问题的方法之一。前人对UML图件向CPN模型的转换进行了大量探索,他们研究的一些性能评价方式都是针对软件开发周期生成的几种UML文档图件,通过扩展转换成相应的CPN模型。这类方法的主要不足没有落实成具体的转换机制,基本都属于图形转换,而且由于两种图件语义的差异,转换往往需要大量人工干预,不利于模型自动转换的实现。
本文在前期研究的基础上,致力于UML/CPN软件性能评价模型自动转换机制研究。引入了一种“性能评价可执行模型”的中间模型,该模型有多种类型节点构成,提供类似于结构化高级语言的支持,同时具有支持层次建模,接受随机事件进入等特点。性能评价用的UML图可以方便转化为该中间模型,而该模型向CPN模型转换中,各类节点直接对应于CPN模型的一种结构或一个模块,从而为自动转换奠定了基础。通过基于CPN的性能评价方法得出性能评价结果,在分析与设计阶段即可对软件性能做出评价。本课题的研究是UML/CPN模型转换机制的理论创新,将模块化思想引入转换机制中则是一种应用创新。