An empirical assessment of completeness in UML designs

Delivering high quality software in an economic way requires advanced control over the software development process and the product in all stages of its life-cycle. The use of metrics as means of control and improvement plays an important role in software engineering. Interviews with industrial software engineers identified incompleteness of UML designs as a potential problem for subsequent stages of development. In this paper we propose a definition of completeness of a UML model and present a set of rules to assess model completeness. We report results from industrial case studies to assess the level of completeness in practice. The amount of completeness and consistency rule violations was very high. Different case studies showed large variations in conformance to and violations of rules.

[1]  Ivar Jacobson,et al.  The object advantage - business process reengineering with object technology , 1994 .

[2]  Robert B. France,et al.  Towards a formalization of UML class structures in Z , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[3]  Victor R. Basili,et al.  A Validation of Object-Oriented Design Metrics as Quality Indicators , 1996, IEEE Trans. Software Eng..

[4]  Philippe Kruchten,et al.  Architecture blueprints—the “4+1” view model of software architecture , 1995, TRI-Ada '95.

[5]  Eric Dortmans,et al.  Empirical Investigations in Software Architecture Completeness , 2003 .

[6]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[7]  Stephen H. Kan,et al.  Metrics and Models in Software Quality Engineering , 1994, SOEN.

[8]  Nenad Medvidovic,et al.  Modeling software architectures in the Unified Modeling Language , 2002, TSEM.

[9]  Reiko Heckel,et al.  TESTING THE CONSISTENCY OF DYNAMIC UML DIAGRAMS , 2002 .

[10]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[11]  Karl J. Lieberherr,et al.  Assuring good style for object-oriented programs , 1989, IEEE Software.

[12]  Yves Le Traon,et al.  Testability analysis of a UML class diagram , 2002, Proceedings Eighth IEEE Symposium on Software Metrics.

[13]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[15]  Jan Magott,et al.  Consistency Checking in UML Models , 2001 .

[16]  Philippe Krutchen,et al.  Architectural blueprints--the '4+1' view model of software architecture , 1995 .

[17]  Betty H. C. Cheng,et al.  A general framework for formalizing UML with formal languages , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[18]  Hausi A. Müller,et al.  Predicting fault-proneness using OO metrics. An industrial case study , 2002, Proceedings of the Sixth European Conference on Software Maintenance and Reengineering.

[19]  Jos Warmer,et al.  The object constraint language , 1998 .

[20]  Javam C. Machado,et al.  The prediction of faulty classes using object-oriented design metrics , 2001, J. Syst. Softw..

[21]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.

[22]  Mario Piattini,et al.  Empirical validation of class diagram metrics , 2002, Proceedings International Symposium on Empirical Software Engineering.

[23]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[24]  Lionel C. Briand,et al.  Exploring the relationships between design measures and software quality in object-oriented systems , 2000, J. Syst. Softw..