Kurs:Wirtschaftsinformatik SS09/SE1/Lernskript/Prototyping – Modelle
Funktionales Prototyping
[Bearbeiten]Man spricht von horizontalen Prototypen, wenn eine bestimmte Ebene des Systems vollständig implementiert wurde. Beispielsweise ist die ganze Benutzeroberfläche des Systems weitgehend implementiert und kann so dem Kunden präsentiert werden. Allerdings ist es auch möglich zu anderen Ebenen Prototypen zu erstellen, beispielsweise zu der Datenbankschnittstelle.
Vertikale Prototypen implementieren hingegen einige ausgewählte Bestandteile der Endsoftware durch alle Ebenen hindurch. So kann man beispielsweise bei einem Mobiltelefonbetriebssystem die SMS-Funktionalität komplett implementieren, um sie beispielsweise ebenfalls dem Kunden vorführen zu können. Auch eignet sich diese Prototypart um in einer recht frühen Projektphase die Realisierbarkeit einer kritischen Funktionalität zu prüfen.
Fazit:
[Bearbeiten]Hinsichtlich der Funktionalität unterscheidet man zwischen horizontalen und vertikalen Prototypen.
In der Praxis werden häufig Mischformen dieser beiden Prototyparten eingesetzt: Dabei wird beispielsweise die gesamte Benutzeroberfläche und auch einige wenige Funktionen komplett implementiert.
Throw-Away und Evolutionärer Prototyp
[Bearbeiten]Wegwerf-Prototypen werden vornehmlich in den Fällen eingesetzt, bei denen eine schnelle Verfügbarkeit im Vordergrund steht, um beispielsweise den Kundendialog zu unterstützen. Evolutionäre Prototypen werden hingegen dann bevorzugt, wenn die nachträgliche Erweiterbarkeit besonders wichtig ist.
Bei einem evolutionären Prototyp müssen sämtliche Anforderungen an das Endsystem zumindest grob verstanden sein, um deren Implementierung in der Struktur der Software vorzusehen. Bei Wegwerf-Prototypen ist es hingegen nicht zwingend erforderlich, dass man alle Details verstanden hat und bei der Softwarestruktur einplant.
Bei der Entwicklung von Wegwerf-Prototypen ist es durchaus gestattet, gewisse Qualitätsanforderungen wie beispielsweise Sicherheitsfeatures zu vernachlässigen (und auch ihre spätere Implementierung nicht vorzusehen), und man darf folglich weniger sorgfältig arbeiten als im Falle eines evolutionären Prototypen. Deswegen ist es wichtig, dass ein Wegwerf-Prototyp wegen dieser fehlenden Sorgfalt nie zum Bestandteil des Endsystems werden darf. Ein evolutionärer Prototyp muss hingegen von Anfang an mit höchster Sorgfalt erstellt werden.
Papierner Prototyp
[Bearbeiten]Handgezeichnete Papier-Prototypen sind sehr leicht und sehr günstig herzustellen. Aus diesen Tatsachen folgt, dass man solche Prototypen im Kundengespräch „live“ erstellen kann. Es ist sogar möglich, dem Kunden das Zeichnen zu überlassen. Weil Kunden häufig nur sehr geringe Softwareentwicklungskenntnisse besitzen, fühlen Sie sich mit klassischen Oberflächengestaltungswerkzeugen häufig überfordert. Mit einem Stift und Papier kann hingegen jeder umgehen, sodass der Kunde die Oberfläche selbst seinen Wünschen entsprechend strukturieren kann. Auch ist es auf diese Weise möglich, die gewählte Oberflächengestaltung komplett zu verwerfen, wenn man bei der Modellierung der Details einen plötzlich besseren Einfall hat: Es geht dabei nur die Arbeit von wenigen Stunden und nicht die Arbeit von Wochen verloren. Dadurch hat der Kunde am Ende das Gefühl, genau das ausgeliefert bekommen zu haben, was er wollte.
Ein weiterer Vorteil ist es, dass weniger überflüssige Arbeit geleistet werden muss. Dies betrifft sowohl die Oberfläche als auch die Funktionalitäten. Verzichtet man auf Papier-Prototypen, wird nach einem Kundengespräch innerhalb einer bestimmten Zeitspanne das implementiert, was die am Gespräch beteiligten Personen des IT-Unternehmens verstanden haben. Gab es Missverständnisse, müssen nachträglich Änderungen vorgenommen werden, was bereits Zusatzkosten verursacht. Diese kostspieligen Missverständnisse entfallen zum großen Teil, wenn die Oberfläche und die Funktionalitäten im Vorhinein auf Papier skizziert wurden. Die dabei gewonnenen Erkenntnisse fließen auch bei der Erstellung der Softwarespezifikation mit ein.
Unterscheidung der Prototypen hinsichtlich der Funktionalität und der Verwendung:
- Verwendung:
- Wegwerf – Prototypen (englisch: Thow-away Prototyp) : entwickelt um Erkenntnisse zu sammeln und Anforderungen zu klären, kann nicht zum Bestandteil eines Produktes werden daher gewisse „Schlampigkeit“ erlaubt schnell verfügbar
- Evolutionäre / Inkrementelle Prototypen: können zu Produkt weiterentwickelt werden, wesentliche Aspekte getestet und Funktionalität sichergestellt, ; muss daher die Qualitätsanforderungen
von vornherein berücksichtigen; Zielkonflikt: frühe Verfügbarkeit vs. Erweiterbarkeit
- Funktionalität:
- Horizontaler Prototyp: nur spezifische Ebenen eines Systems, versucht diese vollständig zu realisieren , (z.B. Benutzungsschnittstellen, DB-Transaktionsebenen)
- Vertikaler Prototyp: implementiert ausgewählte Teile des Zielsystems vollständig durch al-
le Ebenen hindurch, dort geeignet, wo Funktionalitäts- und Implementierungsanforderungen noch offen sind