Softwaretechnik-Praktikum Sommersemester 2012

Themen, Betreuer, Tutoren

Thema Gruppen Betreuer Tutor Architekturkonzept
BOA – Framework zur Identifikation von Entitäten und Datentypen in Fließtext swp12-1 (Optionsvariante) Dr. Ngonga Herr Lyko RDF, Semantic Web, BOA Framework
Colanut-12 – Complex Linking in a Nutshell swp12-2 (Optionsvariante) Dr. Ngonga
Herr Gerber
Herr Lyko RDF, Semantic Web, WebGUI für LIMES
Integriertes Informationssystem mit RDF-Backend swp12-4 (Basisvariante) Prof. Gräbe Herr Schöne RDF, Semantic Web, Wordpress
Entwicklung einer Tauschplattform für Kindergartenplätze swp12-5 (Optionsvariante) Herr Riechert Herr Arndt Web Anwendung
Gemeinsames Bearbeiten von Webressourcen swp12-6 (Optionsvariante) Herr Riechert Herr Arndt RDF, Semantic Web, Linked Open Data, Onto Wiki Plugin
Web Annotation mit Fragment Ids swp12-9 (Optionsvariante) Herr Hellmann Herr Frey RDF, Semantic Web, Firefox Plugin, PHP web service, JS
LinkedGeoData Management swp12-10 (Optionsvariante) Herr Stadler Herr Tiepmar RDF, Semantic Web, JS
Webfrontend zum Interlinking von geographischen RDF-Daten basierend auf Active Learning swp12-11 (Optionsvariante) Herr Höffner Herr Tiepmar RDF, Semantic Web, JS

Ablauf des Praktikums

Gruppenergebnisse in der Übersicht

Gruppe Thema Stärke Projektleiter/in Blatt 1 Blatt 2 Blatt 3 MST 1 Blatt 4 MST 2 Blatt 5 Impl.-
Phase
Gesamt-
bewertung*
swp12-1 BOA 7 Christian Kahmann 9 9 7 8 9 10 10 8 1
swp12-2 Colanut 4 Oliver Schurig 8 8 7 8 7 9 7 7,5 2
swp12-4 LOD-L 6 xxxxxxxxxxx 7 8 4 5..7 3 - - - 5
swp12-5 Tauschboerse 7 Franz Teichmann 10 9 9 9 9 10 10 7,5 2
swp12-6 Webressourcen 7 Peter Kornowski 10 7 6 8 7 10 10 8,5 2
swp12-9 Annotation 7 Benjamin Glatz 9 8 9 9 9 10 8 9 1
swp12-10 LGM-1 7 Peggy Lucke 9 8 7 7 6 7 10 8 2
swp12-11 LGM-2 7 Peter Pfahl 10 10 7 9 8 7 9 6 2

Ergebnisse der Gruppen im einzelnen

Gruppe swp12-1

Als Praktikumsaufgabe ausgeschrieben war die Entwicklung eines generischen Frameworks zur Extraktion von Prädikatenwerten aus unstrukturierten Daten. Dabei lag der Fokus auf der Extraktion von Datentypen wie Datumsangaben, Distanzen, Temperaturen, etc. Zusätzlich sollten Oberflächenformen, also z.B. verschiedene Formen des Auftretens eines Datums (06.07.2012 oder 06. Juli 2012) für existierende Daten generiert werden können. Zusätzlich sollte bei der Implementierung darauf geachtet werden, dass diese leicht zu erweitern ist und im Multithread-Modus arbeiten kann. Ebenfalls sollte ein GUI Prototyp erstellt werden.

Die Gruppe hat die gestellten Aufgaben in vollstem Maße erfüllt. Die am Anfang des Projekts vereinbarte Rollenverteilung bewährte sich im gesamten Projektverlauf. Mit der Generation eines Goldstandards im Vorprojekt hat sich die Gruppe die Grundvoraussetzung geschaffen, die Implementierungsphase erfolgreich zu durchlaufen. In der Regel waren die abgegeben Dokumente sowie die Vorträge von sehr guter Qualität und kleine Nachbesserungen wurden umgehend umgesetzt.

Material:

Gruppe swp12-2

Die Gruppe bestand nur aus vier Personen, woraufhin die Anforderungen an die Software angepasst werden mussten. Insbesondere wurden die Benutzermanagement-Anforderungen auf das Notwendigste reduziert. Die Hauptschwierigkeit hier war zunächst inhaltlicher Natur, da die Teilnehmer mit Machine Learning Konzepten noch nicht vertraut waren. Nach der Beseitigung dieser Anfangsschwierigkeiten wurde die Aufgabe bis auf minimale Bugs zufriedenstellend umgesetzt. Der prosaische Teil der Arbeiten hätte qualitativ besser umgesetzt werden können.

Material:

Gruppe swp12-4

