TU Wien:Model Engineering VU (Kappel)

Aus VoWi
Zur Navigation springen Zur Suche springen
Ähnlich benannte LVAs (Materialien):

Daten[Bearbeiten | Quelltext bearbeiten]

Vortragende Dominik BorkGertrude KappelMichael Schröder
ECTS 6
Letzte Abhaltung 2020W
Sprache English
Mattermost model-engineeringRegisterMattermost-Infos
Links tiss:188923, eLearning, Homepage
Zuordnungen
Masterstudium Business Informatics
Masterstudium Logic and Computation
Masterstudium Medizinische Informatik
Masterstudium Software Engineering & Internet Computing
Masterstudium Technische Informatik


Inhalt[Bearbeiten | Quelltext bearbeiten]

Modelle sollen in der Softwareentwicklung nicht nur der Dokumentation dienen, sondern daraus soll lauffähiger Code generiert werden. Durch Metamodellierungssprachen können Modelle auch zwischen verschiedenen Modelltypen automatisch transformiert werden.

Ablauf[Bearbeiten | Quelltext bearbeiten]

Wöchentliche Vorlesung kombiniert mit Gruppen-Übungen (3 Personen).

Benötigte/Empfehlenswerte Vorkenntnisse[Bearbeiten | Quelltext bearbeiten]

Vortrag[Bearbeiten | Quelltext bearbeiten]

Eigentlich ganz in Ordnung, je nachdem wie du mit dem Vortragsstil von Kappel und Wimmer zurechtkommst. Die Beamer-Folien sind aber sehr gut gestaltet, sodass du auch ohne Vorlesungsbesuch den Stoff verstehen und lernen kannst.

Übungen[Bearbeiten | Quelltext bearbeiten]

Es müssen Gruppen zu je drei Personen im TUWEL gebildet werden, die dann zusammen vier praktische Assignments lösen. Es gibt dabei zu jeweils zwei Assignments ein Abgabegespräch, wo alle Gruppenpartner jeweils gemeinsam sowie einzeln befragt werden. Dabei ist auch Theoriewissen zu den Themen notwendig - eher streng, Folien gut anschauen.

Die Beispielangaben sind meist sehr detailiert und klar formuliert, sodass nicht viel Zeit mit Recherche verschwendet werden muss. Sehr hilfreich waren auch die Beispielprojekte bzw. Beispielvideos in TUWEL, die die Vorgangsweise unter Eclipse sehr gut rübergebracht haben. Der Umgang mit den Tools ist trotzdem sehr gewöhnungsbedürftig.

Es gab 4 Assignments (WS2015):

  1. Metamodeling and OCL (Ecore/EMF)
  2. Concrete Syntax
  3. Model Transformation (ATL, Xtext)
  4. Code Generation (Xtend)

WS 2016: Es gibt insgesamt zwei Abgabegespräche, also für jeweils 2 Assignments eines. Dabei wird zuerst vom Tutor die Bewertung der abgegebenen Lösung durchgegangen. Die Möglichkeit seine eigene Lösung anzusehen oder zu verteidigen gibt es dabei nicht. Anschließend bekommt jedes Teammitglied pro Assignment eine Theoriefrage, die sich in groben Zügen mit den Themen des Assignments beschäftigt. Die eigene Lösung wird dabei nicht gezeigt und muss auch nicht erklärt werden. Es müssen auch kleinste Syntaxdetails bekannt sein und aus dem Kopf erklärt werden. Man sollte sich also speziell darauf vorbereiten. Ein einfaches Erklären Können der eigenen Lösung wird weder verlangt noch ist es ausreichend.

WS 2019: Assignments wie zuvor, Abgabegespräche: Eigene Lösungen werden durchgegangen und Fehler werden aufgezeigt - alles sehr human, ob in Deutsch oder Englisch wurde uns überlassen. Es gab auch einige Theoriefragen die in die Runde gestellt wurden, wer die beantwortet hat war egal, in Summe sollten nur alle etwa gleich viel sagen. Absolut nicht schwierig wenn man die Übung selbst gemacht hat, also keine Angst davor, die Einträge aus den älteren Semestern stimmen überhaupt nicht mehr! Theoriefragen zu beispielsweise: Xtext (verschiedenen Operatoren, Syntax), OCL (wofür verwendet?),..

Prüfung, Benotung[Bearbeiten | Quelltext bearbeiten]

Es gibt zwei Tests (Midterm und Final), je nach Wahl kann einer davon wiederholt werden. Jeweils schriftlich, keine Unterlagen erlaubt, 30 Minuten Zeit. Es werden sowohl Theoriefragen als auch praktische Beispiele (zeichnen von Modellen) gestellt.

