4. Organisation: Prozess-Modelle

Ähnliche Dokumente
Vorlesung Software-Management. Organisation: Prozessmodelle

Vorlesung Software-Management. Organisation: Prozessmodelle

Seite 1. Grundlagen Software Engineering. Organisation: Prozessmodelle. Prozessmodelle. Organisation. Inhalt

4. Organisation: Prozess-Modelle

3 Organisation. Prozeßmodelle [durchweg gekürzt] Software-Management

Vorlesung Softwaretechnik - Vorgehensmodelle, V-Modell XT -

Software Entwicklung 2. Prozessmodelle

Grundlagen Software Engineering

Projektmanagement und Softwareentwicklung

Prozess-Modelle. Modelle. Einführung in UML

Was versteht man unter einem Softwareentwicklungsmodell?

Inhaltsverzeichnis. Teil I Grundlagen 1

Wirtschaftsinformatik I Teil 2. Sommersemester Übung

Software Engineering

Softwaretechnik. Fomuso Ekellem WS 2011/12

Jochen Ludewig Horst Lichter. Software Engineering. Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag

Vorlesung Softwaretechnik - Vorgehensmodelle, V-Modell XT -

Einführungsprozess eines PDM/PLM Systems in KMU Betrieben

Software Engineering

Prof. Dr. Liggesmeyer, 1. Grundlagen Software Engineering. V-Modell XT. GSE: V-Modell XT

Grundlagen Software Engineering. V-Modell XT

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++

Prof. Dr. Liggesmeyer, 6. Eindämmung der Gesamtkosten über den ganzen Projekt- und. Verbesserung der Kommunikation zwischen allen Beteiligten

IT-Projekt-Management

Agile und schwergewichtige Prozesse wie paßt das zusammen

Eine kleine Geschichte des V-Modells

Software Engineering. 5. Architektur

5 Grundkonzepte. <Datum> <Organisation> <Veranstaltungsort> <Vortragender> <Organisation>

IT-Projekt-Management

There s more to V than just SE! oder. Perlen der Weisheit Bernhard Schätz. Was Sie schon immer über den Allgemeinen Umdruck 250/01 wissen

22. Januar Gruppe 2: TOPCASED

Requirements Engineering I

Softwaretechnik SS Vorlesungseinheit

Informationssystemanalyse V-Modell 4 1

SE Besprechung. Übung 2 Softwareprozesse

Projektmanagement. Dokument V 1.1. Oliver Lietz - Projektmanagement. Wie kommt es zu einem Projektauftrag? Ausführung

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Kurzbeschreibung Vorgehensmodell D-2006

Kurzbeschreibung Vorgehensmodelle, Kurs WWIG2002D

10. Vorgehensmodelle. 11. Juni Agenda. Motivation Modelle. Sommersemester Einführung ins Software-Engineering - Vorgehensmodelle

DIN EN (VDE ): EN 62304: A1:2015

MDRE die nächste Generation des Requirements Engineerings

3. GI-Workshop EPK 2004 Geschäftsprozessmanagement mit Ereignisgesteuerten Prozessketten Luxemburg. ARIS meets RUP

Prozess-Modelle für die Softwareentwicklung

Software Engineering. 7) SW Wartung. Prof. Dr. Anja Metzner Hochschule Augsburg, Fakultät für Informatik. Studiengang WiBac 4 (Stand:

Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase)

Der Projektmanager (nach GPM / IPMA) Fragen zur Selbsteinschätzung und für die Prüfungsvorbereitung. Kapitel B Vorgehensmodelle

Vortrag Iterative Prozessmodelle/SCRUM

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

Software - Automatisierung

Übungen Softwaretechnik I

Software- und Systementwicklung

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung

IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten Kaiserslautern, WS 2008/2009 Dr. Gerhard Pews

Softwareentwicklung und Projektmanagement

Unit 8: ARIS and IS Modeling

Software-Lebenszyklus

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Software Engineering

QS 1 QS-Initialisierung. QS 3 Ergebnisprüfung vorbereiten. QS 4 Ergebnis prüfen. Prüfprotokoll. QS 5 Durchführungsentscheidung

PROG O RAMMIE MMI RPROJ O EKT K

9 Konfigurationsmanagement

