Beim Prototyping handelt es sich um eine Technik, die sich bereits seit 20 Jahren bewährt hat.
Für Informatik-Verhältnisse ist dies eine sehr lange Zeit [Pomberger 1997 S.37].
Die Verwendung von Prototyping im Softwareentwicklungszyklus bringt einige Vorteile gegenüber anderen
Modellen mit sich. Vor allem Qualitätsmerkmale wie Ergonomie und Spezifikationstreue werden
von der frühen Einbindung des Anwenders in das Projekt positiv beeinflußt.
Verfolgt man eine Topdown Methodik so kann die Testphase besser an den Entwicklungsprozeß
angepaßt werden, wodurch sich im günstigen Fall die Laufzeit des Projektes verkürzen
kann. Schon zu Beginn eines Projektes können durch die Verwendung von experimentellen
Prototypen etwaige Unsicherheitsfaktoren eliminiert werden, was wiederum die Planung vereinfacht.
Unter gewissen Umständen kann es aber auch passieren, dass sich die Projektlaufzeit in die
Länge zieht. Zum Beispiel dann, wenn die Benutzer dauernd neue Änderungsvorschläge haben,
die sie in das System integriert haben möchten. Dieser Nachteil wiegt allerdings nicht ganz so schwer, weil man durch
die so erzielte höhere Qualität weniger Wartungsaufwand hat. Hinzu kommt aber noch, daß sich
Anwender und Entwickler während der Spezifikationsphase erst einmal auf eine gemeinsame
Sprache einigen müssen. Dies ist sehr zeitintensiv, hilft aber Fehler von vornherein zu
vermeiden und gibt dem Entwickler einen tieferen Einblick in das Projekt. Vor allem dann,
wenn der Entwickler nicht die nötige Geduld aufbringt und sich vom Anwender zum Ausliefern von
System-Prototypen drängen läßt, besteht die Gefahr alle Vorteile eines Prototyping-orientierten
Entwicklungsansatzes ins Gegenteil zu verkehren. Es ist daher anzuraten, sofern es das
Projekt zuläßt, Prototyping bei der Entwicklung eines Software Projekts zu benutzen. Der
Zuwachs an Qualität, die geringeren Kosten und der meist kürzere Entwicklungszeitaufwand sind
den geringen Mehraufwand auf alle Fälle Wert.
Mit welcher Prototypingart man höhere Qualität in den Bereichen Korrektheit, Zuverlässigkeit,
Benutzerfreundlichkeit, Wartungsfreundlichkeit, Effizienz und Portabilität erhält zeigt die
folgende Tabelle:
Merkmal |
Exploratives Prototyping |
Experimentelles Prototyping |
Evolutionäres Prototyping |
Korrektheit |
+ |
+ |
+ |
Zuverlässigkeit |
+ |
+ |
+ |
Benutzerfreundlichkeit |
+ |
o |
+ |
Wartungsfreundlichkeit |
o |
+ |
+ |
Effizienz |
o |
+ |
+ |
Portabilität |
o |
+ |
o |
Zusammenfassend einige der wichtigsten Punkte zu Prototyping:
- Auftraggeber und Kunde wissen im Allgemeinen noch nicht, welchen Nutzen Prototyping bringen kann.
- Prototyping setzt ausreichendes Wissen über das Anwendungsgebiet voraus.
- Die Beteiligung der Benutzer/innen ersetzt nicht die kreativen Ideen und die eigenen Lösungsvorstellungen der Entwickler.
- Prototyping ist ein Lernprozeß für alle daran beteiligten Personengruppen.
- Der direkte Kontakt zwischen den an der Entwicklung beteiligten Personengruppen ist notwendig.
- Prototyping verbessert die Planung von Software-Projekten.
- Prototyping erfordert neue Formen der Vertragsgestaltung für Software-Projekte.
- Ein Prototyp ist kein Ersatz für fehlende Dokumentation. Die Dokumentation muß im richtigen Umfang geschehen.
|
K. C. Bourne, "Testing Client/Server Systems", McGraw Hill, S. 126, 1997
G. Pomberger, R. Weinreich, "Qualitative und quantitative Aspekte prototyping-orientierter Software-Entwicklung - Ein Erfahrungsbericht",
Informatik Spektrum 20(1): 33-37 (1997)
|