fit 2002 > Softwareentwicklungsmodelle > SpiralModel >
reale Praxis
|
Überblick
|
Der Aspekt der realen Praxis behandelt:
|
Akzeptanz und Durchsetzungsbedingungen
|
Welche Form/Realisierung der Konzeptionen hat sich warum durchgesetzt?
Das Spiralmodell hat sich in seiner unsprünglichen Version wie von Barry W. Boehm definiert durchgesetzt. Der Grund für die Verbreitung in mittelgroßen bis großen Projekten ist die Kostenkomponente. Es ist das erste Modell, das eine Budgetkontrolle ermöglicht und gleichzeitig eine Kontrolle der Ergebnisse eines Spiraldurchlaufes durch alle Beteiligte gewährleistet, da am Ende einer Spirale jeweils ein Review mit den betreffenden Personen stattfindet.
Die Kostenkontrolle ist der größte Fürsprecher für diese Konzeption, und man nimmt dafür bei mittelgrossen bis grossen Projekten auch gerne mehr "Overhead" in der Projektabwicklung in Kauf.
Im Projektplan werden ständig die "High Risk"-Bereiche identifiziert und mit besonderem Augenmerk behandelt. Ein wichtiger Aspekt ist hier die Software-Wiederverwendung aus anderen Projekten, was die Kosten extrem senken helfen kann. Durch diese "Evaluierung" der Problembereiche un deren gesonderte Behandlung werden unattraktive Alternativen vo vorherein für alle Spiraldurchläufe gleich zu Beginn ausgeblendet.
Die erste Anwendung des Spiralmodelles war die Entwicklung einer Corporate Software für TRW, wo Barry W. Boehm arbeitete. Dabei wurde auch die erste Spezifikation für das Spiralmodell festgeschrieben.
|
Einsatzbereiche und "typische Nutzung"
|
Welche Bestandteille der konzeptionellen Ideen werden tatsächlich in welchem Zusammenhang verwendet?
Da das Konzept des Spiralmodells ein offenes System ist, gibt es verschiedenste Ausprägungen der Anwendung.
Hauptsächlich wird das Modell in großen und komplexen Projekten angewandt, wo die Spezifikation in ihrer Gesamtheit erst inkrementell durch mehrere Spiraldurchläufe nach und nach vollständig geklärt werden kann, und die Kosten- / Zeitkomponente eine große Rolle spielt.
In bestimmten Projekten kann sich das Konzept des Spiralmodells allerdings in andere Projektkonzeptionen umwandeln:
- Bei Projekten, wo die größten Probleme im Erreichen des Fertigstellungstermines und dem Einhalten des Budgetrahmens zu erwarten sind, wird das Spiralmodell 1:1 in ein >Wasserfallmodell umgewandelt.
- Ist die Anforderungsanalyse so eindeutig, dass keine Änderungen mehr zu erwarten sind, und besteht die größte Gefahr in der Fehleranfälligkeit des Produktes - "Mission critical" Projekte - wird das Spiralmodell zu einem Ansatz mit formale deduktiver Prorammierung führen.
- Besteht keine Gefahr der überbordenden Kosten im Projektverlauf, aber das User Interface ist ständigen Änderungen ausgesetzt, wird das Modell der evolutionären Programmierung herangezogen.
- Sind bereits Werkzeuge zur automatischen Codegenerierung vorhanden, wird Rapid >Prototyping verwendet.
Für Projekte, die verschiedene Problembereiche aus den oben genannten beinhalten, wird auch ein Mix aus vorgenannten Projektmodellierungsmethoden angewandt. So kann z.B. Rapid >Prototyping und evolutionäres Programmieren für unterschiedliche Codeteile des Projektes verwendet werden, und trotzdem der Kostenkontrollmechanismus des Spiralmodelles vollständig ausgenutzt werden.
|
Scheitern und Rettungsversuche
|
Welche Veränderungen hat man zur besseren Akzeptanz vorgenommen?
Das Spiralmodell sah keinen Schritt vor, wo die Zielvorstellungen der Beteiligten so angepasst wurden, dass alle eine "Win"-Situation vorfanden. Daher wurde das Konzept erweitert zum
Der Leitsatz des >WinWin Modelles ist "Make everybody a winner"
Dazu wird zum Standard-Spiralmodell zur Kosten und Budgetkontrolle eine neue Komponente, die Korrelation der Zielvorgaben aller Beteiligten (Kunden, Benutzer, Entwickler, Management, Investoren)
Im >WinWin Spiralmodell ist diesem Aspekt erstmals Rechnung getragen worden.
Wie versucht man das alte Konzept an eine neue Konzeption anzupassen?
Durch die offene Konzeption des Spiralmodelles kann jedwede neue Methode der Softwareprojektplanung in das Modell integriert werden, ohne dass die Spezifikation neu definiert werden muss. Das ist einer der großen Vorteile der Methode.
Der Änderung unterliegen jedoch noch eine allgemeine Spezifikation der Reviewgestaltung, Meilensteinfestlegung und die Risikoanalyse, um das Modell universell einsetzen zu können.
|
Quellen
|
-1- [B. W. Boehm, J. F. Elwell, A. B. Pyster, E.D. Stuckle, and R. D. Williams, "The TRW
Software Productivity System," Proceedings, 6th International Conference on Software
Engineering, ACM/IEEE, September 1982, pp. 148-156]
|
-2- [A Spiral Model of Software Development and Enhancement, May 1988 Barry W. Boehm]
|
Weiterführende Informationen
|
>Using the WinWin Spiral Model: A Case Study
>Developing Multimedia Applications with the WinWin Spiral Model
|
[B. W. Boehm. Tutorial: Software Risk Management, IEEE Computer Society Press, 1989. pp. 1-469]
|
Verweise auf Arbeiten anderer gruppen
|
>eXtreme programming@Produktionsverhältnisse
'Alle Mitarbeiter werden in den Produktionsprozess miteinbezogen', der Leitsatz des eXtreme programming. Die Partizipierung aller Beteiligter bedingt den Einsatz des Spiralmodelles (Review aller Beteiligten am Ende des Spiraldurchlaufes).
>Requirement Engineering@Konzepte und Techniken@Wissensakquisition
Anwendung in der Wissensaquisition: Kommunikation mit Kunden, Usern und Entwicklern, die Wissen in das System einbringen. Bei der 'Requirements Elicitation'-Phase werden deren Zielvorstellungen angeglichen. (>WinWin)
Die 'Requirements Modelling'-Phase wird durch die Iterationen der Spirale modelliert.
|
Entstehungskontext
|
Konzepte und Techniken
|
Entwicklung und Auswirkungen
|
>Praxis |
Bewertung
|
Für den Inhalt verantwortlich: De Stefani Andreas, Fischer Gerald, Rohner Martin, Strnad Thomas, Winkler Thomas
|