2 Drei agile Methoden: eine kurze Einführung
Bevor wir uns den vertiefenden Themen widmen, werden in diesem Abschnitt exemplarisch drei ausgewählte agile Verfahren vorgestellt. Das ist nicht in aller Tiefe möglich, und hier auch nicht nötig, aber ein kleinerÜberblick ist sinnvoll, um die nachfolgende Diskussion„griffiger“ zu machen.
2.1 Extreme Programming (XP)
Bei Extreme Programming liegt ein besonderes Augenmerk auf den gemeinsamen Werten und Prinzipien des Teams bei der Entwicklung von Software. Weiterhin liegt ein Schwerpunkt auf den Themen Implementierung und Test. XP beinhaltet die folgenden Elemente (vgl. Beck, 2005):
- Eine Philosophie zur Softwareentwicklung, die auf folgenden gemeinsamen Werten basiert: Kommunikation, Feedback, Einfachheit, Mut und Respekt.
- Ein Rahmenwerk von agilen Techniken, die sich bei der Verbesserung von Entwicklungsprozessen als besonders erfolgreich gezeigt haben. Sie ergänzen sich gegenseitig und können als konkrete Operationalisierung der XP-Werte verstanden werden.
- Einen Satz von Prinzipien, mit denen man die Werte in die Praxisüberführen kann. Das ist hilfreich, wenn man keine Technik innerhalb von XP vorfindet, die das eigene spezielle Problem löst. Insofern ist XP keine geschlossene, fertige Methode.
- Eine Gemeinschaft von Entwicklern, die alle diese Werte in sich tragen und viele dieser Praktiken befolgen.
In Abbildung 2.1 ist beispielhaft ein Prozessbild dargestellt, um den Verlauf eines XP-Projekts zu visualisieren. Das entspricht so gar nicht dem Grundgedanken von XP, der ja gerade die Festlegung und kontinuierliche Verbesserung desProzesses dem Teamüberlässt. Verstehen Sie also den dargestellten Ablauf nur als Beispiel, wie man es machen könnte, und als Erklärungsmittel, um Ihnen XP näher zu bringen. Die Empfehlung zum Einsatz von XP lautet folgendermaßen (vgl. Beck, 2003, S. 123):
- Man wählt das schlimmste Problem aus
- Man löst es unter Verwendung der XP-Konzepte
- Wenn es nicht mehr das schlimmste Problem ist, beginnt man wieder von vorn
Abbildung 2.1: Beispielhafter Ablauf eines XP-Projekts1
Denn das Team soll ja den Prozess gestalten. Insofern wurde hier mit einem Prozessbild nur eine Instanz von XP dargestellt, die aber keinen allgemeingültigen Anspruch haben kann. Dieser Gedanke ist Teil der Methode. Man wirdüberrascht sein, wenn man das Buch von Kent Beck liest, wie wenig ins Detail gegangen wird.
XP vertritt extreme Sichtweisen, wenn es zum Beispiel vorgibt, ganz ohne Dokumentation auszukommen. Die einzigen Artefakte sind ausführbarer Programmcode und die zugehörigen Testfälle. Anforderungen werden als User Stories erfasst, zum Beispiel handschriftlich auf kleinen Karteikärtchen. Kurz vor der Implementierung, oder auch währenddessen, werden die User Stories dann mit dem Kunden