迈向通过不变性检查实现模型转换行为保留的自动验证
1. 引言
在高质量软件的模型驱动工程中,模型转换的正确性至关重要。许多与质量相关的活动依赖于转换的源模型,而非单个转换或转换链的结果。只有当模型转换正确无误且不引入额外错误时,才能充分发挥使用高级源模型的优势。
行为保留是避免在模型驱动工程过程中引入语义错误的关键正确性属性。行为保留验证技术主要有两种:一是证明特定属性得以保留;二是更普遍且复杂的,证明转换的源模型和目标模型之间存在某种双向模拟关系。目前,这两种验证目标在实例级别已有自动工具支持,即针对模型转换指定的给定源模型和目标模型。然而,在转换级别,即针对模型转换指定的所有源模型和目标模型,尚无自动验证方法。
通常,转换开发和使用该转换的应用开发是不同人员甚至不同组织负责的独立活动。在应用开发阶段才发现转换不正确往往为时已晚。因此,在转换开发阶段就确保其行为保留非常必要,但目前还没有能自动解决此问题的通用证明方案。此前虽有半自动化方法和手动证明策略,但都未实现自动化,且部分方法仅针对模型重构的特殊情况,未涵盖完整的模型转换。
本文提出了一种针对由三元图语法(TGG)指定的模型转换和由图转换系统(GTS)给出的语义定义的行为保留自动验证方法。具体而言,证明了行为保留问题可转化为图转换的不变性检查,在受限情况下可使用现有验证技术自动验证。通过将TGG映射到特殊类型的图转换,使转换和语义以统一方式表示,便于将问题映射到GTS的不变性上。本文还通过简单示例展示了当前可实现的自动化程度,讨论了图转换不变性检查的现有局限性,并为未来工作指明了方向。
2. 基础概念
2.1 图条件
嵌套图条件对相关概
超级会员免费看
订阅专栏 解锁全文
1901

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



