A realistic empirical evaluation of the costs and benefits of UML in software maintenance

Wojciech James Dzidek, Erik Arisholm, Lionel C. Briand

Research output: Contribution to journalArticlepeer-review

Abstract

The Unified Modeling Language (UML) is the de facto standard for object-oriented software analysis and design modeling. However, few empirical studies exist that investigate the costs and evaluate the benefits of using UML in realistic contexts. Such studies are needed so that the software industry can make informed decisions regarding the extent to which they should adopt UML in their development practices. This is the first controlled experiment that investigates the costs of maintaining and the benefits of using UML documentation during the maintenance and evolution of a real, non-trivial system, using professional developers as subjects, working with a state-of-the-art UML tool during an extended period of time. The subjects in the control group had no UML documentation. In this experiment, the subjects in the UML group had on average a practically and statistically significant 54% increase in the functional correctness of changes (p=0.03), and an insignificant 7% overall improvement in design quality (p=0.22) - though a much larger improvement was observed on the first change task (56%) - at the expense of an insignificant 14% increase in development time caused by the overhead of updating the UML documentation (p=0.35).

Original languageEnglish
Pages (from-to)407-432
Number of pages26
JournalIEEE Transactions on Software Engineering
Volume34
Issue number3
DOIs
Publication statusPublished - May 2008
Externally publishedYes

Keywords

  • Empirical software engineering
  • Modeling
  • Object-oriented programming
  • Quasiexperiment
  • Software maintainability
  • UML

Fingerprint

Dive into the research topics of 'A realistic empirical evaluation of the costs and benefits of UML in software maintenance'. Together they form a unique fingerprint.

Cite this