Bad Smells and Antipatterns in Metamodeling: Unterschied zwischen den Versionen

Aus SDQ-Institutsseminar
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 5: Zeile 5:
|betreuer=Misha Strittmatter
|betreuer=Misha Strittmatter
|termin=Institutsseminar/2017-11-24
|termin=Institutsseminar/2017-11-24
|kurzfassung=In modern software development, metamodels play an important role as they build the
|kurzfassung=In modern software development, metamodels play an important role as they build the basis for domain-specific modeling languages, which are used for system design, simulation and code generation. Like any artifact in a software-development process, these languages and their respective models need to evolve over time. However, if metamodels that define those languages are badly designed, the evolution process is complicated and therefore additional effort has to be spent for maintenance. Such design problems are considered as a bad smell. Existing approaches to detect smells in metamodels deal mainly with simple defects or focus only on a small number of smells. Therefore, we present a comprehensive investigation of bad smells and antipatterns by reviewing design smells of object-oriented programming and, if possible, transfer them to metamodeling. These smells are in part automatically detectable, thus, we provide tool support with suitable detection methods as an extension for EMF Refactor. We evaluate this approach by testing every automatically detectable smell with appropriate models and an application of the tool support on an already existing large metamodel to evaluate the suggested refactorings.
basis for domain-specific modeling languages, which are used for system design, simulation
and code generation. Like any artifact in a software-development process, these
languages and their respective models need to evolve over time. However, if metamodels
that define those languages are badly designed, the evolution process is complicated and
therefore additional effort has to be spent for maintenance. Such design problems are considered
as a bad smell. Existing approaches to detect smells in metamodels deal mainly
with simple defects or focus only on a small number of smells. Therefore, we present a
comprehensive investigation of bad smells and antipatterns by reviewing design smells
of object-oriented programming and, if possible, transfer them to metamodeling. These
smells are in part automatically detectable, thus, we provide tool support with suitable
detection methods as an extension for EMF Refactor. We evaluate this approach by testing
every automatically detectable smell with appropriate models and an application of
the tool support on an already existing large metamodel to evaluate the suggested refactorings.
}}
}}

Aktuelle Version vom 13. November 2017, 12:30 Uhr

Vortragende(r) René Hahn
Vortragstyp Masterarbeit
Betreuer(in) Misha Strittmatter
Termin Fr 24. November 2017
Vortragssprache
Vortragsmodus
Kurzfassung In modern software development, metamodels play an important role as they build the basis for domain-specific modeling languages, which are used for system design, simulation and code generation. Like any artifact in a software-development process, these languages and their respective models need to evolve over time. However, if metamodels that define those languages are badly designed, the evolution process is complicated and therefore additional effort has to be spent for maintenance. Such design problems are considered as a bad smell. Existing approaches to detect smells in metamodels deal mainly with simple defects or focus only on a small number of smells. Therefore, we present a comprehensive investigation of bad smells and antipatterns by reviewing design smells of object-oriented programming and, if possible, transfer them to metamodeling. These smells are in part automatically detectable, thus, we provide tool support with suitable detection methods as an extension for EMF Refactor. We evaluate this approach by testing every automatically detectable smell with appropriate models and an application of the tool support on an already existing large metamodel to evaluate the suggested refactorings.