Technische Universität Ilmenau

Model-Driven Software-Engineering - Interaktive Studienpläne der TU Ilmenau

Die Interaktiven Studienpläne sind ein Informationsangebot zu den Studiengängen der TU Ilmenau.

Die rechtsverbindlichen Studienpläne entnehmen Sie bitte den jeweiligen Studien- und Prüfungsordnungen (Anlage Studienplan).

Alle Angaben zu geplanten Lehrveranstaltungen finden Sie im elektronischen Vorlesungsverzeichnis.

Bitte beachten Sie, dass auf dieser Seite keine Aktualisierungen mehr vorgenommen werden. Alle Module und Studienpläne ab der PO-Version 2021 (Bachelor- und Master-Studiengänge) sind ab sofort im Campus-Portal erreichbar.

Modulinformationen zu Modulnummer 201200 - allgemeine Informationen
Modulnummer201200
FakultätFakultät für Informatik und Automatisierung
Fachgebietsnummer2236 (System- und Software-Engineering)
Modulverantwortliche(r) Dr. Ralph Maschotta
SpracheEnglisch
TurnusWintersemester
Vorkenntnisse

Object-oriented programming, basic knowledge of modeling with UML (e.g. a software engineering lecture)

Lernergebnisse und erworbene Kompetenzen
  • Students know the standards and specifications of model-driven software engineering (MDA, MOF, Ecore, UML, Model to Model and Model to Text Transformation (QVT, MofM2T, Xtext))
  •  Students have acquired skills to create their own domain-specific languages (DSL)
  • They can model the structure and behavior of arbitrary domains in a DSL
  •   In addition, they can develop their own graphical and text-based editors for DSL's
  • The students can create generators for generating text (source code) based on models of their own DSL
  • The students can apply all the knowledge and skills they have learned in practical applications

InhaltThe purpose of this course is to introduce students to model-driven software engineering practices where models (e.g., software components, activity diagrams, state- or flow charts, etc.) are not used as documentation and reasoning artifacts solely but are first-class products from which other modeling, simulation artifacts or executable source code can be produced.
Students will first learn about appropriate methodologies and suitable tooling support for model-driven software engineering. Then, they will develop their own domain-specific Language in small groups (up to 2 students) and implement a dedicated development environment. Finally, they create a model-to-text generator to generate executable source code from models of their own DSL.
Therefore, the course is a combination of lectures in which the fundamentals of model-driven software engineering are taught (e.g., the definition of the abstract syntax, model notations, and the semantics of DSLs) and practical exercises (e.g. using simple microcontrollers) in which the learned methods of model-driven software engineering are used in practical applications.
Table of Content
Lecture:
·  Introduction
·  Fundamentals
·  Meta-Metamodel (MOF/ ECore)
·  Metamodel ((UML-) Structural Modeling)
·  Model queries (OCL/AQL)
·  Behavioral Modeling (State-Chart, Activities)
·  Concrete Syntax
·  Model Transformation (M2Text/ QVT)
·  Model Persistence (XMI/ Xtext)
Lab:
·  Fundamentals of Software Development for Embedded Systems (e.g. Arduino IDE)
·  Metamodel
·  Viewpoint Specification
·  Tools
·  Properties and Validation·  Model to Text Generation
Medienformen und technische Anforderungen bei Lehr- und Abschlussleistungen in elektronischer Form

