Empirical Studies Concerning the Maintenance of UML Diagrams and Their Use in the Maintenance of Code: a Systematic Mapping Study ⇑ Ana M
Total Page:16
File Type:pdf, Size:1020Kb
Information and Software Technology 55 (2013) 1119–1142 Contents lists available at SciVerse ScienceDirect Information and Software Technology journal homepage: www.elsevier.com/locate/infsof Empirical studies concerning the maintenance of UML diagrams and their use in the maintenance of code: A systematic mapping study ⇑ Ana M. Fernández-Sáez a,c, , Marcela Genero b, Michel R.V. Chaudron c,d a Alarcos Quality Center, University of Castilla-La Mancha, Spain b ALARCOS Research Group, Department of Technologies and Information Systems, University of Castilla-La Mancha, Spain c Leiden Institute of Advanced Computer Science, LeidenUniversity, The Netherlands d Joint Computer Science and Engineering Department of Chalmers University of Technology and University of Gothenburg, SE-412 96 Gõteborg, Sweden article info abstract Article history: Context: The Unified Modelling Language (UML) has, after ten years, become established as the de facto Received 1 December 2011 standard for the modelling of object-oriented software systems. It is therefore relevant to investigate Received in revised form 12 December 2012 whether its use is important as regards the costs involved in its implantation in industry being worth- Accepted 14 December 2012 while. Available online 4 February 2013 Method: We have carried out a systematic mapping study to collect the empirical studies published in order to discover ‘‘What is the current existing empirical evidence with regard to the use of UML dia- Keywords: grams in source code maintenance and the maintenance of the UML diagrams themselves? UML Results: We found 38 papers, which contained 63 experiments and 3 case studies. Empirical studies Software maintenance Conclusion: Although there is common belief that the use of UML is beneficial for source code mainte- Systematic mapping study nance, since the quality of the modifications is greater when UML diagrams are available, only 3 papers Systematic literature review concerning this issue have been published. Most research (60 empirical studies) concerns the maintain- ability and comprehensibility of the UML diagrams themselves which form part of the system’s docu- mentation, since it is assumed that they may influence source code maintainability, although this has not been empirically validated. Moreover, the generalizability of the majority of the experiments is ques- tionable given the material, tasks and subjects used. There is thus a need for more experiments and case studies to be performed in industrial contexts, i.e., with real systems and using maintenance tasks con- ducted by practitioners under real conditions that truly show the utility of UML diagrams in maintaining code, and that the fact that a diagram is more comprehensible or modifiable influences the maintainabil- ity of the code itself. This utility should also be studied from the viewpoint of cost and productivity, and the consistent and simultaneous maintenance of diagrams and code must also be considered in future empirical studies. Ó 2013 Published by Elsevier B.V. Contents 1. Introduction . ..................................................................................................... 1120 2. Related work. ..................................................................................................... 1121 3. Planning . ..................................................................................................... 1122 4. Conducting the review. .................................................................................. 1125 5. Reporting results and data synthesis . .................................................................................. 1125 5.1. Counting empirical studies . ........................................................................ 1126 5.2. Answers to the research questions. ........................................................................ 1127 5.2.1. RQ1: Which diagrams are most frequently used in studies concerning the maintenance of UML diagrams or the maintenance of source code when using UML diagrams? . .......................................................... 1127 5.2.2. RQ2: Which dependent variables are investigated in the empirical studies?/How are they measured? . .... 1127 5.2.3. RQ3: What is the state-of-the-art in empirical studies concerning the maintenance of UML diagrams or the maintenance of source code when using UML diagrams? . .......................................................... 1128 ⇑ Corresponding author at: Alarcos Quality Center, University of Castilla-La Mancha, Spain. E-mail addresses: [email protected] (A.M. Fernández-Sáez), [email protected] (M. Genero), [email protected], [email protected] (M.R.V. Chaudron). 0950-5849/$ - see front matter Ó 2013 Published by Elsevier B.V. http://dx.doi.org/10.1016/j.infsof.2012.12.006 1120 A.M. Fernández-Sáez et al. / Information and Software Technology 55 (2013) 1119–1142 5.2.4. RQ4: Which of the factors studied influence the maintainability of a system (source code and diagrams)? . ....... 1131 5.3. Additional results .............................................................................................. 1133 6. Discussion. ........................................................................................................ 1134 7. Threats to validity . ........................................................................................ 1136 8. Conclusions. ........................................................................................................ 1136 Acknowledgements . ........................................................................................ 1138 Appendix A. List of primary studies . ..................................................................... 1138 Appendix B. Definitions of measures . ..................................................................... 1139 B.1. Correctness . .............................................................................................. 1139 B.2. Accuracy. .............................................................................................. 1139 B.3. Effectiveness . .............................................................................................. 1139 B.4. F-Measure . .............................................................................................. 1139 B.4.1. Recall. ................................................................................ 1139 B.4.2. Precision . ................................................................................ 1139 B.5. Efficiency . .............................................................................................. 1140 B.6. Relative time (for a correct answer) . ........................................................................... 1140 B.7. Perceived comprehensibility. ........................................................................... 1140 B.8. Perceived ease of construction . ........................................................................... 1140 B.9. Time . .............................................................................................. 1140 B.10. Errors . .............................................................................................. 1140 Appendix C. The search strings . ........................................................................................ 1140 C.1. ACM and IEEE search string . ........................................................................... 1140 C.2. Science Direct and SCOPUS search string ........................................................................... 1140 C.3. Springerlink search string. ........................................................................... 1140 C.4. Wiley Inter Science search string . ........................................................................... 1141 References . ........................................................................................................ 1141 1. Introduction The scientific literature found differentiated several types of systematic reviews[6], including the following: UML was first introduced in 1997, and became a de facto stan- dard for the modelling of object-oriented software systems in 2000 Conventional systematic reviews[6], which aggregated results [1]. It subsequently evolved and the latest version appeared in concerning the effectiveness of a treatment, intervention, or 2009 (UML 2.3) [2]. Owing to the increasing complexity of software technology, and were related to specific research questions, and projects at the present time, the UML has emerged as a tool which Mapping studies [7]whose aim was to identify all research is being used to increase the understanding between customers related to a specific topic, i.e. to answer broader questions and developers (in the analysis phase). It is also being employed related to trends in research. Typical questions are exploratory. to improve the communication among team members [3] and to broaden the understanding of how software works (in both the This paper aims to present a systematic review of papers dealing development and maintenance phases). with the use of UML diagrams in source code maintenance and the Despite all this, any type of investment must be justified from maintenance of the UML diagrams themselves. This work is classi- an economic point of view, in the sense that there should be a pay- fied as a secondary study since it is a review of primary studies. A back at a later phase. In the context of software projects, therefore,