1.1 Spezifikation und Entwurf im Software-Lebenslauf Lineares Prozessmodell:

1. Grundbegriffe der Softwaretechnik. 1.1 Herausforderungen

SOFTWARETECHNIK. Kapitel 7 Vorgehensmodelle. Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing.

Software Engineering

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Requirements Engineering in der Systementwicklung

Grundlagen Software Engineering

2. Der Software-Entwicklungszyklus

Übungsaufgaben zum Software Engineering: Management

Übung Einführung in die Softwaretechnik

Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen

Inhalt. 1 Einführungsveranstaltung. 2 Pflichtenheft ANFORDERUNGSSPEZIFIKATION - GROBPLANUNG ANFORDERUNGSSPEZIFIKATION - SOLLKONZEPT

Modellieren wichtiger als Programmieren?!

OOA. Objektorientierte Analyse. Peter Coad und Edward Yourdon. Prentice Hall Verlag

Anforderungsanalyse?!?

Institut für Informatik Betriebliche Informationssysteme. - Zusammenfassung - Prof. Dr. K.-P. Fähnrich Prof. Dr. K.-P.

Verbundtests von Mobilgeräten und Backend-Systemen. Andreas Bartsch, exept Software AG

Der Rational Unified Process

Business Analysis Body of Knowledge BABOK v3. Konzepte Scope Struktur. Ursula Meseberg microtool GmbH Berlin

TORA - Three Level Ordered Requirements Analysis. Vorlesung SE Requirements SoSe 2008 Prof. Dr. Henhapl - Dr. Kaminski Freidun Alam TORA

Model Driven Architecture

Grundkurs C++ Objektmodellierung

IT SERVICE MANAGEMENT FÜR AGILE PROJEKTE. Zwischen Agilität und Stabilität Herausforderungen in einer agiler werdenden Organisation

Lehrbuch der Software-Technik

Softwaretechnik 2015/2016

Objektorientierte Systementwicklung

13. Qualitätsmanagement Software Engineering

Effiziente Qualitätssicherung in Prozessmodellen: GREME eine Review-Methode

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Das Wasserfallmodell - Überblick

vcaire TM Die Produktsuite für Ihre Reporting-Bedürfnisse bmpi /6

2.4 Anforderungsanalyse

Transkript:

Software Management (Schwerpunkt) 4. Organisation: Prozess-Modelle Prof. Dr. K.-P. Fähnrich 03.05.2006 Prof. Dr. K.-P. Fähnrich 1

Übersicht der Vorlesung 1. Grundlagen 2. Planung 3. Organisation: Gestaltung 4. Organisation: Prozess-Modelle 5. Personal 6. Leitung 7. Innovationsmanagement 8. Kontrolle: Metriken, Konfigurations- und Änderungsmanagement 9. CASE 10. Wiederverwendung 11. Sanierung 2

Gliederung 1. Einführung 2. Das Wasserfall-Modell 3. Das V-Modell 4. Das Prototypen-Modell 5. Das evolutionäre/inkrementelle Modell 6. Das objektorientierte Modell 7. Das nebenläufige Modell 8. Das Spiralmodell Begleitliteratur: Helmut Balzert, Lehrbuch der Software-Technik Quelle der Grafiken und Tabellen: Helmut Balzert, Lehrbuch der Software-Technik, wenn nicht anders angegeben 3

1. Einführung Prozessmodell legt den Organisationsrahmen fest, in dem eine Software-Erstellung erfolgt. Grundmodell der Anfangstagen der Software-Technik: code & fix [Boehm 88]. Reihenfolge des Arbeitsablaufs. Jeweils durchzuführende Aktivitäten. Definition der Teilprodukte einschließlich Layout und Inhalt. Fertigstellungskriterien. Notwendige Mitarbeiterqualifikation. Prozess-Modell legt fest... Verantwortlichkeiten und Kompetenzen. Anzuwendende Standards, Richtlinien, Methoden und Werkzeuge. 4

2. Das Wasserfall-Modell Wasserfallmodell: Weiterentwicklung des stagewise models [Benington 56]. Wasserfallmodell von [Royce 70] erweitert das stagewise model um Rückkopplungsschleifen zwischen den Stufen. System- Anforderungen Software- Anforderungen Analyse Codierung Entwurf Testen Betrieb Wasserfall mit ursprünglichen Phasen 5

