Softwarepraktikum SoSe 2014 Code-Stub Generator mit grafischem Editor 1. Zielbestimmung Ziel ist die Entwicklung eines modellgetriebenen Java-Code Generators. Nutzer sollen ein Modell ihrer Software erstellen können und der Generator soll dann die dazugehörigen .java Dateien erzeugen. Zusätzlich soll eine grafische Benutzeroberfläche für die Modellierung gestaltet werden, die über die generierte EMF-Oberfläche hinausgeht. 1.1 Musskriterien Der Generator soll mindestens in der Lage folgendes zu erzeugen: - Java Klassenrümpfe Methoden-Signaturen Interfaces Weiterhin muss folgendes entwickelt werden: - Ein Meta-Modell zur Software-Modellierung Ein grafischer Modelleditor 1.2 Kannkriterien Weitere Code-Generate: - Attribute Loops Bedingungen Zuweisungen ... 1.3 Abgrenzungskriterien Der generierte Code muss korrekt, aber nicht ausführbar sein. Stubs reichen. 2. Umgebung/Technologien Die Software soll als Plugin für die Eclipse IDE zur Verfügung stehen. Als solches wird sie auf Basis des Eclipse Modeling Frameworks (EMF) entwickelt. Das Meta-Modell wird im Rahmen von EMF als .ecore File modelliert, aus welchem EMF automatisch einen simplen default-Editor erzeugt. Die Erzeugung der Code-Fragmente geschieht als Teil des Eclipse-Plugins mithilfe eines beliebigen File-Writers (z.B. java.util.PrintWriter). Der grafische Modell-Editor wird mit Hilfe des Graphiti Frameworks erstellt. 3. Vorläufiger Zeitplan Das Meta-Modell sollte bereits im Rahmen der Design-Phase entstehen. Ein simples prototypisches Plugin, ohne grafischen Editor und Code-Generator sollte am Ende der ersten Implementierungswoche bereitstehen. Ein prototypischer Code-Generator sollte am Ende der zweiten Implementierungswoche bereitstehen. Mindestens die Hälfte der Implementierungszeit sollte für die Entwicklung des grafischen Editors eingeplant werden.