Hauptseite

Aus Software-Engineering

Wechseln zu: Navigation, Suche

Herzlich Willkommen

Hier sammle ich Alles zum Thema Software Engineering in der Praxis.

Nun noch ein paar Worte dazu, wer ich bin und warum ich dieses Wiki aufgesetzt habe. Ich studiere Softwaretechnik an der Universität Stuttgart. Auf dem Studienplan des Hauptstudiums stehen neben den Vorlesungen, dem Hauptseminar und einer Fachstudie 2 Studienprojekte. In diesen Studienprojekten wird von etwa 10 Studenten in einem Jahr ein komplettes Softwareprojekt durchgeführt. In diesem Wiki möchte ich gerne die Erfahrungen die ich gemacht habe und Alles was ich bei der Durchführung von Projekten für wichtig halte mit anderen teilen.

Ich würde mich über Feedback und Mitarbeit am Wiki sowie das Setzen eines Links auf dieses Wiki sehr freuen. Wer gerne mitarbeiten will, meldet sich bitte unter Sascha Retter




Blog Themen

10. März 2011

Nachdem die Kapitel Anforderungen und Architektur, bis auf Kleinigkeiten, abgeschlossen sind, habe ich mit der Implementierung begonnen. Zunächst habe ich versucht eine WSDL aus der Implementierung zu generieren (häufig als Bottom Up bezeichnet). Mit der generierten WSDL und den XML-Schemata war ich aber nicht zufrieden und habe mich dann dazu entschieden die Daten, in Form von XML-Schemata, zu modellieren, dann eine WSDL zu erzeugen um dann mit wsimport (JAX-WS) die Java-Skeletons zu erzeugen (Top-Down). Beide Ansätze haben Vor- und Nachteile. Eine Recherche bei Google fördert die verschiedenen Meinungen dazu schnell zu Tage. Ich sehe vorallem ein Problem: Ich konnte bisher keine Strategien für ein sauberes Roundtrip-Engineering finden. Insbesondere Anpassungen der WSDL lassen sich nur mühsam und manuell in die Java-Implementierung übertragen. Verwendet man erneut das Tool wsimport werden Änderungen die am Modell durchgeführt wurden (z.B. zur persistenten Verwaltung der Daten) überschreiben. An dieser Stelle würde ich mir ohne näher darüber nachgedacht zu haben eine Möglichkeit wünschen Änderungen an den generierten Klassen separat zu durchzuführen und deklarativ ein Mapping zwischen den Änderungen und den generierten Klassen anzugeben.

07. Februar 2011

Momentan bin ich dabei das Kapitel "Anforderungen" meiner Diplomarbeit zu schreiben. Dies gestaltet sich schwieriger als ich zunächst dachte. Dies liegt zum einen daran, dass kein Kunde im eigentlich Sinn zur Verfügung steht und zum anderen daran, dass ein Großteil der Funktionalität von bestehenden System erbracht werden soll die bereits existieren.

Am vergangenen Donnerstag war ich bei einem Vortrag der Java User Group Stuttgart zum Thema "Agiles BPM in der Praxis - mit BPMN 2.0 und Activiti zur lauffähigen Software". Es wurde vorallem die neue Opensource BPMN 2.0 Plattform Activiti (www.activiti.org) vorgestellt. Da die Auswahl an BPMN 2.0 Engines sowieso beschränkt ist, ist Activiti momentan der aussichtsreichste Kandidat für den Implementierungsteil meiner Diplomarbeit.


26. Januar 2011

Ich arbeite bereits seit mehr als zwei Wochen an meiner Diplomarbeit. Momentan beschäftige ich mich ganz grundsätzlich mit den Themen Workflow-Management (Business Process Management oder wie auch immer man es nun nennen will), Complex Event Processing (CEP) und BPMN. Seit Anfang Januar ist die Version 2.0 freigegeben und das Akronym BPMN steht nicht mehr für Business Process Modelling Notation sondern für Business Process Model and Notation. Dies spiegelt die Tatsache wieder, dass BPMN 2.0 eine definiert Ausführungssemantik mitbringt. Außerdem analysiere ich viele, möglicherweise, für meine Arbeit relevanten wissenschaftlichen Artikel und Konferenzbeiträge und versuche die zentralen Inhalte zu erfassen und zusammenzufassen. Am Montag sollen dann auch die ersten beiden Kapitel "Grundlagen" und "Verwandte Arbeiten" zumindest in einer ersten Version fertig sein. Im Anschluss werde ich versuchen aus den bestehenden Ansätzen und meinen Ideen Anforderungen für das, von mir zu entwickelnde, System abzuleiten.


Blog-Archive


Softwareengineering

Software-Architektur

Allgemein

Persönliche Werkzeuge