Alle Tabs der Lerneinheit (Erklärung · Interaktiv verstehen · Praxis-Übung · Klausur-Quiz) als durchgehender Text. Ideal zum Wiederholen vor der Klausur, und für Suchmaschinen wie Google, Bing und KI-Suche (ChatGPT, Perplexity).
Erklärung
Wie baut man Software? Verschiedene Vorgehensmodelle versuchen, die Komplexität zu strukturieren. Wasserfall, V-Modell, Inkrementell, Spiral, Agil, jedes mit Vor- und Nachteilen. Klausur-Pflicht in 14/15 Software-Engineering-Klausuren.
Die Idee in einem Satz
Entwicklungsprozess (Vorgehensmodell): Strukturierter Rahmen, der die Aktivitäten der Software-Entwicklung (Anforderungen, Entwurf, Implementierung, Test, Wartung) in eine sinnvolle Reihenfolge bringt.
Standard-Phasen
Egal welches Modell, diese 6 Phasen kommen meistens vor:
- Anforderungsanalyse, Was soll die Software können?
- Entwurf (Design), Wie wird die Software strukturiert?
- Implementierung, Code schreiben
- Test, Funktioniert es?
- Auslieferung, Inbetriebnahme beim Kunden
- Wartung, Bug-Fixes, Erweiterungen
1. Wasserfall-Modell (1970, Winston Royce)
Ablauf: Strikt sequenziell, jede Phase einmalig abgeschlossen bevor die nächste startet.
Anforderungen → Entwurf → Implementierung → Test → Auslieferung → Wartung
Vorteile:
- Klare Struktur, gut planbar
- Klare Meilensteine
- Vollständige Dokumentation
Nachteile:
- Unflexibel, späte Änderungen sehr teuer
- Anforderungen müssen am Anfang vollständig sein (oft unmöglich)
- Risiken zeigen sich erst spät
- Kein Feedback vor Auslieferung
Wann? Standard-Software mit klaren, stabilen Anforderungen (selten in modern Welt).
2. V-Modell (1990er)
Idee: Wasserfall + explizite Verbindung zwischen Entwicklungs- und Test-Phasen.
Anforderungen ←––––––––––– Abnahmetest
↓ ↑
System-Entwurf ←––––––– Systemtest
↓ ↑
Architektur-Entwurf ←––––– Integrationstest
↓ ↑
Modul-Entwurf ←––––––––––– Unit-Test
↓ ↑
Implementierung
Pro: Jede Entwicklungs-Phase hat zugehörige Test-Phase (Verifikation + Validierung).
Contra: Immer noch sequenziell, ähnliche Probleme wie Wasserfall.
Wann? Sicherheitskritische Systeme (Automotive, Luftfahrt, V-Modell XT ist deutscher Standard).
3. Inkrementelles Modell
Idee: Software wird in Inkrementen entwickelt, jedes Inkrement ist eine lauffähige Teilversion.
Inkrement 1: Anforderungen → Entwurf → Code → Test → Auslieferung
Inkrement 2: (zusätzliche Funktionen) → Entwurf → Code → Test → Auslieferung
Inkrement 3: ...
Pro:
- Frühe lauffähige Version
- Risiken früh sichtbar
- Feedback fließt in spätere Inkremente
Contra: Architektur muss von Anfang an flexibel sein.
4. Spiral-Modell (Barry Boehm, 1988)
Idee: Iteratives Vorgehen mit explizitem Risiko-Management. Jeder "Loop" hat 4 Quadranten:
- Ziele definieren
- Risiken identifizieren + analysieren
- Entwickeln + testen
- Planen des nächsten Loops
Pro: Risikoorientiert, gut für komplexe + neue Probleme. Contra: Komplex, Overhead durch Risikoanalyse.
5. Agile Modelle (Scrum, Kanban, siehe nächstes Topic)
Iterativ + flexibel. Anforderungen + Lösungen entwickeln sich im laufenden Prozess.
Vergleich
| Kriterium | Wasserfall | V-Modell | Inkrementell | Spiral | Agil |
|---|---|---|---|---|---|
| Iterativ? | nein | nein | ja | ja | ja |
| Risiko-Management | gering | gering | mittel | hoch | mittel |
| Anforderungs-Änderung | sehr teuer | teuer | möglich | möglich | erwünscht |
| Frühes Feedback | nein | nein | ja | ja | ja |
| Dokumentation | umfangreich | umfangreich | mittel | mittel | gering |
| Geeignet für | stabile Anforderungen | Safety-Critical | mittlere Projekte | komplexe Innovationen | dynamische Märkte |
Klausur-Faustregeln
1. 6 Phasen: Anforderungen, Entwurf, Implementierung, Test, Auslieferung, Wartung.
2. Wasserfall = sequenziell, V-Modell = sequenziell + Test-Spiegel, Inkrementell = Iterationen.
3. V-Modell für Safety-Critical (Automotive, Luftfahrt).
4. Agile bevorzugt wenn Anforderungen sich ändern.
5. Spiral-Modell ist explizit risikoorientiert (Boehm 1988).
Häufige Stolpersteine
1. Wasserfall und V-Modell verwechseln. V-Modell hat explizite Test-Phasen pro Entwicklungs-Phase. Wasserfall hat nur eine Test-Phase am Ende.
2. Iterativ und Inkrementell synonym. Iterativ = wiederholen + verfeinern. Inkrementell = neue Funktionen hinzufügen. Oft kombiniert, aber konzeptionell unterschiedlich.
3. Wasserfall pauschal als "schlecht" bezeichnen. Bei stabilen Anforderungen (z.B. regulierte Bereiche) ist Wasserfall durchaus angebracht. Kontext zählt.
4. Agile als "kein Modell" sehen. Agile IST ein Modell, iterativ, flexibel, kunden-orientiert. Hat Strukturen (Scrum-Sprints, Daily Standups).
5. Spiral-Modell mit Iteration verwechseln. Spiral hat EXPLIZITES Risiko-Management pro Loop, das macht es einzigartig.
Interaktiv verstehen
Entwicklungsprozesse-Vergleich
Sieh die 5 Standard-Modelle als Diagramm:
- Wasserfall (sequenziell)
- V-Modell (Spiegel-Form mit Test-Phasen)
- Inkrementell (mehrere Releases)
- Spiral (Loops mit Risikoanalyse)
- Agile/Scrum (Sprints)
Pro Modell: Diagramm + typische Anwendung + Vor-/Nachteile.
Interaktive Visualisierung
Interaktive Komponente: probiere sie im Topic-Player oben aus.
Klausur-Tipp: Bei Klausurfragen zu Vorgehensmodellen, IMMER Begründung mitliefern. "Welches Modell für Banken-Software?" → V-Modell wegen Sicherheits-Anforderungen + Regulierung. Nicht nur Name nennen.
Praxis-Übung
Entwicklungsprozesse, Praxis-Übung
6 Aufgaben zu Modellen, Phasen, Anwendungsbereichen.
Klausurfragen mit Lösungen (6)
- F1.Was ist die wichtigste Eigenschaft des Wasserfall-Modells?
Antwort: Strikt sequenziell, jede Phase einmal abgeschlossen, dann nächste
Erklärung: Wasserfall = strikt sequenziell. Anforderungen → Entwurf → Code → Test → Auslieferung → Wartung. Jede Phase einmalig, dann zurückgehen sehr teuer. Daher unflexibel bei Anforderungs-Änderungen.
- F2.Welche Phasen gehören zu den 6 Standard-Software-Entwicklungsphasen?
Antwort: Anforderungen, Entwurf, Implementierung, Test, Auslieferung, Wartung
Erklärung: Standard-6-Phasen: 1) Anforderungsanalyse, 2) Entwurf, 3) Implementierung, 4) Test, 5) Auslieferung, 6) Wartung. Alle Modelle (Wasserfall, V, Agile) decken diese Phasen ab, nur in unterschiedlicher Reihenfolge/Intensität.
- F3.Das V-Modell hat zu jeder Entwicklungs-Phase eine zugehörige Test-Phase auf der gleichen Abstraktionsstufe.
Antwort: Wahr
Erklärung: RICHTIG. V-Form: Anforderungen ↔ Abnahmetest, System-Entwurf ↔ Systemtest, Architektur ↔ Integrationstest, Module ↔ Unit-Tests. Validierung + Verifikation auf jeder Ebene. Standard in Safety-Critical-Branchen.
Typ: Wahr/Falsch
- F4.Welches Modell ist besonders für SAFETY-CRITICAL-Systeme (Automotive, Luftfahrt) geeignet?
Antwort: V-Modell (explizite Test-Phasen + Dokumentation)
Erklärung: V-Modell: durch explizite Test-Phasen + umfangreiche Dokumentation ideal für regulierte Sicherheits-Bereiche. V-Modell XT ist deutscher Standard für Automotive. Agile ist zu wenig dokumentiert für Safety-Audits.
- F5.Welche Aussagen sind RICHTIG?
Richtige Antworten: Wasserfall ist strikt sequenziell; V-Modell verbindet Entwicklung mit Tests auf gleicher Ebene; Inkrementell liefert eine lauffähige Version pro Inkrement; Spiral-Modell (Boehm 1988) hat explizites Risiko-Management; Phasen-Reihenfolge: Anforderungen → Entwurf → Code → Test
Erklärung: Richtig: Wasserfall-Def, V-Modell-Def, inkrementell, Spiral mit Risiko, Phasen-Reihenfolge. Falsch: Agile hat WENIGER (nicht KEINE) Dokumentation. 'Working software over comprehensive documentation', aber nicht NULL Doku.
Typ: Multi-Select
- F6.Ordne Modell der Hauptidee zu:
Zuordnungen:
- Wasserfall → Strikt sequenziell, jede Phase einmal
- V-Modell → Entwicklung + Test auf gleicher Ebene
- Inkrementell → Mehrere lauffähige Teilversionen
- Spiral → Iterativ mit Risiko-Management pro Loop
Erklärung: 4 klassische Modelle. Klausur-Pflicht.
Typ: Zuordnung
Klausur-Quiz
Klausurfragen mit Lösungen (6)
- F1.Was ist der HAUPTNACHTEIL des Wasserfall-Modells?
Antwort: Späte Anforderungs-Änderungen sind sehr teuer
Erklärung: Wasserfall: späte Änderungen erfordern Zurückgehen durch alle Phasen → teuer. Anforderungen müssen am Anfang vollständig sein, was bei komplexen/innovativen Projekten unrealistisch ist. Daher modernerweise oft durch Agile ersetzt.
- F2.Im inkrementellen Modell liefert man am Ende JEDES Inkrements eine lauffähige Teilversion.
Antwort: Wahr
Erklärung: RICHTIG. Inkrement = lauffähige Teilversion mit zusätzlichen Funktionen. Inkrement 1 hat Basis-Funktionalität, Inkrement 2 baut darauf auf. Erstes Inkrement = MVP (Minimum Viable Product). Klassische E-Commerce-App: erst Login + Browse, dann Cart, dann Checkout.
Typ: Wahr/Falsch
- F3.Welches Modell ist NICHT iterativ?
Antwort: Wasserfall-Modell
Erklärung: Wasserfall ist als EINZIGES strikt sequenziell, nicht iterativ. Spiral hat Loops, inkrementell hat Inkremente, Scrum hat Sprints, alle iterativ. Wasserfall geht NUR einmal durch.
- F4.Was ist der WICHTIGSTE Unterschied zwischen V-Modell und Wasserfall?
Antwort: V-Modell hat explizite Test-Phasen pro Entwicklungs-Phase, Wasserfall nur eine Test-Phase am Ende
Erklärung: V-Modell-Erweiterung: jede Entwicklungs-Phase hat zugehörige Test-Phase (z.B. Anforderungen ↔ Abnahmetest, Modul-Entwurf ↔ Unit-Test). Ermöglicht Verifikation auf jeder Ebene. Wasserfall hat nur Tests am Ende, Defekte werden spät entdeckt.
- F5.{{1}}-Modell ist strikt sequenziell. {{2}}-Modell verbindet Entwicklung mit Tests auf gleicher Ebene. {{3}}-Modell liefert lauffähige Teilversionen. {{4}}-Modell hat explizites Risiko-Management (Boehm). 6 Standard-Phasen: Anforderungen, Entwurf, {{5}}, Test, Auslieferung, Wartung.
Lösungen pro Lücke:
- {{1}}: Wasserfall
- {{2}}: V
- {{3}}: Inkrementell / Inkrement / Inkrementelles
- {{4}}: Spiral
- {{5}}: Implementierung
Erklärung: Standard-Modell-Vokabular + 6-Phasen-Lifecycle.
Typ: Lückentext
- F6.Sortiere: Modell-Wahl basierend auf Projektkontext.
Richtige Reihenfolge:
- Anforderungen analysieren: stabil oder dynamisch?
- Regulierung prüfen: Safety-Critical oder kommerziell?
- Team-Größe + Projekt-Komplexität bewerten
- Modell wählen: Wasserfall/V (stabil+reguliert) vs. Agile (dynamisch)
- Modell an Projekt anpassen (Hybride sind okay)
Erklärung: Standard-Entscheidungs-Workflow für Vorgehensmodelle. Anforderungen + Regulierung + Komplexität → passendes Modell.
Typ: Reihenfolge