具有继承和包含结构的类型化图的组件概念
1. 引言
在软件工程领域,软件的复杂度不断攀升,而模型驱动开发(MDD)成为应对这一挑战的有效范式。MDD以模型为核心,通过抽象来管理软件的复杂性,再由代码生成器添加实现细节。
在传统软件开发中,分布式团队协作是常见模式。在MDD中,虽然可以建立中央模型仓库来支持模型的物理分布,但对于逻辑上的分布式开发,这种方式并不总是适用,例如开源开发中分布式团队在独立项目中的协作。
为解决这一问题,提出了基于图和图态射的模型组件概念,允许模型的逻辑分布。复合图由图的各个部分通过直接或接口方式相互协作构成。每个组件配备任意数量的导出和导入接口,导出接口提供模型部分给外部环境,导入接口指定所需的模型部分。这种明确的接口声明使组件模型可以独立定义并在后续进行连接。
Eclipse建模框架(EMF)是一种广泛使用的技术,它基于结构数据模型提供建模和代码生成功能,符合Essential MOF(EMOF)规范。在EMF模型中,包含概念至关重要,它描述了一种所有权关系,要求实例模型中的包含结构无环,即对象最多属于一个容器,禁止循环包含。
EMF支持模型的物理分布,但在逻辑分布方面存在不足。例如,开发两个管理工具(部门管理和项目管理)时,希望通过导入和导出接口明确它们之间的交互,但EMF的现有机制无法很好地满足这一需求。
本文将具有节点继承和包含边的类型化图作为EMF模型的形式基础,后续将构建基于此的组件概念,以支持具有继承和包含结构的类型化复合图的定义和转换。
超级会员免费看
订阅专栏 解锁全文

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



