skip to main content
research-article

Dependency oriented complexity metrics to detect rippling related design defects

Published:06 July 2009Publication History
Skip Abstract Section

Abstract

Even though object oriented software development has gained popularity due to its inherent features, it also throws challenges in early detection of defects during design phase. Detection of design defects helps in performing appropriate refactorings in improving the quality of design. Literature indicates that active research is going on in detecting design defects using metrics. The present paper introduces a set of metrics for detecting defects in object oriented designs caused by the presence of shotgun surgery and divergent change bad smells. These metrics are, dependency oriented complexity metric for structure (DOCMS(R)), dependen-cy oriented complexity metric for an artifact causing ripples (DOCMA(CR)), and dependency oriented complexity metric for an artifact affected by ripples (DOCMA(AR)). The proposed me-trics have been computed for four cases. These metrics are used successfully in detecting design defects and complexity. In the present study DOCMA(CR) metric value indicated the presence of shotgun surgery bad smell, whereas DOCMA(AR) metric value indicated the presence of divergent change bad smell. DOCMS(R) metric value indicated the increase in complexity of structure (ar-chitecture) when the design defects are present. Detecting bad smells helps in performing appropriate refactorings to make the software maintainable and to improve the quality of software.

References

  1. Ladan Tahvildari, Kostas Kontogiannis, "A metric-Based Approach to Enhance Design Quality Through Meta-Pattern Transformations", Proc. of the Seventh IEEE European Conf. on Software Maintenance and Reeng. (CSMR'03), pp. 183--192, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Tom Mens, Tom Tourwe, "A Survey of Software Refactoring", IEEE Trans. Software Eng., vol.30, no. 2, pp. 126--139, Feb. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Marinescu, "Detection Strategies: Metrics-Based Rules for Detecting Design Flaws", In Proceedings of the 20th IEEE International Conference on Software Maintenance (ICSM), pp. 350--359, September 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. A. Ananda Rao, D. Janaki Ram, "Software Design Versioning using Propagation Probability Matrix", In Proceedings of Third Int'l Conf. on Computer Applications (ICCA 2005), Yangon, Myanmar, March 2005.Google ScholarGoogle Scholar
  5. V.R. Basili, L.C. Briand, and W.I. Melo, "A Validation Of Object Oriented Design Metrics as Quality Indicators", IEEE Trans. Software Eng., vol. 22, no. 10, pp.751--761, October 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Shyam R. Chidamber, Chris F. Kemerer, "A Metrics Suite for Object Oriented Design", IEEE Trans. Software Eng., vol. 20, no. 6, pp. 476--493, June 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Alexander Chatzigeorgiou, Spiros Xanthos, George Stephanides, "Evaluating Object-Oriented Designs with Link Analysis", Proceedings of the 26th IEEE Int'l Conf. on Software Engineering (ICSE '04), pp. 656--665, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Haider Bilal, Sue Black, "Computing Ripple Effect for Object Oriented Software", Quantitative Approaches in Object Oriented Software Engineering (QAOOSE) Workshop, Nantes, France, July 2006.Google ScholarGoogle Scholar
  9. Lionel C. Brand, Jurgen Wust, Hakim Lounis, "Using Coupling Measurement for Impact Analysis in Object-Oriented Systems", Proceedings of the IEEE Int'l Conf. on Software Maintenance (ICSM'99), pp. 475--482, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Jitender Kumar Chhabra, K.K. Aggarwal, "Measurement of Intra-Class&Inter-Class Weakness for Object-Oriented Software", Proceedings of the Third IEEE International Conference on Information Technology: New Generations (ITNG'06), pp. 155--160, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Srinath, URA: "A Paradigm for Context Sensitive Reuse", A Thesis of Master of Science&Engineering, Indian Institute of Technology, Madras, India, April 1998.Google ScholarGoogle Scholar
  12. Martin Fowler, K. Beck, J. Brant, W. Opdyke, D. Roberts, "Re-factoring: Improving the Design of Existing Code". Addison- Wesley, NY, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Dependency oriented complexity metrics to detect rippling related design defects

                        Recommendations

                        Comments

                        Login options

                        Check if you have access through your login credentials or your institution to get full access on this article.

                        Sign in

                        Full Access

                        PDF Format

                        View or Download as a PDF file.

                        PDF

                        eReader

                        View online with eReader.

                        eReader