Gespart – ein Softwareleben lang

Steigerung der Qualität

Bisher haben wir uns in der Kostenbetrachtung auf die Tätigkeiten beschränkt, die in jedem Fall ausgeführt werden müssen, ob manuell oder automatisiert. Mit der Automatisierung des Auslieferungsprozesses bekommen Sie aber auch zusätzliche Möglichkeiten der Optimierung. Die Testautomatisierung haben wir oben bereits umrissen. Wird sie konsequent durchgeführt und werden die Ergebnisse gemessen, so haben Sie einen ersten Indikator für die Qualität Ihrer Software – sowohl für den aktuellen Stand als auch im zeitlichen Verlauf. Wie bereits erwähnt, werden Entwickler bei einer guten Testabsicherung mutiger – und damit schneller – sein, Änderungen an der Software durchzuführen. Und das bedeutet, dass neue Funktionalitäten weniger Aufwand verursachen und eine kürzere Time-to-Market haben. Beides wirkt sich positiv auf die Wirtschaftlichkeit der Software aus, doch lässt sich das leider nicht in einer einfachen Beispielrechnung im Rahmen dieses Beitrags quantifizieren.

Weitere Qualitätsindikatoren sind bekannte Metriken, z. B. Methodengröße, zyklomatische Komplexität [4] oder Lack of Cohesion in Methods [5]. Solche Softwaremetriken lassen sich in der Delivery Pipeline mit den entsprechenden Tools (z. B. [6] oder [7]) leicht erheben. Die permanente Messung dieser Indikatoren gibt ein direktes Feedback, ob durchgeführte Maßnahmen zur Verbesserung der Qualität erfolgreich waren. Die Erhöhung der Qualität auf Basis solcher Metriken führt zu einer besseren Wartbarkeit der Software, und das – Sie ahnen es – senkt die Kosten, da Änderungen schneller durchgeführt werden können. Ganz nebenbei verkürzt sich so übrigens auch die Einarbeitungszeit für neue Entwickler, weil der Quellcode wesentlich leichter lesbar und verständlicher ist.

Fazit

Zusammenfassend lässt sich feststellen, dass allein die Automatisierung der notwendigen Schritte zum Bauen und Ausliefern von Software – aus Sicht eines Betreibers bzw. Eigentümers eines oder mehrerer Softwareprodukte – in einem überschaubaren Zeitrahmen zu Kosteneinsparungen führt. Integriert man in diesen Prozess die Testautomatisierung und Erhebung von Qualitätsmetriken, so lassen sich weitere Einspareffekte und eine kürzere Time-to-Market für zukünftige Entwicklungsarbeiten bzw. neue Funktionalitäten erzielen. Die Anschaffung der Waschmaschine lohnt sich also.

Übrigens zeigt unsere Erfahrung, dass die meisten Entwickler mit diesem Ansatz sehr glücklich sind. Zum einen müssen sie unkreative Arbeiten nicht wieder und wieder ausführen. Zum anderen spornt er sie an, denn sie wollen guten Quellcode liefern, und die Metriken machen die Qualität sichtbar. Nicht zuletzt sind glücklichere Entwickler auch produktivere Entwickler, die Ihre Software blütenrein halten.

Stefan M. Heldt ist Berater, Coach und Trainer bei der Holisticon AG. Er leitet das Geschäftsfeld Architektur und unterstützt Unternehmen im Bereich der Architekturen und Technologien für verteilte unternehmenskritische Anwendungen sowie bei der Geschäftsprozessmodellierung.

Enno Thieleke arbeitet als Berater bei der Holisticon AG. Als Architekt und Entwickler unterstützt er Unternehmen u. a. bei der Einführung und Umsetzung von Geschäftsprozessen und deckt dabei ein breites Spektrum von Technologien ab, wobei sein Schwerpunkt auf J2EE/JEE liegt.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.