UML model refactoring: a systematic literature review
详细信息    查看全文
  • 作者:Mohammed Misbhauddin (1)
    Mohammad Alshayeb (2)

    1. Information Systems Department
    ; King Faisal University ; Al-Ahsa ; 31982 ; Saudi Arabia
    2. Information and Computer Science Department
    ; King Fahd University of Petroleum and Minerals ; P.O. Box 1172 ; Dhahran ; 31261 ; Saudi Arabia
  • 关键词:Model refactoring ; Model transformation ; Systematic literature review ; UML
  • 刊名:Empirical Software Engineering
  • 出版年:2015
  • 出版时间:February 2015
  • 年:2015
  • 卷:20
  • 期:1
  • 页码:206-251
  • 全文大小:861 KB
  • 参考文献:1. AGG (2011) The attributed graph grammar system. Technische Universit盲t, Berlin
    2. Ahmed M (2011) Towards the development of integrated reuse environments for UML artifacts. In: The Sixth International Conference on Software Engineering Advances
    3. Akiyama M, Hayashi S, Kobayashi T, Saeki M (2011) Supporting design model refactoring for improving class responsibility assignment. In: Whittle J, Clark T, K眉hne T (eds) Model driven engineering languages and systems, vol 6981. Lecture Notes in Computer Science. Springer, Berlin, pp 455鈥?69. doi:10.1007/978-3-642-24485-8_33
    4. Al Dallal J, Briand LC (2010) An object-oriented high-level design-based class cohesion metric. Inf Softw Technol 52(12):1346鈥?361. doi:10.1016/j.infsof.2010.08.006 of.2010.08.006" target="_blank" title="It opens in new window">CrossRef
    5. Ambler SW (2005) The elements of UML 2.0 Style. Cambridge University Press, New York CrossRef
    6. Amelunxen C, Sch眉rr A (2008) Formalising model transformation rules for UML/MOF 2. IET Softw 2(3):204鈥?22 CrossRef
    7. Arendt T, Taentzer G (2012) Integration of smells and refactorings within the Eclipse modeling framework. In: Proceedings of the Fifth Workshop on Refactoring Tools, Rapperswil, Switzerland
    8. Arisholm E, Briand LC, Hove SE, Labiche Y (2006) The impact of UML documentation on software maintenance: an experimental evaluation. IEEE Trans Softw Eng 32(6):365鈥?81. doi:10.1109/TSE.2006.59 CrossRef
    9. Baader F, Calvanese D, McGuinness D, Nardi D, Patel-Schneider P (2003) The description logic handbook: theory, implementation and applications. Cambridge University Press, Cambridge
    10. Baar T, Markovi膰 S (2007) A graphical approach to prove the semantic preservation of UML/OCL refactoring rules. In: Virbitskaite I, Voronkov A (eds) Perspectives of systems informatics, vol 4378. Lecture Notes in Computer Science. Springer, Berlin, pp 70鈥?3. doi:10.1007/978-3-540-70881-0_9
    11. Bansiya J, Davis CG (2002) A hierarchical model for object-oriented design quality assessment. IEEE Trans Softw Eng 28(1):4鈥?7 CrossRef
    12. Barbosa LS, Sun M (2008) UML model refactoring as refinement: a coalgebraic perspective. In: 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing
    13. Bieman JM, Kang B-K (1995) Cohesion and reuse in an object-oriented system. SIGSOFT Softw Eng Notes 20(SI):259鈥?62. doi:10.1145/223427.211856 CrossRef
    14. Bisztray D, Heckel R, Ehrig H (2008) Verification of architectural refactorings by rule extraction. In: Fiadeiro J, Inverardi P (eds) Fundamental approaches to software engineering, vol 4961, Lecture Notes in Computer Science. Springer, Berlin, pp 347鈥?61. doi:10.1007/978-3-540-78743-3_26 CrossRef
    15. Bisztray D, Heckel R, Ehrig H (2009) Compositional verification of architectural refactorings. In: Lemos R, Fabre J-C, Gacek C, Gadducci F, Beek M (eds) Architecting dependable systems VI, vol 5835. Lecture Notes in Computer Science. Springer, Berlin, pp 308鈥?33. doi:10.1007/978-3-642-10248-6_13
    16. Boger M, Sturm T, Fragemann P (2003) Refactoring browser for UML. In: Aksit M, Mezini M, Unland R (eds) Objects, components, architectures, services, and applications for a networked world, vol 2591. Lecture Notes in Computer Science. Springer, Berlin, pp 366鈥?77. doi:10.1007/3-540-36557-5_26
    17. Bottoni P, Presicce F, Taentzer G (2004) Specifying integrated refactoring with distributed graph transformations. In: Pfaltz J, Nagl M, B枚hlen B (eds) Applications of graph transformations with industrial relevance, vol 3062. Lecture Notes in Computer Science. Springer, Berlin, pp 220鈥?35. doi:10.1007/978-3-540-25959-6_16
    18. Bottoni P, Parisi-Presicce F, Taentzer G (2005) Specifying coherent refactoring of software artefacts with distributed graph transformations. In: van Bommel P (ed) Transformation of knowledge, information and data: theory and applications. Information Science Publishing, Hershey
    19. Bouhours C, Leblanc H, Percebois C (2009) Bad smells in design and design patterns. J Object Technol 8(3):43鈥?3. doi:10.5381/jot.2009.8.3.c5 CrossRef
    20. Brambilla M, Cabot J, Wimmer M (2012) Model-driven software engineering in practice. Synthesis Lectures on Software Engineering. Morgan and Claypool
    21. Brookes SD, Hoare CAR, Roscoe AW (1984) A theory of communicating sequential processes. J ACM 31(3):560鈥?99 CrossRef
    22. Brown WJ, Malveau RC, Brown WH, McCormick HW III, Mowbray TJ (1998) AntiPatterns: refactoring software architectures and projects in crisis, 1st edn. John Wiley and Sons, Hoboken
    23. Burmester S, Giese H, Niere J, Tichy M, Wadsack JP, Wagner R, Wendehals L, Z眉ndorf A (2004) Tool integration at the meta-model level: the Fujaba approach. STTT 6(3):203鈥?18. doi:10.1007/s10009-004-0155-8 155-8" target="_blank" title="It opens in new window">CrossRef
    24. Butler G, Xu L (2001) Cascaded refactoring for framework. SIGSOFT Softw Eng Notes 26(3):51鈥?7. doi:10.1145/379377.375239 CrossRef
    25. Chen J, Wang Z, Chen B, Qian S (2009) Towards a model refactoring conflict resolution algorithm. 1st International Conference on Information Science and Engineering:5439鈥?442. doi:10.1109/icise.2009.1316
    26. Christoph A (2005) Describing horizontal model transformations with graph rewriting rules. In: A脽mann U, Aksit M, Rensink A (eds) Model Driven Architecture, vol 3599. Lecture Notes in Computer Science. Springer, Berlin, pp 901鈥?01. doi:10.1007/11538097_7
    27. Correa A, Werner C (2004) Applying refactoring techniques to UML/OCL models. In: Baar T, Strohmeier A, Moreira A, Mellor S (eds) The unified modeling language. Modelling languages and applications, vol 3273. Lecture Notes in Computer Science. Springer, Berlin, pp 173鈥?87. doi:10.1007/978-3-540-30187-5_13
    28. Correa A, Werner C (2007) Refactoring object constraint language specifications. Softw Syst Model 6(2):113鈥?38. doi:10.1007/s10270-006-0023-y CrossRef
    29. Correa A, Werner C, Barros M (2007) An empirical study of the impact of OCL smells and refactorings on the understandability of OCL specifications. In: Engels G, Opdyke B, Schmidt D, Weil F (eds) Model driven engineering languages and systems, vol 4735. Lecture Notes in Computer Science. Springer, Berlin, pp 76鈥?0. doi:10.1007/978-3-540-75209-7_6
    30. Correa A, Werner C, Barros M (2009) Refactoring to improve the understandability of specifications written in object constraint language. IET Softw 3(2):69鈥?0. doi:10.1049/iet-sen.2008.0022 CrossRef
    31. Cruz-Lemus J, Genero M, Piattini M, Toval A (2005) An empirical study of the nesting level of composite states within UML statechart diagrams. In: Akoka J, Liddle S, Song I-Y et al (eds) Perspectives in conceptual modeling, vol 3770. Lecture Notes in Computer Science. Springer, Berlin, pp 12鈥?2. doi:10.1007/11568346_3
    32. Czarnecki K, Helsen S (2003) Classification of model transformation approaches. In: Workshop on Generative Techniques in the Context of Model-Driven Architecture. Object Oriented Programming, Systems, Languages and Applications
    33. Dao M, Huchard M, Rouane Hacene M, Roume C, Valtchev P (2006) Towards practical tools for mining abstractions in UML models. In: 8th International Conference on Enterprise Information Systems, Paphos, Cyprus
    34. de Moura L, Owre S, Rue脽 H, Rushby J, Shankar N, Sorea M, Tiwari A (2004) SAL 2. In: Alur R, Peled D (eds) Computer aided verification, vol 3114. Lecture Notes in Computer Science. Springer, Berlin, pp 251鈥?54. doi:10.1007/978-3-540-27813-9_45
    35. Demirezen Z, Topaloglu NY (2006) A refactoring tool for design patterns with model transformations. In: Prinz A, Tveit MS (eds) Proceedings of the The 4th Nordic Workshop on UML and Software Modelling, Grimstad, Norway
    36. Derrick J, Wehrheim H (2006) Model transformations incorporating multiple views. In: Johnson M, Vene V (eds) Algebraic methodology and software technology, vol 4019. Lecture Notes in Computer Science. Springer, Berlin, pp 111鈥?26. doi:10.1007/11784180_11
    37. Derrick J, Wehrheim H (2010) Model transformations across views. Sci Comput Program 75(3):192鈥?10 CrossRef
    38. Dobrza艅ski 艁, Ku藕niarz L (2006) An approach to refactoring of executable UML models. In: Proceedings of the 2006 ACM symposium on Applied computing, Dijon, France
    39. Dobrza艅ski 艁, Ku藕niarz L (2005) Practical refactoring of executable UML models. Nord J Comput 12(4):343鈥?60
    40. Dyb氓 T, Dings酶yr T (2008) Empirical studies of agile software development: a systematic review. Inf Softw Technol 50(9鈥?0):833鈥?59. doi:10.1016/j.infsof.2008.01.006 of.2008.01.006" target="_blank" title="It opens in new window">CrossRef
    41. Dzidek WJ, Arisholm E, Briand LC (2008) A realistic empirical evaluation of the costs and benefits of UML in software maintenance. IEEE Trans Softw Eng 34(3):407鈥?32. doi:10.1109/TSE.2008.15 15" target="_blank" title="It opens in new window">CrossRef
    42. e.Abreu FB, Melo W (1996) Evaluating the impact of object-oriented design on software quality. In: Proceedings of the 3rd International Symposium on Software Metrics: From Measurement to Empirical Results
    43. Egyed A (2006) Instant consistency checking for the UML. In: Proceedings of the 28th international conference on Software engineering, Shanghai, China
    44. Einarsson H脼, Neukirchen H (2012) An approach and tool for synchronous refactoring of UML diagrams and models using model-to-model transformations. In: Proceedings of the Fifth Workshop on Refactoring Tools, Rapperswil, Switzerland
    45. El-Attar M, Miller J (2010) Improving the quality of use case models using antipatterns. Softw Syst Model 9(2):141鈥?60. doi:10.1007/s10270-009-0112-9 CrossRef
    46. El-Sharqwi M, Mahdi H, El-Madah I (2010) Pattern-based model refactoring. In: International Conference on Computer Engineering and Systems (ICCES)
    47. Enckevort TV (2009) Refactoring UML models: using openarchitectureware to measure uml model quality and perform pattern matching on UML models with OCL queries. In: Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications, Orlando, Florida, USA
    48. Ermel C, Ehrig H, Ehrig K (2009) Refactoring of model transformations. In: Proceedings of the Eighth International Workshop on Graph Transformation and Visual Modeling Techniques
    49. Estler HC, Wehrheim H (2008) Alloy as a refactoring checker? Electron Notes Theor Comput Sci 214:331鈥?57. doi:10.1016/j.entcs.2008.06.015 15" target="_blank" title="It opens in new window">CrossRef
    50. Estler HC, Ruhroth T, Wehrheim H (2007) Modelchecking correctness of refactorings鈥攕ome experiments. Electron Notes Theor Comput Sci 187:3鈥?7. doi:10.1016/j.entcs.2006.08.041 CrossRef
    51. Evans A, France R, Lano K, Rumpe B (1999) The UML as a formal modeling notation. In: B茅zivin J, Muller P-A (eds) The unified modeling language. 芦UML禄鈥?8: beyond the notation, vol 1618. Lecture Notes in Computer Science. Springer, Berlin, pp 336鈥?48. doi:10.1007/978-3-540-48480-6_26 CrossRef
    52. Favre L, Pereira C (2007) Improving MDA-based process quality through refactoring patterns. In: Proceedings of the 1st International Workshop on Software Patterns and Quality
    53. Favre L, Pereira C (2008) Formalizing MDA-based refactorings. In: 19th Australian Conference on Software Engineering
    54. Fern谩ndez-S谩ez AM, Genero M, Chaudron MRV (2013) Empirical studies concerning the maintenance of UML diagrams and their use in the maintenance of code: A systematic mapping study. Inf Softw Technol 55(7):1119鈥?142. doi:10.1016/j.infsof.2012.12.006 of.2012.12.006" target="_blank" title="It opens in new window">CrossRef
    55. Folli A, Mens T (2007) Refactoring of UML models using AGG. In: Proceedings of the Third International ERCIM Symposium on Software Evolution
    56. Fourati R, Bouassida N, Abdallah H (2011) A metric-based approach for anti-pattern detection in UML designs. In: Lee R (ed) Computer and information science, vol 364. Studies in Computational Intelligence. Springer, Berlin, pp 17鈥?3. doi:10.1007/978-3-642-21378-6_2
    57. Fowler M, Beck K, Brant J, Opdyke W (1999) Refactoring: improving the design of existing code. Addison-Wesley
    58. France RB, Bieman JM (2001) Multi-view software evolution: a UML-based framework for evolving object-oriented software. In: 17th IEEE International Conference on Software Maintenance (ICSM鈥?1)
    59. France RB, Ghosh S, Song E, Kim D-K (2003) A metamodeling approach to pattern-based model refactoring, vol 20. IEEE Software, Colorado Springs
    60. Fujaba (2011) Fujaba tool suite, vol 5. University of Paderborn, Germany
    61. Gamma E, Helm R, Johnson R, Vlissides J (1994) Design patterns: elements of reusable object-oriented software. Professional Computing Series, Addison Wesley
    62. Garcia J, Popescu D, Edwards G, Medvidovic N (2009) Toward a catalogue of architectural bad smells. In: Mirandola R, Gorton I, Hofmeister C (eds) Architectures for adaptive software systems, vol 5581. Lecture Notes in Computer Science. Springer, Berlin, pp 146鈥?62. doi:10.1007/978-3-642-02351-4_10
    63. Genero M, Piattini M, Calero C (2002) Empirical validation of class diagram metrics. In: Proceedings. 2002 International Symposium in Empirical Software Engineering, pp 195鈥?03
    64. Genero M, Miranda D, Piattini M (2003) Defining metrics for UML statechart diagrams in a methodological way. In: Conceptual Modeling for Novel Application Domains, vol 2814. Lecture Notes in Computer Science. Springer, Berlin, pp 118鈥?28
    65. Genero M, Fern谩ndez-S谩ez AM, Nelson HJ, Poels G, Piattini M (2011) A systematic literature review on the quality of UML models. J Database Manag 22(3):46鈥?0 CrossRef
    66. Ghannem A, Kessentini M, El Boussaidi G (2011) Detecting model refactoring opportunities using heuristic search. In: Proceedings of the 2011 Conference of the Center for Advanced Studies on Collaborative Research, Toronto, Ontario, Canada
    67. Gheyi R, Massoni T, Borba P (2005a) A rigorous approach for proving model refactorings. In: 20th IEEE/ACM International Conference on Automated Software Engineering
    68. Gheyi R, Massoni T, Borba P (2005b) Type-safe refactorings for alloy. In: Proceedings of the 8th Brazilian Symposium on Formal Methods, Porto Alegre, Brazil
    69. Gronback R (2004) Model validation: applying audits and metrics to UML models. http://conferences.embarcadero.com/jp/article/32089. Accessed May 2012
    70. Grunske L, Geiger L, Z眉ndorf A, Eetvelde N, Gorp P, Varr贸 D (2005) Using graph transformation for practical model-driven software engineering. In: Beydeda S, Book M, Gruhn V (eds) Model-driven software development. Springer, Berlin Heidelberg, pp 91鈥?17. doi:10.1007/3-540-28554-7_5 CrossRef
    71. Heitz C, Thiemann P, W枚lfle T (2007) Integration of an action language via UML action semantics. In: Draheim D, Weber G (eds) Trends in enterprise application architecture, vol 4473. Lecture Notes in Computer Science. Springer, Berlin, pp 172鈥?86. doi:10.1007/978-3-540-75912-6_13
    72. Hermann F, H眉lsbusch M, K枚nig B (2010) Specification and verification of model transformations. In: International Colloquium on Graph and Model Transformation
    73. Hitz M, Montazeri B (1995) Measuring product attributes of object-oriented systems. In: Sch盲fer W, Botella P (eds) Software engineering鈥擡SEC 鈥?5, vol 989. Lecture Notes in Computer Science. Springer, Berlin, pp 124鈥?36. doi:10.1007/3-540-60406-5_11
    74. Hoare CAR (1985) Communicating sequential processes. Prentice Hall
    75. Hosseini S, Azgomi MA (2008) UML model refactoring with emphasis on behavior preservation. In: Proceedings of the 2008 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering
    76. Iivari J (1995) Object-orientation as structural, functional and behavioural modelling: a comparison of six methods for object-oriented analysis. Inf Softw Technol 37(3):155鈥?63 CrossRef
    77. Issa A (2007) Utilising refactoring to restructure use-case models. In: Proceedings of International Conference of Information Engineering, London, UK. World Congress of Engineering, pp 523鈥?27
    78. Jackson D, Shlyakhter I, Sridharan M (2001) A micromodularity mechanism. SIGSOFT Softw Eng Notes 26(5):62鈥?3. doi:10.1145/503271.503219 CrossRef
    79. Jalbani AA, Grabowski J, Neukirchen H, Zeiss B (2009) Towards an integrated quality assessment and improvement approach for UML models. In: Proceedings of the 14th International SDL Conference on Design for Motes and Mobiles, Bochum, Germany
    80. Jensen AC, Cheng BHC (2010) On the use of genetic programming for automated refactoring and the introduction of design patterns. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation, Portland, Oregon, USA
    81. Jouault F, Allilaire F, B茅zivin J, Kurtev I, Valduriez P (2006) ATL: a QVT-like transformation language. In: Companion to the 21st ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications, Portland, Oregon, USA
    82. Judson SR, France RB, Carver DL (2004) Supporting rigorous evolution of UML models. In: Ninth IEEE International Conference on Engineering of Complex Computer Systems, pp 128鈥?37
    83. Junbing C, Zhijian W, Bo C, Si Q Towards (2009) A model refactoring conflict resolution algorithm. In: 1st International Conference on Information Science and Engineering (ICISE2009). IEEE, pp 5439鈥?442
    84. Kalleberg KT (2007) Abstractions for language-independent program Transformations. Doctoral thesis, University of Bergen, Bergen, Norway
    85. Kazato H, Takaishi M, Kobayashi T, Saeki M (2004) Formalizing refactoring by using graph transformation. IEICE Trans Inf Syst E87-D(4):855鈥?67
    86. Kempen MV, Chaudron M, Kourie D, Boake A (2005) Towards proving preservation of behaviour of refactoring of UML models. In: Proceedings of the 2005 annual research conference of the South African Institute of Computer Scientists and Information Technologists on IT Research in Developing Countries, White River, South Africa
    87. Khan KS, Ter Riet G, Glanville J, Sowden AJ, Kleijnen J (2001) Undertaking systematic review of research on effectiveness, CRD鈥檚 guidance for those carrying out or commissioning reviews. NHS Centre for Reviews and Dissemination. University of York, York
    88. Kim D-K (2008) Software quality improvement via pattern-based model refactoring. In: 11th IEEE High Assurance Systems Engineering Symposium, pp 293鈥?02
    89. Kim H, Boldyreff C (2002) Developing software metrics applicable to UML models. In: 6th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering. 6th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering
    90. Kim Y, Doh K-G (2007) The service modeling process based on use case refactoring. In: Abramowicz W (ed) Business information systems, vol 4439. Lecture Notes in Computer Science. Springer, Berlin, pp 108鈥?20. doi:10.1007/978-3-540-72035-5_9
    91. Kitchenham BA (2007) Guidelines for performing systematic literature reviews in software engineering ver. 2.3. vol EBSE technical report. Keele University and University of Durham, UK
    92. Kohler C, Lewin H, Taentzer G (2007) Ensuring containment constraints in graph-based model transformation approaches. In: Margaria T, Padberg J, Taentzer G (eds) Proceedings of the Sixth International Workshop on Graph Transformation and Visual Modeling Techniques. Electronic Communications of the EASST
    93. Kovse J, H盲rder T (2002) Generic XMI-based UML model transformations. In: Bellahs猫ne Z, Patel D, Rolland C (eds) Object-oriented information systems, vol 2425. Lecture Notes in Computer Science. Springer, Berlin, pp 183鈥?90. doi:10.1007/3-540-46102-7_24
    94. K眉ster JM (2004) Towards inconsistency handling of object-oriented behavioral models. Electron Notes Theor Comput Sci 109:57鈥?9. doi:10.1016/j.entcs.2004.02.056 CrossRef
    95. Kuzniarz L, Staron M (2007) Two techniques for UML model transformations. Int J Comput Appl 29(1):10鈥?7
    96. Lange C (2007) Model size matters. In: K眉hne T (ed) Models in software engineering, vol 4364. Lecture Notes in Computer Science. Springer, Berlin, pp 211鈥?16. doi:10.1007/978-3-540-69489-2_26
    97. Lange CFJ, Chaudron (2005) MRV managing model quality in UML-based software development. In: 13th IEEE International Workshop on Software Technology and Engineering Practice, IEEE Computer Society, pp 7鈥?6
    98. Lano K, Clark D (2008) Model transformation specification and verification. In: The Eighth International Conference on Quality Software, pp 45鈥?4
    99. Liu H, Ma Z, Zhang L, Shao W (2006) Detecting duplications in sequence diagrams based on suffix trees. In: 13th Asia Pacific Software Engineering Conference, Kanpur, India
    100. Llano MT, Pooley R (2009) UML specification and correction of object-oriented anti-patterns. In: Fourth International Conference on Software Engineering Advances, pp 39鈥?4
    101. Lucas FJ, Molina F, Toval A (2009) A systematic review of UML model consistency management. Inf Softw Technol 51:1631鈥?645 of.2009.04.009" target="_blank" title="It opens in new window">CrossRef
    102. Lugang X, Butler G (2006) Cascaded refactoring for framework development and evolution. In: Proceedigns of the Australian Software Engineering Conference
    103. Maneerat N, Muenchaisri P (2011) Bad-smell prediction from software design model using machine learning techniques. In: Eighth International Joint Conference on Computer Science and Software Engineering
    104. Marinescu R (2001) Detecting design flaws via metrics in object-oriented systems. In: Proceedings of the 39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems (TOOLS 鈥?9), Washington, DC, USA
    105. Markovic S, Baar T (2007) Synchronizing refactored UML class diagrams and OCL constraints. In: 1st Workshop on Refactoring Tools, ECOOP07 Conference Workshop
    106. Markovic S, Baar T (2008) Refactoring OCL annotated UML class diagrams. Softw Syst Model 7(1):25鈥?7 CrossRef
    107. Massoni T, Gheyi R, Borba P (2005) Formal refactoring for UML class diagrams. In: 19th Brazilian Symposium on Software Engineering (SBES)
    108. Massoni T, Gheyi R, Borba P (2008) Formal model-driven program refactoring. In: Fiadeiro J, Inverardi P (eds) Fundamental approaches to software engineering, vol 4961. Lecture Notes in Computer Science. Springer, Berlin, pp 362鈥?76. doi:10.1007/978-3-540-78743-3_27
    109. Massoni T, Gheyi R, Borba P (2011) Synchronizing model and program refactoring. In: Davies J, Silva L, Simao A (eds) Formal methods: foundations and applications, vol 6527. Lecture Notes in Computer Science. Springer, Berlin, pp 96鈥?11. doi:10.1007/978-3-642-19829-8_7
    110. Meng S, Barbosa LS (2008) A coalgebraic semantic framework for reasoning about UML sequence diagrams. In: The Eighth International Conference on Quality Software
    111. Mens T (2006) On the use of graph transformations for model refactoring. In: L盲mmel R, Saraiva J, Visser J (eds) Generative and transformational techniques in software engineering, vol 4143. Lecture Notes in Computer Science. Springer, Berlin, pp 219鈥?57. doi:10.1007/11877028_7
    112. Mens T, Tourwe T (2004) A survey of software refactoring. IEEE Trans Softw Eng 30(2):126鈥?39 CrossRef
    113. Mens T, Van Deursen A (2003) Refactoring: emerging trends and open problems. In: Proceedings First International Workshop on REFactoring: Achievements, Challenges, Effects (REFACE)
    114. Mens T, Van Gorp P (2006) A taxonomy of model transformation. Electron Notes Theor Comput Sci 152:125鈥?42. doi:10.1016/j.entcs.2005.10.021 CrossRef
    115. Mens T, Demeyer S, Janssens D (2002) Formalising behaviour preserving program transformations. In: Corradini A, Ehrig H, Kreowski H-J, Rozenberg G (eds) Graph transformation, vol 2505. Lecture Notes in Computer Science. Springer, Berlin, pp 286鈥?01. doi:10.1007/3-540-45832-8_22
    116. Mens T, Taentzer G, M眉ller D (2007a) Challenges in model refactoring. in: international workshop on object-oriented reengineering, Berlin, Germany
    117. Mens T, Taentzer G, Runge O (2007b) Analysing refactoring dependencies using graph transformation. Softw Syst Model 6(3):269鈥?85. doi:10.1007/s10270-006-0044-6 CrossRef
    118. Mens T, Taentzer G, M眉ller D (2008) Model-driven software refactoring. In: Model-driven software development: integrating quality assurance. IDEA Group Publishing
    119. Mihancea PF, Marinescu R (2005) Towards the optimization of automatic detection of design flaws in object-oriented software systems. In: Ninth European Conference on Software Maintenance and Reengineering
    120. Millan T, Sabatier L, Le Thi T-T, Bazex P, Percebois C (2009) An OCL extension for checking and transforming UML models. In: Proceedings of the 8th WSEAS International Conference on Software engineering, parallel and distributed systems,Cambridge, UK
    121. Miller J, Mukerji J (2003) MDA Guide Version 1.0.1. 1.0.1 edn
    122. Misbhauddin M (2012) Towards an integrated metamodel based approach to software refactoring. King Fahd University of Petroleum and Minerals, Saudi Arabia. http://dl.acm.org/citation.cfm?id=2520700&coll=DL&dl=GUIDE&CFID=367426661&CFTOKEN=40741339
    123. Misbhauddin M, Alshayeb M (2013) Extending the UML use case metamodel with behavioral information to facilitate model analysis and interchange. Softw Syst Model:1鈥?6. doi:10.1007/s10270-013-0333-9
    124. Moeini A, Rafe V, Mahdian F (2010) An approach to refactoring legacy systems. In: 3rd International Conference on Advanced Computer Theory and Engineering (ICACTE)
    125. Moghadam IH, Cinn茅ide MO (2012) Automated refactoring using design differencing. In: 16th European Conference on Software Maintenance and Reengineering
    126. Moha N, Mah茅 V, Barais O, J茅z茅quel J-M (2009) Generic model refactorings. In: Sch眉rr A, Selic B (eds) Model driven engineering languages and systems, vol 5795. Lecture Notes in Computer Science. Springer, Berlin, pp 628鈥?43. doi:10.1007/978-3-642-04425-0_50
    127. Moha N, Gueheneuc YG, Duchien L, Le Meur AF (2010) DECOR: a method for the specification and detection of code and design smells. IEEE Trans Softw Eng 36(1):20鈥?6 CrossRef
    128. Mohamed M, Romdhani M, Ghedira K (2009) Classification of model refactoring approaches. J Object Technol 8(6):121鈥?26. doi:10.5381/jot.2009.8.6.a3 CrossRef
    129. Mohamed M, Romdhani M, Ghedira K (2011) M-REFACTOR: a new approach and tool for model refactoring ARPN. J Syst Softw 1(4):117鈥?22
    130. Muskens J, Chaudron M, Lange C (2004) Investigations in applying metrics to multi-view architecture models. In: Proceedings of the 30th EUROMICRO Conference
    131. Nugroho A, Chaudron MRV (2008) A survey into the rigor of UML use and its perceived impact on quality and productivity. In: Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement, Kaiserslautern, Germany
    132. OMG (2001) Review of the response to OMG RFP as/98-11-01 action semantics for the UML
    133. OMG (2003) UML 2.0 OCL Specification. Object Management Group
    134. OMG (2004) Meta object faacility (MOF) 2.0 query/view/transformation specification. vol ad/04-10-11.
    135. OMG (2007) XML Metadata Interchange Specification 2.1.1. vol formal/2007-12-01. Object Management Group
    136. OMG (2011) Unified modeling language: superstructure. Version: 2.4.1, vol formal/2011-08-06. Object Management Group
    137. Opdyke W (1992) Refactoring object-oriented frameworks. PhD thesis, University of Illinois at Urbana Champaign
    138. openArchitectureware.org openArchitectureWare (oAW). http://www.openarchitectureware.org/. Accessed March 2012
    139. Petre M (2013) UML in practice. In: 35th International Conference on Software Engineering (ICSE 2013), San Francisco, CA, USA
    140. Porres I (2003) Model refactorings as rule-based update transformations. In: Stevens P, Whittle J, Booch G (eds) 芦UML禄 2003 - The unified modeling language. Modeling languages and applications, vol 2863. Lecture Notes in Computer Science. Springer, Berlin, pp 159鈥?74. doi:10.1007/978-3-540-45221-8_16 CrossRef
    141. Porres I (2005) Rule-based update transformations and their application to model refactorings. Softw Syst Model 4(4):368鈥?85. doi:10.1007/s10270-005-0088-z CrossRef
    142. Pretorius R, Budgen D (2008) A mapping study on empirical evidence related to the models and forms used in the UML. In: Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement, Kaiserslautern, Germany
    143. Qayum F, Heckel R (2009) Analysing refactoring dependencies using unfolding of graph transformation systems. In: Proceedings of the 7th International Conference on Frontiers of Information Technology, Abbottabad, Pakistan
    144. Rangel G, Lambers L, K枚nig B, Ehrig H, Baldan P (2008) Behavior preservation in model refactoring using DPO transformations with borrowed contexts. In: Ehrig H, Heckel R, Rozenberg G, Taentzer G (eds) Graph transformations, vol 5214. Lecture Notes in Computer Science. Springer, Berlin, pp 242鈥?56. doi:10.1007/978-3-540-87405-8_17
    145. Regnell B (1999) Requirements engineering with use cases鈥攁 basis for software development. Lund University
    146. Ren S, Butler G, Rui K, Xu J, Yu W, Luo R (2004) A prototype tool for use case refactoring. In: Proceedings of the 6th International Conference on Enterprise Information Systems
    147. Repond J, Dugerdil P, Descombes P (2011) Use-case and scenario metamodeling for automated processing in a reverse engineering tool. In: 4th India Software Engineering Conference, New York
    148. Roscoe AW (1997) The theory and practice of concurrency. Prentice Hall
    149. Ruhroth T, Voigt H, Wehrheim H (2009) Measure, diagnose, refactor: a formal quality cycle for software models. Proceedings of the 35th Euromicro Conference on Software Engineering and Advanced Applications:360鈥?67. doi:10.1109/seaa.2009.39
    150. Rui K, Butler G (2003) Refactoring use case models: the Metamodel. In: Proceedings of the 25th Australasian Computer Society Conference
    151. Saadeh E, Kourie D (2008) Model refactorings as logic-based fine-grain transformations. In: Proceedings of the 9th African Conference on Research in Computer Science and Applied Mathematics
    152. Saadeh E, Kourie D, Boake A (2009) Fine-grain transformations to refactor UML models. In: Proceedings of the Warm Up Workshop for ACM/IEEE ICSE 2010, Cape Town, South Africa
    153. Saeki M, Kaiya H (2006) Model metrics and metrics of model transformation. In: ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems
    154. Simon F, Steinbr眉ckner F, Lewerentz C (2001) Metrics based refactoring. In: Proceedings of the Fifth European Conference on Software Maintenance and Reengineering, Washington, DC, USA
    155. Smith G (2000) The object-Z specification language. Kluwer Academic Publisher
    156. Song E, France RB, Kim D-K, Ghosh S (2002) Using roles for pattern-based model refactoring. In: Proceedings of Workshop on Critical Systems Development (CSDUML) with UML
    157. Steimann F (2013) From well-formedness to meaning preservation: model refactoring for almost free. Softw Syst Model:1鈥?4. doi:10.1007/s10270-013-0314-z
    158. Stolc M, Polasek I (2010) A visual based framework for the model refactoring techniques. In: IEEE 8th International Symposium on Applied Machine Intelligence and Informatics
    159. Suny茅 G, Pollet D, Le Traon Y, J茅z茅quel J-M (2001) Refactoring UML Models. In: 芦UML禄 2001鈥攖he unified modeling language. Modeling languages, concepts, and tools, vol 2185. Lecture Notes In Computer Science. Springer-Verlag, Berlin, pp 134鈥?48
    160. Taentzer G (2004) AGG: a graph transformation environment for modeling and validation of software. In: Pfaltz J, Nagl M, B枚hlen B (eds) Applications of graph transformations with industrial relevance, vol 3062, Lecture Notes in Computer Science. Springer, Berlin Heidelberg, pp 446鈥?53. doi:10.1007/978-3-540-25959-6_35 CrossRef
    161. Tsantalis N, Chatzigeorgiou A (2011) Ranking refactoring suggestions based on historical volatility. In: Software Maintenance and Reengineering (CSMR), 2011 15th European Conference on, 1鈥? March 2011, pp 25鈥?4
    162. Van Der Straeten R, D鈥橦ondt M (2006) Model refactorings through rule-based inconsistency resolution. In: Proceedings of the 2006 ACM Symposium on Applied Computing, Dijon, France
    163. Van Der Straeten R, Jonckers V, Mens T (2004) Supporting model refactorings through behaviour inheritance consistencies. In: Baar T, Strohmeier A, Moreira A, Mellor S (eds) <<UML>鈥?gt;鈥?004 - The unified modeling language. Modelling languages and applications, vol 3273. Lecture Notes in Computer Science. Springer, Berlin, pp 305鈥?19. doi:10.1007/978-3-540-30187-5_22
    164. Van Der Straeten R, Jonckers V, Mens T (2007) A formal approach to model refactoring and model refinement. Softw Syst Model 6(2):139鈥?62. doi:10.1007/s10270-006-0025-9 CrossRef
    165. Van Gorp P, Stenten H, Mens T, Demeyer S (2003) Towards automating source-consistent UML refactorings. In: Stevens P, Whittle J, Booch G (eds) 芦UML禄 2003 - The unified modeling language. Modeling languages and applications, vol 2863. Lecture Notes in Computer Science. Springer, Berlin, pp 144鈥?58. doi:10.1007/978-3-540-45221-8_15 15" target="_blank" title="It opens in new window">CrossRef
    166. W3C (2007) XSL Transformations (XSLT) Version 2.0. http://www.w3.org/TR/xslt20/. Accessed May 2012
    167. W3C (2008) Extensible Markup Language (XML) Version 1.0. http://www.w3.org/TR/REC-xml/. Accessed May 2012
    168. Xu J, Yu W, Rui K, Butler G (2004) Use case refactoring: a tool and a case study. In: Proceedings of the 11th Asia-Pacific Software Engineering Conference, Washington, DC, USA
    169. Xue-Bin W, Quan-Yuan W, Huai-Min W, Dian-Xi S (2007) Research and implementation of design pattern-oriented model transformation. In: International Multi-Conference on Computing in the Global Information Technology, p 24
    170. Yu W, Li J, Butler G (2004) Refactoring use case models on episodes. In: 19th IEEE International Conference on Automated Software Engineering (ASE鈥?4)
    171. Yue T, Ali S, Elaasar M (2010) A framework for measuring quality of models: experiences from a series of controlled experiments. Simula Research Laboratory, Oslo, Norway
    172. Zhang J, Lin Y, Gray J (2005) Generic and domain-specific model refactoring using a model transformation engine. In: Beydeda S, Book M, Gruhn V (eds) Model-driven software development. Springer, Berlin Heidelberg, pp 199鈥?17. doi:10.1007/3-540-28554-7_9 CrossRef
    173. Zotero (2013) Zotero. Roy rosenzweig center for history and new media. George Mason University, Virginia
  • 刊物类别:Computer Science
  • 刊物主题:Software Engineering, Programming and Operating Systems
    Programming Languages, Compilers and Interpreters
  • 出版者:Springer Netherlands
  • ISSN:1573-7616
文摘
Model-driven engineering, an emerging trend in software engineering, has enabled the use of refactoring to UML models. Numerous approaches to model refactoring, problem detection, consistency management, and tool support to automate and verify refactoring are discussed and distributed across numerous research literatures. This paper provides a systematic overview of existing research in the field of model refactoring. A total of 3,295 articles, related to the field of UML model refactoring, were extracted from well-known electronic databases. A multi-stage selection process was used to ensure proper inclusion of relevant studies for review and analysis. Ninety-four primary studies were eventually selected and analyzed based on a number of different criteria: UML models considered for refactoring, formalisms used to support refactoring at the model level, important to consider when building refactoring tool support, and the effect of refactoring on model quality. The results of this review indicate that UML model refactoring is a highly active area of research. Quite a few quality techniques and approaches have been proposed in this area, but it still has some important open issues and limitations to be addressed in future work.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700