Mit Communities zu mehr Qualität in der Software-Entwicklung

Wie entsteht qualitativ hochwertiger Software-Code? Die Frage treibt notwendigerweise jedes Softwarehaus um. Traditionell sah Softwareentwicklung so aus, dass nach einer Planungsphase die verschiedenen Entwicklungsstränge weitgehend unabhängig ihre Arbeitspakete umsetzten, um sie dann ganz am Ende erst zum großen Ganzen zusammenzufügen. Erst am Schluss zeigte sich, wo die Einzelteile nicht wie gewünscht harmonierten. Die anschließende Fehlersuche und Korrektur war zeit- und kostenintensiv. Heute ist dieses streng hierarchische Modell nicht mehr zeitgemäß. Seit der Veröffentlichung des Agilen Manifests in 2001 setzen sich agile Strukturen und Methoden in der Softwareentwicklung zunehmend durch. Dabei wird das große Ganze in viele kleine Einheiten gegliedert, die für sich genommen jeweils voll funktionsfähig sind und sofort nach Fertigstellung im Gesamtsystem getestet und betrieben werden. So fallen etwaige Konflikte sofort auf und können schnell behoben werden. Erweiterungen und Neuerungen stehen den Anwendern schneller zur Verfügung.

Natürlich hat dieser Wandel in den Methoden erhebliche Auswirkungen auf die Organisation, auf Programmiertechniken und auf das Selbstverständnis der Entwickler. Dementsprechend verwundert es nicht, dass sich neben dem Agilen Manifest einige Jahre später auch ein neuer Qualitätsanspruch in der Entwickler-Community zu Wort meldete: Im Manifesto for Software Craftsmanship von 2009 wurden die handwerklichen Aspekte als ein wesentlicher Teil der Softwareentwicklung herausgestellt: Es geht dabei um die Übertragung von Werten, die man gemeinhin mit dem „guten alten Handwerk“ in Verbindung bringen würde, auf die moderne Softwareentwicklung – also beispielsweise die Beherrschung der Werkzeuge, die handwerkliche Präzision, der Anspruch etwas von Dauer zu schaffen etc. Treibende Kraft hinter beiden Entwicklungen sind nicht etwa Unternehmen, sondern Einzelpersonen, genauer: Softwareentwickler. Die hinter den Manifesten stehende Grundhaltung ist, dass jeder Entwickler gute Software schreiben will, man muss ihn nur lassen.

Auch bei der DATEV spielt Agilität in der Softwareentwicklung seit Jahren eine zunehmend bedeutende Rolle. Und auch hier entwickelte sich daraus ein großes Interesse an den Ideen des Software-Handwerks, also die handwerkliche Qualität von Softwareentwicklung. Ausgangspunkt war – ganz getreu der Grundhaltung der Manifeste – eine Initiative von Mitarbeitern. Sie haben die Initiative ergriffen und eine unternehmensinterne Community gegründet: Darin organisieren sie gegenseitige Beratung, Weiterbildung, Austausch – und auch mal der „Blick über den Tellerrand“. In der „Software Craftsmanship Community“ haben sie sich jenseits etablierter Bereichsgrenzen unbürokratisch vernetzt und sorgen für den Transfer von Wissen auch außerhalb von organisierten Schulungen. Dabei ist alles, was in der Community passiert, auf freiwilliger Basis: Wer mitmacht, der tut es aus Überzeugung, weil er das für richtig hält.

Das Modell ist so erfolgreich, dass sich nach diesem Vorbild in der DATEV auch für andere Themen Communities gebildet haben, allein in der Softwareentwicklung sind es mittlerweile über 20!