AIS Gruppe 5 Logo

Archäologie Informationssystem (AIS)

Prototyp Beschreibung

Home

Aufgabenstellung

Use Cases & Actoren

Aufwandsabschätzung

Architektur

Prototyp

 
Prototyp für unser Projekt wurde 100 % in Java implementiert. Der Prototyp besteht aus drei Teile:
  • Client - Java Applet
  • Server - Java Application
  • Database - mySQL
Client-Server Model sieht vereinfacht folgendermassen aus:
 
 

client server model

Warum Java Applet?

Es wurde mit dem Kunden vereinbart, dass die Erstellung von virtuellen Museen mittels Drag&Drop erfolgen soll. Deswegen haben wir uns für Java Applet entschieden, da (fast alle)  heutigen Browser Java unterstützen und man braucht nur noch Java Plug-In um alle Vorteile von Java auch in einem Applet auszunutzen. Sicherheitsprobleme wegen Socket Verbindungen die vom Applet gemacht werden, sind einfach zu lösen, indem man die policy Dateien editiert.
 
 

Wie funktioniert's?

Client

Um den Client - Prototyp laufen zu lassen braucht man Java Plug-In 1.3 für die jeweilige Platform. Ausserdem muss man die java.security Datei so editieren, dass die Socket - Verbindungen mit dem Server aufgenommen werden können. Nachdem die Voraussetzungen erfüllt sind, kann man das Applet aufrufen.
 
 



Dem Benutzer werden mehrere Möglichkeiten im Menü angeboten, aber in unserem Prototyp haben wir nur das Use Case Artefakte Anlegen implementiert, daher ist nur dieses "Menü Item" aufrufbar. Falls die Verbindung mit dem Server noch nicht aufgebaut ist, wird dem Benutzer die Möglichkeit angeboten die TCP - Verbindung mit dem Server auf der bestimmten Port Nummer aufzubauen.
 
 



Wenn die Verbindung schon aufgebaut ist, bekommt der Benutzer die Möglichkeit ein neues Artefakt anzulegen. Um ein Artefakt anlegen zu können muss eine neue Inventarnummer eingegeben werden, die noch nicht in der Datenbank vorhanden ist.
 
 



Falls die eingegebene Inventarnummer in der Datenbank noch nicht vorhanden ist wird eine weitere Maske für die Eingabe von Attributen zu dem Artefakt angezeigt.  Nachdem der Benutzer die Attribute eingegeben hat, werden diese an den Server verschickt, der sie in der Datenbank speichert.
 
 



Falls die Inventarnummer schon vorhanden ist, wird eine Fehlermeldung angezeigt, und dem Benutzer wird wieder das Fenster für die Eingabe der Inventarnummer gezeigt.
 
 

Server

Der Server - Prototyp ist eine CLI Anwendung, die einfach als Hintergrundprozess gestartet wird, und auf Verbindungsanforderungen von Clients wartet. Um mehrere Clients gleichzeitig bedienen zu können wurde der Server als eine Multithread - Applikation implementiert. Die Hauptaufgabe vom Server ist Byte Stream zu empfangen, ProtokollFelder zu interpretieren und dann die Daten in der Datenbank zu speichern, oder die Daten aus der Datenbank zu holen. Neben diesen Aufgaben sorgt der Server dafür, dass die XML-Dateien in HTML-Dateien zur Darstellung der virtuellen Museen konvertiert werden.