2. Das Wasserfall-Modell Iterationszyklen Definieren Benutzerbeteiligung Änderungen Produktmodell Entwerfen Änderungen Produktarchitektur Implementieren Produkt 6

2. Das Wasserfall-Modell Jede Aktivität ist in der richtigen Reihenfolge und in der vollen Breite vollständig durchzuführen. Am Ende jeder Aktivität steht ein fertiggestelltes Dokument. Der Entwicklungsablauf ist sequentiell. Es orientiert sich am top-down Vorgehen. Merkmale Es ist einfach, verständlich und benötigt nur wenig Managementaufwand. Eine Benutzerbeteiligung ist in der Definitionsphase vorgesehen. Vollständige Durchführung aller Entwicklungsschritte nicht immer sinnvoll. Sequentielle Durchführung aller Entwicklungsschritte nicht immer sinnvoll. Gefahr einer falschen Prioritätsverteilung (Dokumente-System). Nachteile Keine Berücksichtigung der Risikofaktoren. 7

3. Das V-Modell Änderungen Änderungen Änderungen Änderungen Änderungen Definieren Produktmodell Entwerfen Produltarchitektur Module implementieren Module testen Integration testen Integriertes Sys. System testen Integrations testfälle Modul x Testfall y Getest. Modul x Anwendungs szenarien Produkt 8

3. Das V-Modell Legt die Aktivitäten und Produkte des Entwicklungs- und Pflegeprozesses fest. Produktzustände und logische Abhängigkeiten zwischen Aktivitäten und Produkten werden dargestellt. Vier Submodelle: Systemerstellung (SE), Qualitätssicherung (QS), Konfigurationsmanagement (KM), Projektmanagement (PM). Erzeugnisstruktur des V-Modells 9

3. Das V-Modell IT-System System-Ebene Segment mit IT-Anteil Kann entfallen Segment ohne IT-Anteil Kann entfallen Segment- Ebene Segment mit IT-Anteil Segment ohne IT-Anteil SW-Einheit HW-Einheit SW-Einheit/ HW-Einheit- Ebene SW-Komponente Können entfallen HW-Komponente Komponenten- Ebene SW-Komponente HW-Komponente SW-Modul Datenbank HW-Modul Modul/Datenbank-Ebene 10

3. Das V-Modell Grundelemente des V-Modells sind Aktivitäten und Produkte. Aktivität: Tätigkeit, die bezogen auf ihr Ergebnis und ihre Durchführung genau beschrieben werden kann. Produkt: Ergebnis bzw. Bearbeitungsgegenstand einer Aktivität. Ziel einer Aktivität: Erstellung eines Produkts, Änderung des Zustands eines Produkts, Änderung des Inhalts eines Produkts. 11

3. Das V-Modell Zulässige Zustandsübergänge von Produkten geplant In Bearbeitung vorgelegt Akzeptiert *) *) Wird durch das Konfigurationsmanagement verursacht und führt zu einer neuen Produktversion 12

3. Das V-Modell SW-Einheit Technische Anforderungen SW-Architektur Betriebsinformationen Implementierungsdokumente Integrationsplan SW-Komponente SW-Entwurf Datenkatalog Implementierungsdokumente IT-System/Segment Anwenderanforderungen Systemarchitektur Technische Anforderungen Schnittstellenübersicht Schnittstellenbeschreibung Integrationsplan SWPÄ-Konzept Betriebsinformationen HW-Einheit Technische Anforderungen SW-Architektur Zeichnungssatz Realisierungsdokumente Analysebericht SW-Modul SW-Entwurf Datenkatalog Implementierungsdokumente Datenbank SW-Entwurf Datenkatalog Implementierungsdokumente 13

3. Das V-Modell Projekt planen und kontrollieren PM Voraussetzungen schaffen und SEU bereitstellen Plandaten Ist-Daten SEU SEU Ist- Plan- Daten daten Ist- Plan- Daten daten SEU Ist- Plan- Daten daten SEU QS-Ergebnis QS-Anforderungen vorgeben QS Produkte prüfen SE Produkt entwickeln QS-Anforderung Produkt Rechte Produkt Konfig. Strukt. Produktstruktur planen Produkte/Rechte verwalten KM 14

