Building Knowledge through Families of Experiments
IEEE Transactions on Software Engineering
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Software Engineering: Facts and Fallacies
Software Engineering: Facts and Fallacies
Empirical Software Engineering
ISESE '04 Proceedings of the 2004 International Symposium on Empirical Software Engineering
Communications of the ACM - Two decades of the language-action perspective
Analysis of the influence of communication between researchers on experiment replication
Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering
The Impact of UML Documentation on Software Maintenance: An Experimental Evaluation
IEEE Transactions on Software Engineering
Difficulties experienced by students in maintaining object-oriented systems: an empirical study
ACE '07 Proceedings of the ninth Australasian conference on Computing education - Volume 66
Theoretical and practical complexity of modeling methods
Communications of the ACM
A Realistic Empirical Evaluation of the Costs and Benefits of UML in Software Maintenance
IEEE Transactions on Software Engineering
A survey into the rigor of UML use and its perceived impact on quality and productivity
Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement
Software Engineering: Principles and Practice
Software Engineering: Principles and Practice
Handbook of Parametric and Nonparametric Statistical Procedures
Handbook of Parametric and Nonparametric Statistical Procedures
Software Engineering: A Practitioner's Approach
Software Engineering: A Practitioner's Approach
Level of detail in UML models and its impact on model comprehension: A controlled experiment
Information and Software Technology
SEAA '09 Proceedings of the 2009 35th Euromicro Conference on Software Engineering and Advanced Applications
Evaluating the Impact of UML Modeling on Software Quality: An Industrial Case Study
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Does UML make the grade? Insights from the software development community
Information and Software Technology
An empirical investigation on the relation between analysis models and source code comprehension
Proceedings of the 2010 ACM Symposium on Applied Computing
Basics of Software Engineering Experimentation
Basics of Software Engineering Experimentation
Empirical assessment of MDE in industry
Proceedings of the 33rd International Conference on Software Engineering
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 Engineering
A Methodology for Collecting Valid Software Engineering Data
IEEE Transactions on Software Engineering
Research Review: A Systematic Literature Review on the Quality of UML Models
Journal of Database Management
Hi-index | 0.00 |
Context: UML has been the de facto standard notation for modeling object-oriented software systems since its appearance in 1997. UML diagrams are important for maintainers of a system, especially when the software was developed by a different team. These diagrams of the system are not always available, however, and are commonly recovered using Reverse Engineering (RE) techniques. When obtained through RE, UML diagrams have a high level of detail as compared to those developed in the forward design activity. Method: In this paper we report on a comparison of the attitude and performance of maintainers when using these two kinds of diagrams during the maintenance of source code. Our findings were obtained by carrying out a controlled experiment with 40 students of a Master's degree in Computer Science. Results: The results show a preference for forward design diagrams but do not display significant differences in task performance. The post-experiment survey results have led us to conclude that the subjects did not consider RE diagrams helpful; they found them difficult to understand, particularly the sequence diagrams. In the case of forward design diagrams, subjects considered sequence diagrams as useful, but they did not really employ them. Conclusions: Based on our findings, as regards performance of maintainers, there are no objective results which favor the use of one of these types of diagram in particular, i.e., UML diagrams which come from forwards design, on the one hand, and diagrams obtained from RE, on the other. Subjective opinions do, however, lead us to recommend the use of diagrams created during design. Nevertheless, we realize that the results should be considered as preliminary ones; further replications of this experiment are planned, using students and professionals, the aim being to obtain more conclusive results.