Vorgehensmodelle

System Development
Teil B
Der
Softwareentwicklungsprozess
(C) WISS
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Basel
Bern
Kloten
Luzern
Schönbühl
St. Gallen
Zürich
Allgemeine Entwicklungsphasen
Definitionsphase
(Analyse)
Entwurfsphase
(Design)
Ziele
Vorgehen
Vorgaben
Rahmenbedingungen
Projektplan
Modell
Pflichtenheft
Produkt-Modell
Benutzungsoberfläche
Benutzerhandbuch
Entwurf
Softwarearchitektur
Spezifikation der
Systemkomponenten
Quellprogramme
Dokumentation
Objektprogramme
Testplanung
Implementierungsphase
Einführungsphase
Betrieb
(C) WISS
Installiertes Produkt
Gesamtdokumentation
Abnahmeprotokoll
Einführungsprotokoll
2
System
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Planungsphase
(Vorstudie)
Planungsphase / I
Themenbereich
Mögliche Fragestellungen / Tätigkeiten
(C) WISS
• Ist-Aufnahme und Ist-Analyse, wenn ein
Vorgängerprodukt vorhanden ist
• Festlegen der Hauptanforderungen
• Festlegen der Hauptfunktionen und –daten
• Festlegen der Leistungsmerkmale
• Festlegen der Hauptaspekte der Benutzungsoberfläche
• Festlegen der wichtigsten Qualitätsmerkmale
3
Voruntersuchung
des Produkts
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Situationsanalyse
• Was ist überhaupt das zu lösende Problem?
und Zielformulierung • Was gehört dazu, was nicht?
• Was für grundlegende Anforderungen bestehen?
• Was soll durch ein neues Produkt erreicht werden?
• Soll entwickelt oder eingekauft werden?
Mögliche Fragestellungen / Tätigkeiten
Durchführbarkeits
untersuchung
• Prüfen der fachlichen Durchführbarkeit
(softwaretechnische Realisierbarkeit, Verfügbarkeit
geeigneter Ressourcen)
• Prüfen alternativer Lösungsvorschläge
• Prüfen der personellen Durchführbarkeit
• Prüfen der Risiken
Prüfen der
ökonomischen
Durchführbarkeit
• Aufwands- und Terminschätzung
• Wirtschaftlichkeitsrechnung
(C) WISS
4
Themenbereich
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Planungsphase / II
Definitionsphase
Def initionsphase
(Analy se)
Ziele
Vorgehen
Modell
Vorgaben
Rahmenbedingungen
Projektplan
Pf lichtenhef t
Produkt-Modell
Benutzungsoberf läche
Benutzerhandbuch
(C) WISS
5
System-Analyse (Anforderungs-Analyse,
requirements engineering)
Definieren der Produkt-Anforderungen
Ergebnisse:
 Pflichtenheft, Anforderungsspezifikation
 Produktmodell
 Konzept der Benutzungsoberfläche
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Planungsphase
(Vorstudie)
Def initionsphase
(Analy se)
Entwurf sphase
(Design)
Modell
Pf lichtenhef t
Produkt-Modell
Benutzungsoberf läche
Benutzerhandbuch
Entwurf
Sof twarearchitektur
Spezif ikation der
Sy stemkomponenten
(C) WISS
6
software-technische Lösung = Softwarearchitektur
"Programmieren im Grossen"
Schnittstellen zur Umgebung
Systemkomponenten und ihre Beziehungen
 Funktionale Module
 Datenobjekt-Module
 Datentyp-Module
 Objekt-Klassen
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Entwurfsphase
Implementierungsphase
Entwurf sphase
(Design)
Entwurf
Sof twarearchitektur
Spezif ikation der
Sy stemkomponenten
Quellprogramme
Dokumentation
Objektprogramme
Testplanung
Implementierungsphase
(C) WISS
7
Tätigkeiten
 Konzeption von Datenstrukturen und Algorithmen
 Strukturierung von Programmen, Programmieren
 Kommentare schreiben
 Systemkomponenten implementieren
 entwickelte Programme testen
Ergebnisse
 Quellprogramme einschliesslich integrierter Dokumentation
 Objektprogramme
 Testfälle und Testprotokolle
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Sy stem
Einführungsphase
Quellprogramme
Dokumentation
Objektprogramme
Testplanung
Implementierungsphase
Einf ührungsphase
Betrieb
Installiertes Produkt
Gesamtdokumentation
Abnahmeprotokoll
Einf ührungsprotokoll
(C) WISS
8
 Abnahmetests
 Installation des Produkts in der Zielumgebung
 Bereitstellung der Dokumentation
 Schulung der Benutzer und des Betriebspersonals
 Inbetriebnahme des Produkts
 Übergabe an den Auftraggeber
 Beginn des Einsatzes mit produktiven Daten
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Sy stem
Vorgehensmodelle
(C) WISS
9
Beipiele
 das Wasserfallmodell
 das Spiralmodell
 das V-Modell
 das Prototyping
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
 Durch ein Vorgehensmodell wird der SW-Entwicklungsprozess
in aufeinander abgestimmte Phasen zerlegt
 Für jede Phase werden Tätigkeiten, Ergebnisse und Rollen
festgelegt.
Wasserfallmodell
Projektauftrag,
Grobplan
V
Systemspezifikation V
Grobentwurf
Pflichtenheft
Datenmodell,
Systemarchitektur
V
Feinentwurf
V
Implementierung
Integration
Algorithm. Struktur
der IS-Komponenten
V
Programme und
Dokumentation
V
Installation
Endprodukt
V
10
(C) WISS
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Problemanalyse
Betriebsfähige
Version
Wasserfallmodell
 Das Wasserfallmodell beschreibt
den Entwicklungsprozess als sequentiellen Ablauf von
Phasen.
 Iterationen zwischen aufeinanderfolgenden Phasen
sind möglich.
 Jede Phase produziert genau definierte Ergebnisse,
die als Input für die nächste Phase dienen.
(C) WISS
11
 Am Ende jeder Phase steht ein Prüfschritt
(Verifikation).
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
 Jede Phase muss vollständig abgeschlossen sein,
bevor die nächste begonnen werden darf.
Das Wasserfallmodell ist geeignet wenn ...
 die vollständigen Anforderungen frühzeitig
vorliegen und sich während der Entwicklung nur
marginal ändern
 das Projekt klein ist
verständlich
(C) WISS
 vollständige Anforderungen
liegen selten frühzeitig vor
12
 Modell ist einfach und leicht
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Wasserfallmodell
Spiralmodell
Bestimmung von Zielen,
Alternativen, Restriktionen
Identifizierung und
Beseitigung von
Risiken
kumulierte
Kosten
Risiko-Analyse
Risiko-Analyse
RisikoAnalyse
P1
Anforderungs- Konzept
plan, Lebens- für den
zyklusplan
Betrieb
P2
Software
Anford.
Definition
Entwicklungs- Anforderungsprüfung
plan
Planung der
nächsten Phase
(C) WISS
Prototyp 3
Betriebsfähiger
Prototyp
Software
ProduktEntwurf
Feinentwurf
Modul
codieren
ModulIntegration Entwurfsprüfung
test
und Testplan
Integration
und Test
AbnahmeVerbesserungsplan test und Einführung
Entwicklung und
Prüfung der
nächsten
Produktstufe
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Zustimmung
durch Reviews
Risiko-Analyse
13
Fortschritte
Spiralmodell
vierteiliger Zyklus
geeignet für grosse, risikoreiche
Systeme
kumulierte
Kosten
Risiko-Analyse
definierten Zeiten an
Umstände angepasst
werden
 hoher Managementaufwand notwendig
Zustimmung
durch Reviews
Risiko-Analyse
RisikoAnalyse
P1
Software
Anford.
Definition
Anforderungsplan, Lebenszyklusplan
Konzept
für den
Betrieb
Entwicklungsplan
Anforderungsprüfung
Integration
und Testplan
Verbesserungsplan
(C) WISS
P2
Abnahmetest und Einführung
Betriebsfähiger
Prototyp
Prototyp 3
Software
ProduktEntwurf
Feinentwurf
Modul
codieren
Modultest
Entwurfsprüfung
14
 Vorgehen kann zu
Fortschritte
Integration
und Test
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Risiko-Analyse
V-Modell (allgemeines)
Testfälle
Systemkonzeptvalidierung
Anforderungsdefinition
Betrieb
Testfälle
Anforderungsvalidierung
Systemspezifikation/
Produktentwurf
KomponentenEntwurf
Entwurfsvalidierung
Testvalidierung
Testfälle
Pilotbetrieb/
Einführung
Verifikation
Akzeptanztest/
Systemtest
Testfälle
Integrationstest
Testfälle
(C) WISS
Einzeltest
15
Modulentwurf/
Code
Validierung
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Systemdurchführbarkeitskonzept
Zeit
V-Modell
(C) WISS
16
Die Zwischenergebnisse der Softwareentwicklung
werden auf den verschiedenen Teststufen validiert
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Fehler können am einfachsten auf derjenigen
Abstraktions-stufe gefunden werden, auf der sie
begangen wurden
Der Einsatz von Prototyping ist geeignet, wenn
Anforderungen nicht vollständig zusammengestellt
werden können
alternative Lösungsmöglichkeiten zuerst getestet
und ausgewertet werden sollen
die Realisierbarkeit von Anforderungen garantiert
werden soll
(C) WISS
17
Prototyping versucht zu verhindern,
dass das falsche Produkt entwickelt wird
dass sich Anforderungen während der Entwicklug
als unrealisierbar erweisen
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
Prototyping
Dient zur Klärung von Anforderungen
 „Demonstrationsprototyp“ (zum Wegwerfen)
Experimentelles
Prototyping
Wird verwendet, um die Realisierbarkeit kritischer
Systemteile zu untersuchen und um Entwurfsalternativen zu bewerten
 „Labormuster“ (zum Wegwerfen)
Evolutionäres
Prototyping
Dient der Auslieferung von Teilsystemen an den
Auftragsgeber.
 Pilotsystem (wird weiterentwickelt)
(C) WISS
18
Exploratives
Prototyping
WISS – eine Stiftung der Kalaidos Bildungsgruppe Schweiz
3 Arten von Prototyping