Skip to main content

A Metric-Based Approach for Anti-pattern Detection in UML Designs

  • Conference paper
Computer and Information Science 2011

Part of the book series: Studies in Computational Intelligence ((SCI,volume 364))

Abstract

Anti-patterns are poor solutions of recurring design problems, which decrease software quality. Numerous anti-patterns have been outlined in the literature as violations of various quality rules. Most of these anti-patterns have been defined in terms of code quality metrics. However, identifying anti-patterns at the design level would improve considerably the code quality and substantially reduce the cost of correcting their effects during the coding and maintenance phases. Within this context, we propose an approach that identifies anti-patterns in UML designs through the use of existing and newly defined quality metrics. Operating at the design level, our approach examines structural and behavioral information through the class and sequence diagrams. It is illustrated through five, well-known anti-patterns: Blob, Lava Flow, Functional Decomposition, Poltergeists, and Swiss Army Knife.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Riel, J.: Object-Oriented Design Heuristics. Addison Wesley, Reading (1996)

    Google Scholar 

  2. Trifu, A., Seng, A., Genssler, T.: Automated design flaw correction in object-oriented systems. In: Proceedings of the 8th Conference on Software Maintenance and Reingineering (CSMR 2004), pp. 174–183. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  3. Bouhours, C., Leblanc, H.: Christian Percebois. Bad smells in design and design pat-terns. Journal of Object Technology 8, 43–63 (2009)

    Article  Google Scholar 

  4. Marinescu, C., Marinescu, R., Mihancea, P.F., Wettel, R.: iPlasma: An integrated platform for quality assesment of object-oriented design. Loose Research group. Polite-chiea University of Tinoisoora (ICSM 2005), pp. 77–80. Society Press (2005)

    Google Scholar 

  5. Ballis, D., Baruzzo, A., Comini, M.: A rule-based method to match Software Patterns against UML Models. In: Proceedings of International Workshop on Rule Based Programming (RULE 2007), vol. 219, pp. 51–66. Theoretical Computer Science Press (2008)

    Google Scholar 

  6. Ballis, D., Baruzzo, A., Comini, M.: A Minimalist Visual Notation for Design Patterns and Antipatterns. In: Proceedings of the 5th International Conference on Information Tech-nology: New Generations (ITNG 2008), April 2009, pp. 51–66 (2009) (in press)

    Google Scholar 

  7. Alikacem, E., Sahraoui, H.A.: DĂ©tection d’anomalies utilisant un langage de des-cription de rĂšgle de qualitĂ©. In: Rousseau, R., Urtado, C., Vauttier, S.(eds.) 12 Conference on Languages and Models with Objects (LMO 06), March 2006, pp. 185–200 (2006)

    Google Scholar 

  8. Gamma, E., Helm, R., Johnson, R., Vlissides, J.M.: Design patterns: Elements of reusable Object Oriented Software. Addisson-Wesley, Reading (1995)

    Google Scholar 

  9. Bieman, J.M., Kang, B.K.: Cohesion and reuse in an object oriented system. In: Proceedings ACM Symp., On Software Reusability, pp. 259–262 (1995)

    Google Scholar 

  10. Chen, J.Y., Lu, J.F.: A new metric for object-oriented design. Information and Software Technology 35, 232–240 (1993)

    Article  Google Scholar 

  11. Dodani, M.: Patterns of antipatterns. Journal Of Object Technology 5, 29–33 (2006)

    Article  Google Scholar 

  12. Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring-Improving the Design of Existing Code, 1st edn. Addison-Wesley, Reading (1999)

    Google Scholar 

  13. Moha, N., GuĂ©heneuc, Y.G., Leduc, P.: Automatic generation of detection algorithms for design defects. In: Proceedings of the 21st Conference on Automated Software Engi-neering (ASE 2006), September 2006, pp. 297–300. IEEE Computer Society Press, Los Alamitos (2006)

    Google Scholar 

  14. Moha, N., GuĂ©hĂ©neuc, Y.-G., Le Meur, A.-F., Duchien, L.: A domain analysis to specify design defects and generate detection algorithms. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 276–291. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  15. Marinescu, R.: Detection strategies: Metrics-based rules for detecting design flaws. In: Proc. of the 20th International Conference on Software Maintenance (ICSM 2004), pp. 350–359. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  16. Chidamber, S.R., Kemerer, C.F.: A metric suite for object oriented design. IEEE Transactions on Software Engineering 20, 476–493 (1994)

    Article  Google Scholar 

  17. Grotehen, T., Dittrich, K.R.: The MeTHOOD Approach: Measures, Transformation Rules, and Heuristics for Object-Oriented Design. Technical Report: ifi-97.09 (1997)

    Google Scholar 

  18. McCabe, T.J.: A Complexity Measure. IEEE Transactions on Software Engineering 4, 308–320 (1976)

    Article  MathSciNet  Google Scholar 

  19. Brown, W.J., Malveau, R.C., McCormick, H.W., Mowbray, T.J.: Antipatterns: Refac-torin Software, Architectures, and Projects in Crisis, 1st edn. John Wily and Sons, West Sussex (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Fourati, R., Bouassida, N., Abdallah, H.B. (2011). A Metric-Based Approach for Anti-pattern Detection in UML Designs. In: Lee, R. (eds) Computer and Information Science 2011. Studies in Computational Intelligence, vol 364. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21378-6_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21378-6_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21377-9

  • Online ISBN: 978-3-642-21378-6

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics