Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge

Größe: px
Ab Seite anzeigen:

Download "Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge"

Transkript

1 Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 7 Transformationen Arbeitspaketleitung arconsis Förderkennzeichen 01IS11012A-C Projektleitung andrena objects AG Jochen Winzen Partner andrena objects ag arconsis IT-Solutions GmbH FZI Forschungszentrum Informatik Autoren Martin Küster, Johannes Tysiak, Nikolas Herbst Lieferdatum M21 Letztes Änderungsdatum Version 1.0 Qualitätswerkzeuge 1

2 1 Einleitung Ein zentrales Element der ModAgile Werkzeugkette ist der Generator, der auf Basis der zuvor erstellten plattformunabhängigen Modelle Quellcode für die Anwendung sowie Testrümpfe und sonstige Artefakte (wie beispielsweise Konfigurationen) erstellt. Das vorliegende Dokument erläutert den Aufbau und die Struktur der gewählten Implementierung und diskutiert während der Erstellung getroffene Entscheidungen. Anschließend wird aus Sicht des Endanwenders die Nutzung des Generators innerhalb der Eclipse Entwicklungsumgebung anhand eines konkreten Beispiels veranschaulicht. 2 Umsetzung Im Folgenden wird die Werkzeugkette zur Generierung von Quellcode aus dem Anwendungs-, Domänenund Testmodellen beschrieben. Die Kette wird pro Zielplattform so konfiguriert, dass der entsprechende Zielcode entsteht. Zurzeit ist dies für die Plattformen android (in Java) und ios (in Objective-C) umgesetzt. Die gemeinsamen Bestandteile wurden so herausfaktorisiert, dass der gemeinsame Kern der technischen Infrastruktur für die jeweilige Plattform nur an wenigen Stellen angepasst werden muss. Dies bezieht sich insbesondere auf das Aufsetzen des Workflows, der die Generierung startet sowie selbstverständlich die unterschiedlichen Templates während der Code-Generierung. Abbildung 1 veranschaulicht die einzelnen Schritte der Generierung: Workflow- Instanziierung (ios / android) Modelltraversierung Quellcode- Generierung Kompilierung und Ausführung der Tests Abbildung 1 Übersicht der Schritte zur Code-Generierung Zunächst wird ein Workflow aufgesetzt, der die verschiedenen Stufen der Generierung aneinanderfügt und ausführt. Dazu wird die Eclipse-interne Modeling Workflow Engine (MWE2) verwendet. Während zu Beginn des Projekts diese Workflows als Textartefakte vorlagen, die von Hand angepasst werden mussten, um die richtigen Pfade und Generierungskomponenten zu enthalten, wird der Workflow in der aktuellen Version programmatisch angestoßen. Die Hauptkomponente, die den Startpunkt für die Traversierung des Anwendungsmodells und die nachfolgende Generierung von Quellcode darstellt, wird in diesem Workflow lediglich mit der jeweiligen Zielplattform parametrisiert. Dies ermöglicht eine einfache Erweiterung für weitere Plattformen, ohne den Kern anpassen zu müssen. Die Schritte Modelltraversierung und Codegenerierung sind danach plattformspezifisch. Für die jeweilige Ziel-IDE (Integrated Development Environment) werden die jeweiligen Anwendungsprojekte automatisch erzeugt und können danach editiert werden. Im Java- / android-fall wird aus dem Anwendungs- und Domänenmodell ein Eclipse-Projekt erstellt, das nach sehr geringen Anpassungen als android- Anwendung bereits lauffähig ist und direkt getestet werden kann. Im ios-fall wird ein Xcode-Projekt erstellt, das eine lauffähige ios-anwendung enthält. Qualitätswerkzeuge 2

3 Im letzten Schritt wird die Anwendung automatisch von der Entwicklungsumgebung übersetzt und getestet. Dies wird von der jeweiligen Entwicklungsumgebung übernommen. Die Java-Klassen im android-fall werden also genau wie der Objective-C-Code im ios-fall automatisch übersetzt und gebündelt. de.modagile.generator.ios.modeltraverser de.modagile.generator.ios org.eclipse.xtext.generator.igenerator de.modagile.generator.common de.modagile.generator.android.modeltraverser de.modagile.generator.android Injected at runtime via Google Guice Abbildung 2 Plugins, die bei der Generierung involviert sind Technisch musste die Herausforderung gelöst werden, dass das Plugin, das die allgemeinen, plattformunabhängigen Dienste erbringt (de.modagile.generator.common) nicht von den jeweiligen plattformspezifischen Generierungsplugins wissen sollte. Daher wurde die Schnittstelle, die den Code generiert (org.eclipse.xtext.generator.igenerator) von verschiedenen Klassen implementiert wird, aber die Entscheidung, welche Implementierung genutzt wird, von sogenannter dynamischer Bindung Gebrauch macht. Über das Google-Guice-Modul wird der Generator erst zur Laufzeit der Plugins injiziert. Damit haben wir erreicht, dass die Plugins unabhängig und flexibel erweiterbar sind. 2.1 Modelltraversierung und Quellcode-Generierung Die gesamte Generierungsworkflow setzt auf der Modelltraversierung auf. Modelltraversierung bedeutet, dass das vom App-Entwickler erstellte konkrete App-Modell vollständig durchlaufen wird. Bei diesem Durchgang gelangt der Modelltraverser zu allen im Modell vorhandenen Elementen. Er stößt jeweils die Generierung der Artefakte an, welche für die Plattform spezifische Realisierung benötigt werden. Das für die Generierung benötigte plattformspezifische Wissen ist in Templates, also wiederverwendbaren Codeschablonen, gekapselt. Diese Templates werden bei der Generierung durch Informationen aus dem Modell konfiguriert und verknüpft. Wie dieser Schritt unter Verwendung von Xtend2 im Detail vonstattengeht, ist in Abschnitt 2.2 beschrieben. Ein zentraler Punkt bei der Generierung aus dem App-Modell heraus ist die Organisation der generierten Artefakte. Es ist nötig, ein strukturiertes Projekt in der entsprechenden Entwicklungsumgebung für die Zielplattform neu anzulegen oder bei Neugenerierung zielgerichtet zu modifizieren und manuelle Erweiterungen zu schützen. Hierzu implementiert die JavaFileSystemAccess-Klasse des entsprechenden Generators die IFileSystemAcces-Schnittstelle mit 2 Erweiterungen, welche in Abbildung 3 dargestellt sind. Die Interfaces werden um die Funktionen generatefile(), addoutputconfiguration() und setproject() erweitert. Mit dieser Funktionalität werden die generierten Artefakte zuerst ins Dateisystem geschrieben. Hierbei wird ebenfalls Qualitätswerkzeuge 3

