Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
92 Umsetzung des Prototyps<br />
der Erstellung solcher Spezifikationen miteinbezogen werden. Aus Sicht des Softwareentwicklers<br />
werden im Fall von BDD einzelne Beispiele des erwarteten Verhaltens des Quelltextes erstellt,<br />
die auch als Akzeptanz-Tests oder Integrationstests (engl. acceptance und integration test)<br />
bekannt sind. Ein Unterschied zwischen TDD (Test-Driven Development, testgetriebene Softwareentwicklung)<br />
zu BDD ist, dass bei TDD normalerweise die Struktur, Organisation und Robustheit<br />
der Softwarelösung getestet werden, während eine TDD-Spezifikation die Softwarelösung als eine<br />
Black-Box betrachtet und nur die Erfüllung einer gewissen Funktionalität (oder eines Verhaltens)<br />
erwartet.<br />
• Verwendung von open-source Bibliotheken und Projekte: Alle bei der Umsetzung des Softwareproduktes<br />
eingesetzten Technologien bzw. Produkte sind im Internet frei verfügbar und für<br />
präzisere Zwecke anpassbar. Dieses Kriterium stellte sich als Hauptmerkmal für die Auswahl der<br />
Werkzeuge dar, die im Laufe der Entwicklung verwendet worden sind. Die Möglichkeit einer<br />
Anpassung war essentiell im Fall von einigen Werkzeugen, die beispielsweise hinsichtlich ihrer<br />
Fehlerausgabe oder allgemeinen Funktionsweise anhand des frei verfügbaren Quelltextes untersucht<br />
worden sind. Hiermit ist auch die Gelegenheit verbunden, einige kleinere, für diese Arbeit<br />
benutzten Software-Teile als open-source “Produkte” veröffentlichen zu können.<br />
Nachdem in einer zusammengefassten Weise die einzelnen bei dem Entwicklungsvorgang beachteten<br />
Merkmale zur Sicherung einer erhöhten Quelltextqualität beschrieben worden sind, wird<br />
der Fokus auf die tatsächliche Umsetzung der Bestandteile der Softwarelösung gelegt. Zu diesem<br />
Zweck wird zuerst die für die Umsetzung des “Home Sharing” Szenarios entwickelte Ausprägung<br />
des Kontext-Modells (hier als “Datenmodell” gekennzeichnet) vorgestellt.<br />
7.2 Datenmodell für Home Sharing<br />
Während in Kapitel 6 die Definition eines allgemein anwendbaren Kontext-Modells gegeben wurde,<br />
muss eine weitere Definition einer konkreten Ausprägung bzw. Umsetzung dieses Modells eingebracht<br />
werden. In dieser Arbeit wurde zugleich ein Datenmodell erstellt, welches die in Kapitel 3<br />
beschriebenen User-Stories unterstützt. Eine visuelle Darstellung dieses Modells erfolgt anhand der<br />
Abbildung 7.1.<br />
Neben den genannten, in Kürze zu erläuternden Bestandteilen des Datenmodells befinden sich in<br />
dem dargestellten Modell außer den impliziten (s.u.) Verknüpfungspunkten mit dem verallgemeinerten<br />
Kontext-Modell auch tatsächliche Verknüpfungen: die Klassen Location und Source. Die<br />
Einbeziehung der Location Klasse liegt im Bedarf begründet, Kontext-Informationen zu erzeugen<br />
und zu bearbeiten, die auch in der Wohnung verortet sind. Weiterhin wurde die Klasse Source in<br />
diesem Modell verknüpft, um den Unterschied zwischen vordefinierten, statischen, vom System anfänglich<br />
bereitgestellten Daten (siehe auch 7.3.1) und dynamischen, “auftretenden” Datensätze ausdrücken<br />
zu können.<br />
Die genannte Art von “impliziten” Verknüpfungspunkten mit dem grundlegenden Kontext-Modell<br />
bezieht sich darauf, dass versucht wurde, die Komplexität der entwickelten Softwarelösung zu verringern.<br />
Unter diesem Gesichtspunkt handelt es sich um implizites Wissen, das im Datenmodell enthalten<br />
ist. Die räumlichen Daten werden nicht durch einzelne Fakten wie im Paragraph 6.3 im Fall<br />
der beispielhaften Instanziierung dargestellt, sondern sie werden durch eine Assoziation zwischen<br />
den teilnehmenden Klassen (bzw. Relationen aus Sicht des Datenbankmodells) ausgeprägt. Außer-