: Steffen Fischer, Niklas Schlimm
: Agile Softwareentwicklung Ein Leitfaden für Manager
: entwickler.press
: 9783868026474
: 1
: CHF 8.90
:
: Informatik
: German
: 144
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF/ePUB
Agilität ist ein wichtiges Thema in der professionellen Softwareentwicklung. Das Buch wendet sich an Manager von agilen Teams, aber auch Architekten oder Entwickler erhalten wertvolle Hinweise. Die Autoren beschreiben, was man unter Agilität versteht, und beleuchten das Thema erstmalig aus betriebswirtschaftlicher Perspektive. Nach einer Definition von Agilität geht es um die Besonderheiten und die Abgrenzung von üblichen Vorgehensweisen. Dabei wird der für agile Teams erforderliche Managementstil vermittelt. Der spannende Überblick zu den Facetten agiler Verfahren beinhaltet praxisrelevante Handlungsempfehlungen, die den Erfolg agiler Projekte entscheidend beeinflussen. Der Leser soll im Anschluss nicht nur verstanden haben, worum es sich bei Agilität handelt, sondern auch wissen, was er als Manager beitragen kann und was er besser unterlassen sollte.

Niklas Schlimm ist Diplom-Kaufmann mit Schwerpunkt Informatik und leitet das Architekturteam eines großen deutschen Versicherungskonzerns. Zuvor war er jahrelang als Architekt und Entwickler tätig. In dieser Zeit hat er unterschiedliche Aufgaben in komplexen internationalen Großprojekten übernommen. Seit vielen Jahren gibt er seine praktischen Erfahrungen als Autor, Referent und Trainer an die IT-Community weiter. Steffen Fischer ist IT-Architekt bei einer Versicherung. Seine inhaltlichen Schwerpunkte liegen im Bereich Systemintegration, Anwendungsentwicklung, Enterprise-Architekturen und Architekturmanagement. Er hat langjährige Erfahrung als Chefarchitekt in großen IT-Projekten im Finanzdienstleistungssektor.

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):

  1. Man wählt das schlimmste Problem aus
  2. Man löst es unter Verwendung der XP-Konzepte
  3. 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