模型组合指令与查询模型:挑战与解决方案
1. 模型组合相关工作
在模型组合领域,存在多种不同的方法。例如,有一种基于主题的方法,该方法中一切都是主题,整个系统设计通过所有主题的组合获得。主题的组合包括在模型中添加或覆盖命名元素。然而,这种方法存在一定局限性:
- 不支持合并与模型相关的约束。
- 除了元素被覆盖而隐式删除外,不支持元素的删除。不过,该操作支持通过冲突元素之间的优先级和覆盖关系进行冲突调和。
还有一种方面组合过程,它会识别设计元素中的匹配点并定义组合规则。规则使用已识别的匹配点、量化对其他方面影响的二元贡献值(正或负)以及给定方面的优先级。在面向方面编程(AOP)的背景下,也有基于方面之间依赖关系的组合规则。
2. 模型组合指令的定义与特性
定义了一组组合指令,这些指令有助于定制模型组合。它们具有以下重要特性:
- 表达常见组合操作 :可以指定常见的组合操作,如重命名和替换类及操作。
- 元素的创建与移除 :能够用于指定模型元素的创建和移除,从而显著改变模型的组合方式。
这些指令为支持相关方法的工具开发提供了基础,同时也为描述组合操作提供了通用词汇。
3. 查询软件工件的需求
在现代软件开发中,查询软件工件是一个新兴的设计问题。像模型驱动架构(MDA)和面向方面软件开发(AOSD)等新技术,高度依赖强大的指定手段来定位软件工件中的元素,这些元素随后会通过转换进行修改或通过编织过程进行增强。
4. 现有查询规范方法的问题
当
超级会员免费看
订阅专栏 解锁全文

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



