WI + SE 7/8 Prof. Dr. Oliver Haase

17
WI + SE 7/8 Prof. Dr. Oliver Haase Abschlusspräsentation Roman Sauber

description

Abschlusspräsentation Roman Sauber. WI + SE 7/8 Prof. Dr. Oliver Haase. Überblick. Projekt-Organisation Features Technologien Versionen. Teammitglieder. Marco Becherer Jens Boeckel Vetiola Elezkurtaj (Teil A) Kornelia Markovic Roman Sauber Daniel Weber Richard Woldert - PowerPoint PPT Presentation

Transcript of WI + SE 7/8 Prof. Dr. Oliver Haase

Page 1: WI + SE 7/8  Prof. Dr. Oliver Haase

WI + SE 7/8 Prof. Dr. Oliver Haase

AbschlusspräsentationRoman Sauber

Page 2: WI + SE 7/8  Prof. Dr. Oliver Haase
Page 3: WI + SE 7/8  Prof. Dr. Oliver Haase

Überblick

Projekt-Organisation Features Technologien Versionen

Page 4: WI + SE 7/8  Prof. Dr. Oliver Haase

Teammitglieder

Marco Becherer Jens Boeckel Vetiola Elezkurtaj (Teil A) Kornelia Markovic Roman Sauber Daniel Weber Richard Woldert Fanny Ziegler (Teil B)

Page 5: WI + SE 7/8  Prof. Dr. Oliver Haase

Projekt-Organisation

PhasenAnforderungsanalyseHigh-Level DesignLow-Level Design ImplementierungTesten

1. Semester

2. Semester

Page 6: WI + SE 7/8  Prof. Dr. Oliver Haase

Aqualife Features

Natürliches Verhalten in einem Ökosystem Zustände Paaren Kinder zeugen Fressen Sterben

Fischarten Raubfische Unterschiedliche

Eigenschaften

Vernetztes Aquarium Benutzer kann

Fische angeln / aussetzen Arten selbst definieren Eigenen Aquarium-

hintergrund wählen

Page 7: WI + SE 7/8  Prof. Dr. Oliver Haase

Facts & Figures Programmiersprache Java 5 Entwicklungsumgebung Eclipse Zentraler CVS-Server für Versionsverwaltung 5621 Lines of Code 371 Methoden 56 Klassen 11 Packages

Verwendete Technologien Entwurfsmuster Model-View-Controller GUI: Java SWING Multi-Threading Fische: Autonome, intelligente, mobile Agenten P2P: JXTA XML Java WebStart

Page 8: WI + SE 7/8  Prof. Dr. Oliver Haase

Architektur und Verteilungsmodell

Aquarium

FischFisch

Fisch

P2P

Aquarium

FischFisch

Fisch

P2P

Controller

View

Model

Controller

View

Page 9: WI + SE 7/8  Prof. Dr. Oliver Haase

Eigenschaften der Fische

Fische id name age species speciesName origin sex size energy alive

Spezies name image fishEating visualRange maxSpeed losingEnergyPerTic energyMinimum consumingPlanktonPerTic maturity maximumAge pairingTimeout

Page 10: WI + SE 7/8  Prof. Dr. Oliver Haase

Das Leben der Fische

public void run() {

while(alive) {

update();

sense();

act();

refresh();

}

}

Fische sind autonome, intelligente, mobile Agenten

Page 11: WI + SE 7/8  Prof. Dr. Oliver Haase

VereinfachterEntscheidungspfadder Fischein der Methode act()

Page 12: WI + SE 7/8  Prof. Dr. Oliver Haase

Package Aquarium

Fischliste mit Positionen Singleton Timer Thread-Synchronisation XML

Einlesen und Abspeichern

Verwendung verschiedener Interfaces zum Zweck der Kapselung FishAquarium_IF P2PAquarium_IF ControllerAquarium_IF

Zentrale Einheit eines lokalen Peers

Page 13: WI + SE 7/8  Prof. Dr. Oliver Haase

P2P Konzept

Ringstruktur Linker und rechter Nachbar

Organisiert in einer Gruppe Join

Gruppe finden Einfügen

Leave

Page 14: WI + SE 7/8  Prof. Dr. Oliver Haase

P2P Technik

JXTA Pipe-Konzept

Informationen: NeighbourPipe Fische: ObjectPipe Backup-Pipe

Implementiert als Event-Listener P2PClient: Aquarium regularPipeListener: Monitoring clientListener: join Requests neighbourListener: neighbourMessages und FishTransfer

Page 15: WI + SE 7/8  Prof. Dr. Oliver Haase

JXTA(TM) Technologie

JXTA steht für Juxtapose: nebeneinander stellen Initial Forschungsprojekt bei Sun Microsystems Set offener, allgemeiner Peer-to-Peer Protokolle Verbindet beliebige Geräte (Handy und PDA, PC und

Server) im Netzwerk Steht unter Apache Software License Änderung und Verteilung des Quelltextes und der

Binaries ist erlaubt

Page 16: WI + SE 7/8  Prof. Dr. Oliver Haase

Versionen

Aqualife Solo Integrierte WebStart-Version

Aqualife DuoTrennung von Modell und ViewEntfernte Kommunikation über Java RMIModell kann ständig im Hintergrund laufenView wird dynamisch gestartet / gestoppt

Page 17: WI + SE 7/8  Prof. Dr. Oliver Haase

Java WebStart Technologie von Sun Microsystems Java-Applikationen über das Netz mit nur einem

Klick starten

Voraussetzungen: Beschreibung des Programms in einer jnlp-Datei jar-Paket auf dem WebServer, der den MIME-Type

application/x-java-jnlp-file kennt JRE und Java WebStart installiert auf Client-System

http://www-home.htwg-konstanz.de/~haase/lehre/ws05/aquarium/aquarium.html