计算机科学 ›› 2021, Vol. 48 ›› Issue (12): 67-74.doi: 10.11896/jsjkx.201100024

• 计算机软件 • 上一篇    下一篇

基于元模型的协同建模模型组装与更新方法

张子良, 庄毅, 叶彤   

  1. 南京航空航天大学计算机科学与技术学院 南京211106
  • 收稿日期:2020-11-03 修回日期:2021-04-23 出版日期:2021-12-15 发布日期:2021-11-26
  • 通讯作者: 庄毅(zy16@nuaa.edu.cn)
  • 作者简介:zhangziliang0106@163.com
  • 基金资助:
    国家自然科学基金(61572253);航空科学基金(2016ZC52030)

Cooperative Modeling Model Combination and Update Method Based on Meta-model

ZHANG Zi-liang, ZHUANG Yi, YE Tong   

  1. College of Computer Science and Technology,Nanjing University of Aeronautics and Astronautics,Nanjing 211106,China
  • Received:2020-11-03 Revised:2021-04-23 Online:2021-12-15 Published:2021-11-26
  • About author:ZHANG Zi-liang,born in 1995,master.His research interests include software modeling and model verification.
    ZHUANG Yi,born in 1956,Ph.D supervisor.Her research interests include trusted computing and formal methods.
  • Supported by:
    National Natural Science Foundation of China(61572253) and Aeronautical Science Foundation of China(2016ZC52030).

摘要: 随着软件规模日益增大,软件复杂度不断提高,飞机、轮船等大型系统的设计与开发往往是由多个不同专业领域、具有不同职能的团队相互协同完成的。针对协同建模中局部模型之间缺失信息所导致的模型不完整问题和更新操作之间发生冲突所导致的模型不一致问题,文中首先提出了一种基于元模型的协同建模模型组装与更新方法(Model Combination and Update,MCAU),该方法在元模型上定义了协同关系与更新操作,可在协同建模过程中保证模型的完整性与一致性,并通过一个实例对所提方法进行了应用与分析。其次,文中还提出了一种基于模型驱动的软件协同建模框架(Software Collaborative Modeling Framework,SCMF),该框架可有效支持多种建模语言的扩展。最后,基于Eclipse框架开发了软件协同建模原型系统CorMo-del,并通过相关实验进一步验证了MCAU方法的有效性。

关键词: 协同建模, 元模型, 冲突检测, 模型完整性, 模型一致性

Abstract: With the increasing scale of software and the increasing complexity of software,the design and development of large-scale systems such as aircrafts and ships are often completed by teams with different professional fields and functions.Aiming at the problem of incomplete model caused by missing information between local models and model inconsistency caused by conflict between update operations,this paper proposes a method of modelcombination and update (MCAU) based on the meta-model.This method defines the collaborative relationship and update operation on the meta model,which can ensure the integrity and consistency of the model in the process of collaborative modeling.An example is given to illustrate the application and analysis of the proposed method.Secondly,this paper proposes a model driven software collaborative modeling framework(SCMF),which can effectively support the extension of multiple modeling languages.Finally,this paper develops a software collaborative mode-ling prototype system(CorModel) based on eclipse framework,and further verifies the effectiveness of MCAU through related experiments.

Key words: Collaborative modeling, Meta-mode, Conflict detection, Model integrity, Model consistency

中图分类号: 

  • TP311