4 eine Ordnerstruktur angelegt, welche zum einen das App-Modell widerspiegelt, sich aber auch nach plattformspezifischen Anforderungen richtet. Anschließend wird eine Projektdatei für die entsprechende Entwicklungsumgebung entweder erzeugt, sofern noch keine vorhanden war, oder eine vorhandene modifiziert. Als Ergebnis sind in der Projektdatei alle generierten Artefakte registriert, so dass sie ohne weiteren Konfigurationsaufwand bei der Kompilierung des Projekts für die entsprechende Zielplattform mit berücksichtigt werden. Die saubere Trennung der generierten Artefakte in Projektstruktur und auf Dateisystemebene von weiteren manuellen Erweiterungen, ist ein weiterer Punkt, der bei der automatisierten Projekt-Erstellung bzw. Anpassung zu beachten ist. Auf diese Weise wird es ermöglicht, erneute Code-Generierungen und damit auch spätere Modellanpassungen in bereits existierende Projekte mit einfließen zu lassen. Damit eine Entkopplung von generierten und manuell erstellten Codeartefakten gewährleistet ist ohne die Freiheit für Erweiterungen einzuschränken, werden dem App-Entwickler gekennzeichnete Erweiterungspunkte, sog. Hooks, angeboten. «interface» IFileSystemAccess + String DEFAULT_OUTPUT = DEFAULT_OUTPUT +generatefile(string filename, CharSequence contents): void +generatefile(string filename, String outputconfiguration, CharSequence contents): void +deletefile(string filename): void «interface» IFileSystemAccessExtension +deletefile(string filename, String outputconfiguration): void «interface» IFileSystemAccessExtension2 +geturi(string filename, String outputconfiguration): URI +geturi(string filename): URI AbstractFileSystemAccess - outputs: Map<String, OutputConfiguration> - postprocessor: IFilePostProcessor + generatefile(string filename, CharSequence contents): void + deletefile(string filename): void + deletefile(string filename, String outputconfigurationname): void + geturi(string filename): URI + getoutputconfigurations() : Map<String, OutputConfiguration> + setoutputconfigurations(map<string, OutputConfiguration> outputs): void + setoutputpath(string path): void + setoutputpath(string outputname, String path): void JavaFileSystemAccess - encodingprovider: IEncodingProvider - registry: IResourceServiceProvider.Registry + generatefile(string filename, String outputconfigname, CharSequence contents): void + geturi(string filename, String outputconfiguration): URI + deletefile(string filename, String outputconfigurationname): void de.modagile.generator.common - project: IProject - monitor: IProgressMonitor JavaFileSystemAccess2 + generatefile(string filename, String outputconfigname, CharSequence contents): void + addoutputconfiguration(outputconfiguration newoutputconf): void + setproject(iproject project): void Abbildung 3 Schnittstellen zum Speichern von generierten Dateien Qualitätswerkzeuge 4

5 2.2 Struktur der Templates und M2T-Transformationen mit Xtend2 Abbildung 4 und Abbildung 5 geben einen Überblick über die plattformspezifische Struktur der Templates in den jeweiligen Codegeneratoren. So werden in beiden Fällen zum Beispiel Templates für die Synchronisierungsfunktionalität und für Konstanten angeboten. In der Struktur der Templates beider Generatoren ist auch das MVC (modell/view/control) Architekturpattern erkennbar. Im Gegensatz dazu sind die Templates unter modagile.appdelegate zum Beispiel plattformspezifisch. Diese werden lediglich in ios-anwendungen als Programmeinstiegspunkt benötigt. Abbildung 4: Templatestruktur ios Generator Abbildung 5: Templatestruktur Android Generator Die Templates sind in der Xtend Sprache realisiert. Xtend2 ist eine statisch getypte Programmiersprache, welche sich zu Java Quellcode übersetzen lässt und auf Xtext aufbaut. Xtext selbst bietet Unterstützung beim Erstellen von domänenspezifischen Sprachen. Mit Xtend2 als Werkzeug ist es also möglich, auf einer hohen Abstraktionsebene die einzelnen Modellelemente mit den plattformspezifischen Artefakten zu verweben und die Erzeugung von lauffähigem Quellcode anzustoßen. Qualitätswerkzeuge 5

