Wasserfallmodell
lineare Abfolge der Phasen
Analyse & Definition
Pflichtenheft (Produktdefinition, Anforderungsdefinition)
Entwurf
Software-Architektur
Software-/ Entwurfs-Spezifikation
Implementierung
SW-Komponenten
Komponenten-Tests
Dokumentation
Test
Integrationstests
Systemtests
Installation / Abnahmetests
Einsatz/ Wartung
Entwicklungsprozess
SW-Lebenszyklus
Vorteile
einfach und verständlich
klare Abgrenzung Phasen
effizient, bei
stabilen Anforderungen
klarer Abschätzung Kosten / Umfang
Nachteile
Zusammenhänge zwischen Phasen
Kontrolle Projektfortschritt problematisch
viel Zeit bis erstes Ergebnis
Tests als eigene Phase
Spiralmodell
Metamodell
Hauptziel
Risikominimierung
Rahmen für die Anwendung anderer Vorgehensmodelle
4 Teilphasen / Umlauf
Ziele, Alternativen, Rahmenbedingungen
Risikominimierung
Realisierung / Überprüfung
Planung Projektfortsetzung
Vorteile
Prozessmodell nicht für gesamte Dauer festgelegt
Flexibel
Frühzeitige Fehlererkennung
Integrierte Entwicklung und Wartung
Nachteile
Managementaufwand
Braucht Risikoeinschätzungserfahrung
Muss für Einsatz verfeinert werden
Prototyping
Arten
evolutionäre SW-Entwicklung
stets lauffähiger Prototyp
nach und nach erweitert bit Produktreife
Rapid Prototyping
Identifizierung wichtiger oder kritischer Anforderungen
Wegwerfprototyp
horizontales Prototyping
bestimmte technische Facette
vertikales Prototyping
vollständiger Teilausschnitt
Vorteile
Validierung Anforderungen
Integration in andere Vorgehensmodelle
frühzeitiges Erkennen technisch schwieriger Teile
starte Rückkopplung mit Auftraggeber / Benutzer
Nachteile
Ersatz Dokumentation
hoher Aufwand
Unverständnis über benötigten Zeitaufwand Produkt
Wegwerfprototyp in Endprodukt
V-Modell XT
Produktzentriert
Ziele
Projektrisiken
Qualität
Gesamtkosten
Kommunikation
generischer Vorgehens-standard für Projekte
Tailoring
statisch
initial
dynamisch
Projektlaufzeit
Struktur
Projekttyp
Projekttypvariante
Projektdurchführungsstrategie
Vorgehensbausteine
Vorteile
standardisierte Abwicklung von Projekten
frei zugänglich
sehr gut dokumentiert
utnerstützende Werkzeuge / Produktvorlagen
Nachteile
Umfang
Anzahl Dokumente
primär für große Systeme
Rational Unified Process
Modell
Arbeitsabläufe
Core Process Workflows
Geschäftsprozessmodellierung
Anforderungsanalyse
Analyse & Design
Implementation
Test
Auslieferung
Core Supporting Workflows
Projektmanagement
Konfigurations- und Änderungsmanagement
Infrastruktur
Vier Phasen
Konzeption
Ausarbeitung
Konstruktion
Übergang in den Betrieb
Iterationen
Meilensteine
Lifecycle Objectives
Projektvision
Rudimentären Anwendungsfallmodell
Anwendungsfalldiagramme
Erster, grober Architekturentwurf
Komponenten-Diagramme
Klassendiagrammen
Erste Identifikation relevanter Projektrisiken
Lifecycle Architecture
Architekturprototyp
Anwendungsfallmodell verfeinern
detaillierte Arbeitsplanung für Konstruktionsphase
Ableitung Arbeitspakete aus Architektur.
Initial Operational Capability
detaillierte Entwurfsmodelle
verschiedenen Diagrammtypen
Beta-Version der Software
Product Release
produktiven Software
Best Practices der SW-Entwicklung
Iterative und inkrementell
evolutionären Softwareentwicklung
Spiralmodell
Anforderungsmanagement
Use Cases
Architekturzentriert
frühzeitige Entwicklung einer Systemarchitektur
Verwendung vorgefertigter Komponenten
Visuelle Modellierung
UML
Qualitätssicherung
integraler Bestandteil
Änderungsmanagement
Versionierung
Konfigurationsmanagements
eXtreme Programming
Praktiken
Kleine Releases
Planspiel
Tests
Systemmetapher
Einfacher Entwurf
Refaktorisierung
Dokumentation
Programmieren in Zweierteams
Gemeinsames Code-Eigentum
Kontinuierliche Code-Intgration
Geregelte Arbeitszeiten
Kundenvertreter im Team
Programmierrichtlinien
Voraussetzungen
Qualifikation der Entwickler
Auf die XP-Praktiken einlassen
kleine Projekte
Kommunikation
Testabdeckung
Vorteile
innovative Ansätze
Voraussetzungen garantieren fast schon Gelingen
Nachteile
Fehlen Anforderungsdefinition
knappes Qualitätsmanagement
ungenügende Orientierung am Gesamtsystem
Scrum
Managementframework
Ziel
Produktentwicklung
schnell
inkrementell
kundenorientiert
Verzicht auf umfassende Planung zuvor
Modell
Rollen
intern
Product Owner
Visionär
Stratege
Entwicklungsteam
interdisziplinär
3-9 Pesonen
managt sich selbst
als Team verantwortlich für Produkt
Scrum Master
Supervisor
Moderator
Berater
Trainer
extern
Kunde
extern
intern
Anwender
Management
Artefakte
Impediment Backlog
Scrum Master
Hindernisse
Sprint Backlog
Entwicklungsteam
Protokoll Bearbeitung
Sprint Entwicklungsaufgaben
Product Backlog
Product Owner
Product Backlog Items
User Stories
Events
Meetings
Sprint Planning Meeting
1
Funktionalitäten
2
SW-Items
Sprint-Aufgaben
Daily Scrum
Koordination Tagesarbeit
Probleme / Hindernisse
Estimation Meeting
Modifizierung Product Backlog?
Sprint Review
Präsentation Funktionalitäten
Sprint Retrospective
Lessons learned
Sprints
Tasks
User Stories
Anforderungen an Entwicklungsteam
sich kritisch hinterfragen
Bereitschaft für kontinuierlichen Lernprozess und Umsetzung Lessons Learned
Verantwortungsbewußt, engagiert, teamfähig
flexible Anpassung an Sprint-Anforderungen
Vorteile
sehr flexible Prozessgestaltung
kontinuierlicher Lernprozess
Nachteile
analog XP