3. Das V-Modell Rollen im V-Modell Beschreiben die notwendigen Erfahrungen, Kenntnisse und Fähigkeiten, um Aktivitäten durchzuführen. In jedem Submodell gibt es: einen (Projekt)Manager, einen Verantwortlichen (Projektleiter), einen oder mehrere Durchführende (Projektadministrator,..., KM-Administrator). 15

3. Das V-Modell Manager Verantwortliche Durchführende PM Projektmanager Projektleiter Rechtsverantwortlicher Projektadministrator Controller Projektleiter SE Projektmanager Projektleiter Systemanalytiker IT-Beauftragter Systemdesigner Anwender SW-Entwickler HW-Entwickler Technischer Büro SEU-Betreuer Datenadministrator IT-Sicherheitsbeauftragter Datenschutzbeauftragter Systembetreuer QS Q-Manager QS-Verantwortlicher Prüfer KM KM-Manager KM-Verantwortlicher KM-Administrator Rollen im V-Modell 16

3. Das V-Modell Organisationsanalyse Folgende Aspekte sind zu berücksichtigen: Organisationsanalyse vorbereiten, Geschäfteprozesse aufnehmen, Geschäftsprozesse analysieren, Analyseergebnisse auswerten. Ergebnisse dienen als Ausgangspunkt für die Definition von Anforderungen Basis für eine nachfolgende Geschäftsprozessmodellierung. 17

3. Das V-Modell Tailoring Tailoring =Maßschneidern Zwei Stufen: Ausschreibungsrelevante Tailoring Technisches Tailoring Ziel: Vermeiden einer übermäßigen Papierflut sowie sinnloser Dokumentation, Vermeiden vom Fehlen wichtigen Dokumente. 18

3. Das V-Modell Bewertung Vorteile Integrierte, detaillierte Darstellung von Systemerstellung, QS, KM und PM. Generisches Vorgehensmodell mit definierten Möglichkeiten der Anpassung. Standardisierte Abwicklung von Systemerstellungsprojekten. Gut geeignet für große Projekte, insbesondere für eingebettete Systeme. Die für eingebettete Systeme sinnvolle Vorgehenskonzepte unkritisch übertragbar Unnötige Produktvielfalt und Software-Bürokratie (kleine und mittlere Software-Entwicklungen) Nicht handhabbar ohne geeignete CASE-Unterstützung. Unrealistische Rollendefinition (außer für Großprojekte). Es fehlen in der Dokumentation vollständige Beispiele. Gefahr, dass bestimmte Software-Methoden festgeschrieben werden Nachteile 19

4. Das Prototypen-Modell Unterschiede zwischen einem Software-Prototypen und einem Prototypen in anderen Ingenieursdisziplinen. Ein Software- Prototyp: ist nicht das erste Muster einer großen Serie von Produkten (da Vervielfältigung kein Ingenieursproblem). zeigt ausgewählte Eigenschaften des Zeilproduktes im praktischen Einsatz. Ähnlichkeiten in der Anwendung der Prototypen: Sie werden verwendet, um relevante Anforderungen oder Entwicklungsprobleme zu klären. Sie dienen als Diskussionsbasis und helfen bei Entscheidungen. Sie werden für experimentelle Zwecke verwendet und um praktische Erfahrungen zu sammeln. Prototypen-Modell unterstützt die Erstellung ablauffähiger Modelle des zukünftigen Produkts. 20

4. Das Prototypen-Modell Vier Arten von Prototypen: Demonstrationsprototyp, Prototyp im engeren Sinne (für Analyse im Anwendungsbereich), Labormuster, Pilotsystem. Klassifikation aus der Sicht des fertigen Software-Produkts: Horizontaler Prototyp, Vertikaler Prototyp. Beziehungen zwischen Prototypen und Software-Systemen: Prototypen dienen zur Klärung von Problemen. Ein Prototyp ist Teil der Produktdefinition. Prototypen werden inkrementell weiterentwickelt, um ein marktfähiges Produkt zu erhalten. 21

4. Das Prototypen-Modell Horizontaler und vertikaler Prototyp Benutzungsoberfläche Anwendung Horizontaler Prototyp Horizontaler Prototyp Netzanbindung Datenhaltung Benutzungsoberfläche Vertikaler Prototyp Vertikaler Prototyp 22