6 3 Erstellung einer Beispiel-App Die im Rahmen des Projekts ModAgile Mobile entwickelte Werkzeugkette integriert sich nahtlos in die Eclipse Entwicklungsumgebung. Die Installation kann über den Eclipse-spezifischen Update- Mechanismus P2 erfolgen. Hierzu steht eine Eclipse Update Site zur Verfügung. Die Installation der ModAgile Mobile Werkzeugkette wird auf den Webseiten des Projektes unter folgendem Link erklärt: Neben den ModAgile Mobile Werkzeugen müssen zudem noch die herkömmlichen Werkzeuge für plattformspezifische Entwicklung von mobilen Anwendungen (u.a. Android SDK für Android und Xcode für ios) installiert werden. 3.1 Modellbearbeitung Als erster Schritt muss ein neues Eclipse-Projekt erstellt werden, dass die Modelle für die zu entwickelnde Anwendung enthält. In diesem neuen Projekt können über den New-Wizard nun leere Modelle für die weitere Arbeit angelegt werden. Als erstes Modell sollte das App-Model angelegt werden (über File -> New -> Other -> Example EMF Model Creation Wizards -> App Model). Zunächst muss nun der Dateiname für die Modelldatei angegeben werden. Anschließend wird das Mobile App Element als Model Object ausgewählt. Das App Model ist nun initial angelegt. Eine grafische Repräsentation des Screenflow-Modells kann in ähnlicher Form über einen Wizard initialisiert werden (File -> New -> Other -> Examples -> modagil Diagram). Abbildung 6: App Model Wizard Qualitätswerkzeuge 6

7 Neben den App- und Screenflow-Modellen ist ein Domänenmodell erforderlich, das die Entitäten und Relationen aus der Anwendungsdomäne beschreibt. Für die ModAgile Werkzeugkette wurde hierzu kein eigenes Metamodell erzeugt. Anstatt dessen wird das Ecore Metamodell aus dem Eclipse Modeling Project wiederverwendet, das sich in vielen Bereichen als de facto Industriestandard etabliert hat und für das bereits eine Reihe von geeigneten Editoren existiert. Für eine detaillierte Beschreibung der verwendeten Metamodelle sei an dieser Stelle lediglich auf die Dokumentation der jeweiligen Metamodelle verwiesen. Im Folgenden wird ein kurzer Überblick über die zuvor genannten Modelle gegeben. Die dabei verwendeten Screenshots zeigen das Simple App Modell, das für den schnellen Einstieg als fertiges Beispielprojekt im Download-Bereich der Projektwebsite heruntergeladen werden kann. Abbildung 7: App Model Das App-Modell (siehe Abbildung 7) repräsentiert unter anderem die UI-Elemente der zu generierenden Applikation. Das Storyboard definiert einzelne Screens der Anwendung und den dazugehörigen Screenflow. Im Binding Repository werden Display-Elemente an Attribute von Domänenentitäten gebunden. Im Complex Display Element Type Repository können komplexere Displayelemente vordefiniert werden, die später innerhalb von Screens instanziiert werden können. Qualitätswerkzeuge 7

8 Abbildung 8: Graphischer Screenflow Editor Neben der Darstellung im Baum-Editor kann der Screenflow des App-Modells auch in einem graphischen Editor angezeigt und bearbeitet werden. Im gezeigten Beispiel ist ein Screen mit einer dynamischen Liste zu sehen. Abbildung 9: Ecore Domänenmodell Abbildung 9 zeigt das Domänenmodell der Anwendung als Ecore-Repräsentation. Es kann sowohl im baumbasierten Editor als auch in einem graphischen Ecore-Editor dargestellt werden. Qualitätswerkzeuge 8

9 3.2 Anwendungsgenerierung Um aus den zuvor beschriebenen Modelldateien den Rumpf einer mobilen Anwendung zu genieren, muss das App-Modell geöffnet werden. Im Baumeditor muss nun der oberste Knoten geöffnet werden, so dass das Modellelement Mobile App sichtbar ist. Mit einem Rechtsklick auf das Mobile App Element können die Funktionen Generate App (für Android) und Generate App ios (für ios) ausgeführt werden Android-Generierung Der Generator für Android produziert zunächst zwei neue Eclipse-Projekte. Das Projekt mit dem im App- Modell konfigurierten Namen ist das eigentliche Anwendungsprojekt. Das Projekt com.actionbarsherlock beinhaltet Kompatibilitätsbibliotheken, die die Funktionalitäten der ActionBar aus Android 3.0 (und größer) auch für vorhergehende Android-Versionen zur Verfügung stellt. Dieses Projekt muss in der Regel nicht mehr editiert werden. Das Anwendungsprojekt enthält einen Ordner src-gen, in dem sich die generierten Klassen befinden. Inhalte dieses Ordners werden bei jedem Generierungsvorgang vollständig überschrieben. Aus diesem Grund dürfen innerhalb dieses Ordners keine manuellen Anpassungen erfolgen. Im Verzeichnis src-man befindet sich manuell geschriebener Code. Daneben werden einmalig in dieses Verzeichnis Hooks generiert, die es ermöglichen, manuell geschriebenen Code im Framework-Code zu verankern. Hier lassen sich unter anderem die Lifecycle-Methoden überschreiben. Qualitätswerkzeuge 9

