Abstract
We carried out a family of experiments to investigate whether the use of UML models produced in the requirements analysis process helps in the comprehensibility and modifiability of source code. The family consists of a controlled experiment and 3 external replications carried out with students and professionals from Italy and Spain. 86 participants with different abilities and levels of experience with UML took part. The results of the experiments were integrated through the use of meta-analysis. The results of both the individual experiments and meta-analysis indicate that UML models produced in the requirements analysis process influence neither the comprehensibility of source code nor its modifiability.
- Marwen Abbes, Foutse Khomh, Yann-Gael Gueheneuc, and Giuliano Antoniol. 2011. An empirical study of the impact of two antipatterns, blob and spaghetti code, on program comprehension. In Proceedings of the European Conference on Software Maintenance and Reengineering. IEEE Computer Society, Los Alamitos, CA, 181--190. Google ScholarDigital Library
- Silvia Mara Abrahão, Carmine Gravino, Emilio Insfran Pelozo, Giuseppe Scanniello, and Genoveffa Tortora. 2012. Assessing the effectiveness of sequence diagrams in the comprehension of functional requirements: results from a family of five experiments. IEEE Trans. Softw. Eng. Google ScholarDigital Library
- Ritu Agarwal and Atish P. Sinha. 2003. Object-oriented modeling with UML: A study of developers' perceptions. Commun. ACM 46, 9, 248--256. Google ScholarDigital Library
- Bente Anda, Kai Hansen, Ingolf Gullesen, and Hanne Kristin Thorsen. 2006. Experiences from introducing UML-based development in a large safety-critical project. Empirical Softw. Eng. 11, 4, 555--581. Google ScholarDigital Library
- Erik Arisholm, Lionel C. Briand, Siw Elisabeth Hove, and Yvan Labiche. 2006. The impact of UML documentation on software maintenance: An experimental evaluation. IEEE Trans. Softw. Eng. 32, 365--381. Google ScholarDigital Library
- Hazeline U. Asuncion, Frédéric François, and Richard N. Taylor. 2007. An end-to-end industrial software traceability tool. In Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. 115--124. Google ScholarDigital Library
- Ricardo A. Baeza-Yates and Berthier Ribeiro-Neto. 1999. Modern Information Retrieval. Addison-Wesley Longman Publishing Co., Inc., Boston, MA. Google ScholarDigital Library
- R. Baker. 1995. Modern permutation test software. In Randomization Tests, 3rd Ed., E. Edgington, Ed. Marcel Dekker, Inc., New York, NY.Google Scholar
- Victor Basili, Forrest Shull, and Filippo Lanubile. 1999. Building knowledge through families of experiments. IEEE Trans. Softw. Eng. 25, 4, 456--473. Google ScholarDigital Library
- Victor R. Basili, Scott Green, Oliver Laitenberger, Filippo Lanubile, Forrest Shull, Lars Sivert SØrumgård, and Marvin V. Zelkowitz. 1996. The empirical investigation of perspective-based reading. Empirical Softw. Eng. 1, 2, 133--164.Google ScholarCross Ref
- Victor R. Basili and H. Dieter Rombach. 1988. The TAME project: Towards improvement-oriented software environments. IEEE Trans. Softw. Eng. 14, 6, 758--773. Google ScholarDigital Library
- Biostat. 2006. Comprehensive Meta-Analysis v. 2. In Biostat Manual, Englewood, NJ.Google Scholar
- Grady Booch, James Rumbaugh, and Ivar Jacobson. 2005. Unified Modeling Language User Guide, 2nd Ed. Addison-Wesley Professional. Google ScholarDigital Library
- B. Bruegge and A. H. Dutoit. 2003. Object-Oriented Software Engineering: Using UML, Patterns and Java, 2nd Ed. Prentice-Hall. Google ScholarDigital Library
- David Budgen, Andy J. Burn, O. Pearl Brereton, Barbara A. Kitchenham, and Rialette Pretorius. 2011. Empirical evidence about the UML: A systematic literature review. Softw. Pract. Exp. 41, 4, 363--392. Google ScholarDigital Library
- Jeffrey Carver, Letizia Jaccheri, Sandro Morasca, and Forrest Shull. 2003. Issues in using students in empirical studies in software engineering education. In Proceedings of the International Symposium on Software Metrics. IEEE Computer Society, 239. Google ScholarDigital Library
- David Cohen, Mikael Lindvall, and Patricia Costa. 2004. An introduction to agile methods. Adv. Comput. 62, 1--66.Google ScholarCross Ref
- M. Colosimo, A. De Lucia, G. Scanniello, and G. Tortora. 2009. Evaluating legacy system migration technologies through empirical studies. Inf. Softw. Technol. 51, 12, 433--447. Google ScholarDigital Library
- W. J. Conover. 1998. Practical Nonparametric Statistics. 3rd Ed. Wiley.Google Scholar
- Sergio Cozzetti B. de Souza, Nicolas Anquetil, and Káthia M. de Oliveira. 2005. A study of the documentation essential to software maintenance. In Proceedings of the International Conference on Design of Communication: Documenting & Designing for Pervasive Information. ACM, New York, NY, 68--75. Google ScholarDigital Library
- J. L. Devore and N. Farnum. 1999. Applied Statistics for Engineers and Scientists. Duxbury.Google Scholar
- B. Dobing and J. Parsons. 2006. How UML is used. Commun. ACM 49, 5, 109--113. Google ScholarDigital Library
- Wojciech J. Dzidek, Erik Arisholm, and Lionel C. Briand. 2008. A realistic empirical evaluation of the costs and benefits of UML in software maintenance. IEEE Trans. Softw. Eng. 34, 407--432. Google ScholarDigital Library
- P. Ellis. 2010. The Essential Guide to Effect Sizes: Statistical Power, Meta-Analysis, and the Interpretation of Research Results. Cambridge University Press.Google Scholar
- John Erickson and Keng Siau. 2007. Theoretical and practical complexity of modeling methods. Commun. ACM 50, 8, 46--51. Google ScholarDigital Library
- A. Fernández-Saez, M. Genero, J. Nelson, G. Poels, and M. Piattini. 2012. A systematic literature review on the quality of UML models. J. Data. Manage. 22, 3, 46--70. Google ScholarDigital Library
- Carmine Gravino, Michele Risi, Giuseppe Scanniello, and Genoveffa Tortora. 2011. Does the documentation of design pattern instances impact on source code comprehension? Results from two controlled experiments. In Proceeding of the Working Conference on Reverse Engineering. IEEE Computer Society, Los Alamitos, CA, 67--76. Google ScholarDigital Library
- Carmine Gravino, Michele Risi, Giuseppe Scanniello, and Genoveffa Tortora. 2012. Do professional developers benefit from design pattern documentation? A replication in the context of source code comprehension. In Proceedings of the International Conference on Model Driven Engineering Languages and Systems. Springer-Verlag, Berlin, 185--201. Google ScholarDigital Library
- Carmine Gravino, Genoveffa Tortora, and Giuseppe Scanniello. 2010. An empirical investigation on the relation between analysis models and source code comprehension. In Proceedings of the ACM Symposium on Applied Computing. ACM, 2365--2366. Google ScholarDigital Library
- Martin Grossman, Jay E. Aronson, and Richard V. McCarthy. 2005. Does UML make the grade? Insights from the software development community. Inf. Softw. Technol. 47, 6, 383--397. Google ScholarDigital Library
- L. Hedges and I. Olkin. 1985. Statistical Methods for Meta-Analysis. Academia Press.Google Scholar
- Martin Höst, Björn Regnell, and Claes Wohlin. 2000. Using students as subjects: Comparative study of students and professionals in lead-time impact assessment. Empirical Softw. Eng. 5, 3, 201--214. Google ScholarDigital Library
- Andreas Jedlitschka, Marcus Ciolkowski, and Dietmar Pfahl. 2008. Reporting experiments in software engineering. In Guide to Advanced Empirical Software Engineering, Forrest Shull, Janice Singer, and Dag I. K. Sjøberg, Eds., Springer, 201--228.Google Scholar
- N. Juristo and A. Moreno. 2001. Basics of Software Engineering Experimentation. Kluwer Academic Publishers, Englewood Cliffs, NJ. Google ScholarDigital Library
- Vigdis By Kampenes, Tore Dybå, Jo Erskine Hannay, and Dag I. K. Sjøberg. 2007. A systematic review of effect size in software engineering experiments. Inf. Softw. Technol. 49, 11--12, 1073--1086. Google ScholarDigital Library
- Barbara Kitchenham, Hiyam Al-Khilidar, Muhammed Babar, Mike Berry, Karl Cox, Jacky Keung, Felicia Kurniawati, Mark Staples, He Zhang, and Liming Zhu. 2008. Evaluating guidelines for reporting empirical software engineering studies. Empirical Softw. Eng. 13, 97--121. Google ScholarDigital Library
- B. Kitchenham, S. Pfleeger, L. Pickard, P. Jones, D. Hoaglin, K. El Emam, and J. Rosenberg. 2002. Preliminary guidelines for empirical research in software engineering. IEEE Trans. Softw. Eng. 28, 8, 721--734. Google ScholarDigital Library
- Soren Lauesen. 2002. Software Requirements: Styles and Techniques. Addison-Wesley. Google ScholarDigital Library
- H. Levene. 1960. Robust tests for equality of variances. In Contributions to Probability and Statistics, I. Olkin Ed., Stanford University Press., Palo Alto, CA.Google Scholar
- M. Lindvall and K. Sandahl. 1996. Practical implications of traceability. Softw. Pract. Exp. 26, 10, 1161--1180. Google ScholarDigital Library
- Mitch Lubars, Colin Potts, and Charlie Richter. 1993. A review of the state of the practice in requirements modeling. In Proceedings of the International Symposium on Requirements Engineering. IEEE Computer Society Press, 2--14.Google Scholar
- J. McDermid. 1991. Software Engineer's Reference Book. Butterworth-Heinemann, Ltd., Oxford, U.K. Google ScholarDigital Library
- Manoel G. Mendonça, José C. Maldonado, Maria C. F. de Oliveira, Jeffrey Carver, Sandra C. P. F. Fabbri, Forrest Shull, Guilherme H. Travassos, Erika Nina Höhn, and Victor R. Basili. 2008. A framework for software engineering experimental replications. In Proceedings of the International Conference on Engineering of Complex Computer Systems. IEEE Computer Society, Los Alamitos, CA, 203--212. Google ScholarDigital Library
- OMG. 2010. Unified Modeling Language (TM) URL. Tech. Rep. Object Management Group. http://www.uml.org.Google Scholar
- A. N. Oppenheim. 1992. Questionnaire Design, Interviewing and Attitude Measurement. Pinter, London.Google Scholar
- Lutz Prechelt, Barbara Unger-Lamprecht, Michael Philippsen, and Walter F. Tichy. 2002. Two controlled experiments assessing the usefulness of design pattern documentation in program maintenance. IEEE Trans. Softw. Eng. 28, 6, 595--606. Google ScholarDigital Library
- Filippo Ricca, Massimiliano Di Penta, Marco Torchiano, Paolo Tonella, and Mariano Ceccato. 2010. How Developers' experience and ability influence web application comprehension tasks supported by UML stereotypes: a series of four experiments. IEEE Trans. Softw. Eng. 36, 1, 96--118. Google ScholarDigital Library
- Giuseppe Scanniello, Carmine Gravino, and Genny Tortora. 2010. Investigating the role of UML in the software modeling and maintenance—A preliminary industrial survey. In Proceedings of the International Conference on Enterprise Information Systems. SciTePress, 141--148.Google Scholar
- Giuseppe Scanniello, Carmine Gravino, and Genoveffa Tortora. 2012. Does the combined use of class and sequence diagrams improve the source code comprehension?: Results from a controlled experiment. In Proceedings of the International Workshop on Experiences and Empirical Studies in Software Modelling. ACM, New York, NY, 25--30. Google ScholarDigital Library
- G. Scanniello, F. Ricca, and M. Torchiano. 2011. On the effectiveness of the UML object diagrams: A replicated experiment. In Proceedings of the International Conference on Evaluation and Assessment in Software Engineering. IET Digital Library, 76--85.Google Scholar
- S. Shapiro and M. Wilk. 1965. An analysis of variance test for normality. Biometrika 52, 3--4, 591--611.Google ScholarCross Ref
- Forrest Shull, Jeffrey C. Carver, Sira Vegas, and Natalia Juristo Juzgado. 2008. The role of replications in empirical software engineering. Empirical Softw. Eng. 13, 2, 211--218. Google ScholarDigital Library
- Forrest Shull, Manoel G. Mendoncça, Victor Basili, Jeffrey Carver, José C. Maldonado, Sandra Fabbri, Guilherme Horta Travassos, and Maria Cristina Ferreira. 2004. Knowledge-sharing issues in experimental software engineering. Empirical Softw. Eng. 9, 1--2, 111--137. Google ScholarDigital Library
- D. I. K. Sjøberg, J. E. Hannay, O. Hansen, V. B. Kampenes, A. Karahasanovic, N. Liborg, and A. C. Rekdal. 2005. A survey of controlled experiments in software engineering. IEEE Trans. Softw. Eng. 31, 9, 733--753. Google ScholarDigital Library
- Scott Tilley and Shihong Huang. 2003. A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding. In Proceedings of the International Conference on Documentation. ACM, New York, NY, 184--191. Google ScholarDigital Library
- Eirik Tryggeseth. 1997. Report from an experiment: Impact of documentation on maintenance. Empirical Softw. Eng. 2, 2, 201--207. Google ScholarDigital Library
- S. Vegas, N. Juristo, A. Moreno, M. Solari, and P. Letelier. 2006. Analysis of the influence of communication between researchers on experiment replication. In Proceedings of the International Symposium on Empirical Software Engineering. ACM, New York, NY, 28--37. Google ScholarDigital Library
- Jan Verelst. 2004. The influence of the level of abstraction on the evolvability of conceptual models of information systems. In Proceedings of the International Symposium on Empirical Software Engineering. IEEE Computer Society, 17--26. Google ScholarDigital Library
- Klaus Weidenhaupt, Klaus Pohl, Matthias Jarke, and Peter Haumer. 1998. Scenarios in system development: Current practice. IEEE Softw. 15, 34--45. Google ScholarDigital Library
- C. Wohlin, P. Runeson, M. Höst, M. Ohlsson, B. Regnell, and A. Wesslén. 2000. Experimentation in Software Engineering-An Introduction. Kluwer. Google ScholarDigital Library
Index Terms
- On the impact of UML analysis models on source-code comprehensibility and modifiability
Recommendations
Assessing the Effect of Screen Mockups on the Comprehension of Functional Requirements
Over the last few years, the software engineering community has proposed a number of modeling methods to represent functional requirements. Among them, use cases are recognized as an easy to use and intuitive way to capture and define such requirements. ...
Empirical Validation of Measures for UML Class Diagrams: A Meta-Analysis Study
Models in Software EngineeringThe main goal of this paper is to show the findings obtained through a meta-analysis study carried out with the data obtained from a family of five controlled experiments performed in academic environments. This family of experiments was carried out to ...
Does the level of detail of UML models affect the maintainability of source code?
MODELS'11: Proceedings of the 2011th international conference on Models in Software EngineeringThis paper presents an experiment carried out as a pilot study to obtain a first insight into the influence of the quality of UML models on the maintenance of the corresponding source code. The quality of the UML models is assessed by studying the ...
Comments