提升架构语言互操作性的模型驱动技术与从规范到契约的转变
在软件架构领域,语言的互操作性至关重要。当前,支持架构互操作性的方法常采用星型拓扑结构,以中间的中心枢纽来组织不同的符号表示。当涉及的符号集无法预先确定时,这个枢纽就会以一个小内核的形式存在。然而,由于转换总是通过这个可能非常抽象的小内核进行,重要信息在转换过程中可能会丢失,因此需要对内核进行扩展。
内核层次结构与转换
在从 AADL 到 SaveCCM 的转换中,内核层次结构发挥了关键作用。Data、Event 和 EventData 端口与 RT + E + B 中的相应概念相链接,而这些概念又分别与 SaveCCM 的 Data、Trigger 和 Combined 端口相链接。这样,在从 AADL 到 SaveCCM 的转换过程中,所建模端口的语义得以保留。如果没有内核层次结构,直接通过 A0 进行转换,由于 A0 只有通用端口的概念,就会丢失与端口相关的特定信息。
方法讨论
- 通用性 :该方法整体应用于软件架构领域,特别是架构描述语言(ALs)。不过,通过用不同的根内核元模型替换 A0,内核层次结构和转换管理可以轻松应用于不同领域。根内核元模型的定义具有战略性,需要特别关注。此方法有望成为一种新的“配置文件”机制,支持未来 UML 中设想的可扩展性机制。
- 可扩展性 :根据相关内容,内核可以根据指定的编织模型以多种不同方式进行扩展。为了正确管理转换,需要在层次结构中添加一些“工作”元模型。目前已知可用的架构描述语言约有 50 到 60 种,虽然对可能的扩展进行精确估计较为困难,但基于
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