4. Das Prototypen-Modell Planen Demo-PT Akquirieren Änderungen Durchführbarkeitsstudie Definieren PT i.e.s. Produktmodell Entwerfen Labormuster Erweiterung des Benutzers Änderungen Produktarch. Implementieren Produkt Pilotsystem 23

4. Das Prototypen-Modell Bewertung Vorteile Reduzierung des Entwicklungsrisikos. Kann sinnvoll in andere Prozessmodelle integriert werden. Prototypen können durch Werkzeuge erstellt werden. Verbessert die Planung der Software-Entwicklung. Labormuster fordern die Kreativität für Lösungsalternativen. Starke Rückkopplung mit dem Endbenutzer und dem Auftraggeber. Höherer Entwicklungsaufwand. Gefahr der Integration eines Wegwerf-Prototyps im Produkt. Verträge für die Software-Erstellung berücksichtigen noch nicht das Prototypen-Modell. Prototypen werden oft als Ersatz für die fehlende Dokumentation gesehen. Die Beschränkungen und Grenzen von Prototypen sind oft nicht bekannt. Nachteile 24

5. Das evolutionäre/inkrementelle Modell Das evolutionäre Modell Ausgangspunkt: Kernanforderungen des Auftraggebers Stufenweise Entwicklung des Produkts. Pflegeaktivitäten gelten als Erstellung einer neuen Version. Charakteristika Gut geeignet, wenn der Auftraggeber seine Anforderungen noch nicht vollständig überblickt. Code-getriebene Entwicklung. 25

5. Das evolutionäre/inkrementelle Modell Nullversion X:=0 Änderungen Definieren Version X Partielles Modell X:=X+1 Änderungen Entwerfen Version X Partielle Architektur Wünsche Implementieren Version X Produkt Version X Das evolutionäre Modell Einsetzen Version X 26

5. Das evolutionäre/inkrementelle Modell Bewertung Auftraggeber erhält in kurzen Zeitabständen einsatzfähige Produkte. Kann mit dem Prototypen-Modell kombiniert werden. Auswirkungen des Produkteinsatzes gut in die folgende Version einzubringen. Vorteile Richtung der Entwicklung korrigierbar durch schrittweise Entwicklung. Entwicklung nicht nur auf ein einzigen Endabgabetermin ausgerichtet. Gefahr, dass im nachfolgenden Modell die gesamte Architektur überarbeitet werden muss. Gefahr, dass die Nullversion nicht flexibel genug ist, um sich an geplante Evolutionspfade anzupassen. Nachteile 27

5. Das evolutionäre/inkrementelle Modell Das inkrementelle Modell Nachteile des evolutionären Modells werden bei dem inkrementellen Modell vermieden. Alle Anforderungen an das zu modellierende Produkt werden möglichst vollständig erfasst und modelliert. Es wird aber nur ein Teil der Anforderungen entworfen und implementiert (analog zum evolutionären Modell). Wegen dem vollständigen Analysemodell ist sichergestellt, dass die Erweiterungen zu dem bisherigen System passen. 28

5. Das evolutionäre/inkrementelle Modell Definieren Änderungen If X=0 Änderungen Vollständiges Produktmodell Entwerfen Version X Partielle Architektur Mod. Modell X:=X+1 If X>0 Änderungen Definiere Änderungen Implementieren Version X Wünsche Produkt Version X Das inkrementelle Modell Einsetzen Version X 29

6. Das objektorientierte Modell Wiederverwendung Wesentlicher Vorteil einer OO-Entwicklung: Wiederverwendung Wiederverwendungsebenen: Ebene der OOA-Modelle, Ebene der technischen Entwürfe, Ebene der implementierten Klassen und Klassenbibliotheken Wiederverwendungsgebiete: Anwendungs- bzw. branchenspezifische Klassen und Subsysteme, Klassen, die die Anbindung einer Anwendung an die Umgebung ermöglichen, Klassen, die die Anbindung an die Systemsoftware ermöglichen Herkunft der Klassen: frühere Entwürfe, auf dem Markt eingekaufte Klassenbibliotheken 30