[1]ROGER S.Software engineering:a practitioner's approach (7th ed)[M].McGraw-Hil,2009.
[2]BEZIVIN J.On the unification power of models[J].Software & Systems Modeling,2005,4(2):171-188.
[3]ROCCO J D,RUSCIO D D,IOVINO L,et al.Collaborative Repositories in Model-Driven Engineering[J].IEEE Software,2015,32(3):28-34.
[4]BOSCH J,BOSCHS P.Collaborative Software Engineering [C]//International Conference on Software Engineering IEEE Computer Society.2010.
[5]MISTRIK I,GRUNDY J,DER HOEK A V,et al.Collaborative Software Engineering:Challenges and Prospects[C]//Computational Science and Engineering.2010:389-403.
[6]PILATO C M,COLLINS-SUSSMAN B,FITZPATRICK B W.Version Control with Subversion:NextGeneration Open Source Version Control[M].O'Reilly Media,Inc.,2008.
[7]LOELIGER J,MCCULLOUGH M.Version Control with Git:Powerful tools and techniques for collaborative software deve-lopment[M]. O'Reilly Media,Inc.,2012.
[8]SUN Z,YE T,KONG X,et al.A Model-driven Collaborative Modeling Method for Software[C]//ICMSS 2020:2020 4th International Conference on Management Engineering,Software Engineering and Service Sciences.2020.
[9]PAGAN J E,CUADRADO J S,MOLINA J G,et al.Morsa:a scalable approach for persisting and accessing large models[C]//Model Driven Engineering Languages and Systems.2011:77-92.
[10]STEPPERE.Connected Data Objects-The EMF Model Repository[OL].http://www.eclipse.org/cdo/documentation/pre-sentations/EclipseCon_2008/CDO-Presentation.pdf.
[11]WUEST D,SEYFF N,GLINZ M,et al.Sketching and notation creation with FlexiSketch Team:Evaluating a new means for collaborative requirements elicitation[C]//IEEE International Conference on Requirements Engineering.2015:186-195.
[12]DEBRECENI C,BERGMANN G,RÁTH I,et al.Property- based locking in collaborative modeling[C]//2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems(MODELS).ACM,2017:199-209.
[13]GAO L P,YOU S W.Research on Semantic Conflict Resolution in Real-time Collaborative Programming Environment[J].Journal of Chinese Computer Systems,2019,40(4):9-17.
[14]KOSHIMA A A,ENGLEBERT V.Collaborative Editing of EMF/Ecore Meta-models and Models-Conflict Detection,Reconciliation,and Merging in DiCoMEF[C]//International Conference on Model-driven Engineering & Software Development.IEEE,2015.
[15]ELAASAR M,CONALLEN J.Design management:a collaborative design solution[C]//European Conference on Modelling Foundations and Applications.2013:165-178.
[16]SUNYÉ G.Model consistency for distributed collaborative mo- deling[C]//European Conference on Modelling Foundations and Applications.Springer,Cham,2017:197-212.
[17]WANG D,ZHU S Z,GAO L P.Research on Structured Document Collaborative Editing Based on the Partial Replication Architecture in Cloud Platform[J].Journal of Chinese Computer Systems,2018,39(10):114-121.
[18]ZHANG X,LI Z,ZHAO Z Y,et al.Research and Implementation of Collaborated Modeling Approach for Problem-oriented Software Development[J].Computer Science,2018,45(9):119-122,134.
[19]RUSCIO D D,FRANZAGO M,MALAVOLTA I,et al.Envisioning the future of collaborative model-driven software enginee-ring[C]//International Conference on Software Engineering Companion.IEEE Press,2017.
[20]FRANZAGO M,RUSCIO D D,MALAVOLTA I,et al.Collaborative Model-Driven Software Engineering:A Classification Framework and a Research Map[J].IEEE Transactions on Software Engineering,2018,44(12):1146-1175.
[1] 王铁鑫, 李文心, 曹静雯, 杨志斌, 黄志球, 王飞. 知识驱动的企业间协作参与者动态推荐方法[J]. 计算机科学, 2020, 47(6): 210-218.
[2] 杨立, 马佳佳, 江华禧, 马肖肖, 梁赓, 左春. 面向机器学习系统的需求建模与决策选择[J]. 计算机科学, 2020, 47(12): 42-49.
[3] 张晓, 李智, 赵子岩, 付昌兰, 李伟东, 禹月昆, 王超. 面向问题的软件开发协同建模工具的研究与实现[J]. 计算机科学, 2018, 45(9): 119-122.
[4] 江泽涛,谢朕,王琦,张文辉. 一种基于屏蔽码的ABAC静态策略冲突与冗余检测算法[J]. 计算机科学, 2018, 45(2): 197-202.
[5] 钱晔,李彤,郁涌,孙吉红,于倩,彭琳. 一种面向同步交互的软件演化过程建模方法[J]. 计算机科学, 2016, 43(8): 154-158.
[6] 郭鹏,李亚晖,孙磊,蔡晓乐. 面向嵌入式软件开发的UML到Simulink模型转换方法[J]. 计算机科学, 2016, 43(2): 192-198.
[7] 蒋逸,张 伟,赵海燕,金 芝. 互联网环境中基于环境激发效应的协同式概念建模[J]. 计算机科学, 2015, 42(11): 228-234.
[8] 刘欢欢,麻志毅,陈泓婕. 基于PaaS的云应用软件部署环境的元模型[J]. 计算机科学, 2015, 42(10): 45-49.
[9] 朱锐,李彤,莫启,张璇,王一荃,林雷蕾,代飞. 基于EPMM的软件过程行为偏离诊断研究[J]. 计算机科学, 2014, 41(11): 56-62.
[10] 曾一,黄兴砚,李函逾,王翠钦. 基于MDA的需求捕获工具的设计与实现[J]. 计算机科学, 2014, 41(10): 204-209.
[11] 代飞,李彤,谢仲文,莫启,金运志. 基于EPMM的软件过程结构合理性研究[J]. 计算机科学, 2013, 40(8): 186-190.
[12] 廖伟志,李文敬,陆建波. 基于冲突检测的一阶混杂Petri网动态行为演变方法[J]. 计算机科学, 2013, 40(11): 299-303.
[13] 栾文静,杜玉越. 一种基于服务簇网元模型的Web服务发现方法[J]. 计算机科学, 2012, 39(8): 147-152.
[14] 金瑛浩,孙立镌. 语义特征建模系统中布尔算法的研究[J]. 计算机科学, 2012, 39(7): 276-279.
[15] 孙为军,李师贤,严玉清. 模型驱动环境下模型演化的形式化研究[J]. 计算机科学, 2012, 39(6): 116-119.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
[1] 江梦涛,潘朋飞,宋杨,荆琦. Linux内核中编译选项、文件以及函数之间依赖关系的解析方法[J]. 计算机科学, 2014, 41(Z6): 445 -450 .
[2] 张广梅,李景霞. 利用双向推导检测Java程序中的内存泄漏[J]. 计算机科学, 2014, 41(Z6): 438 -441 .
[3] 王万良,顾熙仁,赵燕伟. 一种基于动态标签的RFID不确定性数据清洗算法[J]. 计算机科学, 2014, 41(Z6): 383 -386 .
[4] 潘孝勤, 芦天亮, 杜彦辉, 仝鑫. 基于深度学习的语音合成与转换技术综述[J]. 计算机科学, 2021, 48(8): 200 -208 .
[5] 王俊, 王修来, 庞威, 赵鸿飞. 面向科技前瞻预测的大数据治理研究[J]. 计算机科学, 2021, 48(9): 36 -42 .
[6] 余力, 杜启翰, 岳博妍, 向君瑶, 徐冠宇, 冷友方. 基于强化学习的推荐研究综述[J]. 计算机科学, 2021, 48(10): 1 -18 .
[7] 王梓强, 胡晓光, 李晓筱, 杜卓群. 移动机器人全局路径规划算法综述[J]. 计算机科学, 2021, 48(10): 19 -29 .
[8] 高洪皓, 郑子彬, 殷昱煜, 丁勇. 区块链技术专题序言[J]. 计算机科学, 2021, 48(11): 1 -3 .
[9] 毛瀚宇, 聂铁铮, 申德荣, 于戈, 徐石成, 何光宇. 区块链即服务平台关键技术及发展综述[J]. 计算机科学, 2021, 48(11): 4 -11 .
[10] 余杰, 纪斌, 刘磊, 李莎莎, 马俊, 刘慧君. 面向中文医疗事件的联合抽取方法[J]. 计算机科学, 2021, 48(11): 287 -293 .