Agile Frameworks und Methodiken (Teil 2 von 3)

Der Begriff „Agil“ beschreibt zunächst einmal nur eine Art und Weise, wie man etwas angehen kann, ohne dabei wirklich konkret zu werden. Um eine Software oder ein Projekt agil anzugehen, bedarf es etwas mehr. Dafür benötigt man Vorgehensweisen, Praktiken und ein stimmiges Gesamtkonzept. Im Bereich der agilen Software-Entwicklung haben sich eine Handvoll Frameworks und Methodiken etabliert. Diese möchte ich hier vorstellen und aufzeigen, wie sie sich voneinander unterscheiden und welchen Fokus sie jeweils haben.

Dies ist der zweite Teil einer dreiteiligen Blog-Reihe.

Den ersten Blog-Beitrag zu Kanban, Lean Software Development (LSD), Scrum und Extreme Programming (XP) finden Sie hier.

Agile Unified Process (AUP)

Der Agile Unified Process ist eine vereinfachte Form des Rational Unified Process (RUP) auf Basis von agilen Methoden. AUP wurde ab 2012 durch Disciplined Agile Delivery (DAD) abgelöst.

AUP enthält die vier Phasen von RUP (Inception, Elaboration, Construction und Transition), setzt aber nur einen Teil der Workflows (7 von 9) um. AUP ist konform zu den agilen Prinzipen und Werten der Agile Alliance.

DAD baut auf bewährten Techniken und Vorgehensweisen aus Scrum, Extreme Programming (XP), Agile Modeling (AM) und Kanban auf und erlaubt es verschiedene Bausteine dieser Frameworks und Methodiken zu kombinieren.

Ursprünge

Der Agile Unified Process (AUP) wurde ab 2001 von Scott W. Ambler als agile Version des Rational Unified Process (RUP) entwickelt. 2006 wurde die Entwicklung von AUP wieder eingestellt. Seit 2009 entwickelt Scott W. Ambler das Framework Disciplined Agile Delivery (DAD), das teilweise auf AUP aufbaut und dieses seit 2012 ersetzt.

Prominente Konzepte, Tools & Techniken:

  • Iterationen in zwei Ausprägungen (Development, Production)
  • Auslieferung von Software in Etappen
  • Fokusierung auf Werte (Value)
  • Auswahl (Tailoring) vieler Tools und Techniken anderer Frameworks möglich

Crystal Family

Crystal Family (oder Crystal Light) ist eine Familie von agilen Entwicklungsmethodiken in verschiedenen Ausprägungen. Die einzelnen Ausprägungen sind nach Farben bezeichnet (z.B. Crystal Yellow, Crystal Orange, Crystal Clear). Crystal Clear ist die einfachste Ausprägung. Welche Ausprägung für ein konkretes Projekt geeignet ist, richtet sich nach der Anzahl der beteiligten Personen und der Kritikalität. Je nach Variante gibt es verschiedene Rollen und Methoden. Die konkret eingesetzten Methoden werden dabei am konkreten Modell (Ausprägung) ausgerichtet und für jedes Projekt neu bestimmt.

Ursprünge

Crystal wurde bereits ab 1997 von Alistair Cockburn entwickelt und ist eine der ältesten agilen Methodiken. Es basiert auf Techniken und Vorgehensweisen aus zahlreichen anderen Frameworks und Methodiken (z.B. Responsibility-Driven Design, Extreme Programming). Alistair Cockburn gehört zu den Urhebern des „Agile Manifest“.

Prominente Konzepte, Tools & Techniken:

  • Häufiges ausliefern von Ergebnisssen (frequent delivery)
  • regelmäßiges reflektieren und anpassen des Prozess
  • Osmotische Kommunikation

Dynamic Systems Development Method (DSDM)

DSDM wurde ursprünglich als Rapid Application Development (RAD) Framework entwickelt und sollte Best-Pratices und praktische Erfahrungen kombinieren. Das Framework hat sich inzwischen aber zu einem generischen Ansatz weiterentwickelt

DSDM fokusiert sich auf die Entwicklung von Software. Es kann parallel zu anderen Frameworks, wie z.B. Extreme Programming, ITIL, PRINCE2 und PMI-BOK verwendet werden. DSDM ist zu 100% kompatibel mit ISO 9000 und PRINCE2.

Ursprünge

DSDM wurde im Gegensatz zu den meisten anderen agilen Methodkien und Frameworks nicht von einer Einzelperson, sondern von einem Konsortium aus Firmen und Software-Experten entwickelt. Die erste Version von DSDM wurde bereits 1994 veröffentlicht (also noch vor Crystal). Zwischen 2007 und 2014 wurde das Framework zu „DSDM Atern“ umbenannt. Seit 2014 wird aber wieder die urspüngliche Bezeichnung verwendet.

Prominente Konzepte, Tools & Techniken:

  • Timeboxed
  • Prototyping
  • Configuration Management
  • Iterativ inkrementeller Ansatz
  • MoSCoW Ansatz für die priorisierung von Anforderungen (Must have, Should have, Could have und Won’t have)
  • Drei Projektphasen (Pre-project, Project lfe-cycle, Post-project)

hier geht es weiter

Den dritten und letzten Blog-Beitrag zu Kanban, Lean Software Development (LSD), Scrum und Extreme Programming (XP) finden Sie hier.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.