Moodle, beamer, PC pool, HW setups (e.g.: Arduino or SSE railroad lab

Literatur

Model-Driven Engineering specifications

  • The Object Management Group (OMG) Specifications Catalog;
    URL: Object Management Group: The Specifications Catalog. [online] https://www.omg.org/spec
  • Meta Object Facility (MOF)
    Object Management Group: Meta Object Facility (MOF) Core. 2015, [online] http://www.omg.org/spec/MOF/2.5/
  • Model Driven Architecture (MDA)
    Object Management Group: MDA - The Architecture Of Choice For A Changing World. [online] http://www.omg.org/mda/
  • Unified Modeling Language (UML)
    Object Management Group: Unified Modeling Language (UML), - Version 2.5. 2015, [online] http://www.omg.org/spec/UML/2.5/
  • MOF Model to Text Transformation Language (MOFM2T)
    Object Management Group: MOF Model to Text Transformation Language (MOFM2T). 2008, [online] http://www.omg.org/spec/MOFM2T
  • MOF Query/View/Transformation (QVT)
    Object Management Group: MOF Query/View/Transformation (QVT). 2016, [online] http://www.omg.org/spec/QVT
  • XML Metadata Interchange (XMI)
    Object Management Group: XML Metadata Interchange (XMI). 2015, [online] www.omg.org/spec/XMI/2.5.1/
  • Eclipse Modeling Project (EMP)
    Eclipse Foundation: Eclipse Modeling Project. [online]  http://www.eclipse.org/modeling/
  • Eclipse SiriusURL
    Eclipse Foundation, Obeo  - S.A.S: Sirius - The easiest way to get your own modeling tool. [online] http://www.eclipse.org/sirius/
  • Eclipse AcceleoURL
    Eclipse Foundation, Obeo  - S.A.S: Acceleo - Generate anything from any emf model. [online] http://www.eclipse.org/sirius/

Model-Driven Engineering practice

  • Martin Fowler: Domain-Specific Languages. Addison-Wesley, 2010. ISBN 978-0-321-71294-3
  • Markus Voelter et al., DSL Engineering - Designing, Implementing and Using Domain-Specific Languages, 2013, http://dslbook.org
  • Dave Steinberg, Frank Budinsky, Marcelo Paternostro, Ed Merks: EMF: Eclipse modeling framework, 2nd ed., Addison-Wesley, 2009. ISBN: 978-0-321-33188-5.
  • John Hutchinson, Jon Whittle, and Mark Rouncefield (2014). "Model-driven engineering practices in industry: Social, organizational and managerial factors that lead to success or failure". In: Science of Computer Programming 89.Part B. Special issue on Success Stories in Model Driven Engineering, pp. 144 -161. ISSN: 0167-6423
  • Gunter Mussbacher et al. (2014). "The Relevance of Model-Driven Engineering Thirty Years from Now". In: Model-Driven Engineering Languages and Systems: 17th International Conference, MODELS 2014, Valencia, Spain, September 28 - October 3, 2014. Proceedings. Ed. by Juergen Dingel et al. Cham: Springer International Publishing, pp. 183-200. ISBN: 978-3-319-11653-2
  • Alberto Rodrigues da Silva (2015). "Model-driven engineering: A survey supported by the unified conceptual model". In: Computer Languages, Systems Structures 43.Supplement C, pp. 139 -155. ISSN: 1477-8424
  • Don Batory and Maider Azanza (2017). "Teaching model-driven engineering from a relational database perspective". In: Software & Systems Modeling 16.2, pp. 443-467. ISSN: 1619-1374
  • Physics of Notations
  • D. Harel and B. Rumpe (2004). Meaningful modeling: what's the semantics of "semantics"?, in Computer, vol. 37, no. 10, pp. 64-72
  • D. L. Moody (2009). The Physics of Notations: Improving the Usability and Communicability of Visual Notations in Requirements Engineering, in 2009 Fourth International Workshop on Requirements Engineering Visualization, Atlanta, GA, pp. 56-57.
  • P. Caire, N. Genon, P. Heymans and D. L. Moody (2013) Visual notation design 2.0: Towards user comprehensible requirements engineering notations," in 2013 21st IEEE International Requirements Engineering Conference (RE), Rio de Janeiro, pp. 115-124.

Lehrevaluation
Spezifik Referenzmodul
ModulnameModel-Driven Software-Engineering
Prüfungsnummer220499
Leistungspunkte5
SWS3 (2 V, 1 Ü, 0 P)
Präsenzstudium (h)33.75
Selbststudium (h)116.25
VerpflichtungPflichtmodul
AbschlussPrüfungsleistung mit mehreren Teilleistungen
Details zum Abschluss

Das Modul Model-Driven Software-Engineering mit der Prüfungsnummer 220499 schließt mit folgenden Leistungen ab:

  • mündliche Prüfungsleistung über 20 Minuten mit einer Wichtung von 60% (Prüfungsnummer: 2200879)
  • alternative semesterbegleitende Prüfungsleistung mit einer Wichtung von 40% (Prüfungsnummer: 2200880)



Details zum Abschluss Teilleistung 2:

Solution of the inter-semester seminar tasks (project)

Link zum Moodle-Kurs https://moodle.tu-ilmenau.de/course/view.php?id=3748
LehrendeDr. Ralph Maschotta
Anmeldemodalitäten für alternative PL oder SL
max. Teilnehmerzahl
Spezifik im Studiengang Master Research in Computer and Systems Engineering 2021
ModulnameModel-Driven Software-Engineering
Prüfungsnummer220499
Leistungspunkte5
Präsenzstudium (h)34
Selbststudium (h)116
VerpflichtungWahlmodul
AbschlussPrüfungsleistung mit mehreren Teilleistungen
Details zum Abschluss

Das Modul Model-Driven Software-Engineering mit der Prüfungsnummer 220499 schließt mit folgenden Leistungen ab:

  • mündliche Prüfungsleistung über 20 Minuten mit einer Wichtung von 60% (Prüfungsnummer: 2200879)
  • alternative semesterbegleitende Prüfungsleistung mit einer Wichtung von 40% (Prüfungsnummer: 2200880)



Details zum Abschluss Teilleistung 2:

Solution of the inter-semester seminar tasks (project)

Link zum Moodle-Kurs https://moodle.tu-ilmenau.de/course/view.php?id=3748
Anmeldemodalitäten für alternative PL oder SL
max. Teilnehmerzahl