TU Wien:Model Engineering VU (Kappel)/Prüfung 2008-05-19

Aus VoWi
Zur Navigation springen Zur Suche springen

Hinweis: Hier war vorher ein Redirect auf http://wiki.winf.at/Testfragen_vom_19.05.2008. Da der Link aber tot ist, habe ich die Inhalte von https://web.archive.org/web/20180817170353/http://web.archive.org/web/20120121175201/http://wiki.winf.at:80/Testfragen_vom_19.05.2008 hierher kopiert.

ATL[Bearbeiten | Quelltext bearbeiten]

  • ATL Code war gegeben, daraus mussten beide Metamodelle gezeichnet werden. Im ATL Code wurden auch Helperfunktionen verwendet. Es war eine Book2Publication Transformation.

Lösung ohne Gewähr ;): Publication bestand aus den Klassen Root und Publication. Publication hatte 5 Attribute. Book bestand aus der Klasse Root, Book und Chapter. Wobei zwei Attribute aus Book namensgleich mit den Attributen aus Publication waren und zwei Attribute aus Chapter mit Hilfe der Helperfunktionen auf die anderen zwei Attribute aus Publication gemappt wurden. Zur Verwirrung hieß ein Attribut der Klasse Chapter author. Außerdem gab es noch eine Vererbung von Book in Hardcover und (wahrscheinlich) Softcover (das mit dem Softcover soll irgendwo im Erklärungstext als implizit angegeben worden sein, stand aber nicht im ATL-Code). In Publication war Hardcover ein Attribut (isHardcover). [bearbeiten] UML-Profile

  • 3 Möglichkeiten UML zu erweitern inkl. Beschreibung und Vor- und Nachteile
  • UML-Profil zeichnen und zwar das Bean Beispiel mit kleinem Zusatz: Entity konnte noch in Container-Managed Bean und noch eine, die ich mir nicht mehr gemerkt habe, unterteilt werden

MDA[Bearbeiten | Quelltext bearbeiten]

  • Was ist das Ziel der MDA (ein Satz)? wobei nicht MDA dort stand sondern irgendein ähnlicher Begriff, denke aber, dass es das gleiche war wie MDA ;)
  • 5 Element aus der Basisarchitektur-Graphik

GMF Mapping[Bearbeiten | Quelltext bearbeiten]

  • Mapping Beispiel mit der Graphik und den Mapping Arten, die man verbinden muss, wobei das Model (nicht das Metamodel!) anders ausgesehen hat (nämlich zwei Nodes mit einer Verknüpfung, anstatt wie im Bsp aus den Folien Aktivity A und Subaktiv B)

OCL[Bearbeiten | Quelltext bearbeiten]

  • Bottle und Container Beispiel aus den Folien. Zwei Invarianten waren gegeben und man musste sie in natürlicher Sprache erklären. (self.content.first().isEmpty und self.content->isEmpty)
  • Dann war ein kleines Model gegeben (Klasse Person, Klasse Fahrzeug mit Vererbung Klasse Auto und Klasse Moped) und man musste folgende Invariante schreiben: "Personen unter 17 Jahren dürfen nur ein Moped besitzen aber kein Auto"

Codegenerierung[Bearbeiten | Quelltext bearbeiten]

  • Welche Aufgaben hat eine Template Engine?
  • Expand und Define anhand von selbst gewählten Bsp erklären

Metamodellierung[Bearbeiten | Quelltext bearbeiten]

  • Anwendungsfalldiagramm war gegeben, daraus musste man das Metamodell zeichnen (gleiches Beispiel wie im PDF Fragestunde, welches im Tuwel ME VO WS07 ganz unten zu finden ist.