Vorgehensweisen Flashcards
Vorgehensmodell - Code and fix
Code eingeben und anschließend testen und korrigieren, bis das Programm des gewünschte Verhalten zeigt. Nicht planbar, da keine Vorgaben vorhanden.
-> unstrukturiert und wartungsunfreundlich
Vorgehensmodell - Wasserfallmodell
- Planung
- Spezifikation (ER, UseCases, Klassendiagramme, Maskenbeschreibungen)
- Entwurf (Zustands-, Sequenz-, Klassendiagramme, Struktogramme)
- Implementierung und Test
- Einführung
- Betrieb und Wartung
Vorgehensmodell - Wasserfallmodell - Vor-/Nachteile
+ einfach und leicht verständlich
+ wenig Managementaufwand
+ für einfache Produkte mit klaren Anforderungen geeignet
- Benutzer sind nur in Anfangsphase beteiligt
- lange Wartezeit, bis der Benutzer sein Endprodukt sieht, geringe Identifikation
- endgültige Struktur wird früh festgelegt, spätere Änderungen nicht möglich
Vorgehensmodell - Rapid Prototyping
Viele Anforderungen werden erst erkannt, wenn das System bereits vorhanden ist. Daher: sehr frühe Realisation eines Prototyps, der wesentliche Funktionen des Zielsystems aufweist. Der Prototyp unterstützt bei der Anforderungsanalyse.
Gebräuchlich bei GUIs und wenn Anforderungen vorab nicht ermittelt werden können.
Vorgehensmodell - Inkrementelle, iterative Entwicklung
inkrementell: Realisierung in kleinen Schritten. Zunächst nur Kernanforderungen, Ausbau mit jedem weiteren Schritt. Frühe Auslieferung.
iterativ: Mängelkorrektur in Schritten. “Herantasten” an die Lösung
Gebräuchlich weil
- Anforderungen zu Projektbeginn nicht klar sind
- Projektphasen im Wasserfallmodell oft viel zu lang sind
- “I can’t tell you what I want, but I’ll know it when I see it.”
Prozessmodell
vs Vorgehensmodell
Vorgehensmodell: Aussage über Reihenfolge und Art der auszuführenden Tätigkeiten
Prozessmodell: s.o. plus Organisation (Personen, Verantwortlichkeiten) und Qualität (Kriteiren, Methoden, Werkzeuge)
Prozessmodell
Vorgehensmodell + Organisationstrukturen + Projektmanagement + Qualitätssicherung + Dokumentation
inkl. handelnde Personen (Rollen) und deren Kompetenzen, anzuwendende Standards, Richtlinien, Methoden und Werkzeugen
Prozessmodell - Rational Unified Process
inkrementell, architekturzentriert, Use-Case-zentriert
1) Initiierung
2) Ausarbeitung
- Definition der Grundarchitektur
- Prototyp
- Use-Cases
3) Konstruktion 1|2|3|4|…
4) Abschluss
In jeder Phase: - Anforderungsanalyse - Spezifikation - Entwurf - Implementation - Test inkrementell durchlaufen!
V-Modell
- kann auf Wasserfallmodell, inkrementellen und komponentenbasierten Vorgehensmodellen aufsetzen
- Definiert exakt, WAS WANN durch WEN gemacht wird
- besonders für Großprojekte, hoher organisatorischer Aufwand
- vernetzte Vorgehensbausteine, deren Ergebnis Produkte sind. Ein Vorgehensbaustein fasst Rollen, Produkte und Aktivitäten zusammen.
- Einteilung in Phasen, in jeder Phase ein Meilenstein
Agile Software-Entwicklung
Individuen und Interaktionen, funktionierende Software, Kundenzusammenarbeit, Flexibilität WICHTIGER ALS
Prozesse und Werkzeuge, umfassende Dokumentation, Vertragsverhandlungen, einem Plan zu folgen
-> in kleinen Projekten praktikabel, minimaler organisatorischer Rahmen
Anforderungsanalyse
Ziel: Zusammenstellung aller Anforderungen an ein Softwaresystem durch
- Ist-Analyse
- Beobachtungen von Benutzern
- Interviews, Fragebogen
- Durchspielen von Anwendungsfällen
Ablauf:
- Anforderungsermittlung
- Anforderungsbewertung
- Anforderungsdokumentation
Ergebnis: LASTENHEFT
Doku
Systemdoku
Projektdoku
Qualitätsdoku
Prozessdoku