Theoriefragen und die praktischen Beispiele ergeben jeweils ca. 50% der Punkte. Dabei sind die praktischen Beispiele recht einfach, wenn man die Übungen gut angeschaut hat (Code-Lückentexte), die theoretischen jedoch nicht zu unterschätzen (Multiple Choice mit teilweise sehr spezifischen Fragen).

WS20: Online-Tests: Beide Tests waren inhaltlich komplett machbar. Jedoch war beim ersten Test die Zeit so knapp bemessen, dass man wirklich kaum eine Chance hatte, alle Beispiele zu lösen bzw. Fragen zu beantworten. Darauf hat die LVA-Leitung auch recht gut reagiert und Punkte gutgeschrieben. Zusätzlich haben sie daraus gelernt, beim zweiten Test wesentlich mehr Zeit zur Verfügung gestellt und auch im Vorhinein ein paar Informationen (wie Metamodell) zur Verfügung gestellt. Dadurch konnte man sich recht gut vorbereiten. Das man jedoch auf die Fragen nicht mehr zurücknavigieren kann, muss man einen guten Zeitplan haben, sonst kann es passieren, dass man vielleicht 10 Minute vor Ende fertig ist, aber die Fragen am Anfang/in der Mitte nicht vollständig gelöst hat. Also neben dem Inhalt muss man hier auch sein eigenes Zeitmanagement unter Beweis stellen.

Prüfungsordner finden sich bei den Materialien.

Dauer der Zeugnisausstellung[Bearbeiten | Quelltext bearbeiten]

  • WS09: Prüfung am 28.01.2010, Zeugnis erhalten am 09.03.2010 (ca. 5-6 Wochen)

Zeitaufwand[Bearbeiten | Quelltext bearbeiten]

Mittel für 6 ECTS. Die Übungs-Assignments brauchen jeweils so 20-25 Stunden (der Großteil davon ist das Kennenlernen und Einlesen in die verwendeten Tools, dann noch ein wenig kämpfen mit Eclipse). Für die beiden Tests ist dafür dann nicht mehr viel Lernaufwand notwendig, wenn man die Übungen selbst gemacht hat, 1-2 Tage die Folien studieren.

WS20: Durch die Tutorialvideos, weiß man recht schnell wie man bei den Übungen vorgehen soll. Dadurch ist der Aufwand für 6 ECTS meiner Meinung nach relativ gering.

Unterlagen[Bearbeiten | Quelltext bearbeiten]

Videos, Software und weitere Links werden im TUWEL bereitgestellt.

Tipps[Bearbeiten | Quelltext bearbeiten]

  • Eclipse ist buggy, also immer regelmäßig speichern und unbedingt ein Versionskontrollsystem verwenden.
  • Im TUWEL der LVA gibt es einen Eclipse Setup Guide. Genau nach diesem vorgehen und die Eclipse Modeling Tools mit der angegebenen Version verwenden - in einem bereits installierten Eclipse einfach nur die Plugins zu installieren führt zu (noch mehr) Problemen und macht das ganze sehr mühsam.
  • Wer sich nicht so gern mit UML oder Java beschäftigt, sollte es sich gut überlegen, ob er die LVA machen will.
  • Unbedingt die Tutorialvideos schauen und die ganzen Hinweise in den Angaben beachten, dann kann man sich unnötige Fehler mit Eclipse etc. ersparen und so die Aufgaben recht schnell lösen.

Verbesserungsvorschläge / Kritik[Bearbeiten | Quelltext bearbeiten]

  • Die Eclipse Modeling Tools mit den Ecore Tools sind unglaublich mühsam und buggy - man gewöhnt sich dran, dass der Eclipse Unhandled Exception Dialog durch den Bildschirm flitzt. Gerne kommt es auch zu NullReferenceExceptions in den Tools, die auch mal das Speichern verhindern (die Ursache liegt meistens bei einem Konsistenzfehler im Modell, in dynamisch generierten Properties oder aber auch einer schlechten Mondphase). Die LVA-Leitung weiß davon, aber "das ist leider so", und es gibt wohl ohnehin keine anderen Model Engineering Tools.
  • Der Vortrag ist mit etlichen Sprachen und Tools überfüllt, die jeweils in hohem Detailgrad durchgekaut werden. Grundsätzliche Konzepte gehen dabei ziemlich unter und werden deshalb leider schnell wieder vergessen (typisch für BIG-LVAs).