Inhalt


1. Einleitung

2. Anwendungsarchitektur

3. Kommunikationstechniken

4. Evaluierung von MDA-Tools

5. Ergebnis

6. Diskussion und Ausblick

7. Literaturverzeichnis

Anhänge



5. Ergebnis


Im Rahmen der Studienarbeit wurde innerhalb eines Softwareentwicklungprozesses ein p2p-Messenger entwickelt. Dabei kamen die beiden MDA- Tools OMONDO® und objectiF® zum Einsatz.


5.1 Implementierung der Messenger-Applikation


Es wurden verschiedene Techniken untersucht, welche die Programmierung einer Netzwerkkommunikation mit Java ermöglichen. Anhand dieser theoretischen Untersuchung wurden zwei für die Messenger-Applikation geeignete Techniken gewählt. Die Wahl fiel dabei auf JXTA und RMI.

Eine Implementierung über Sockets wäre zwar grundsätzlich möglich gewesen, hätte aber immensen Programmieraufwand zur Folge gehabt. JXTA hingegen ist eine Abstraktionsebene höher angesiedelt und verwendet intern Sockets für die Netzwerkkommunikation. Es wurde speziell für die Entwicklung von p2p- Anwendungen entwickelt und nimmt dem Entwickler somit die Programmierung der eigentlichen Netzwerkkommunikation ab.

Bei der Untersuchung der Techniken RMI und JINI, die beide auf zentrale Server aufbauen, erwies sich JINI als unpraktisch, weil das Starten eines Servers nicht aus dem Programm heraus möglich ist, sondern nur über die Kommandozeile, was für eine p2p- Anwendung erdenklich ungeeignet ist.

Bei der Implementierung mittels JXTA und RMI wurden die Anforderungen des p2p-Messengers erfüllt.

Nach oben


5.2 Einsatz der MDA-Tools


Bei der Untersuchung der MDA-Tools zeigte OMONDO® seine Stärke während der Entwurfsphase. Besonders hilfreich war das Erstellen von Klassendiagrammen, aus denen ein Gerüst für den Quellcode für die spätere Implementierung automatisch erzeugt werden kann. Weiterhin wird das Erstellen von Sequenzdiagrammen dadurch unterstützt, dass vorhandene Klassen und Methoden ausgewählt und eingebunden werden können. Durch die direkte Integration in Eclipse wird erreicht, dass die Klassendiagramme während der Implementierung bei Änderungen stets aktuell sind. Durch die ständige Anpassung ergibt sich aber gleichzeitig der Nachteil, dass viel Rechenzeit aufgebraucht und somit die Entwicklung in Eclipse beeinträchtigt wird. Außerdem wurden zahlreiche Mängel (vor allem in der Free-Edition) festgestellt. Da Eclipse von Haus aus dem Entwickler eine gute Unterstützung beim Programmieren liefert, bringt OMONDO® dem erfahrenen Programmierer beim Erstellen des Codes keinen Zeitvorteil.

Im Vergleich zu OMONDO® ist objectiF® nicht direkt in die Eclipseumgebung integriert, sondern ein eigenständiges Programm. Dadurch geschieht der Abgleich zwischen Code und Modell nur zu vom Benutzer gewünschten Zeitpunkten und die bei OMONDO® bemängelten Probleme unterbleiben. Das Tutorial, welches bei der getesteten freien Version dabei ist, konnte problemlos nachvollzogen werden. Ein Nachteil von objectiF® ist die Belegung von unverhältnismäßig viel Hauptspeicher und die dadurch beeinflusste Dauer des Startvorgangs.

Nach oben