10 Abbildung 10: Generierte Android-Projekte in Eclipse Das so generierte Projekt lässt sich bereits in diesem initialen Zustand als Android-Anwendung ausführen und auf Geräten installieren ios-generierung Der Generator für ios-projekte ist zum Zeitpunkt der Erstellung dieses Dokuments noch nicht so weit entwickelt wie der Android-Generator. Bei der Generierung für ios wird ein ios-projekt erstellt, das gleichzeitig auch als Eclipse-Projekt geladen werden kann. Die eigentliche Entwicklung für ios muss jedoch in der Apple Xcode-Entwicklungsumgebung fortgesetzt werden, da zum momentanen Zeitpunkt für Eclipse kein Compiler und/oder Simulator für ios-projekte existiert. Das generierte Projekt lässt sich direkt als Projekt in XCode importieren. Wie beim Android-Projekt werden auch für ios die generierten Klassen in ein eigenes Verzeichnis abgelegt, das bei jedem Generierungsvorgang vollständig überschrieben wird. Im Gegensatz zu Android- Projekten gibt es bei Xcode-Projekten keinen direkten Zusammenhang zwischen der Struktur im Dateisystem und der logischen Projektstruktur in der Entwicklungsumgebung. Um dennoch generierten Code von manuell erstelltem Code unterscheiden zu können, werden generierte Klassen in eine eigene logische Projektgruppe ( Group ) abgelegt, so für den Entwickler die Art des Codes (generiert vs. nicht Qualitätswerkzeuge 10

11 generiert) zu jedem Zeitpunkt klar ersichtlich ist. Auch das generierte ios-projekt ist nach der initialen Generierung bereits ausführbar. 4 Fazit Im Rahmen von Arbeitspaket 7 ist ein Generatorwerkzeug für die Generierung von Android- und ios- Projekten, -Quellcode, -Testrümpfen und weiteren Artefakten entstanden. Ein Fokus der gewählten Implementierung liegt auf der Erweiterbarkeit der Generatoren für weitere Plattformen. So ist zukünftig (nach Abschluss des Projektes) eine Anbindung anderer mobiler Plattformen, wie beispielsweise Windows Phone oder Blackberry, vorstellbar. Durch die Integration des Generators in die Eclipse Entwicklungsumgebung, für die auch die Modelleditoren erstellt wurden, ist eine durchgängige Werkzeugkette für das Erstellen und Bearbeiten von Modellen, sowie für die Code-Generierung entstanden. Die Bedienung des Generators ist möglichst intuitiv gehalten, so dass eine hohe Entwicklungseffizienz für die plattformübergreifende Softwareentwicklung für mobile Plattformen geschaffen wurde. Qualitätswerkzeuge 11

Lieferung 4.2 Entwicklungsumgebung für die Integration von der modellgetriebenen Entwicklung in den Entwicklungszyklus

Lieferung 4.2 Entwicklungsumgebung für die Integration von der modellgetriebenen Entwicklung in den Entwicklungszyklus Lieferung 4.2 Entwicklungsumgebung für die Integration von der modellgetriebenen Entwicklung in den Entwicklungszyklus für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile

Mehr

Lieferung 3.2 Erfahrungsbericht M24

Lieferung 3.2 Erfahrungsbericht M24 Lieferung 3.2 Erfahrungsbericht M24 für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen Projektleitung Partner

Mehr

Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen

Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket

Mehr

Lieferung 8.1 DSL und Generator für automatisierte Unit- und Akzeptanz-Tests

Lieferung 8.1 DSL und Generator für automatisierte Unit- und Akzeptanz-Tests Lieferung 8.1 DSL und Generator für automatisierte Unit- und Akzeptanz-Tests für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 8 Test- und

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen

Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen

Mehr

Lieferung 8.2 Erweiterung von ISIS um Metriken auf der Modell-Ebene

Lieferung 8.2 Erweiterung von ISIS um Metriken auf der Modell-Ebene Lieferung 8.2 Erweiterung von ISIS um Metriken auf der Modell-Ebene für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 8 Test- und Qualitätssicherungsumgebung

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Lieferung 2.2 Validierung der Anforderungen

Lieferung 2.2 Validierung der Anforderungen Lieferung 2.2 Validierung der Anforderungen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen Projektleitung

Mehr

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit EMF ist ein eigenständiges Eclipse-Projekt (Eclipse Modeling Framework Project) EMF ist ein Modellierungsframework und Tool

Mehr

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4. SEW Übung EMFText 1 Aufgabe Erstellen Sie eine textuelle Domänenspezifische Sprache Domain-specific Language (DSL) mit dem Werkzeug EMFText. Die Sprache soll dazu dienen Formulare (Fragen, Antworttypen

Mehr

Lieferung 3.2 Erfahrungsbericht Stand: M6

Lieferung 3.2 Erfahrungsbericht Stand: M6 Lieferung 3.2 Erfahrungsbericht Stand: M6 für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 3 Referenzarchitektur und Benutzungsfälle Arbeitspaketleitung

Mehr

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN Mathias Slawik, WI (M), 3. FS Aktuelle Themen der Wirtschaftsinformatik, HTW Berlin, WS 10/11 Gliederung 2 Methode

Mehr

Datenhaltung für Android Model First. 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg

Datenhaltung für Android Model First. 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg Datenhaltung für Android Model First 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg Agenda Datenhaltung in Android Motivation / Projektziele Projekt Umsetzung Stand der Entwicklung Fazit 2 Datenhaltung

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de Innovator 2007 Anbindung an openarchitectureware Klaus Weber Connect www.mid.de Anbindung an openarchitectureware (oaw) Wozu dient die Anbindung an openarchitectureware? Für Innovator Object excellence

Mehr

Lieferung 8.3 Erweiterung von USUS um Metriken auf der Modell-Ebene

Lieferung 8.3 Erweiterung von USUS um Metriken auf der Modell-Ebene Lieferung 8.3 Erweiterung von USUS um Metriken auf der Modell-Ebene für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 8 Test- und Qualitätssicherungsumgebung

Mehr

Software Engineering II

Software Engineering II Software Engineering II Wintersemester 12/13 Fachgebiet Software Engineering Installation der MWE Plugins Von der Juno Update Site installieren (falls noch nicht vorhanden): MWE SDK Xpand SDK 2 TFD Projekt

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Ringvorlesung Softwareentwicklung in der industriellen Praxis TU Dresden 14. Dezember 2011 Die i.s.x. Software GmbH & Co. KG Junges,

Mehr

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo)

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Gert Bikker, Kevin Barwich, Arne Noyer Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Die Modellierung mit UML bietet auch für eingebettete Systeme viele Vorteile. Um die Vorteile effizient nutzen

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT

Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT Boris Golubovic Dortmund, den 24. Oktober 2010 Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT Ein Projekt anlegen Ein Projekt kapselt alle zu einer Anwendung gehörenden

Mehr

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren 1 32- oder 64-bit Windows feststellen In den nachfolgenden Schritten ist es nötig, dass Sie wissen, ob Sie

Mehr

Individuelle Erweiterung des generierten Codes. 16. Januar 2013

Individuelle Erweiterung des generierten Codes. 16. Januar 2013 Individuelle Erweiterung des generierten Codes 16. Januar 2013 Überblick Welche Möglichkeiten zur individuellen Erweiterung von generiertem Code gibt es? Innerhalb eines Moduls (Klasse) Auf Modulebene

Mehr

DDBAC-SDK unter Linux (mit Wine) Installationsanleitung

DDBAC-SDK unter Linux (mit Wine) Installationsanleitung DDBAC-SDK unter Linux (mit Wine) Installationsanleitung Installation von Wine Einleitung Übersicht Titel Thema Datei DDBAC-SDK unter Linux (mit Wine) Installationsanleitung DDBAC_Wine_Installation.doc

Mehr

Lieferung 3.1 Beschreibung der Referenzarchitektur für das BMBF-Projekt

Lieferung 3.1 Beschreibung der Referenzarchitektur für das BMBF-Projekt Lieferung 3.1 Beschreibung der Referenzarchitektur für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket AP 3 Referenzarchitektur und Benutzungsfälle

Mehr

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse 1. Einführung 1.1 Eclipse Die Eclipse ist eine kostenlose integrierte Entwicklungsumgebung oder auch IDE genannt, (Abkürzung IDE, engl. Integrated development enviroment). Sie ist eine grafische Benutzeroberfläche

Mehr

Anleitung zur Installation und Verwendung von eclipseuml 2.1.0

Anleitung zur Installation und Verwendung von eclipseuml 2.1.0 Anleitung zur Installation und Verwendung von eclipseuml 2.1.0 In dieser Anleitung wird die Installation und Verwendung von Omodo eclipseuml 2.1.0 beschrieben. eclipseuml ist eine Zusatzsoftware für Eclipse,

Mehr

Codegenerierung am Beispiel des PIMAR-Projekts PhoneBook. 14. Januar 2015

Codegenerierung am Beispiel des PIMAR-Projekts PhoneBook. 14. Januar 2015 Codegenerierung am Beispiel des PIMAR-Projekts PhoneBook 14. Januar 2015 Überblick Modell- und Codegenerierung (M2C, C2M) Modellinterpretation vs. Modellübersetzung PIMAR Code-Generierung am Beispiel des

Mehr

Fork Leitfaden. BibApp Android

Fork Leitfaden. BibApp Android Fork Leitfaden BibApp Android letzte Aktualisierung: 24. April 2013 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 2 2 Eclipse Projekt 2 3 Abhängigkeiten 2 4 Konfiguration 3 4.0.1 Paketname...............................

Mehr

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Jens Kohlmeyer 05. März 2007 Institut für Programmiermethodik und Compilerbau ActiveCharts Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Seite 2 Übersicht

Mehr

Modellbasierte Softwareentwicklung mit EMF

Modellbasierte Softwareentwicklung mit EMF Softwaretechnik I, WS 2009/10 Modellbasierte Softwareentwicklung mit EMF Übungsblatt 5 13. November 2009 Organisatorisches Zur Bearbeitung der Übungsaufgabe stehen Ihnen die folgenden 3 Wochen (Kalenderwochen

Mehr

Codegeneratoren mit Xtend2. 11.04.2012, A. Arnold

Codegeneratoren mit Xtend2. 11.04.2012, A. Arnold Codegeneratoren mit Xtend2 11.04.2012, A. Arnold Copyright 2012 anderscore GmbH Inhalt 1. Was ist Xtend2? 2. Xtend2 Konzepte 3. Hands On! 3 4 8 20 2 Was ist Xtend2? Funktionale, objektorientierte Sprache

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

Anpassung der SolidWorks-Umgebung auf externen Rechnern

Anpassung der SolidWorks-Umgebung auf externen Rechnern Anpassung der SolidWorks-Umgebung auf externen Rechnern Wer der Fachhochschule Kiel SolidWorks startet, arbeitet mit einer angepassten Benutzerumgebung und benutzt FH-Vorlagen für Teile, Baugruppen und

Mehr

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 1 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell

Mehr

Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2

Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2 Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2 1. Benötigte Software Zur Erstellung des Installers wird folgende Software benötigt. Es wird sich in dieser Dokumentation

Mehr

eclipse - Entwicklungsumgebung und mehr ETIS SS05

eclipse - Entwicklungsumgebung und mehr ETIS SS05 eclipse - Entwicklungsumgebung und mehr ETIS SS05 Gliederung Motivation Geschichte Architektur Platform Runtime Eclipse Platform Java Development Tools (JDE) Plugin Development Environment (PDE) Zusammenfassung

Mehr

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung

Mehr

LEHRSTUHL FÜR DATENBANKEN

LEHRSTUHL FÜR DATENBANKEN LEHRSTUHL FÜR DATENBANKEN Informatik II für Verkehrsingenieure Java & Eclipse Installationsguide Prof. Dr.-Ing. Wolfgang Lehner > Was ist Eclipse? Eine sogenannte Integrierte Entwicklungsumgebung (engl.

Mehr

Innovator 11 classix. Java Reverse Engineering. HowTo. Ralph Schönleber. www.mid.de

Innovator 11 classix. Java Reverse Engineering. HowTo. Ralph Schönleber. www.mid.de Innovator 11 classix Java Reverse Engineering Ralph Schönleber HowTo www.mid.de Mit Innovator Java Reverse Engineering durchführen Inhaltsverzeichnis Voraussetzungen... 2 Java Reverse Engineering... 2

Mehr

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung R. Gitzel, M. Schwind Agenda! Überblick/Motivation! Hintergrund! Technische Umsetzung! Zentrale Ergebnisse 2 Überblick Ziele! Know-how-Aufbau/Stand

Mehr

Techniken der Projektentwicklung

Techniken der Projektentwicklung Tools Kalenderwoche 43 Tools für die Softwareentwicklung Shell auf bash einstellen Tools in.bashrc eintragen mit Staroffice mit L A TEX Eclipse UML Modellierung Versionsverwaltung mit CVS CVS und Eclipse

Mehr

Software Engineering I

Software Engineering I Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse

Mehr

WhiteStarUML Tutorial

WhiteStarUML Tutorial WhiteStarUML Tutorial Autor: Simon Balázs, BME IIT, 2015. Übersetzung: Kovács Márton, 2015. Installation Herunterladen und installieren Sie das WhiteStarUML: http://sourceforge.net/projects/whitestaruml/

Mehr

EMF-GMF-Tutorial: Petrinet

EMF-GMF-Tutorial: Petrinet EMF-GMF-Tutorial: Petrinet Petrinet-Metamodell anlegen 1. File/New/Other: Empty EMF Project Project Name: de.upb.agengels.se.petrinet 2. Rechtsklick auf model-verzeichnis => New/Other: Ecore Diagram Domain

Mehr

Mobile Applications. Adrian Nägeli, CTO bitforge AG

Mobile Applications. Adrian Nägeli, CTO bitforge AG Mobile Applications Adrian Nägeli, CTO bitforge AG Inhalt Vorstellung Marktübersicht Entwicklung Adrian Nägeli Dipl. Inf.-Ing FH Seit 2005 bei bitforge bitforge AG Standort Rapperswil-Jona Gründung 2004

Mehr

Graphischer Editor für die technologieunabhängige User Interface Modellierung

Graphischer Editor für die technologieunabhängige User Interface Modellierung Universität Augsburg Lehrstuhl für Softwaretechnik und Programmiersprachen Prof. Dr. Bernhard Bauer Praktikum Modellgetriebene Softwareentwicklung SS 2008 Graphischer Editor für die technologieunabhängige

Mehr

1. BlueJ installieren (nach dem Buch Java lernen mit BlueJ von David J. Barnes; Michael Kölling)

1. BlueJ installieren (nach dem Buch Java lernen mit BlueJ von David J. Barnes; Michael Kölling) 1. BlueJ installieren... 1 2. BlueJ auf die deutsche Version umstellen... 1 3. BlueJ Extensions... 2 a. Klassenkarte... 2 i. UML Extension... 2 ii. Klassenkarte zum Schulbuch... 3 b. CNU BlueJ Code Formatter...

Mehr

ESE Conference 2011, Zürich. Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps. Rüdiger Schilling Delta Software Technology GmbH

ESE Conference 2011, Zürich. Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps. Rüdiger Schilling Delta Software Technology GmbH ESE Conference 2011, Zürich Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps Rüdiger Schilling Delta Software Technology GmbH The Perfect Way to Better Software 1 Der mobile Plattform-Zoo

Mehr

Benutzerdokumentation Hosted Backup Services Client

Benutzerdokumentation Hosted Backup Services Client Benutzerdokumentation Hosted Backup Services Client Geschäftshaus Pilatushof Grabenhofstrasse 4 6010 Kriens Version 1.1 28.04.2014 Inhaltsverzeichnis 1 Einleitung 4 2 Voraussetzungen 4 3 Installation 5

Mehr

Vom Prototypen zur Anwendung

Vom Prototypen zur Anwendung Vom Prototypen zur Anwendung iks-thementag: Mobile Applikationen Ein Leitfaden für Unternehmen 17.05.2011 Autor: Ingo Röpling Agenda Was ist vorab zu beachten? Skills und Systemvoraussetzungen Implementierung

Mehr

ECLIPSE PLUG-IN. Redwood Anwendertage 2015

ECLIPSE PLUG-IN. Redwood Anwendertage 2015 ECLIPSE PLUG-IN Redwood Anwendertage 2015 Übersicht Was ist Eclipse? Welche Voraussetzungen benötige ich? Wie wird das Plug-In installiert Welche Konfigurationen sind sinnvoll? Tipps & Tricks Was ist Eclipse

Mehr

itemis APPlause Referent: Florian Kalisch, Denis Radjenovic

itemis APPlause Referent: Florian Kalisch, Denis Radjenovic itemis APPlause Vortrag im Rahmen der Vorlesung Modellgetriebene Softwareentwicklung/Architekturen Dozenten: Prof. Dr. Martin Buchheit & Bernhard Merkle WS 2011/2012 Referent: Florian Kalisch, Denis Radjenovic

Mehr

Lieferung 3.2 Erfahrungsbericht M18

Lieferung 3.2 Erfahrungsbericht M18 Lieferung 3.2 Erfahrungsbericht M18 für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen Projektleitung Partner

Mehr

Open Source IDE - eclipse ETIS SS04

Open Source IDE - eclipse ETIS SS04 Open Source IDE - eclipse ETIS SS04 Gliederung Motivation Geschichte Architektur Platform Runtime Eclipse Platform Java Development Tools (JDE) Plugin Development Environment (PDE) Zusammenfassung 2 Motivation

Mehr

Einführung in Maven und GWT

Einführung in Maven und GWT Einführung in Maven und GWT Prof. Christoph Knabe Beuth-Hochschule Berlin 08.05.2014 Gliederung Motivation für Build-Werkzeug Maven-Ziele, Begriffe Maven-Benutzung in 5 min Maven-Vorteile GWT-Ziele GWT-Projekt

Mehr

Innovator 11 classix. Anbindung an Eclipse. Einführung, Installation und Konfiguration. Connect. Michael Kaaden. www.mid.de

Innovator 11 classix. Anbindung an Eclipse. Einführung, Installation und Konfiguration. Connect. Michael Kaaden. www.mid.de Innovator 11 classix Anbindung an Eclipse Einführung, Installation und Konfiguration Michael Kaaden Connect www.mid.de Einführung in die Innovator-Eclipse-Anbindung Die hier beschriebene Anbindung steht

Mehr

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b.

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b. jcreator Seite 1 JCreator (Windows) 1. Installation Die wichtigsten Installationsschritte: A) Java 2 Development Kit J2SE 5.0 RC installieren. Die aktuelle Installationsdatei (jdk-1_5_09-rc-windows-i586.exe)

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b.

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b. jcreator Seite 1 JCreator (Windows) JCreator ist eine einfache, schnelle und effiziente Java-DIE. Eine gratis Testversion sowie eine academic Lizenz für $35.- kann von der Website www.jcreator.com heruntergeladen

Mehr

WIRTSCHAFTSINFORMATIK

WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster A platform for professional model-driven software development. Präsentation im Rahmen des Seminars Software Engineering WS 08/09 Jan Schürmeier Jan.Schuermeier@gmx.de

Mehr

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011 Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen OOP München, 26.01.2011 I N H A L T 1. SOA das erste Projekt 2. Prozesse Ergebnisse aus dem Fachbereich 3. Der Business Analyst und BPMN

Mehr

Modellgetriebene Softwareentwicklung von mobilen Anwendungen. Gabriele Taentzer WS 2014/15 Philipps-Universität Marburg

Modellgetriebene Softwareentwicklung von mobilen Anwendungen. Gabriele Taentzer WS 2014/15 Philipps-Universität Marburg Modellgetriebene Softwareentwicklung von mobilen Anwendungen WS 2014/15 Philipps-Universität Marburg Organisation der LV Umfang: 6 SWS, 9 ECTS Punkte Veranstalter:, Daniel Strüber, Steffen Vaupel Kontakt:

Mehr

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012 Einführung in modellgetriebene Softwareentwicklung 24. Oktober 2012 Überblick Was sind die Grundprinzipien der modellgetriebenen Softwareentwicklung? Entwicklung einer MDD-Infrastruktur Modellgetriebene

Mehr

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt.

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt. Python Installation 1 Vorbereitung Diese Anleitung ist für Windows ausgelegt. 1.1 Download Python kann online unter https://www.python.org/downloads/ heruntergeladen werden. Hinweis: Im CoderDojo verwenden

Mehr

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ AK Medientechnologien Hello World Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Demo-Applikation: Hello World Rückblick auf einzelne Schritte Entwicklungswerkzeuge

Mehr

Ein mobiler Electronic Program Guide für Android

Ein mobiler Electronic Program Guide für Android Whitepaper Telekommunikation Ein mobiler Electronic Program Guide für Android Prototyp für Android Apps 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller Munde. Durch

Mehr

GameGrid mit BlueJ Seite 1

GameGrid mit BlueJ Seite 1 GameGrid mit BlueJ Seite 1 GameGrid mit BlueJ BlueJ ist eine Java-Entwicklungsumgebung mit einer einfachen Benutzeroberfläche. Dem Benutzer stehen ein einfacher Texteditor mit Syntaxhervorhebung und ein

Mehr

Informatik I Tutorial

Informatik I Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2015 Dr. Martin Hirt Daniel Jost Informatik I Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so dass ihr

Mehr

Erstellen eines PlugIns

Erstellen eines PlugIns Erstellen eines PlugIns Mai 2013 Inhaltsverzeichnis Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Einleitung... 3 1.1 Ablauf... 3 1.2 Weitere Dokumentation... 3 1.3 Wichtige Hinweise... 3 2 Beschreibung...

Mehr

BANKETTprofi Web-Client

BANKETTprofi Web-Client BANKETTprofi Web-Client Konfiguration und Bedienung Handout für die Einrichtung und Bedienung des BANKETTprofi Web-Clients im Intranet / Extranet Der BANKETTprofi Web-Client Mit dem BANKETTprofi Web-Client

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

VMscope GmbH. Plugins entwickeln für den VM Slide Explorer 2010. Daniel Heim, 17.08.2011 Seite 1/15

VMscope GmbH. Plugins entwickeln für den VM Slide Explorer 2010. Daniel Heim, 17.08.2011 Seite 1/15 Plugins entwickeln für den VM Slide Explorer 2010 Daniel Heim, 17.08.2011 Seite 1/15 Inhaltsverzeichnis 1 Allgemeines... 3 2 Ein Plugin schreiben... 4 3 Ein Plugin registrieren... 11 4 Aktivieren von Plugins...

Mehr

Überblick. Allgemeines, Geschichtliches. Architektur. Oberfläche. Plugins und deren Einsatz

Überblick. Allgemeines, Geschichtliches. Architektur. Oberfläche. Plugins und deren Einsatz Architektur Überblick Allgemeines, Geschichtliches Architektur Oberfläche Plugins und deren Einsatz Was ist Eclipse? Open-Source-Framework zur Entwicklung von Software nahezu aller Art. Bekannteste Verwendung:

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel XDK

Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK vertraut. Es wird Schritt für Schritt die erste eigene Hybrid-App entwickelt

Mehr

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE DOKUMENTATION MAAS - MONITORING AS A SERVICE DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE Dokumentation MaaS - Monitoring as a Service Inhalt 1. MaaS - Monitoring as Service... 3 1.1 Einleitung...

Mehr

Grundlagen der Informatik Übungen 1.Termin

Grundlagen der Informatik Übungen 1.Termin Grundlagen der Informatik Übungen 1.Termin Dr. Ing Natalia Currle-Linde Institut für Höchstleistungsrechnen 1 Kurzvorstellung Dr.-Ing. Natalia Currle-Linde linde@hlrs.de Institut für Höchstleistungsrechnen

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

OTRS-TFS-Konnektor. Whitepaper. Autor: advanto Software GmbH Mittelstraße 10 39114 Magdeburg

OTRS-TFS-Konnektor. Whitepaper. Autor: advanto Software GmbH Mittelstraße 10 39114 Magdeburg OTRS-TFS-Konnektor Whitepaper Autor: advanto Software GmbH Mittelstraße 10 39114 Magdeburg Tel: 0391 59801-0 Fax: 0391 59801-10 info@advanto-software.de Stand: Mai 2015 Inhaltsverzeichnis 1 Idee... 3 2

Mehr

Metadata Service Respository (MDS) - Sehen, lernen, verstehen!

Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Carsten Wiesbaum esentri AG Schlüsselworte Metadata Service Repository, MDS, Oracle Fusion Middleware Einleitung Früher oder später wird jeder

Mehr

Java Einführung Programmcode

Java Einführung Programmcode Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Wochenbericht. Firas Zoabi. Studienprojekt A: SIMPL. 28. Dezember 2009 I M P

Wochenbericht. Firas Zoabi. Studienprojekt A: SIMPL. 28. Dezember 2009 I M P Wochenbericht Firas Zoabi Studienprojekt A: SIMPL 28. Dezember 2009 S I M P L Geplante Aufgaben und Tätigkeiten Erledigte Aufgaben und Tätigkeiten Übersicht Benötigte Arbeitszeit/Aufwände Gewonnene Erkenntnisse

Mehr

PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS

PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS DIPL.-WIRT.INFORM. HENNING HEITKÖTTER PRAKTISCHE INFORMATIK, UNIVERSITÄT MÜNSTER 1 GEGENÜBERSTELLUNG NATIVE VS. PLATTFORMÜBERGREIFENDE ENTWICKLUNG 2 ENTWICKLUNGSANSÄTZE

Mehr

Vortrag von: Ilias Agorakis & Robert Roginer

Vortrag von: Ilias Agorakis & Robert Roginer MDA Model Driven Architecture Vortrag von: Ilias Agorakis & Robert Roginer Anwendungen der SWT - WS 08/09 Inhalt Was ist MDA? Object Management Group (OMG) Ziele Konzepte der MDA Werkzeuge Vor- und Nachteile

Mehr

Bedienung von BlueJ. Klassenanzeige

Bedienung von BlueJ. Klassenanzeige Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument

Mehr

Entwicklungswerkzeuge

Entwicklungswerkzeuge Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs

INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs INFOnline SZM Mobile Applications INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs INFOnline GmbH Forum Bonn Nord Brühler Str. 9 53119 Bonn Tel.: +49 (0) 228 / 410 29-77 Fax: +49

Mehr

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr.

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr. Language Workbench Vortrag von:! Aktuelle Themen der Softwaretechnologie Arthur Rehm Steven Cardoso Betreut von: Prof. Dr. Reichenbach [1] !2 Index Kontext Domain Specific Language (DSL) Language Workbench

Mehr

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen

Mehr

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Installation von NetBeans inkl. Glassfish Anwendungs-Server Installation von NetBeans inkl. Glassfish Anwendungs-Server Diese Anleitung führt Sie Schritt für Schritt durch die Einrichtung der Entwicklungsumgebung NetBeans, angefangen beim Download der benötigten

Mehr

Dokumentation: Balanced Scorecard

Dokumentation: Balanced Scorecard Dokumentation: Balanced Scorecard 1. Einleitung Eine Balanced Scorecard (BSC) ist eine kennzahlenbasierte Managementmethode, welche sowohl Visionen als auch Strategien eines Unternehmens und relevante

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

HOWTO Update von MRG1 auf MRG2 bei gleichzeitigem Update auf Magento CE 1.4 / Magento EE 1.8

HOWTO Update von MRG1 auf MRG2 bei gleichzeitigem Update auf Magento CE 1.4 / Magento EE 1.8 Update von MRG1 auf MRG2 bei gleichzeitigem Update auf Magento CE 1.4 / Magento EE 1.8 Schritt 1: Altes Modul-Paket vollständig deinstallieren Die neuen MRG-Module sind aus dem Scope local in den Scope

Mehr

Software Engineering in der Projektpraxis

Software Engineering in der Projektpraxis Software Engineering in der Projektpraxis Praktische Übungen Josef Adersberger Dirk Wischermann Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg 15. Mai 2008 Inhalt

Mehr