Die Gruppe fand zu keiner geordneten Arbeit zusammen, da die Mehrheit der Teammitglieder die für das Praktikum erforderlichen zeitlichen Ressourcen nicht aufbringen konnte. Bereits nach einer Woche schied der erste Projektleiter aus; es gab ständig Probleme, überhaupt Termine für gemeinsame Treffen zu finden. Auch nach 6 Wochen hatte nur die Hälfte des Teams stabilen Zugriff auf die technische Projekt-Infrastruktur. Da hatte sich bereits ein Zeitverzug von zwei Wochen gegenüber dem Praktikumsplan aufgesammelt. Der erste Meilenstein fand unter chaotischen Bedingungen statt. Im Vorfeld des zweiten Meilensteins löste sich die Gruppe schrittweise auf.

Gruppe swp12-5

Material:

Gruppe swp12-6

Material:

Gruppe swp12-9

Material:

Gruppe swp12-10

Das Ziel dieser Arbeit war die Konzeption und Implementierung einer Webanwendung zum community-basierten Mappen von OpenStreetMap (OSM) Entitäten in das RDF Datenmodell. Dabei werden Mappings gemeinsam mit OSM Daten in einer relationalen Datenbank gehalten, wodurch mittels der Software "Sparqlify" einheitliche RDF-Sichten über beide Datenbestände (d.h. OSM-Domänendaten und deren Mappings) definiert werden können. Diese Sichten lassen sich mit SPARQL anfragen. Die Software sollte mit Hinblick auf die Einbettung ins LinkedGeoData-Projekt implementiert werden.

Die größten Schwierigkeiten traten zu Beginn des Praktikums auf: Auf der einen Seite waren zu dem Zeitpunkt das Mapping-Schema und Sparqlify kaum dokumentiert, auf der anderen Seite musste die Gruppe sich teilweise erst Grundkenntnisse in den involvierten Technologien aneignen, bevor die relativ komplexe Problemstellung soweit verstanden war, dass sich daraus sinnvolle und konkrete Anforderungen ableiten ließen. In der Implementierungsphase wurden die geplanten Anforderungen dann jedoch effizient und effektiv umgesetzt. Dabei zeigten die Entwickler eine sehr hohe Flexibilität bei der Umsetzung späterer Kundenwünsche, wie z.B. einer Erweiterung, welche die Verwaltung der Mappings auf Benutzerbasis ermöglicht. Auch wurden einige Funktionalitäten in Eigeninitiative entwickelt.

Sowohl die Dokumentationen als auch das Softwareprodukt sorgen für hohe Kundenzufriedenheit. Negativ fallen kleinere Fehler auf, welche hinlänglich bekannt waren, aber bis zum Ende nicht behoben werden konnten. Leider war es dem Betreuer aus Zeitgründen zum Abschlusszeitpunkt nicht mehr möglich, die Skalierbarkeit gegen größere Datenbanken als die Testdatenbank zu evaluieren.

Material:

Gruppe swp12-11

Die Gruppe entwickelte gemäß der Aufgabenstellung eine Weboberfläche für das Lernen von Links zwischen geographischen Objekten, die durch RDF-Daten repräsentiert sind. Diese Oberfläche zeigt dem Benutzer auf einer Karte zwei zu verlinkende RDF-Datensets durch Symbole an. Die Datensets werden durch die Auswahl von zwei SPARQL-Endpunkten und Klassen bestimmt, deren Instanzen Geokoordinaten als RDF-Properties aufweisen. Die Anbindung an den Lernalgorithmus wurde dabei bewusst ausgelassen, um den gesamten Arbeitsaufwand der für dieses Projekt sehr wichtigen Usability zu maximieren ohne eine Client-Server Architektur implementieren zu müssen.

Da ein Teil der Gruppe bereits Erfahrung in der Entwicklung von Webanwendungen hatte und die Gruppe sehr motiviert arbeitete, war sehr früh ein funktionsfähiger Prototyp vorhanden, der sich stets auf dem aktuellen Entwicklungsstand im Web aufrufen ließ. Damit konnten Änderungsvorschläge sehr schnell implementiert werden. Die vage Spezifizierung der Aufgabe stellte die Gruppe jedoch vor Probleme. Durch ein Missverständnis zwischen Tutor und den Entwicklern des Lernalgorithmus musste die Zielstellung im Laufe des Praktikums etwas nachgebessert werden. Die finalen Kernanforderungen wurden gut umgesetzt, jedoch hätte es etwas mehr Flexibilität gegenüber Änderungen und mehr Eigeninitiative geben können.

In den abzugebenden Dokumenten lagen einige formaler Mängel vor und einige wurden nicht rechtzeitig oder in der geforderten Form abgegeben. Die entwickelte Anwendung entspricht unseren Erwartungen in Stabilität, Performanz, Design und Benutzbarkeit.

Material: