多版本模型开发与可视化DAML智能合约
多版本模型开发
在项目开发中,多版本模型(MVM)的处理存在一些挑战。由于项目中版本数量众多,且许多元素仅存在于少数版本中,这会导致处理大量版本集,从而降低MVM在该场景下的性能。
多版本模型及其作为单版本模型集合的表示方式的内存消耗情况显示,与简单编码相比,多版本模型的表示更紧凑。例如,在较大的项目中,多版本模型的表示紧凑度是简单编码的30倍。
不过,实验结果的有效性存在一些威胁。意外的JVM行为对内部有效性构成威胁,为了减轻这种威胁,我们对每个测量执行时间的实验进行多次运行,并对垃圾回收所花费的时间进行分析。为了解决外部有效性的威胁,我们在实验中使用了真实世界的数据和格式良好的约束条件。虽然我们使用了自己的模式匹配工具,且该工具在之前的工作中表现出了足够的性能,但示例约束并不具有代表性,从源代码中提取的单个模型版本的折叠可能会产生比必要更大的多版本模型。因此,我们的结果不一定具有普遍性,而是对所提出方法的早期概念性评估。
在相关工作方面,大多数实际的版本控制系统是针对文本文档的,但模型的版本控制和合并也得到了广泛研究。已经存在几种正式和半正式的模型合并方法,例如Taentzer等人的方法,它是基于图层面的正式定义解决方案,我们的方法也基于他们的模型合并概念。他们的工作还考虑了通过构建临时合并结果来检查格式良好性约束,但每次合并都需要执行检查。
一些方法基于对原始更改序列的分析来检测合并冲突或模型不一致性,但这些方法没有考虑多个版本和成对合并的情况,也没有采用基于图的不一致性定义。对于更一般的模型版本控制问题,既有正式的解决方案,也有工具实现。有些技术与我们的方法类似,基于多个模型版本的联合表示,但
超级会员免费看
订阅专栏 解锁全文
80

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



