Skip to main content
Top

2019 | OriginalPaper | Chapter

Metrics in Software Development and Evolution with Design Patterns

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Software metrics are employed in software development and maintenance to assess different quality attributes, support processes of software design, testing, and reengineering. We overview software metrics used with regard to design patterns, especially these dealing with object-oriented program features. Metrics of this kind have also supported certain approaches to refactoring to design patterns. However, code refactoring to design patterns requires selection of suitable code parts and taking decisions about pattern application. In order to make this process partially or fully automated, specialized relevance metrics have been proposed. They were designed as a structure-based assessment of an adequacy of code to be transformed into a given design pattern. Relevance metrics for refactoring to selected design patterns (Replace Type Code with Class, Replace State-Altering Conditions with State) are presented in the paper. The metrics were tested in a prototype tool for automated refactoring of Java programs to design patterns, giving satisfactory results.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
1.
go back to reference Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston (1995)MATH Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston (1995)MATH
2.
go back to reference Kan, S.H.: Metrics and Models in Software Quality Engineering. Addison-Wesley, Boston (1998)MATH Kan, S.H.: Metrics and Models in Software Quality Engineering. Addison-Wesley, Boston (1998)MATH
3.
go back to reference e Abreu, B.F.: The MOOD metrics set. In: Proceedings of the Ninth European Conference Object-Oriented Programming (ECOOP 1995) Workshop Metrics, August 1995 e Abreu, B.F.: The MOOD metrics set. In: Proceedings of the Ninth European Conference Object-Oriented Programming (ECOOP 1995) Workshop Metrics, August 1995
7.
8.
go back to reference Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison Wesley, Boston (1999) Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison Wesley, Boston (1999)
9.
go back to reference Sommerville, I.: Software Engineering, 10th edn. Pearson Education, New York (2015)MATH Sommerville, I.: Software Engineering, 10th edn. Pearson Education, New York (2015)MATH
12.
go back to reference Bavota, G., Lucia, A.D., Marcus, A., Oliveto, R.: Recommending refactoring operations in large software systems. In: Robillard, M.P., Maalej, W., Walker, R.J., Zimmermann, T. (eds.) Recommendation Systems in Software Engineering (RSSE), chap. 15, pp 387–419. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-45135-5 Bavota, G., Lucia, A.D., Marcus, A., Oliveto, R.: Recommending refactoring operations in large software systems. In: Robillard, M.P., Maalej, W., Walker, R.J., Zimmermann, T. (eds.) Recommendation Systems in Software Engineering (RSSE), chap. 15, pp 387–419. Springer, Heidelberg (2014). https://​doi.​org/​10.​1007/​978-3-642-45135-5
14.
go back to reference Derezinska, A.: A structure-driven process of automated refactoring to design patterns. In: Świątek, J., Borzemski, L., Wilamowska, Z. (eds.) Information Systems Architecture and Technology: Proceedings of 38th International Conference on Information Systems Architecture and Technology – ISAT 2017: PART II, AISC, vol. 656, pp. 39–48. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-67229-8_4 Derezinska, A.: A structure-driven process of automated refactoring to design patterns. In: Świątek, J., Borzemski, L., Wilamowska, Z. (eds.) Information Systems Architecture and Technology: Proceedings of 38th International Conference on Information Systems Architecture and Technology – ISAT 2017: PART II, AISC, vol. 656, pp. 39–48. Springer, Cham (2018). https://​doi.​org/​10.​1007/​978-3-319-67229-8_​4
17.
21.
go back to reference Amoui, M., Mirarab, S., Ansari, S., Lucas, C.: A genetic algorithm approach to design evolution using design pattern transformation. Int. J. Inf. Technol. Intell. Comput., 1–10 (2006) Amoui, M., Mirarab, S., Ansari, S., Lucas, C.: A genetic algorithm approach to design evolution using design pattern transformation. Int. J. Inf. Technol. Intell. Comput., 1–10 (2006)
22.
go back to reference Jensen, A.C., Cheng, B.H.: On the use of genetic programming for automated refactoring and the introduction of design patterns. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO), pp. 1341–1348. ACM (2010). https://doi.org/10.1145/1830483.1830731 Jensen, A.C., Cheng, B.H.: On the use of genetic programming for automated refactoring and the introduction of design patterns. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO), pp. 1341–1348. ACM (2010). https://​doi.​org/​10.​1145/​1830483.​1830731
Metadata
Title
Metrics in Software Development and Evolution with Design Patterns
Author
Anna Derezińska
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-319-91186-1_37

Premium Partner