识别和解决基于原子合并冲突的复杂模型合并冲突的系统和/或方法技术方案

技术编号:8413041 阅读:264 留言:0更新日期:2013-03-14 02:06
本发明专利技术公开了一种交互式的模型合并系统和/或方法。更具体地,本发明专利技术实施例涉及利用在合并过程中获得的基本信息以帮助用户解决高级合并冲突。在一些实施例总,高级合并冲突的识别有助于获取在大范围内正在合并的模型之间的语义差别(例如,覆盖一个冲突中的可能大量的模型元素)和/或可能有助用于在减少操作的情况下轻易并快速地解决合并冲突,而不是留给用户基于原子元素(例如,对象和带非空合并状态的关系)的水平解决这些合并冲突。这种高级冲突在其高水平上可被解决的或者在依赖于冲突类型的低水平上被分解或解决。

【技术实现步骤摘要】

本专利技术实施例涉及一种交互式的模型合并系统和/或方法。更具体地,本专利技术实施例涉及利用在合并过程中获得的基本信息以帮助用户解决高级合并冲突。高级合并冲突的识别有助于获取在大范围内正在合并的模型之间的语义差别(例如,覆盖一个冲突中的可能大量的模型元素)和/或可能有助用于在减少操作的情况下轻易并快速地解决合并冲突,而不是留给用户基于原子元素(例如,对象和带非空合并状态的关系)的水平解决这些合并冲突。
技术介绍
模型可能被认为用于描述复杂应用辅件(artifact)(例如,业务流程,数据结构,软件系统的结构和行为等),其中复杂应用辅件(artifact)不是表现为非正式形式,而使用定义明确的抽象语言的建模基元和习惯,也就是,所谓的元模型。常见的元模型包括建 模语言的UML家族(例如,UML类图,UML协作图等)、BPMN元模型、建模语言的ARIS家族(EPC、VAC和FAD等)、实体关系(元)模型(EPM)、关系(元)模型等。作为一种抽象语言的元模型,其本身是可以被使用或示例以描述实际模型的建模元素的集合。例如,UML类图的建模元素为类、关联和特性等,而关系模型中的建模元素为关系以及它们的属性。原则上元模型不依赖于具体标记(这样因此被称为上述的“抽象语言”),例如,被认为是只定义语言概念和形成元模型的有效模型的使用规则。当然,需要使用具体标记对元模型进行实际建模。例如,带三个“分区”的框表示UML类,在ERM中使用标记的矩形和方块表实体和关系等等。许多元模型的共同特征是其相应的模型可以表示为一个图形,该图形包括点和边,而点和边一起被认为是图形的“元素”。处理不同类型模型的软件系统(例如,所谓的模型管理系统)通常使用一些类型的图模型以作为所有的类型的模型的内在描述。模型合并涉及从两个模型A和B中创建一个单一的合并结果模型C (其中,A和C表示为相同的元模型),该合并结果模型C描述一系列相同或重叠的应用辅件(artifact)(例如,相同的软件系统,相同的业务流程等等),但是或多或少有区别地描述这些辅件(artifact)。例如,A和B可能为相同的原始模型各自改良后的两种形式,否则无需准确描述具有重叠部分的应用领域的相同方面。理想情况下,一个合并通常表达一个不带任何冗余的合并模型C,例如,均出现在A和B中的模型元素最多只在C中出现一次。依赖于C的准确目的,通常希望保留出现在A或B的所有元素(例如,为了不失去输入模型的任何信息)。然而,这通常不是一般要求。进一步的,希望使C前后一致且格式完整以满足其相应的元模型的所有约束条件。由于模型一种图形,模型合并相比更为普遍(通常为线性测量)的对完成的文件文档的合并,更具不同的挑战,例如,在形式控制系统中。如果各自元模型存在文本的(例如,基于XML的)标记,那么基于文本的模型合并自然是可能的。然而,基于文本的合并工具并不是处理模型合并的本来工具。第一,大部分的文本表示被人们直接使用是不合适的,而相反需要作为存储格式和/或在模型交换中使用。特别的,(线性)的文本表示通常在非线性、模型本身的图状结构很不同,从而使直接使用这些表示很复杂。第二,即使模型很小的改变也会导致文本表示的巨大变化,从而使得很难区别模型水平的实际改变和文本表示需要的纯“语法”的改变。因此利用基于文本的工具进行模型合并是不适当的。两个模型A和B的合并还涉及一种方法,用于识别分别来自A和B的一对元素%和Iv其中,元素%和h视为相 同的并经过成功的合并操作后仅仅一次出现在合成的模型C的那些元素。这里所使用的“相同的”一对元素通过映射关系mapAB:A x B而被提供。可以理解mapAB作为一种关系,不需要是一个内射或满射甚至是一个这样的函数一般的,A中的模型元素不一定在B中也出现,反之亦然;而A中的元素%可能在B中具有多个相同的元素,......b#,反之亦然。从两个模型A和B中形成的这样一个maPAB的方法有时候也被称为模式或模型匹配。在其他方面,这样一个mapAB也可能在生成模型A和B的过程中形成。根据mapAB的内容,能够区分A和B中的不同类别(对、组或个)的对象 I,如果对象 ai e A 以及对象 bj e B 通过 mapAB (i.e. , (aj, bj) e map^)鉴定为相同的,而且没有其他的关于ai或bj的实体存在于mapAB( a* s,l ( ax, bj) mapAB) Λ · sX( a1; by) mapAB),并且如果屮和b」与合并方法相关的所有属性相一致(例如,特定属性等),那么%和h称为等价的。如果%和h在部分它们合并相关的属性中不同,这些对象是改变的。2,对象Bi e A(或者bj e B)同时不存在对象b」e B(或者Bi e A),那么汍,bj) ^ mapAB C^bjeB s.t —mapAB)(或者|ai s,t (aifbj)smapAe)被称为 A 的附加值(或B的附加值)。3,如果对象 ai e A 以及对象 bj e B 通过 mapAB(i. e. , (ai; bj) e mapAg)鉴定为相同的,而且没有其他的关于Si或bj的实体存在于mapAB($a* s,l ( ax, bj) mapAB)V 2b>' sxCa1, by) G mapAB),这些对象是冲突的。通过这些信息,现在利用合并方法生成一个连贯的结果模型C。当处理相同的对象比较琐碎时,对于其他类型的对象,需要做出决定是否并且如何接受这些对象到结果模型C中。这些决定依赖于模型C的预期目标、冲突(conflicts)的详细资料以及生成的A和B的内容等等。这些考虑显示了模型合并必然为一项人为作业,其中只有一些琐碎的作业能够安全地自动操作。因此,一般的,需要人为决定取自A和B中的那些元素和属性到结果模型C中。通过下面详细的描述可以更清楚的显示,一些实施例描述的有关提高的技术能够为用户完成这个作业做支持,例如,在ARIS模型变换分量的环境下。ARIS模型变换分量允许公开描述一种类型的模型如何被变换成一种不同(或有时相同的)模型类型的语义相关的模型。图I显示了这种变换的一个实例。在图I中,使用事件过程链(EPC)元模型设计的业务流程被转换成业务流程建模符号(BPMN)元模型中的等同过程。这种转换被称为EPC-to-BPMN转换。当面向商业的用户是使用EPC元模型以获取是(或应该是)在一个组织中进行处理的业务流程时,BPMN也作为覆盖更多
的元模型和符号。使用EPC-to-BPMN转换,通过EPC形成的BPMN被作为丰富过程的业务视图的开始点,以及技术资料从根本上使过程在适合的运行环境例如作业流程管理系统(WfMS)中被执行。该转换的描述通过所谓的转换模式(transformation patterns)定义,限定了原始模型的一个或一组元素如何转换成目标模型的相应元素。特别地,申请号为No. 61/071,255,名称为“描述标记之间的模型转换的图示发展规律的系统和方法”的美国申请专利公开了 ARIS模型转换和描述转换模式的图示方式。在模型转换中,经常发生这样的情况通过一个转换时期而产生一个原始转换的模型T后,原始模型S被业务用户改变,从而生成改进的原始模型S’。本文档来自技高网
...

【技术保护点】
一种解决模型合并冲突的方法,其特征在于,所述方法包括步骤:通过至少一个处理器合并第一模型和第二模型而形成一个冲突模型;通过至少一个处理器而探测出至少一个基于所述冲突模型的高级冲突,所述探测步骤发生在所述形成步骤之后;显示所述至少一个探测出的高级冲突列表和一个冲突模型的视觉再现,其中,每一所述高级冲突包括原子和/或其他高级冲突的组合,并被分类为:(a)包括多个原子冲突的简单高级冲突;或(b)包括至少一个其他高级冲突的复杂冲突;以及在显示所述列表和所述冲突模型的视觉再现后,,使用户能够解决至少一个探测出的高级冲突。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:尤尔根·格雷斯
申请(专利权)人:德商赛克公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1