Advertisement

A Controlled Experiment for Validating Class Diagram Structural Complexity Metrics

  • Marcela Genero
  • Luis Jiménez
  • Mario Piattini
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2425)

Abstract

Measuring quality is the key to developing high-quality software, and it is widely recognised that quality assurance of software products must be assessed focusing on early artifacts, such as class diagrams. After having thoroughly reviewed existing OO measures applicable to class diagrams at a high-level design stage, a set of metrics for the structural complexity of class diagrams obtained using Unified Modeling Language (UML) was defined. This paper describes a controlled experiment carried out in order to corroborate whether the metrics are closely related to UML class diagram modifiability. Based on data collected in the experiment, a prediction model for class diagram modifiability using a method for induction of fuzzy rules was built. The results of this experiment indicate that the metrics related to aggregation and generalization relationships are the determinant of class diagram modifiability. These findings are in the line with the conclusions drawn from two other similar controlled experiments.

Keywords

UML class diagram structural complexity UML class diagram modifiability structural complexity metrics empirical validation prediction model fuzzy rule system 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Basili V. and Rombach H. The TAME project: towards improvement-oriented software environments, IEEE Transactions on Software Engineering, 14(6) (1988) 728–738CrossRefGoogle Scholar
  2. 2.
    Basili V. and Weiss D. A Methodology for Collecting Valid Software Engineering Data., IEEE Transactions on Software Engineering, 10 (1984) 728–738CrossRefGoogle Scholar
  3. 3.
    Basili V., Shull F. and Lanubile F. Building Knowledge through Families of Experiments. IEEE Transactions on Software Engineering, 25(4) (1999) 435–437CrossRefGoogle Scholar
  4. 4.
    Briand L., Arisholm S., Counsell F., Houdek F. and Thévenod-Fosse P. Empirical Studies of Object-Oriented Artefacts, Methods, and Processes: State of the Art and Future Directions. Empirical Software Engineering, 4(4) (1999) 387–404CrossRefGoogle Scholar
  5. 5.
    Briand L., Bunse C. and Daly J. A Controlled Experiment for evaluating Quality Guidelines on the Maintainability of Object-Oriented Designs. IEEE Transactions on Software Engineering, 27(6) (2001) 513–530CrossRefGoogle Scholar
  6. 6.
    Briand L., Morasca S. and Basili V. Property-Based Software Engineering Measurement. IEEE Transactions on Software Engineering, 22(1) (1996) 68–86CrossRefGoogle Scholar
  7. 7.
    Brito e Abreu F., Zuse H., Sahraoui H. and Melo W. Quantitative Approaches in Object-Oriented Software Engineering. Object-Oriented technology: ECOOP’99 Workshop Reader, Lecture Notes in Computer Science, 1743, Springer-Verlag, (1999) 326–337Google Scholar
  8. 8.
    Brito e Abreu F., Poels G., Sahraoui H. and Zuse H. Quantitative Approaches in Object-Oriented Software Engineering. Object-Oriented technology: ECOOP’00 Workshop Reader, Lecture Notes in Computer Science, 1964, Springer-Verlag, (2000) 93–103Google Scholar
  9. 9.
    Brito e Abreu F., Henderson-Sellers B., Piattini M., Poels G. and Sahraoui H. Quantitative Approaches in Object-Oriented Software Engineering. Object-Oriented technology: ECOOP’01 Workshop Reader, Lecture Notes in Computer Science, Springer-Verlag, (2001) (to appear)Google Scholar
  10. 10.
    Brito e Abreu, F. and Carapaçua, R. Object-Oriented Software Engineering: Measuring and controlling the development process. 4th Int Conference on Software Quality, Mc Lean, Va, USA, (1994)Google Scholar
  11. 11.
    Brooks A., Daly J., Miller J., Roper M., Wood M. Replication of experimental results in software engineering. Technical report ISERN-96-10, International Software Engineering Research Network, (1996)Google Scholar
  12. 12.
    Chidamber, S. and Kemerer, C. A Metrics Suite for Object Oriented Design. IEEE Transactions on Software Engineering, 20(6) (1994) 476–493CrossRefGoogle Scholar
  13. 13.
    Delgado, M., Gómez Skarmeta, A. and Jiménez, L. (2001). International Journal of Intelligent Systems, 16 (2001) 169–190zbMATHCrossRefGoogle Scholar
  14. 14.
    Fenton, N. and Pfleeger, S. Software Metrics: A Rigorous Approach. 2nd. edition. London, Chapman & Hall, (1997)Google Scholar
  15. 15.
    Genero M. Defining and Validating Metrics for Conceptual Models, Ph.D. thesis, University of Castilla-La Mancha, (2002)Google Scholar
  16. 16.
    Genero M., Jiménez, L. and Piattini M. Empirical Validation of Class Diagram Complexity Metrics. SCCC 2001, November, Chile, IEEE Computer Society Press, (2001) 95–104Google Scholar
  17. 17.
    Genero, M., Jiménez, L., Piattini, M. A prediction model for OO information system quality based on early indicators. ADBIS 2001, Vilnius, Lithuania, (2001) 211–224Google Scholar
  18. 18.
    Genero, M., Piattini, M. and Calero, C. Early Measures For UML class diagrams. L’Objet. 6(4), Hermes Science Publications, (2000) 489–515Google Scholar
  19. 19.
    Henderson-Sellers, B. Object-Oriented Metrics-Measures of complexity. Prentice-Hall, Upper Saddle River, New Jersey, (1996)Google Scholar
  20. 21.
    Kitchenham, B., Pflegger, S. and Fenton, N. Towards a Framework for Software Measurement Validation. IEEE Transactions of Software Engineering, 21(12) (1995) 929–943CrossRefGoogle Scholar
  21. 22.
    Linares, L. J., Delgado, M. and Skarmeta, A. Regression by fuzzy knowledge bases. Proceedings of the 4thEuropean Congress on Intelligent Techniques and Soft Computing. Aachen, Germany, September, (1996) 1170–1176Google Scholar
  22. 23.
    Lorenz, M. and Kidd, J. Object-Oriented Software Metrics: A Practical Guide. Prentice Hall, Englewood Cliffs, New Jersey, (1994)Google Scholar
  23. 24.
    Marchesi, M. OOA Metrics for the Unified Modeling Language. Proceedings of the 2d Euromicro Conference on Software Maintenance and Reengineering, (1998) 67–73Google Scholar
  24. 25.
    Melton, A. (ed.). Software Measurement. London, International Thomson Computer Press, (1996)zbMATHGoogle Scholar
  25. 26.
    Perry, D., Porter, A. and Votta, L. Empirical Studies on Software Engineering: A Roadmap. Future of Software Engineering. Ed:Anthony Finkelstein, ACM, (2000) 345–355Google Scholar
  26. 27.
    Poels G. and Dedene G. Evaluating the Effect of Inheritance on the Modifiability of Object-Oriented Business Domain Models. 5th European Conference on Software Maintenance and Reengineering (CSMR 2001), Lisbon, Portugal, (2001)Google Scholar
  27. 28.
    Poels G. and Dedene G. Distance-based software measurement: necessary and sufficient properties for software measures, Information and Software Technology, 42(1) (2000) 35–46CrossRefGoogle Scholar
  28. 29.
    Poels, G. and Dedene, G. Measures for Assessing Dynamic Complexity Aspects of Object-Oriented Conceptual Schemes. 19th International Conference on Conceptual Modeling (ER 2000), Salt Lake City, Lecture Notes in Computer Science, 1920, Springer-Verlag, (2000) 499–512Google Scholar
  29. 30.
    Schneidewind, N. Body of Knowledge for Software Quality Measurement. IEEE Computer, 35(2) (2002) 77–83Google Scholar
  30. 31.
    Schneidewind, N. Methodology For Validating Software Metrics. IEEE Transactions of Software Engineering, 18(5) (1992) 410–422CrossRefGoogle Scholar
  31. 32.
    Sugeno, M. An Introductory Survey of Fuzzy Control. Information Sciences, 36 (1985) 59–83zbMATHCrossRefMathSciNetGoogle Scholar
  32. 33.
    Wohlin C., Runeson P., Höst M., Ohlson M., Regnell B. and Wesslén A. Experimentation in Software Engineering: An Introduction, Kluwer Academic Publishers (2000)Google Scholar
  33. 34.
    Yacoub, S., Ammar, H., Robinson, T.. Dynamic Metrics for Object Oriented Designs Sixth IEEE International Symposium on Software Metrics (1998)Google Scholar
  34. 35.
    Zadeh, L. Fuzzy sets. Information and control, (1965), 338–353Google Scholar
  35. 36.
    Zadeh, L. The Concept of Linguistic Variable and its Applications to Approximate Reasoning Part I. Information Sciences, 8 (1973) 199–249CrossRefMathSciNetGoogle Scholar
  36. 37.
    Zuse, H. A Framework of Software Measurement. Berlin, Walter de Gruyter (1998)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Marcela Genero
    • 1
  • Luis Jiménez
    • 1
  • Mario Piattini
    • 1
  1. 1.Department of Computer ScienceUniversity of Castilla-La ManchaCiudad RealSpain

Personalised recommendations