计算机科学 ›› 2021, Vol. 48 ›› Issue (12): 67-74.doi: 10.11896/jsjkx.201100024
张子良, 庄毅, 叶彤
ZHANG Zi-liang, ZHUANG Yi, YE Tong
摘要: 随着软件规模日益增大,软件复杂度不断提高,飞机、轮船等大型系统的设计与开发往往是由多个不同专业领域、具有不同职能的团队相互协同完成的。针对协同建模中局部模型之间缺失信息所导致的模型不完整问题和更新操作之间发生冲突所导致的模型不一致问题,文中首先提出了一种基于元模型的协同建模模型组装与更新方法(Model Combination and Update,MCAU),该方法在元模型上定义了协同关系与更新操作,可在协同建模过程中保证模型的完整性与一致性,并通过一个实例对所提方法进行了应用与分析。其次,文中还提出了一种基于模型驱动的软件协同建模框架(Software Collaborative Modeling Framework,SCMF),该框架可有效支持多种建模语言的扩展。最后,基于Eclipse框架开发了软件协同建模原型系统CorMo-del,并通过相关实验进一步验证了MCAU方法的有效性。
中图分类号:
[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] | 王铁鑫, 李文心, 曹静雯, 杨志斌, 黄志球, 王飞. 知识驱动的企业间协作参与者动态推荐方法 Knowledge-driven Method Towards Dynamic Partners Recommendation in Inter-enterprise Collaboration 计算机科学, 2020, 47(6): 210-218. https://doi.org/10.11896/jsjkx.190700194 |
[2] | 杨立, 马佳佳, 江华禧, 马肖肖, 梁赓, 左春. 面向机器学习系统的需求建模与决策选择 Requirements Modeling and Decision-making for Machine Learning Systems 计算机科学, 2020, 47(12): 42-49. https://doi.org/10.11896/jsjkx.201200021 |
[3] | 张晓, 李智, 赵子岩, 付昌兰, 李伟东, 禹月昆, 王超. 面向问题的软件开发协同建模工具的研究与实现 Research and Implementation of Collaborated Modeling Approach for Problem-oriented Software Development 计算机科学, 2018, 45(9): 119-122. https://doi.org/10.11896/j.issn.1002-137X.2018.09.018 |
[4] | 江泽涛,谢朕,王琦,张文辉. 一种基于屏蔽码的ABAC静态策略冲突与冗余检测算法 ABAC Static Policy Conflict and Redundancy Detection Algorithm Based on Mask Key 计算机科学, 2018, 45(2): 197-202. https://doi.org/10.11896/j.issn.1002-137X.2018.02.034 |
[5] | 钱晔,李彤,郁涌,孙吉红,于倩,彭琳. 一种面向同步交互的软件演化过程建模方法 Approach to Modeling Software Evolution Process for Synchronous Interaction 计算机科学, 2016, 43(8): 154-158. https://doi.org/10.11896/j.issn.1002-137X.2016.08.032 |
[6] | 郭鹏,李亚晖,孙磊,蔡晓乐. 面向嵌入式软件开发的UML到Simulink模型转换方法 UML Model to Simulink Model Transformation Method in Design of Embedded Software 计算机科学, 2016, 43(2): 192-198. https://doi.org/10.11896/j.issn.1002-137X.2016.02.042 |
[7] | 蒋逸,张 伟,赵海燕,金 芝. 互联网环境中基于环境激发效应的协同式概念建模 Stigmergy-based Collaborative Conceptual Modeling in Web Environment 计算机科学, 2015, 42(11): 228-234. https://doi.org/10.11896/j.issn.1002-137X.2015.11.047 |
[8] | 刘欢欢,麻志毅,陈泓婕. 基于PaaS的云应用软件部署环境的元模型 Meta-model of PaaS-based Cloud Application’s Deployment Environment 计算机科学, 2015, 42(10): 45-49. |
[9] | 朱锐,李彤,莫启,张璇,王一荃,林雷蕾,代飞. 基于EPMM的软件过程行为偏离诊断研究 Research on Deviation Diagnostic of Software Process Behavior Based on EPMM Modelling 计算机科学, 2014, 41(11): 56-62. https://doi.org/10.11896/j.issn.1002-137X.2014.11.012 |
[10] | 曾一,黄兴砚,李函逾,王翠钦. 基于MDA的需求捕获工具的设计与实现 Design and Implementation of Requirements Capture Tools Based on MDA 计算机科学, 2014, 41(10): 204-209. https://doi.org/10.11896/j.issn.1002-137X.2014.10.044 |
[11] | 代飞,李彤,谢仲文,莫启,金运志. 基于EPMM的软件过程结构合理性研究 Research on Structure Soundness of Software Processes Based on EPMM 计算机科学, 2013, 40(8): 186-190. |
[12] | 廖伟志,李文敬,陆建波. 基于冲突检测的一阶混杂Petri网动态行为演变方法 Dynamic Behavior Evolution for First-order Hybrid Petri Nets Based on Conflict Checking 计算机科学, 2013, 40(11): 299-303. |
[13] | 栾文静,杜玉越. 一种基于服务簇网元模型的Web服务发现方法 Web Service Discovery Method Based on Net Unit Model of Service Cluster 计算机科学, 2012, 39(8): 147-152. |
[14] | 金瑛浩,孙立镌. 语义特征建模系统中布尔算法的研究 Research on Boolean Operation in Semantic Feature Modeling System 计算机科学, 2012, 39(7): 276-279. |
[15] | 孙为军,李师贤,严玉清. 模型驱动环境下模型演化的形式化研究 Study on the Formalization of Model Evolution with Model Driven Architecture 计算机科学, 2012, 39(6): 116-119. |
|