Was sind Mögliche bestandteile eines Prozessmodells der Klasse 2 ?
Aufbauorganisation, Verantwortlichkeiten, Rollenmodell und -verteilung
Struktur und Eigenschaften von Dokumenten
einzusetzende Verfahren
auszuführende Aktivitäten der Entwicklung inkl. Kontrollfluss (=Prozessmodell Klasse I)
Explizite Projektphasen, Meilensteine, Prüfkriterien
einzusetzende Notationen und Sprachen (z.B. UML, Java)
einzusetzende Werkzeuge (z.B. Eclipse, JUnit, Git)
Was unterschiedet Prozessmodelle der Klasse 1 zu Prozessmodellen der Klasse 2?
Prozessmodelle der Klasse I machen lediglich Aussagen über den Projektablauf.
Klasse 2 auch über Organisation, Dokumentation, Verantwortlichkeiten.
Begriffserklärung: Tailoring (von Prozessmodellen)
Ergänzung eines generischen (Prozess-)Modells durch Projekttyp-spezifische Elemente.
Ziel: Gezielte Prozessausprägung.
Begriffserklärung: Phasenmodell
Das Phasenmodell untergliedert den Gesamtablauf eines Projekts in einzelne
aufeinander folgende,
parallel verlaufende und/oder sich überlappende,
sachlich voneinander getrennte
zeitliche Abschnitte (Projektphasen).
Begriffserklärung: Phase / Projektphase
Eine Phase ist ein Zeitraum zwischen zwei
Meilensteinen.
Begriffserklärung: Meilenstein
Ein Meilenstein ist ein zeitlich geplantes Ereignis, das den Abschluss einer oder mehrerer Aufgaben markiert.
—> An einem Meilenstein ist eine zuvor definierte Menge von Ergebnissen in einer festgelegten Qualität abzuliefern.
—> Hierdurch wird der Software-Prozess einer Bewertung/Erfolgsmessung zugänglich gemacht.
—> Achtung: Die Erreichung eines Meilensteins ist durch die angestrebten Ziele/Ergebnisse definiert und nicht durch den geplanten Erreichungstermin. Dieser kann sich ändern.
Welche Fragen sollte man sich vor der festlegung eines Meilensteins stellen?
Welche Ergebnisse müssen vorliegen?
Welche Gütekriterien werden bei deren Prüfung zugrunde gelegt?
Wer entscheidet, ob der Meilenstein erreicht ist?
Was ist der Nachteil des Phasenmodells?
Großer Aufwand für die Vorbereitung und Durchführung der Prüfungen zum Erreichen der Meilensteine.
Was sind Vorteile des Phasenmodells?
Präzise Planung durch Meilensteine
Termindrift leicht erkennbar
Personalbedarf je Phase gut ableitbar
Qualitätssicherung durch Prüfung der Teilprodukte
Prüfungen geben Sicherheit, dass sich das Projekt „in die richtige Richtung“ entwickelt und sich Teilprodukte nicht übermäßig verspäten.
Überwinden des „90%-fertig Syndroms“
Was sind Eigenschaften des V-Modells?
basiert auf Phasenmodell
eigenes Vokabular, z.B.
Meilensteine —> Entscheidungspunkte
Phasen —> Projektabschnitte
Urform von 1992 nur für Software
seit 1997 für Soft-, Hardware und Kombinationen
Welche zusätzlichen Querschnittsfunktionen enhält das V-Modell verglichen mit dem Wasserfallmodell?
Qualitätsmanagement
Konfigurationsmanagement
Projektmanagement
Was sind die 4 Subsysteme beim V-Modell?
Systemerstellung (SE)
Qualitätssicherung (QS)
Konfigurationsmanagement (KM)
Projektmanagement (PM)
Was sind die wesentlichen Begriffe des V-Modells?
Vorgehensbausteine
Projekttypvarianten/Projektdurchführungsstrategien
Entscheidungspunkte
Aktivitäten
Produkte
Rollen
Systementwicklungsstrategien
Begriffserklärung: Vorgehensbaustein
wesentliches Gestaltungsmerkmal
Dient der Erfüllung einer Aufgabe
organisiert Rollen, Produkte & Aktivitäten
Qualitätssicherung
Problem- und Änderungsmanagement
Begriffserklärung: Entscheidungspunkt
Das V-Modell XT kennt 21 Entscheidungspunkte, z.B.
Welche Systementwicklungsstrategien gibt es?
inkrementell (schließt Wasserfallmodell ein)
komponentenbasiert
agil
Was sind die Vorteile des V-Modells?
4 obligatorische Vorgehensbausteine betonen deren Gleichberechtigung zu konstruktiven Tätigkeiten wie Spezifizieren und Kodieren
freie Verfügbarkeit
umfangreich, generisch, anpassbar
“Es ist an alles Wichtige gedacht”
Was sind Nachteile des V-Modells?
Es ist sehr komplex
—> Fokus auf Großprojekte d.h. Für kleine und mittlere
Projekte weniger geeignet
Ohne Anpassung sind sehr viele
Produkte/Dokumente abzuliefern
(selbst nach Tailoring noch ca. 40
Stück), deren Nutzen fraglich ist
Projektassistent macht relativ starre
Vorgaben
Was sind die Ergenschaften eines Unified Process (UP) Prozessmodells?
UP ist ein Phasenmodell
uP ist iterativ
Releases entstehen inkrementell
Produkte entstehen ggf. inkrementell
UP basiert auf Use Cases
UP ist architekturzentriert
Nenne Begriffe des Unified Processes (UP)
Worker (statt Rolle)
Workflows
Artefakte
Worum geht es bei einer Inception?
Was passiert in dieser Phase?
Verstehen der grundlegenden Idee sowie der Anforderungen an das Zielsystem
Verstehen der wirtschaftlichen Seite als Voraussetzung für Start des Entwicklungsprojekts
Identifikation grundlegender Anwendungsfälle
Risikoanalyse und ggf. Prototypen zur Absicherung
Erster Architekturentwurf, Projektplan
Worum geht es bei der Elaboration?
Anforderungen werden komplettiert
Architekturentscheidung
Erster Prototyp für Demonstration des Architekturkerns
Identifikation der größten Risiken und Erarbeitung von Maßnahmeplänen
Planung der Folgephasen
Worum geht es bei Construction ?
Implementation, Integration und Test
Komplettierung der Dokumentation
Ziel: Eine einsetzbare Beta-Version
Worum geht es bei der Transition ?
Überführung/Übergang des Systems inkl. Dokumentation in einen stabilen Zustand
Anwender-Feedback
Ziel: Auslieferbare, uneingeschränkt nutzbare & vom AG akzeptierte Produkte (System & Dokumentation)
Unified Process - Prozessstruktur
Was sind Unterschiede zwischen Unified Process (UP) und Rational Unified Process(RUP) ?
RUP hat einen höheren Detaillierungs-/ Konkretisierungsgrad
RUP ist ein kommerzielles Produkt von IBM/Rational
RUP hat Änderung des Vokabulars, z.B. wird aus dem Workflow die Discipline
RUP definiert Disciplines durch UML-Aktivitätsdiagramme
in RUP werden einzelne Aktivitäten eingehend textuell beschrieben
Was sind Voraussetzungen für den Einatz von Rational Unified Process (RUP) ?
Gute Konfigurations- & Änderungsverwaltung nötig wegen iterativer & inkrementeller Vorgehensweise
Hohe Anforderungen an Projektmanagement wegen Planung der Iterationen (wie viele?, jew. wie lang?)
OO-Kenntnisse erforderlich, insbesondere zu Anwendungsfällen
Was sind Nachteile von Rational Unified Process (RUP)?
Projektspezifisches Tailoring kaum möglich wg. hohem Kopplungsgrad der Aktivitäten
Vendor-Lock-in bzgl. Tools & Methode, kommerzielle Weiterentwicklung des Prozessmodells
Der Detaillierungsgrad erweckt den (falschen!) Eindruck, dass man durch stupides Befolgen der Workflows/ Disciplines automatisch zu guten Produkten gelangt
Was sind Vorteile von Rational Unified Process (RUP)?
Umfangreiche elektronische Dokumentation
Detaillierte Dokumentation des RUP inkl. Anleitungen &
Musterdokumenten
Begriffserklärung: Agilität (allgemein)
Fähigkeit schnelle Bewegungen durchzuführen
Begriffserklärung: Agilität (im SE Kontetxt)
Die Fähigket schnell auf Ereignisse, die das Projekt beeinflussen reagieren zu können.
Beispiele von Ereignissen:
Anforderungen ändern sich
Personal wird (temporär) abgezogen
Budgetkürzungen
Veränderte Marktsituation
Erkenntnis:
Am beweglichsten bin, ich wenn ich (jeden?/unnötigen?) Ballast abwerfe
Training fördert meine Beweglichkeit
Wodurch zeichnen sich agile Prozessmodelle aus?
iterativer Ansatz;
Zykluslänge: wenige Wochen, max. 3 Monate
Arbeit in kleinen Gruppen zu 6-8 Pers., die zudem in einem
gemeinsamen Labor arbeiten
umfangreiche Dokumentation wird total oder partiell abgelehnt
Kundenfokus/-bedeutung & seine Beteiligung im Projekt empfehlen oder fordern
Selbstorganisation (oft)
dogmatisches Vorgehen ablehnen
Übersicht Extreme Programming (XP)
Übersicht Scrum
Übersicht Organisationsformen
Last changeda year ago