Open Source im professionellen Einsatz
Linux-Magazin 01/2011
550

Change, Sprint, Timeboxing

Agile Projekte fassen häufig die während der Entwicklung anfallenden Aufgaben, etwa neue Funktionalitäten programmieren und Fehler beheben, unter dem Begriff Changes zusammen. Das Scrum-Team setzt sich einen immer gleich lang bleibenden Zeitrahmen für diese Aufgaben und nennt das einen Sprint.

Den Ansatz, immer wieder eine gleiche Periode bis zu einer abschließenden Release festzulegen - typischerweise zwei bis vier Wochen -, bezeichnen Projektmanager auch als Timeboxing. Durch die Transparenz und Planungssicherheit treten bei Sprints Defekte und Probleme schneller hervor. Das trifft besonders deutlich auf verteilte Teams zu.

Trotz gewisser Anleihen ist der Ansatz der Community-Projekte nicht deckungsgleich mit dem Scrum-Ansatz, da die Taktung eine andere ist: So streben Fedora, Ubuntu oder KDE etwa alle sechs Monate Releases an. Wegen der speziellen Rahmenbedingungen eines Community-Projekts sind wiederkehrende Sprints hier eher unüblich. Ressourcen und somit auch Implementierungen, geschweige denn ganze Release-Inhalte lassen sich selten planen, von langfristigen Roadmaps ganz zu schweigen.

Hier zeigt sich ein Unterschied zu kommerziellen Projekten. Konkrete Inhalte zeitlich zu planen und in wiederkehrender, fest vorgegebener Taktung bereitzustellen ist ein Luxus, den sich nur wenige Community-Projekte leisten können. Aus ähnlichem Grund sind tägliche Synchronisations-Runden, Daily Scrums genannt, kaum übertragbar (siehe Abbildung 1). Der Austausch geschieht hier primär über den eigentlichen Code und formlos via Mail, Chat oder Bugtracker (siehe auch Kasten "Pro und Kontra").

Abbildung 1: Anders als Entwicklungsteams an einem Ort arbeiten viele Open-Source-Projekte verteilt und können keine Besprechungen abhalten. An deren Stelle treten dann Mail, Chat oder Bugtracker.

Ganz anders sieht es mit Extreme Programming (XP) aus [7]. Es bietet sowohl Vorschläge, um ein Projekt grundsätzlich zu organisieren, als auch entwicklungsnahe Prinzipien und Praktiken. Refactoring, permanente Integration, Coding-Standards oder einfaches Design sind auch isoliert nutzbar.

XP hat übrigens nichts mit spontanem Coding zu tun, sondern ist, genauso wie Scrum, mit Disziplin verbunden. Der namengebende Begriff zielt darauf ab, dass für den Projekterfolg notwendige Aspekte, etwa kleine iterative Schritte, extrem angewendet werden sollen. Das gelingt auch in Community-Projekten.

Menschen vor Technik

Wo Software entwickelt wird, sollten Menschen im Vordergrund stehen [8]. Dann bringen agile Strategien in einigen Situationen einen Mehrwert. Viele Community-Projekte tun dies bereits seit Langem implizit, sie mit Scrum zu organisieren ist grundsätzlich möglich. Rahmenparameter wie das Fehlen der örtlichen Nähe liefern jedoch Argumente, die zwar gegen Scrum, aber für eine pragmatische Herangehensweise mit einer situativen Orchestrierung auch agiler Strategien sprechen.

Community-Projekte setzen fast immer eine umfassende technische Infrastruktur ein, die bereits agile Strategien unterstützt und implementiert. Zentrum der leichtgewichtigen Werkzeugkette sind oft Versionsverwaltung, Mailinglisten und Build-Server. Und damit haben Linux-Entwickler bekanntlich schon sehr erfolgreich Software entwickelt. (mg)

Infos

[1] Scrum: [http://de.wikipedia.org/wiki/Scrum]

[2] Agile Manifesto: [http://agilemanifesto.org]

[3] Michael Hüttermann, "Agile Java-Entwicklung in der Praxis": O'Reilly, 2007

[4] Michael Hüttermann, "Agile ALM":Manning, 2010

[5] Jira: [http://atlassian.com/software/jira/]

[6] Debian, Release-kritische Fehler:[http://bugs.debian.org/release-critical/]

[7] Extreme Programming: [http://de.wikipedia.org/wiki/Extreme_Programming]

[8] Pavlo Baron, Michael Hüttermann, "Fragile Agile": Hanser, 2010

Der Autor

Dipl.-Wirt.-Inf. Michael Hüttermann (Java Champion, SCJA, SCJP, SCJD, SCWCD) ist freiberuflicher Entwickler, Architekt, Berater, Coach, Autor und Dozent für Java/JEE, ALM/SCM und agile Software-Entwicklung. Um seine Work-Life-Balance aufrechtzuerhalten, schreibt er Bücher und spricht auf Konferenzen.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Scrum und Kanban

    Wie organisieren moderne Firmen ihren IT-Betrieb? Das Linux-Magazin widmet dieser Frage seinen Schwerpunkt. Zu Beginn sieht sich die Redaktion in zwei Internet-Unternehmen in Berlin und München um und stieß auf die agilen Methoden Scrum und Kanban, die derzeit in Admin-Abteilungen einziehen.

  • Munteres Miteinander

    Entwickler müssen sich organisieren, agiles Vorgehen ist dabei gerade en vogue. Da fragen sich Sysadmins, ob sich Iterationen, das Arbeiten in Paaren und kurze Meetings nicht übertragen lassen.

  • Freies Werkzeug für Scrum-Prozess

    Die Berliner Firma Agile 42 hat Version 0.7 ihrer Software Agilo für Scrum veröffentlicht, die Entwickler-Teams bei der Umsetzung des agilen Entwicklungsmodells Scrum unterstützt.

  • Cebit: Agiles Dokumentenmanagement mit Agorum Core Pro

    Auch das freie Dokumentenmanagementsystem Agorum Core Pro 7.9.1 war auf der Cebit zu sehen, seine Macher zeigten, was es Neues kann.

  • Bruchlos modelliert

    Weder Anhänger des traditionellen Programmierparadigmas noch Verfechter agiler Methoden bestreiten bei Softwareprojekten die Notwendigkeit einer bruchlosen Modellierung. Das auf Eclipse aufsetzende Unicase stellt hierfür ein einheitliches Projektmodell zur Verfügung.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.