6. Das objektorientierte Modell Wiederverwendung - Charakteristika Mögliche Zeitpunkte des Einsatzes von wiederverwendbaren Klassen: während der laufenden Entwicklung, am Ende der laufenden Entwicklung, nach einer nachträglichen Analyse abgeschlossener Entwicklungen Starker bottom-up-aspekt aufgrund der Wiederverwendbarkeit Tendenz zur Entwicklung in voller Breite. Charakteristika Fokus auf Wiederverwendung. Gut kombinierbar mit dem evolutionären, dem inkrementellen und dem Prototypen-Modell. 31

6. Das objektorientierte Modell Quader der Widerverwendbarkeits-Klassifikation OOA-Modelle z.b. GUI- Modelle OOA-Modelle OOD-Modelle OOD-Modelle OOD-Modelle eigen eigen gekauft gekauft gekauft OOP-Klassen- Bibliotheken z.b. GUI- Klassen- Bibliotheken Basis- Klassen- Bibliotheken eigen Anwendung Anwendungs- Systemanbindung anbindung 32

6. Das objektorientierte Modell 33

6. Das evolutionäre/inkrementelle Modell Bewertung Vorteile Verbesserung der Produktivität und Qualität; Konzentration auf die eigenen Stärken, Rest zukaufen. Null voll nutzbar, wenn OO-Methoden eingesetzt werden. Geeignete Infrastruktur (Widerverwendungsarchiv) muss vorhanden sein. Firmenkultur der Wiederverwendung muss aufgebaut sein. Technische Probleme müssen überwunden werden. Nachteile 34

7. Das nebenläufige Modell Das nebenläufige Prozess-Modell stellt einen Ansatz dar, um eine termingerechte Fertigstellung zu erreichen [Spectrum 91]. Stammt aus der Fertigungsindustrie. Alle betroffenen Entwicklungsabteilungen sind in einem Team vereint. Es soll ein möglichst hoher Parallelisierungsgrad erreicht werden. Risiken der Parallelisierung: Verwendung unreifer Entwürfe führt zu Verschrottung der Werkzeuge. Erfordert ein ständiges Abwägen zwischen finanziellen Risiken und vorzeitiger Parallelisierung von Arbeitsfolgen. 35

7. Das nebenläufige Modell Definieren Kernsystem Partielles Modell Entwerfen Kernsystem Partielle Architektur Implementieren Kernsystem Kernsystem Änderungen Änderungen Definieren Ausbaustufe 1 erweitertes Modell Entwerfen Ausbaustufe 2 erweiterte Archi. Implementieren Ausbaustufe 1 Änderungen Änderungen.... Erweitertes Kernsys... Produkt 36

7. Das nebenläufige Modell Versuch einer Parallelisierung des prinzipiell sequentiellen Entwicklungsprozess. Förderung des auf Problemlösung gerichteten Zusammenarbeiten der betreffenden Personengruppen. Reduzierung von Zeitverzögerungen durch: Teilweise Parallelisierung vorwiegend sequentiell organisierter Arbeiten. Charakteristika Minimierung des Ausprobierens und Begrenzung des Improvisierens. Reduktion der Wartezeiten. Frühzeitiges Zusammenbringen aller Erfahrungen der betroffenen Personengruppen. Auslieferung des vollständigen Produkts ist das Ziel. 37

7. Das nebenläufige Modell Bewertung Vorteile Frühes Erkennen und Eliminieren von Problemen durch Beteiligung aller betroffenen Personengruppen. Optimale Zeitausnutzung. Es ist fraglich,ob es wegen der speziellen Charakteristika der Software möglich ist, das Ziel right the first time zu erreichen. Risiko, dass die grundlegenden und kritischen Entscheidungen zu spät getroffen werden und dadurch Iterationen nötig werden. Hoher Planungs- und Personalaufwand. Nachteile 38

