Kent Beck, Cynthia Andres: Extreme Programming Explained (Second Edition)

You are currently viewing Kent Beck, Cynthia Andres: Extreme Programming Explained (Second Edition)

Kent Beck, Cynthia Andres
Extreme Programming Explained: Embrace Change

2. Auflage
2004, XXII, 189 Seiten, Broschur
Addison-Wesley
ISBN: 0-321-27865-8



Die zweite Auflage des erfolgreichen Buchs Kent Becks über Extreme Programming (XP) zeigt eine „inklusivere“ Sicht auf XP, weist aber auch erhebliche Schwächen gegenüber der ersten Auflage auf.


Inhalt

Kapitel 1: What is XP?

Das Ziel verfolgend „inklusiver“ zu werden (S. XXII), ebenso die Programmierer und die anderen im Entwicklungsprozess Involvierten anzusprechen, enthält die zweite Auflage viele Änderungen gegenüber der ersten. So wird dem „Extreme“ aus Extreme Programming auch eine andere Bedeutung gegeben. In der ersten Auflage schreibt Beck:

XP setzt allgemein als vernünftig anerkannte Prinzipien und Verfahren in extremer Weise ein

[Beck00], S. XV – eigene Hervorhebung

in der zweiten:

Prepare for success. Don’t protect yourself from success by holding back. Do your best and then deal with the consequences. That’s extreme. You leave yourself exposed.

S. 1 – eigene Hervorhebung

Die Antwort darauf, was XP ist, hat sich aber auch geändert: „Extreme Programming (XP) is about social change“ (S. 1), während es in der ersten Auflage lediglich  eine „Methode“ oder „Disziplin“ oder „Art und Weise der Softwareentwicklung“ ist (S. XV ff.). Selbstverständlich gilt letzteres weiterhin auch für die zweite Auflage, es geht weiterhin um Softwareentwicklung, da aber Software von Menschen geschrieben wird, ist das letztendlich ein sozialer Prozess, und diesen Prozess gilt es zu ändern, es geht darum einen sozialen Wandel herbeizuführen, was letztendlich die Essenz der agilen Softwareentwicklung ist.

Teil 1: Exploring XP

Der erste Teil des Buches besteht aus den Kapiteln 2 bis 16 und fasst hauptsächlich die Werte, Prinzipien und Praktiken des XP zusammen. Anschließend geht es noch unter anderem um die in der ersten Auflage nicht beachteten Rollen und die Skalierung von XP. Während die deutsche Ausgabe der ersten Auflage noch den Untertitel „Die revolutionäre Methode für Softwareentwicklung in kleinen Teams“ trägt, findet in der zweiten Auflage ein Umdenken statt: XP kann skalieren, wobei Prinzipien und Werte auf allen Ebenen gleich bleiben, die Prozesse müssen jedoch eventuell angepasst werden (vgl. S. 111 ff.).

Beck stellt im 4. Kapitel die XP-Werte vor. Diese sind: Kommunikation, Einfachheit, Feedback, Mut und Respekt. Beck unterstreicht jedoch, dass andere Werte gewählt werden können, solange diese auch gelebt werden (S. 21 f.).

Die Prinzipien, gedacht als Brücken zwischen den Werten und Praktiken, werden im Kapitel 5 beschrieben. Einige davon sind Menschlichkeit, Verbesserung, Reflexion und Qualität, wobei die Liste nicht Anspruch erhebt exhaustiv zu sein, neue Prinzipien können, genauso wie neue Werte, definiert werden (S. 34).

Die Beschreibung der Praktiken ist zweigeteilt: primäre Praktiken (behandelt im Kapitel 7) und sekundäre oder Folgepraktiken („corollary“ im Englischen, behandelt im Kapitel 9). Die primären Praktiken sind die, mit welchen nach Becks Meinung von Anfang an experimentiert werden kann (also direkt bei der Einführung von XP). Die Folgepraktiken können dann zu einem späteren Zeitpunkt und eventuell nach und nach eingeführt werden. Einige Beispiele primärer Praktiken:

  • Zusammensitzen ist weiterhin wichtig;
  • das Programmieren in Paaren und die Verwendung von Stories sind ebenfalls beibehalten worden, genauso wie
  • Continuous Integration und kurze Build-Zeiten.

Metapher, eines der Verfahren aus der ersten Auflage, ist jedoch nicht mehr zu finden.

Unter den Folgepraktiken zählen:

  • das Involvieren des echten Kunden
  • gemeinsame Verantwortung über den gesamten Code
  • oder Daily Deployment.

Teil 2: Philosophy of XP

Der zweite und kürzere Teil (bestehend aus den Kapiteln 17 bis 25) beinhaltet Geschichtliches und einige praktische Betrachtungen (z.B. Einführung von XP in einem Unternehmen und Bewertung der eigenen „Agilität“). Im geschichtlichen Teil geht es um die Entstehung von XP im Rahmen des Chrysler Comprehensive Compensation Systems, kurz C3, um Frederick Taylor und den Taylorismus und um Taiichi Ohno und sein Buch Das Toyota-Produktionssystem.

