Advertisement

Assessing Maintainability Metrics in Software Architectures Using COSMIC and UML

  • Eudisley Gomes dos Anjos
  • Ruan Delgado Gomes
  • Mário Zenha-Rela
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7336)

Abstract

The software systems have been exposed to constant changes in a short period of time. The evolution of these systems demands a trade-off among several attributes to keep the software quality acceptable. It requires high maintainable systems and makes maintainability one of the most important quality attributes. This paper approaches the system evolution through the analysis of potential new architectures using the evaluation of maintainability level. The goal is to relate maintainability metrics applied in the source-code of OO systems, in particular CCC, to notations defined by COSMIC methods and proposes metrics-based models to assess CCC in software architectures.

Keywords

Maintainability metrics COSMIC FFP cohesion complexity and coupling 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Murgante, B., Gervasi, O., Iglesias, A., Taniar, D., Apduhan, B.O. (eds.): ICCSA 2011, Part V. LNCS, vol. 6786. Springer, Heidelberg (2011)Google Scholar
  2. 2.
    e Abreu, F.B., Pereira, G., Sousa, P.: A coupling-guided cluster analysis approach to reengineer the modularity of object-oriented systems. In: Proceedings of the Conference on Software Maintenance and Reengineering, CSMR 2000, p. 13. IEEE Computer Society, Washington, DC, USA (2000)Google Scholar
  3. 3.
    Antoniol, G., Fiutem, R., Cristoforetti, L.: Using metrics to identify design patterns in object-oriented software. In: Proceedings of the 5th International Symposium on Software Metrics, METRICS 1998, p. 23. IEEE Computer Society, Washington, DC (1998)CrossRefGoogle Scholar
  4. 4.
    Bengtsson, P.: Towards maintainability metrics on software architecture: An adaptation of object-oriented metrics. In: First Nordic Workshop on Software Architecture, NOSA 1998 (1998)Google Scholar
  5. 5.
    Berns, G.M.: Assessing software maintainability. Commun. ACM 27, 14–23 (1984)CrossRefGoogle Scholar
  6. 6.
    Bieman, J.M., Kang, B.-K.: Cohesion and reuse in an object-oriented system. SIGSOFT Softw. Eng. Notes 20, 259–262 (1995)CrossRefGoogle Scholar
  7. 7.
    Bode, S.: On the role of evolvability for architectural design. In: Fischer, S., Maehle, E., Reischuk, R. (eds.) GI Jahrestagung. LNI, vol. 154, pp. 3256–3263. GI (2009)Google Scholar
  8. 8.
    Briand, L.C., Bunse, C., Daly, J.W.: A controlled experiment for evaluating quality guidelines on the maintainability of object-oriented designs. IEEE Trans. Softw. Eng. 27, 513–530 (2001)CrossRefGoogle Scholar
  9. 9.
    Cai, Y., Huynh, S.: An evolution model for software modularity assessment. In: Proceedings of the 5th International Workshop on Software Quality, WoSQ 2007, p. 3. IEEE Computer Society, Washington, DC, USA (2007)CrossRefGoogle Scholar
  10. 10.
    Card, D.N., Church, V.E., Agresti, W.W.: An empirical study of software design practices. IEEE Trans. Softw. Eng. 12, 264–271 (1986)Google Scholar
  11. 11.
    Chae, H.S., Kwon, Y.R., Bae, D.-H.: A cohesion measure for object-oriented classes. Softw. Pract. Exper. 30, 1405–1431 (2000)zbMATHCrossRefGoogle Scholar
  12. 12.
    Chae, H.S., Kwon, Y.R., Bae, D.H.: Improving cohesion metrics for classes by considering dependent instance variables. IEEE Trans. Softw. Eng. 30, 826–832 (2004)CrossRefGoogle Scholar
  13. 13.
    Chowdhury, I., Zulkernine, M.: Using complexity, coupling, and cohesion metrics as early indicators of vulnerabilities. J. Syst. Archit. 57 (March 2011)Google Scholar
  14. 14.
    Daly, J., Brooks, A., Miller, J., Roper, M., Wood, M.: Evaluating inheritance depth on the maintainability of object-oriented software. Empirical Software Engineering 1(2), 109–132 (1996)CrossRefGoogle Scholar
  15. 15.
    Efe, P., Demirors, O., Gencel, C.: Mapping concepts of functional size measurement methods. In: COSMIC Function Points Theory and Advanced Practices, pp. 1–16 (2006)Google Scholar
  16. 16.
    El Emam, K., Melo, W., Machado, J.C.: The prediction of faulty classes using object-oriented design metrics. J. Syst. Softw. 56, 63–75 (2001)CrossRefGoogle Scholar
  17. 17.
    Fenton, N.E.: Software Metrics: A Rigorous and Practical Approach. International Thomson Computer Press, Boston (1996)Google Scholar
  18. 18.
    Garlan, D., Schmerl, B.R.: A tool for defining and planning architecture evolution. In: ICSE, pp. 591–594. IEEE (2009)Google Scholar
  19. 19.
    Glass, R.L.: Facts and Fallacies of Software Engineering. Addison-Wesley (2002)Google Scholar
  20. 20.
    IEEE Architecture Working Group. IEEE std 1471-2000, recommended practice for architectural description of software-intensive systems. Technical report. IEEE (2000)Google Scholar
  21. 21.
    Habra, N., Abran, A., Lopez, M., Sellami, A.: A framework for the design and verification of software measurement methods. J. Syst. Softw. 81, 633–648 (2008)CrossRefGoogle Scholar
  22. 22.
    Hashim, K., Key, E.: Malaysian Journal of Computer Science 9(2) (1996)Google Scholar
  23. 23.
    Henry, S., Kafura, D.: Software structure metrics based on information flow. IEEE Transactions on Software Engineering 7(5), 510–518 (1981)CrossRefGoogle Scholar
  24. 24.
    Hitz, M., Montazeri, B.: Chidamber and kemerer’s metrics suite: A measurement theory perspective. IEEE Trans. Softw. Eng. 22, 267–271 (1996)CrossRefGoogle Scholar
  25. 25.
    ISO. International Standard - ISO/IEC 14764 IEEE Std 14764-2006. ISO/IEC 14764:2006 (E) IEEE Std 14764-2006 Revision of IEEE Std 1219-1998), pp. 1–46 (2006)Google Scholar
  26. 26.
    Kuipers, T.: Software Improvement Group, and Joost Visser. Maintainability index revisited - position paper. Complexity, 5–7 (2007)Google Scholar
  27. 27.
    Lee, J.K., Seung, S.J., Kim, S.D., Hyun, W., Han, D.H.: Component identification method with coupling and cohesion. In: Proceedings of the Eighth Asia-Pacific on Software Engineering Conference, APSEC 2001, p. 79. IEEE Computer Society, Washington, DC, USA (2001)Google Scholar
  28. 28.
    Lehman, M.M.: Laws of Software Evolution Revisited. In: Montangero, C. (ed.) EWSPT 1996. LNCS, vol. 1149, pp. 108–124. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  29. 29.
    McCabe, T.J.: A complexity measure. IEEE Transactions on Software Engineering 2, 308–320 (1976)MathSciNetzbMATHCrossRefGoogle Scholar
  30. 30.
    Poshyvanyk, D., Marcus, A.: The conceptual coupling metrics for object-oriented systems. In: Proceedings of the 22nd IEEE International Conference on Software Maintenance, pp. 469–478. IEEE Computer Society, Washington, DC (2006)CrossRefGoogle Scholar
  31. 31.
    Rowe, D., Leaney, J.: Evaluating evolvability of computer based systems architectures - an ontological approach. In: Proceedings of the 1997 International Conference on Engineering of Computer-Based Systems, ECBS 1997, pp. 360–367. IEEE Computer Society, Washington, DC (1997)Google Scholar
  32. 32.
    Shen, H., Zhang, S., Zhao, J.: An empirical study of maintainability in aspect-oriented system evolution using coupling metrics. In: Proceedings of the 2008 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering, pp. 233–236. IEEE Computer Society, Washington, DC (2008)CrossRefGoogle Scholar
  33. 33.
    The Institute of Electrical and Eletronics Engineers. IEEE standard glossary of software engineering terminology. IEEE Standard (1990)Google Scholar
  34. 34.
    Thongmak, M., Muenchaisri, P.: Maintainability metrics for aspect-oriented software. International Journal of Software Engineering and Knowledge Engineering IJSEKE 19(3), 389–420 (2009)CrossRefGoogle Scholar
  35. 35.
    Yu, P., Systä, T., Müller, H.A.: Predicting fault-proneness using oo metrics: An industrial case study. In: Proceedings of the 6th European Conference on Software Maintenance and Reengineering, CSMR 2002, pp. 99–107. IEEE Computer Society, Washington, DC (2002)Google Scholar
  36. 36.
    Zayaraz, G., Thambidurai, P., Srinivasan, M., Rodrigues, P.: Software quality assurance through cosmic ffp. ACM SIGSOFT Software Engineering Notes 30(5), 1 (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Eudisley Gomes dos Anjos
    • 1
    • 2
  • Ruan Delgado Gomes
    • 3
  • Mário Zenha-Rela
    • 1
  1. 1.Centre for Informatics and SystemsUniversity of CoimbraCoimbraPortugal
  2. 2.Centre of InformaticsFederal University of ParaibaJoão PessoaBrazil
  3. 3.Systems and Computer Science DepartmentFederal University of Campina GrandeCampina GrandeBrazil

Personalised recommendations