Skip to main content

A Method to Recover Design Patterns Using Software Product Metrics

  • Conference paper
Software Reuse: Advances in Software Reusability (ICSR 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1844))

Included in the following conference series:

Abstract

Software design patterns are a way of facilitating design reuse in object-oriented systems by capturing recurring design practices. Lots of design patterns have been identified and, further, various usages of patterns are known, e.g., documenting frameworks and reengineering legacy systems [8,15]. To benefit fully from using the new concept, we need to develop more systematic methods of capturing design patterns. In this paper, we propose a new method to recover the GoF patterns using software measurement skills. We developed a design pattern CASE tool to facilitate the easy application of our method. To demonstrate the usefulness of our approach, we carried out a case study, and its experimental results are reported.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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. Basili, V.R., Caldiera, G., Rombach, H.D.: Goal Question Metric Paradigm. In: Marciniak, J.J. (ed.) Encyclopedia of Software Engineering, vol. 1, pp. 528–532. John Wiley & Sons, Chichester (1994)

    Google Scholar 

  2. Beck, K., Coplien, J.O., Crocker, R., Dominick, L., Meszaros, G., Paulisch, F., Vlissides, J.: Industrial experience with design patterns. In: Proc. International Conference on Software Engineering, ICSE, Berlin, pp. 103–114. IEEE Press, Los Alamitos (1996)

    Google Scholar 

  3. Kyle, B.: Design reverse-engineering and automated design pattern detection in Smalltalk. Master’s thesis, Department of Computer Engineering, North Carolina State University (1996)

    Google Scholar 

  4. Brown, W.J., Malveau, R.C., McCornick III, H.W., Mowbray, T.J.: AntiPatterns: Rfactoring Software, Architetures, and Projects in Crisis. John Wiley, Chichester (1998)

    Google Scholar 

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

    Article  Google Scholar 

  6. Gamma, E.: Objektorientierte Software-Entwicklung am Beispiel von ET++: Design-Muster, Klassenbibliothek, Werkzeuge. PhD thesis, University of Zürich (1991); published by Springer Verlag (1992)

    Google Scholar 

  7. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: elements of reusable object-oriented software. Addison-Wesley Publishing Company, Reading (1995)

    Google Scholar 

  8. Johnson, R.E.: Documenting frameworks with patterns. SIGPLAN Notices 27(10), 63–76 (1992); OOPSLA 1992 (1992)

    Article  Google Scholar 

  9. Kim, H., Boldyreff, C.: Software reusability issues in code and design. ACM Ada Letters XVII(6), 91–97 (1997); In: OOPSLA 1996 Workshop on Object-Oriented Software Evolution and Re-engineering, San Jose, USA (October 1996) (originally presented)

    Article  Google Scholar 

  10. Krämer, C., Prechelt, L.: Design recovery by automated search for structural design patterns in object-oriented software. In: Proceedings of Working Conference on Reverse Engineering, Monterey, USA. IEEE CS Press, Los Alamitos (1996)

    Google Scholar 

  11. Lano, K., Malik, N.: Reengineering legacy applications using design patterns. In: Proceedings of the 8th International Workshop on Software Technology and Engineering Practice, London, UK (July 1997)

    Google Scholar 

  12. Martin, R.: Discovering patterns in existing applications. In: Coplien, J.O., Schmidt, D.C. (eds.) Pattern Langauges of Program Design, pp. 365–393. Addison Wesley, Reading (1995)

    Google Scholar 

  13. Ott, L.: An introduction to statistical methods and data analysis, 3rd edn. PWS-KENT Publishing Company, Boston (1988)

    Google Scholar 

  14. Shull, F., Melo, W.L., Basili, V.R.: An inductive method for discovering design patterns from object-oriented software systems. Technical Report CS-TR-3597, UMIACS-TR-96-10, Computer Science Department/Institute for Advanced Computer Studies, University of Maryland (1996)

    Google Scholar 

  15. Stevens, P., Pooley, R.: Systems reengineering patterns. In: Proceedings of the ACM SIGSOFT 6th International Symposium, on the Foundations of Software Engineering (FSE 1998). Software Engineering Notes, vol. 23(6), pp. 17–23. ACM Press, New York (1998)

    Chapter  Google Scholar 

  16. van Latum, F., van Solingen, R., Oivo, M., Hoisl, B., Rombach, D., Ruhe, G.: Adopting GQM-based measurement in an industrial environment. IEEE Software 15(1), 78–86 (1998)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kim, H., Boldyreff, C. (2000). A Method to Recover Design Patterns Using Software Product Metrics. In: Frakes, W.B. (eds) Software Reuse: Advances in Software Reusability. ICSR 2000. Lecture Notes in Computer Science, vol 1844. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-44995-9_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-44995-9_19

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67696-6

  • Online ISBN: 978-3-540-44995-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics