论文摘要
软件体系结构是控制软件复杂度、提高软件质量的一种重要手段。近年来,随着模型驱动技术在软件开发中的普遍应用,越来越多的基于构件的可视化建模语言被提出,相应的系统构件模型也大量存在于各个领域。因此有效复用现有构件的行为从而构造出符合要求的系统成为研究热点。尽管目前已经有一些形式工具能够在不同层面上解决构件组合问题,但如何在模型驱动开发中灵活高效地复用此类工具同样是一个值得研究的问题。此外,由于模型驱动技术领域中的大部分可视化建模语言缺乏严格的形式语义定义,因此所建立的系统模型往往存在不一致性的问题,系统的可信性无法得到保证,如何为模型驱动工程领域的非(半)形式化模型提供有效的验证及仿真支持也是学术界和工业界共同关注的问题。本文将实时嵌入式领域中的体系结构可视化建模标准AADL作为具体研究对象,从如何将AADL构件模型向接口自动机映射以解决AADL构件组合建模问题和如何将AADL模型向SystemC仿真平台转换以解决系统模型的动态仿真问题这两个方面进行了深入的讨论和研究。具体来讲,本文的研究工作主要包括以下内容:1.基于MDE思想和构件复用技术提出了基于AADL的体系结构建模框架。该框架可以充分利用已有AADL模型构件来帮助软件开发人员完成软件的体系结构建模工作。2.由于AADL是非形式化建模语言,所以在AADL构件组合时,一些交互活动的序列不匹配可能导致构件组合的行为不兼容,为了验证AADL构件的行为兼容性,提高AADL构件的可复用性,本文提出了基于MDE的异构模型转换框架将AADL转换到接口自动机(IA)的方法。该方法将AADL构件模型转换到IA,然后使用接口自动机支撑工具构造构件兼容运行的环境,最后将构造的环境映射到AADL构件从而解决了AADL构件模型的适应性组合问题。3.模型仿真是一种使用动态执行方式对软件模型进行分析和检验的技术,为了提高AADL体系结构建模的可信性,本文提出了AADL体系结构模型仿真的方法。该方法通过基于MDE的异构模型转换框架将AADI模型转换到SystemC模型,然后将SystemC模型转换为仿真代码,从而对AADL系统模型进行快速仿真提供支持。4.在具体研究了AADL模型仿真方法的基础上,本文进一步探讨了如何将该方法推广到建模语言MARTE和SysML上。通过研究这几类主流的实时嵌入式系统建模语言中构件建模相关元素的语义共性和区别,提出了兼容于这三类主流建模语言的体系结构级仿真方法。综上所述,本文基于模型驱动的思想和技术,解决了AADL的构件组合建模问题以及利用SystemC仿真平台对系统体系结构模型进行仿真支持的问题。