UML model refactoring: a systematic literature review
一、基本信息
标题:UML model refactoring: a systematic literature review
时间:2015
出版源:Empirical Software Engineering
领域分类:模型重构;模型转换;系统文献综述;UML
二、研究背景
问题定义:UML模型重构
难点:模型的转换与术语的重构;
相关工作:模型重构;审核流程
三、创新方法
1.提供了模型重构的背景,描述了用于审查的方法.
2.收集并分析了选定的研究,讨论了结果,并回答了系统评价中提出的研究问题.
四、实验
实验1:模型重构
要探究的问题:模型重构的方法,
结论:由于覆盖UML模型的一致性管理进行了深入系统的文献回顾的出版商,我们限制了这种审查的运营模式重构方法,包括研究,结合业务和关系型方法。
实验2:审核流程
要探究的问题:制定审查协议。审查协议有助于制定研究问题和执行审查过程的方法。 确定纳入和排除相关研究的标准。搜索结果管理,数据提取和综合。
结论:为了对模型重构和软件工程领域产生影响,重构方法和技术应该整合到现有的开发环境中。该研究问题的主要目的是确定文献中提出的哪些方法是可实施的,集成的并可用作可用CASE工具的一部分。还研究了作为原型工具实施的方法,因为它们表明理论概念的实现可用于未来的概念验证和工业应用的实证研究。
此外,排除了将UML模型转换为其他建模符号,语言和图表的模型转换。然而,为了模型重构而提出的一些模型到模型的转换包含在本次审查中。
搜索排除了序言,社论,海报会议,教程,文章摘要,小组,访谈,新闻和评论。使用所考虑的电子数据库提供的高级搜索设置避免了重复引用。
实验3:数据合成和结果分析
要探究的问题:重构:研究提出新的重构方法或使用模型转换语言进行重构规范。模型气味:研究提出基于新模型的气味或反模式以及从UML模型或元模型中检测这些机会的方法。工具:通过原型或作为常用集成开发环境(IDE)的附加组件/插件支持其提案的研究。行为:研究提出新方法来定义模型行为和技术来证明行为保持。一致性:研究提出了确保重构模型与其他UML模型和源代码之间一致性的方法。
结论:模型和代码都可以序列化为XML,这使得转换适用于模型和代码重构。使用XSLT进行XML指定的模型转换的一个挑战是,目标模型是基于源模型创建的,并且在重构后不满足后置条件的情况下,转换在大多数情况下是不可逆的。
使用XML作为规范格式的另一个问题是XML语法冗长,这使得难以阅读和维护。
很明显模型气味定义和检测领域需要理论和实证研究。
一种似乎受MDA欢迎的方法是使用多种UML模型。由于使用UML套件中包含的所有图表是不可行的,因此大多数研究使用每个视图中的单个模型。通常,UML模型分为三种视图:结构,功能和行为。使用多个视图进行模型气味规范和重构可以帮助解决上面提出的大多数问题。静态模型是最常用的,因为动态模型很难从源代码进行逆向工程,特别是在将模型映射到源代码或反向工程模型以用于模型驱动的重构时。通常不考虑重构的图表主要是因为它们在工业软件开发中的有限使用。尽管使用行为规范的模型图是直观的,但在使用行为规范模型时,需要牺牲详细程度。超过50%的方法通过工具支持他们的研究,为模型重构过程提供了半自动化的提供。
半自动方法比全自动方法更普遍的主要原因是因为在重构机会检测中可能产生大量误报。半自动方法还增加了利用人类能力在模型缺陷检测和校正过程中整合上下文信息的好处。半自动方法仍然存在的问题是选择正确的重构操作时遇到的困难。
五、结论
作者的总结:模型重构的一个重要目标是在不改变其行为的情况下提高软件模型的质量。虽然重构过程中最重要的活动之一,但在本次审查选择的63项主要研究中,有五项研究明确解决了这一问题。在UML模型质量领域进行的评估和重点研究得出了相同的结果,尽管软件已经很好地建立了测量等质量保证技术,但它们对UML模型和MDD的适用性仍处于起步阶段。除了需要识别适用于UML模型的质量指标之外,还需要一个用于建立这些指标与外部质量属性之间的相关性的框架。
最后,我们希望研究人员和从业人员能够从本次审查中获取结果和建议,为模型重构的发展领域做出贡献。
自己的评价:模型驱动的工程是软件工程的一种新兴趋势,它使得对UML模型的重构成为可能。在许多研究文献中讨论并分发了许多模型重构,问题检测,一致性管理和工具支持以自动化和验证重构的方法。本文系统地概述了模型重构领域的现有研究。从着名的电子数据库中提取了与UML模型重构领域相关的总共3,295篇文章。采用多阶段选择过程确保适当纳入相关研究以供审查和分析。这篇综述的结果表明,UML模型重构是一个非常活跃的研究领域。在这一领域已经提出了相当多的质量技术和方法,但它仍然存在一些重要的开放性问题和未来工作中需要解决的局限性。
参考文献:
【1】AGG (2011) The attributed graph grammar system. Technische Universität, BerlinGoogle Scholar
【2】Ahmed M (2011) Towards the development of integrated reuse environments for UML artifacts. In: The Sixth International Conference on Software Engineering Advances Google Scholar
【3】Al Dallal J, Briand LC (2010) An object-oriented high-level design-based class cohesion metric. Inf Softw Technol 52(12):1346–1361. doi: 10.1016/j.infsof.2010.08.006CrossRef Google Scholar
【4】Ambler SW (2005) The elements of UML 2.0 Style. Cambridge University Press, New YorkCrossRef Google Scholar
【5】Amelunxen C, Schürr A (2008) Formalising model transformation rules for UML/MOF 2. IET Softw 2(3):204–222 CrossRef Google Scholar
UML model refactoring: a systematic literature review的更多相关文章
- Literature Review: Improving Image-Based Localization by Active Correspondence Search
Abstract Input: A query image Source: A point cloud reconstruction of a large scene (有一百多万3D点) Resul ...
- Literature Review on Tidal Turbine
source: scopus , SCIE keywords in tilte: tidal turbine Software: Bibliometrix
- Eclipse 添加 UML Model插件
1.下载安装 ModelGson 下载链接:https://pan.baidu.com/s/1smIZApv 密码:mu5l eclipse安装ModelGson(注意不用解压ModelGson, ...
- 【云迁移论文笔记】Cloud Migration Research:A Systematic Review
Cloud Migration Research:A Systematic Review Author Info: Pooyan Jamshidi PhD Postdoctoral Researche ...
- [初读笔记] Cloud Migration Research: A Systematic Review (TCC, 2013)
Pooyan Jamshidi, Aakash Ahmad, Claus Pahl, "Cloud Migration Research: A Systematic Review," ...
- 基于SpringBoot+SSM实现的Dota2资料库智能管理平台
Dota2资料库智能管理平台的设计与实现 摘 要 当今社会,游戏产业蓬勃发展,如PC端的绝地求生.坦克世界.英雄联盟,再到移动端的王者荣耀.荒野行动的火爆.都离不开科学的游戏管理系统,游戏管理系 ...
- 【论文笔记】A review of applications in federated learning(综述)
A review of applications in federated learning Authors Li Li, Yuxi Fan, Mike Tse, Kuo-Yi Lin Keyword ...
- UML的基本关联
First, a dependency is a semantic relationship between two model elements in which a change to on ...
- [设计语言][统一建模语言][软件开发方法学][UML] UML
背景介绍 UML是一种统计建模语言. WIKI: https://en.wikipedia.org/wiki/Unified_Modeling_Language UML是OMG (object man ...
随机推荐
- pyton 模块之 pysmb 文件上传(windows)
#!/usr/bin/env python #coding:utf-8 from smb.SMBConnection import SMBConnection from nmb.NetBIOS imp ...
- linux下Vim文本编辑器的常用快捷键
Linux插入命令 a 在光标之后插入字符 A 把光标移动到行首尾进入插入模式 i 在光标之前插入字符 I 把光标移动到行首并进入插入模式 o 在光标下插入新行 O 在光标上插入新行 Linux定位 ...
- 项目总结之Oauth2.0免登陆及相关知识点总结
简介Oauth2.0授权步骤 授权码模式的基本步骤 原文链接地址 (A)用户访问客户端,后者将前者导向认证服务器. (B)用户选择是否给予客户端授权. (C)假设用户给予授权,认证服务器将用户导向客户 ...
- linux搭建
1.安装rpm包 [root@lixiaojie lixiaojie]# rpm -ivh openfire-3.9.3-1.i386.rpm Preparing... ############### ...
- NIO学习笔记
零.前言 这里整理摘录了我了解NIO的一些笔记. 参考资料: 1.深入浅出NIO之Channel.Buffer 2.深入浅出NIO之Selector实现原理 3.Java NIO vs. IO 一.N ...
- 用深信服AC控制方位话机注册链路的开、关
1.话机正常配置:专线.互联网 配置: 抓包: 结论:话机走专线注册,正常. 2.在SANGFOR AC上阻断专线地址组(域名没有找到阻断方式),模拟专线断开的场景 1)nslookup解析出地址组 ...
- 分别用for、while和do-while循环语句以及递归方法计算n!,并输出算式
一.用for循环实现 实验过程: 实验结果: 二.用while循环实现 实验结果: 三.用do while循环实现 实验结果: 四.用递归算法实现 实验结果: 实验心得: 此次实验中必须熟悉for循环 ...
- Centos7 出现Welcome to emergency mode!
做mount挂载时,修改了 /etc/fstab 文件,导致Centos7重启时出现如下图所示错误: Welcome to emergency mode! After logging in, typ ...
- Codeforces 1083C Max Mex
Description 一棵\(N\)个节点的树, 每个节点上都有 互不相同的 \([0, ~N-1]\) 的数. 定义一条路径上的数的集合为 \(S\), 求一条路径使得 \(Mex(S)\) 最大 ...
- 1,fiddler的工作原理和安装
1,工作原理就是通过设置代理监控客户端和服务端的协议 2,fiddler的安装 1,官方的下载地址:https://www.telerik.com/download/fiddler 一步步安装即可 2 ...