Advertisement

Empirical Software Engineering

, Volume 15, Issue 5, pp 455–492 | Cite as

An experimental comparison of ER and UML class diagrams for data modelling

  • Andrea De Lucia
  • Carmine Gravino
  • Rocco Oliveto
  • Genoveffa Tortora
Article

Abstract

We present the results of three sets of controlled experiments aimed at analysing whether UML class diagrams are more comprehensible than ER diagrams during data models maintenance. In particular, we considered the support given by the two notations in the comprehension and interpretation of data models, comprehension of the change to perform to meet a change request, and detection of defects contained in a data model. The experiments involved university students with different levels of ability and experience. The results demonstrate that using UML class diagrams subjects achieved better comprehension levels. With regard to the support given by the two notations during maintenance activities the results demonstrate that the two notations give the same support, while in general UML class diagrams provide a better support with respect to ER diagrams during verification activities.

Keywords

Controlled experiments Entity-relation diagrams UML class diagrams Design notations Comprehension Maintenance Verification 

Notes

Acknowledgements

We would like to thank the anonymous reviewers for their detailed, constructive, and thoughtful comments that helped us to improve the presentation of the results in this paper. Special thanks are also due to the students who were involved in the experiment as subjects.

References

  1. Antoniol G, Canfora G, Casazza G, De Lucia A, Merlo E (2002) Recovering traceability links between code and documentation. IEEE Trans Softw Eng 28(10):970–983CrossRefGoogle Scholar
  2. Argwal R, De P, Sinha AP (1999) Comprehending object and processes models: an empirical study. IEEE Trans Softw Eng 25(4):541–556CrossRefGoogle Scholar
  3. Arisholm E, Sjoberg D (2004) Evaluating the effect of a delegated versus centralized control style on the maintainability of object-oriented software. IEEE Trans Softw Eng 30(8):521–534CrossRefGoogle Scholar
  4. Baeza-Yates R, Ribeiro-Neto B (1999) Modern information retrieval. Addison-Wesley, ReadingGoogle Scholar
  5. Basili VR, Selby RW, Hutchens DH (1986) Experimentation in software engineering. IEEE Trans Softw Eng 12(7):758–773Google Scholar
  6. Bock D, Ryan T (1993) Accuracy in modeling with extended entity relationship and object oriented data models. J Database Manage 4(4):30–39Google Scholar
  7. Briand L, Labiche Y, Di Penta M, Yan-Bondoc H (2005) An experimental investigation of formality in UML-based development. IEEE Trans Softw Eng 31(10):833–849CrossRefGoogle Scholar
  8. Chen PP (1976) The entity-relationship model: toward a unified view of data. ACM Trans Database Syst 1(1):1–36CrossRefGoogle Scholar
  9. Conallen J (1999) Building web applications with UML. Addison-Wesley object technology series. Addison-Wesley, ReadingGoogle Scholar
  10. Conover WJ (1998) Practical nonparametric statistics, 3rd edn. Wiley, New YorkGoogle Scholar
  11. Cruz-Lemus JA, Genero M, Manso ME, Piattini M (2005) Evaluating the effect of composite states on the understandability of UML statechart diagrams. In: Proceedings of 8th ACM/IEEE international conference on model driven engineering languages and systems. Springer, Montego Bay, pp 113–125CrossRefGoogle Scholar
  12. De Lucia A, Fasano F, Francese R, Tortora G (2004) ADAMS: an artefact-based process support system. In: Proceedings of 16th international conference on software engineering and knowledge engineering. KSI, Banff, pp 31–36Google Scholar
  13. De Lucia A, Gravino C, Oliveto R, Tortora G (2008a) An experimental comparison of ER and UML class diagrams for data modelling: experimental material. Technical report. www.sesa.dmi.unisa.it/reportUMLvsER.pdf
  14. De Lucia A, Gravino C, Oliveto R, Tortora G (2008b) Assessing the support of ER and UML class diagrams during maintenance activities on data models. In: Proceedings of the 12th European conference on software maintenance and reengineering. IEEE, Athens, Greece, pp 173–182CrossRefGoogle Scholar
  15. De Lucia A, Gravino C, Oliveto R, Tortora G (2008c) Data model comprehension: an empirical comparison of ER and UML class diagrams. In: Proceedings of the 16th IEEE international conference on program comprehension. IEEE, Amsterdam, pp 93–102CrossRefGoogle Scholar
  16. Devore JL, Farnum N (1999) Applied statistics for engineers and scientists. DuxburyGoogle Scholar
  17. Downs E, Clare P, Coe I (1992) Structured systems analysis and design method: application and context. Prentice Hall, Englewood CliffsGoogle Scholar
  18. Gane C, Sarson T (1979) Structured systems analysis: tools and techniques. Prentice-Hall, Englewood CliffsGoogle Scholar
  19. Gemino W, Wand Y (1997) Empirical comparison of objected oriented and dataflow models. In: Proceedings of international conference on information systems. ACM, Atlanta, pp 446–447Google Scholar
  20. Gemino A, Wand Y (2005) Complexity and clarity in conceptual modeling: comparison of mandatory and optional properties. Data Knowl Eng 55(3):301–326CrossRefGoogle Scholar
  21. Henderson PB (2003) Mathematical reasoning in software engineering education. Commun ACM 46(9):45–50CrossRefGoogle Scholar
  22. Hungerford BC, Eierman MA (2004) The communication effectiveness of system models using the UML versus structured techniques: a field experiment. American Journal of Business 20(2):35–43Google Scholar
  23. Juristo N, Moreno A (2001) Basics of software engineering experimentation. Kluwer Academic, DordrechtMATHGoogle Scholar
  24. Kitchenham B, Fry J, Linkman S (2003) The case against cross-over designs in software engineering. In: Proceedings of 11th annual international workshop on software technology and engineering practice, pp 65–67Google Scholar
  25. Kuzniarz L, Staron M, Wholin C (2004) An empirical study on using stereotypes to improve understanding on UML models. In: Proceedings of 12th IEEE international workshop on program comprehension. IEEE CS, Bari, pp 14–23CrossRefGoogle Scholar
  26. Miller GA (1956) The magical number seven, plus or minus two: some limits on our capacity for processing information. Psychol Rev 63(2):81–97CrossRefGoogle Scholar
  27. Navathe SB (1992) Evolution of data modeling for databases. Commun ACM 35(9):112–123CrossRefGoogle Scholar
  28. OMG (2005) Object constraint language (OCL) specification, version 2.0. http://www.omg.org/technology/documents/formal/uml.htm
  29. Oppenheim AN (1992) Questionnaire design, interviewing and attitude measurement. Pinter, LondonGoogle Scholar
  30. Otero C, Dolado JJ (2002) An initial experimental assessment of the dynamic modelling in UML. Empirical Software Engineering 7(1):27–47CrossRefMATHGoogle Scholar
  31. Palvia P, Lio C, To P (1992) The impact of conceptual data models on end-user performance. J Database Manage 3(4):4–15Google Scholar
  32. Purchase HC, Wellanda R, McGillb M, Colpoysb L (2004) Comprehension of diagram syntax: an empirical study of entity relationship notations. Int J Human-comput Stud 61(2):187–203CrossRefGoogle Scholar
  33. Purchase HC, Colpoys L, McGill M, Carrington D, Britton C (2001) UML class diagram syntax: an empirical study of comprehension. In: Proceedings of Australian symposium on information visualisation. Australian Computer Society, Sydney, pp 113–120Google Scholar
  34. Reynoso L, Genero M, Piattini M, Manso ME (2006) Does object coupling really affect the understanding and modifying of UML expressions? In: Proceedings of 21st annual ACM symposium on applied computing. ACM, Dijon, pp 1721–1727Google Scholar
  35. Ricca F, Di Penta M, Torchiano M, Tonella P, Ceccato M (2007) The role of experience and ability in comprehension tasks supported by UML stereotypes. In: Proceedings of 29th international conference on software engineering. IEEE Computer Society, Minneapolis, pp 375–384Google Scholar
  36. Rumbaugh J, Jacobson I, Booch G (2004) Unified modeling language reference manual. Addison-Wesley, ReadingGoogle Scholar
  37. Shoval P, Frumermann I (1994) OO and EER conceptual schemas: a comparison of user comprehension. J Database Manage 5(4):28–38Google Scholar
  38. Shoval P, Shiran S (1997) Entity-relationship and object-oriented data modeling - an experimental comparison of design quality. Data Knowl Eng 21(3):297–315CrossRefMATHGoogle Scholar
  39. Torchiano M (2004) Empirical assessment of UML static object diagrams. In: Proceedings of 12th international workshop in program comprehension. IEEE Computer Society, Bari, pp 226–229CrossRefGoogle Scholar
  40. Wang S (1996) Two MIS analysis methods: an experimental comparison. J Educ Bus 61(3):136–141Google Scholar
  41. Wohlin C, Runeson P, Host M, Ohlsson MC, Regnell B, Wesslen A (2000) Experimentation in software engineering—an introduction. Kluwer, DeventerMATHGoogle Scholar
  42. Zimmermann T, Weissgerber P, Diehl S, Zeller A (2005) Mining version histories to guide software changes. IEEE Trans Softw Eng 31(6):429–445CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2009

Authors and Affiliations

  • Andrea De Lucia
    • 1
  • Carmine Gravino
    • 1
  • Rocco Oliveto
    • 1
  • Genoveffa Tortora
    • 1
  1. 1.Department of Mathematics and InformaticsUniversity of SalernoFiscianoItaly

Personalised recommendations