8. Das Spiral-Modell Spiralmodell von [Boehm 86,88] ist Metamodell. Für jedes Produkt und jede Verfeinerungsebene sind 4 Schritte zu durchlaufen. Schritt 1 Identifikation des Teilprodukts. Alternative Möglichkeiten, um das Teilprodukt zu realisieren. Randbedingungen bei den verschiedenen Alternativen. Evaluierung der Alternativen unter Berücksichtigung der Ziele und Randbedingungen. Entwicklung einer kosteneffektiven Strategie im Falle von Risiken. Schritt 2 Schritt 3 Festlegung des Prozessmodells für diesen Schritt. Die Kombination verschiedener Modelle kann vorgenommen werden. Planung des nächsten Zyklus. Überprüfung (re-view) der Schritte 1 bis 3. Einverständnis über den nächsten Zyklus herstellen. Schritt 4 39

8. Das Spiral-Modell Das Spiralmodell 40

8. Das Spiral-Modell Für Teilprodukte identifizieren: Ziele Alternativen Randbedingungen Ziele Alternativen Randbedingungen Evaluierung der Alternativen Risikobeseitigungsstragie entwickeln Evaluationsergebnisse Risikobeseitigungsstrategie Auswahl eines geeigneten Prozessmodells Anwendung des Prozessmodells Teilprodukt Planung des nächsten Zyklus Überprüfung des Teilproduktes und der Planung Entscheidung 41

8. Das Spiral-Modell Risikogetriebenes Modell, bei dem oberstes Ziel die Minimierung des Risikos ist. Jede Spirale stellt einen iterativen Zyklus durch dieselben Schritte dar. Die Ziele für jeden Zyklus werden aus den Ergebnisse des letzten Zyklus abgeleitet. Separate Spiralzyklen können für verschiedene Software- Komponenten durchgeführt werden. Keine Trennung in Entwicklung und Wartung. Ziel: Beginne im kleinen, halte die Spirale eng und erreiche die Entwicklungsziele mit minimalen Kosten. Charakteristika Bei der Zielbestimmung werden auch Qualitätsziele aufgeführt. Für jede Aktivität und jeden Ressourcenverbrauch wird gefragt wieviel ist genug?. 42

7. Das nebenläufige Modell Bewertung Vorteile Überprüfung in periodischen Intervallen und u. U. erneute Festlegung des Prozessablaufs in Abhängigkeit von den Risiken. Prozess-Modell nicht für die gesamte Entwicklung festgelegt. Integration anderer Prozess-Modelle als Spezialfälle. Fehler und ungeeignete Alternativen werden frühzeitig eliminiert. Flexibles Modell. Leichtere Neudefinition der Entwicklungsziele wenn nötig. Unterstützung der Wiederverwendung von Software. Hoher Managementaufwand. Ungeeignet für kleine und mittlere Projekte. Identifizieren und Managen von Risiken schwierig. Nachteile 43

Zusammenfassung Prozessmodell Primäres Ziel Antreibendes Moment Benutzerbeteiligung Charakteristika min. Managementaufwand Wasserfall- Modell Dokumente Gering Sequentiell, volle Breite V-Modell max. Qualität Dokumente Gering Sequentiell, volle Breite, Validation, Verifikation Risikominimierung Prototypen- Modell Code Hoch Nur Teilsysteme Evolutionäres Modell min. Entwicklungszeit Code Mittel Sofort: nur Kernsystem Inkrementelles Modell min. Entwicklungszeit und Risiko Code Mittel Volle Definition dann zunächst nur Kernsystem 44

Zusammenfassung Prozessmodell Primäres Ziel Antreibendes Moment Benutzerbeteiligung Charakteristika OO-Modell Zeit und Kostenminimierung Wiederverwendbare Komponenten? Volle Breite in Abh. Von WV- Komponenten Nebenläufiges Modell min. Entwicklungszeit Hoch Volle Breite, nebenläufig Spiralmodell Risikominimierung Mittel Entscheidung pro Zyklus über weiteres Vorgehen 45

Literatur [Benington 56] Benington H.D., Production of large computer programs [Boehm 81] Boehm B.W., Software Engineering Economics, Prentice Hall [Boehm 84] Boehm B.W., Verifying and validating Software Requirements and Design Specification, IEEE Software [Boehm 86] Boehm B.W., A Spiral Model of Software Development and Enhancement, ACM SIGSOFT [Boehm 88] Boehm B.W., A Spiral Model of Software Development and Enhancement, IEEE [Royce 70] Royce W.W., Managing the development of large software systems, IEEE [Spectrum 91] Special Report: Concurrent Engineering, IEEE Spectrum 46