Skip to main content
Top

2019 | OriginalPaper | Chapter

On Finding Model Smells Based on Code Smells

Authors : Erki Eessaar, Ege Käosaar

Published in: Software Engineering and Algorithms in Intelligent Systems

Publisher: Springer International Publishing

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

search-config
loading …

Abstract

A smell in an artifact is a sign that the artifact may have a technical debt, meaning that it may contain the results of one or more sub-optimal design decisions. The debt makes it more difficult to understand, maintain, extend, and reuse the artifact. Technical debt could appear in any technical artifact. Currently the debt in source code is in the center of attention. Modeling is an important system development activity. Models can have technical debt and a sign of it is the presence of one or more model smells. This paper introduces a catalog of 46 model smells (https://​github.​com/​erki77/​model-smells) that has been created based on a set of code smells. The cataloged smells are general but their examples are given based on system analysis models. The main takeaway is that most of the considered code smells are instances of generic problems that can also occur in models.

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 Martin, R.C.: Clean Code. A Handbook of Agile Software Craftsmanship. Pearson Education, Upper Saddle River (2009) Martin, R.C.: Clean Code. A Handbook of Agile Software Craftsmanship. Pearson Education, Upper Saddle River (2009)
4.
go back to reference Tufano, M., Palomba, F., Bavota, G., Oliveto, R., Di Penta, M., De Lucia, A., Poshyvanyk, D.: When and why your code starts to smell bad. In: Proceedings of the 37th International Conference on Software Engineering, vol. 1, pp. 403–414. IEEE Press, Piscataway (2015). https://doi.org/10.1109/icse.2015.59 Tufano, M., Palomba, F., Bavota, G., Oliveto, R., Di Penta, M., De Lucia, A., Poshyvanyk, D.: When and why your code starts to smell bad. In: Proceedings of the 37th International Conference on Software Engineering, vol. 1, pp. 403–414. IEEE Press, Piscataway (2015). https://​doi.​org/​10.​1109/​icse.​2015.​59
5.
go back to reference Jaakkola, H., Henno, J., Welzer-Družovec, T., Thalheim, B., Mäkelä, J.: Why information systems modelling is difficult. In: 5th Workshop of Software Quality, Analysis, Monitoring, Improvement, and Applications, pp. 29–39. University of Novi Sad (2016) Jaakkola, H., Henno, J., Welzer-Družovec, T., Thalheim, B., Mäkelä, J.: Why information systems modelling is difficult. In: 5th Workshop of Software Quality, Analysis, Monitoring, Improvement, and Applications, pp. 29–39. University of Novi Sad (2016)
6.
go back to reference Eessaar, E.: The database normalization theory and the theory of normalized systems: finding a common ground. Balt. J. Mod. Comput. 4, 5 (2016) Eessaar, E.: The database normalization theory and the theory of normalized systems: finding a common ground. Balt. J. Mod. Comput. 4, 5 (2016)
8.
go back to reference Hevner, A.R., March, S.T., Park, J., Ram, S.: Design science in information systems research. MIS Quart. 28, 75–105 (2004)CrossRef Hevner, A.R., March, S.T., Park, J., Ram, S.: Design science in information systems research. MIS Quart. 28, 75–105 (2004)CrossRef
9.
go back to reference Arendt, T., Taentzer, G.: UML model smells and model refactorings in early software development phases. Universitat Marburg (2010) Arendt, T., Taentzer, G.: UML model smells and model refactorings in early software development phases. Universitat Marburg (2010)
12.
go back to reference Gerlitz, T., Tran, Q.M., Dziobek, C.: Detection and handling of model smells for MATLAB/Simulink models. In: International Workshop on Modelling in Automotive Software Engineering, pp. 13–22 (2015) Gerlitz, T., Tran, Q.M., Dziobek, C.: Detection and handling of model smells for MATLAB/Simulink models. In: International Workshop on Modelling in Automotive Software Engineering, pp. 13–22 (2015)
15.
go back to reference Evitts, P.: A UML Pattern Language. Macmillan Technical, Indianapolis (2000) Evitts, P.: A UML Pattern Language. Macmillan Technical, Indianapolis (2000)
17.
18.
go back to reference OMG® Unified Modeling Language® (OMG UML®) Version 2.5.1 OMG® Unified Modeling Language® (OMG UML®) Version 2.5.1
19.
go back to reference Izurieta, C., Rojas, G., Griffith, I.: Preemptive management of model driven technical debt for improving software quality. In: Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, pp. 31–36. ACM, New York (2015). https://doi.org/10.1145/2737182.2737193 Izurieta, C., Rojas, G., Griffith, I.: Preemptive management of model driven technical debt for improving software quality. In: Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, pp. 31–36. ACM, New York (2015). https://​doi.​org/​10.​1145/​2737182.​2737193
20.
go back to reference Thakur, J.S., Gupta, A.: AnModeler: a tool for generating domain models from textual specifications. In: Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, pp. 828–833. ACM, New York (2016). https://doi.org/10.1145/2970276.2970289 Thakur, J.S., Gupta, A.: AnModeler: a tool for generating domain models from textual specifications. In: Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, pp. 828–833. ACM, New York (2016). https://​doi.​org/​10.​1145/​2970276.​2970289
21.
go back to reference Atkinson, C., Draheim, D.: Cloud-aided software engineering: evolving viable software systems through a web of views. In: Mahmood, Z., Saeed, S. (eds.) Software Engineering Frameworks for the Cloud Computing Paradigm. Computer Communications and Networks, pp. 255–281. Springer, London (2013). https://doi.org/10.1007/978-1-4471-5031-2_12 Atkinson, C., Draheim, D.: Cloud-aided software engineering: evolving viable software systems through a web of views. In: Mahmood, Z., Saeed, S. (eds.) Software Engineering Frameworks for the Cloud Computing Paradigm. Computer Communications and Networks, pp. 255–281. Springer, London (2013). https://​doi.​org/​10.​1007/​978-1-4471-5031-2_​12
Metadata
Title
On Finding Model Smells Based on Code Smells
Authors
Erki Eessaar
Ege Käosaar
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-319-91186-1_28

Premium Partner