ABSTRACT
The Unified Modeling Language (UML) is the de facto standard for designing and architecting software systems. UML offers a large number of diagram types that can be used with varying degree of rigour. As a result UML models may contain consistency defects. Previous research has shown that industrial UML models that are used as basis for implementation and maintenance contain large numbers of defects. This study investigates to what extent implementers detect defects and to what extent defects cause different interpretations by different readers. We performed two controlled experiments with a large group of students (111) and a group of industrial practitioners (48). The experiment's results show that defects often remain undetected and cause misinterpretations. We present a classification of defect types based on a ranking of detection rate and risk for misinterpretation. Additionally we observed effects of using domain knowledge to compensate defects. The results are generalizable to industrial UML users and can be used for improving quality assurance techniques for UML-based development.
- EmpAnADa UML Experiment Web Questionnaire. 2004. http://www.win.tue.nl/empanada/survey".Google Scholar
- A. Agresti and B. Finlay. Statistical methods for the social sciences. Prentice Hall, 3rd edition, 1997.Google Scholar
- V. Basili. Evolving and packaging reading technologies. Jnl. of Systems and Software, 38(1), 1997. Google ScholarDigital Library
- V. Basili, S. Green, O. Laitenberger, F. Lanubile, F. Shull, S. Sorumgard, and M. Zelkowitz. The empirical investigation of perspective-based reading. Empirical Software Engineering, 1(2):133--144, 1996. Google ScholarDigital Library
- V. R. Basili, G. Caldiera, and H. D. Rombach. The goal question metric paradigm. In Encyclopedia of Software Engineering, volume 2, pages 528--532. John Wiley and Sons, Inc., 1994.Google Scholar
- J. Carver, L. Jaccheri, S. Morasca, and F. Shull. Issues in using students in empirical studies in software engineering education. In Proceedings of The Ninth International Software Metrics Symposium, pages 239 -- 249, September 2003. Google ScholarDigital Library
- R. Chillarege, I. S. Bhandari, J. K. Chaar, M. J. Halliday, D. S. Moebus, B. K. Ray, and M.-Y. Wong. Orthogonal defect classification - a concept for in-process measurements. IEEE Transactions on Software Engineering, 18(11):943--956, November 1992. Google ScholarDigital Library
- R. Conradi, P. Mohagheghi, T. Arif, L. C. Hedge, G. A. Bunde, and A. Pedersen. Object-oriented reading techniques for inspection of UML models -- an industrial experiment. In Proceedings of the European Conference on Object-Oriented Programming ECOOP'03, volume 2749 of LNCS, pages 483--501. Springer, July 2003.Google ScholarCross Ref
- I. Deligiannis, I. Stamels, L. Angelis, M. Roumeliotis, and M. Shepperd. A controlled experiment investigation of an object-oriented design heuristic for maintainability. Journal of Systems and Software, 2(72):129--143, 2004. Google ScholarDigital Library
- M. Elaasar and L. Briand. An overview of UML consistency management. Technical Report SCE-04-18, Carleton University, Department of Systems and Computer Engineering, 2004.Google Scholar
- K. E. Emam and I. Wieczorek. The repeatability of code defect classifications. In Proceedings of the 9th International Symposium on Software Reliability Engineering, pages 322--333, 1998. Google ScholarDigital Library
- M. E. Fagan. Design and code inspections to reduce errors in program development. IBM Systems Journal, 15(3):182--211, 1976.Google ScholarDigital Library
- M. E. Fagan. Advances in software inspections. IEEE Tr. on Software Engineering, 12(7):744--751, 1986. Google ScholarDigital Library
- T. Gilb and D. Graham. Software Inspection. Addison Wesley Publishing Co., 1993. Google ScholarDigital Library
- D. Kelly and T. Shepard. A case study in the use of defect classification in inspections. In Proceedings of the IBM Centre of Advanced Studies Conference 2001, pages 26--39. IBM, 2001. Google ScholarDigital Library
- B. A. Kitchenham, S. L. Pfleeger, L. M. Pickard, P. W. Jones, D. C. Hoaglin, K. E. Emam, and J. Rosenberg. Preliminary guidelines for empirical research in software engineering. IEEE Transactions of Software Engineering, 28(8):721--734, August 2002. Google ScholarDigital Library
- L. Kuzniarz, Z. Huzar, G. Reggio, J.-L. Sourrouille, and M. Staron. 2nd Workshop on Consistency Problems in UML-based Software Development at the UML2003. Blekinge Institute of Technology, 2003. Google ScholarDigital Library
- O. Laitenberger, C. Atkinson, M. Schlich, and K. E. Emam. An experimental comparison of reading techniques for defect detection in UML design documents. Technical Report NRC/ERB-1069, National Research Council Canada (NRC), Ottawa, Canada, December 1999.Google Scholar
- O. Laitenberger and J.-M. DeBaud. An encompassing life-cycle centric survey of software inspection. Journal of Systems and Software, 2000. Google ScholarDigital Library
- C. F. J. Lange and M. R. V. Chaudron. An empirical assessment of completeness in UML designs. In Proceedings of the 8th International Conference on Empirical Assessment in Software Engineering (EASE`04), pages 111--121, 2004.Google ScholarCross Ref
- C. F. J. Lange and M. R. V. Chaudron. Experimentally investigating effects of defects in UML models. CS-Report 05-07, Technische Universiteit Eindhoven, 2005.Google Scholar
- Q. McNemar. Note on the sampling error of the difference between correlated proportions or percentages. Psychometrika, 12:153--157, 1947.Google ScholarCross Ref
- J. Muskens, R. J. Bril, and M. R. V. Chaudron. Generalizing consistency checking between software views. In Proceedings of the 5th IEEE/IFIP Working Conference on Software Architecture (WICSA), November 2005. Google ScholarDigital Library
- Object Management Group. Unified Modeling Language, Adopted Final Specification, Version 2.0, ptc/03-09-15 edition, December 2003.Google Scholar
- Object Management Group. Unified Modeling Language, Specification, Version 1.5, formal/03-03-01 edition, March 2003.Google Scholar
- H. C. Purchase, L. Colpoys, M. McGill, D. Carrington, and C. Britton. UML class diagram syntax: an empirical study of comprehension. In Australian symposium on Information visualisation, volume 9, pages 113--120, September 2001. Google ScholarDigital Library
- C. Wohlin and A. Aurum. An evaluation of checklist-based reading for entity-relationship diagrams. In Proceedings of the Ninth International Software Metrics Symposium. IEEE CS, 2003. Google ScholarDigital Library
- C. Wohlin, P. Runeson, M. Höst, M. C. Ohlesson, B. Regnell, and A. Wesslen. Experimentation in Software Engineering - An Introduction. Kluwer Academic Publishers, 2000. Google ScholarDigital Library
Index Terms
- Effects of defects in UML models: an experimental investigation
Recommendations
Improving the quality of UML models in practice
ICSE '06: Proceedings of the 28th international conference on Software engineeringThe importance of UML models in software engineering is increasing. Inherent to the UML is its lack of a formal semantics, its risk for inconsistency and completeness defects and the absence of modeling norms. These properties are sources for poor model ...
Consistency of UML class, object and statechart diagrams using ontology reasoners
We propose an automatic approach to analyze the consistency and satisfiability of Unified Modeling Language UML models containing multiple class, object and statechart diagrams using logic reasoners for the Web Ontology Language OWL 2. We describe how ...
From UML/SPT models to schedulability analysis: approach and a prototype implementation using ATL
Model Driven Architecture (MDA) is a software development approach promoted by the OMG. MDA is based on two key concepts, models and model transformations. Several kinds of models are generally used throughout the development process to specify a ...
Comments