论文部分内容阅读
如何高效、低成本地开发优质的软件产品一直是计算机软件领域重点研究的问题。模型驱动工程(MDE)被认为是软件开发技术朝此目标发展的一条新的道路。MDE的核心部分是建模和模型转换,本文即是围绕着MDE下的建模和模型转换,针对提高建模效率、增强模型的可复用性和可移植性以及保证模型转换质量等问题展开研究工作。主要内容包括:
⑴研究了将设计模式作为完整的建模单元引入到MDA中,以增大建模单元粒度,提高建模效率。该工作的思想是:在MOF的元-元模型层进行扩展,以支持设计模式元建模。在模型层提供建模支撑机制,以支持单元化的模式建模及模式与业务的绑定。同时,为模式单元提供转换规则,从而为建模结果向实现平台自动转换提供支持。此外,还给出了基于模式单元进行MDA开发的框架。
⑵研究了通用的异构模型转换途径,以提高模型的可移植性和复用性。该工作的思想是:将异构模型之间的转换过程分为三个部分,在语言层面上实现同构化元建模、语义映射和语法转换。同构化元建模为不同的建模语言建立同构的元模型;语义映射建立元模型之间的语义匹配;语法转换为模型构造具体文本语法。我们还基于AMMA开发平台实现了该转换途径的支撑工具原型。
⑶基于所提出的异构模型转换途径研究了MARTE模型向FIACRE和LOTOS形式模型的具体转换,以及OMG SysML模型向LOTOS形式模型的转换。通过引入形式模型,以支持复用相关工具检验MDE下的模型转换前后的一致性,从而提高模型转换的质量。同时,这些具体的转化研究也体现了我们所提出的转换途径的有效性。
⑷如何以设计模式为完整的MDE建模单元进行建模及转换。所谓完整的MDE建模单元指的是不但能够以此单元为基本单位构造模型,同时还可以将构造的模型向实现方向上进行转换。我们在元-元模型层扩展MOF,定义了设计模式元-元模型,用来构造模式单元元模型。任意一种模式都可以通过扩展的模式元-元模型进行定义,这个过程也就是构造模式单元的过程(即模式单元元建模)。同时,我们还提供了针对模式单元的建模支持,支持以分离业务模型和模式模型的方式进行系统建模。此外,针对EJB平台构造了模型转换规则,可以将通过模式单元构造的模型转换到EJB平台上。
⑸提出了通用的MDE异构模型转换途径。MDE中存在着大量不同的(域)建模语言,如图形化的UML、OMG SysML以及文本化的XMI、LOTOS等。用不同的建模语言建立的模型通常彼此异构,难以集成。该途径支持对模型域和文本域的不同形式的模型进行转换,且基于目前MDE领域获得普遍认可的开源项目AMMA平台进行实现,具有良好的通用性和实用性。此外,该途径支持以分离语义映射和语法转换的方式构造异构模型的转换桥。这样可以更好的支持对转换结果的复用。
⑹研究了如何将MARTE模型转换到FIACRE和LOTOS形式模型上。MARTE是OMG专门针对实时和嵌入式系统的建模规范,目前受到学术界和工业界的广泛关注。FIACRE和LOTOS分别是两种可以描述实时和并发的形式模型。这一部分工作从语义和语法两个层次对MARTE、FIACRE和LOTOS进行了研究,分别构造了MARTE到FIACRE以及MARTE到LOTOS的转换桥。这两种转换桥的具体构造过程就是基于我们所提出的异构模型转换途径完成的,因此也进一步证明了该途径的有效性和实用性。
⑺研究了如何将OMG SysML模型转换到LOTOS形式模型上。OMG SysML是OMG刚刚发布的一个系统建模语言,可以针对系统工程应用和分析进行建模。本文针对OMG SysML在行为上的特点,给出了该建模语言向LOTOS形式模型的转换。与上一个工作相类似,OMG SysML到LOTOS的转换过程也同样是基于本文提出的异构模型转换途径完成的。在这一部分的工作里,我们通过复用MARTE到LOTOS转换桥的语法转换部分,完成了OMG SysML到LOTOS的转换桥。因此,这一部分工作也进一步证明了该途径所构造的转换桥具有良好的复用性。