Während in der ersten Auflage diverse Umgebungen aufgelistet werden, in denen XP nicht funktionieren kann, kennt die zweite Auflage nur noch eine solche Umgebung, nämlich die in der eine Organisation nicht gemäß der eigenen Werte zu leben versucht (S. 144).

Das Buch endet mit den Worten:

If you are looking for a world in which you can be comfortable, live in balance and do good business; XP is a way of thinking about and acting on your ideals.

S. 160

Somit behauptet XP seinen Anspruch potenziell mehr zu sein, als nur eine Entwicklungsmethodik.

Diskussion

Fünf Jahre nach der Veröffentlichung der erfolgreichen ersten Auflage von Extreme Programming Explained: Embrace Change (deutscher Titel: Extreme Programming: Die revolutionäre Methode für Softwareentwicklung in kleinen Teams), publiziert Beck zusammen mit seiner Frau Cynthia Andres die zweite Auflage seines Werkes. Interessant ist dabei, dass das, was als zweite Auflage bezeichnet wird, eigentlich, bis auf sehr wenige Stellen, ein anderes Buch ist (auch wenn es gerne als Neufassung bezeichnet wird). Die Gründe dafür sind mir nicht bekannt und somit werde ich lediglich, etwas später, darüber spekulieren können.

Um es kurz auszudrücken: die zweite Auflage enthält Einiges, was die erste nicht enthält, aber vermisst Vieles von dem, was die erste Auflage wertvoll macht. Im Rahmen einer Konferenz aus dem Jahre 2015 [Beck15] bewertet Kent Beck die erste Auflage als „snotty, disrespectful towards the other people involved“ (eigene Transkription), wobei „the other people involved“ die Nicht-Programmierer sind.

Somit war sein Ziel für die zweite Auflage das Buch “inklusiver” zu machen und das ist ihm auch sehr gut gelungen. Der Preis, den er aber dafür gezahlt hat, ist hoch. Vieles ist relativ schwammig und beliebig geworden. Die Prämisse der ersten Auflage war, dass die beschriebenen Praktiken einander verstärken und durch die gemeinsame Verwendung die individuellen Schwächen derselben eliminiert werden. Diese Prämisse gibt es nicht mehr in der zweiten Auflage. Leider verliert die zweite Auflage von Extreme Programming Explained sehr viel der Stringenz der ersten. Bertrand Meyer konstatiert in Agile! The Good, the Hype and the Ugly zu den zwei Auflagen von Becks Buch:

I benefit more from the in-your-face simplicity of the first edition. […] Some of the comments of the second edition reflect a more balanced view resulting from a few extra years of experience, but they tend to dilute the essence of the ideas. Unless you want to read the two editions […], you may expect to find more value in the first.

[Meyer], S. 138

Dem kann ich mich nur anschließen.

Im Rahmen des oben zitierten Konferenzbeitrags, überlegt Beck, was er im Rückblick anders machen würde:

I would have changed the tone from the beginning. I look at that first edition and I just cringe that I would have written stuff like that. Yeah, it’s kind of a manifesto, and a manifesto needs to be emotional, but I don’t think you have to be a jackass about it.

[Beck15], eigene Transkription

Diese harte Selbstkritik lässt mich vermuten, dass die zweite Version des Buches die erste ersetzen soll, diese soll als veraltete erste Version „verschwinden“. Die harte Kritik ist, wie ich finde, jedoch unbegründet. XP hat in einem gewissen Umfang die Art, wie Software gebaut wird, geändert, viele der von XP popularisierten Techniken wurden von anderen Methodologien und Frameworks übernommen und dafür verantwortlich war die erste Auflage von Extreme Programming Explained.


Bibliographie

[Beck00] – Kent Beck. Extreme Programming: die revolutionäre Methode für Softwareentwicklung in kleinen Teams. Addison-Wesley. 2000.
[Beck15] – Kent Beck. Extreme Programming 20 Years Later. Lean IT Summit 2015. Verfügbar unter: https://www.youtube.com/watch?v=cGuTmOUdFbo. Letzter Abruf 20.01.2021.
[Meyer] – Bertrand Meyer. Agile! The Good, the Hype and the Ugly. Springer International Publishing. 2014.


Zu den Autoren

Kent Beck

Informationen über Kent Beck finden Sie auf der separaten Buchautorenseite.

Cynthia Andres


Folgende Rezensionen könnten Sie ebenfalls interessieren:

Petre Sora

Petre Soras Interessen sind vielfältig und befinden sich an der Schnittstelle zwischen Mensch und Informationstechnologie. Nachdem er sein Bachelorstudium im Fach Psychologie abschloss, orientierte er sich neu und studierte Software Engineering an der Hochschule Heilbronn, ebenfalls mit einem Bachelor abgeschlossen. Anschließend war er knappe sechs Jahre als Java-Entwickler in mehreren Unternehmen tätig. Aktuell ist er mit dem Masterstudium der Praktischen Informatik und der Rezensionsplattform für IT-Fachbücher nososo.de beschäftigt.

Schreibe einen Kommentar