Qualität der Software steigern

Was Clean-Code-Entwickler können

29.06.2012
Von Bianca Hennemann
Ein guter Entwickler zeichnet sich nicht nur fachlich aus, sondern auch durch seine "weichen" Kompetenzen. Das gilt umso mehr für Programmierer, die ihre Arbeit an den Prinzipien von Clean Code Development (CCD) ausrichten.

Die geänderten Anforderungen an Softwareentwickler zeigen sich schon in der heutigen Ausbildung, die sich neben der Informatik in fachspezifische Studiengänge wie Wirtschafts- und technische Informatik unterteilt. Gleichzeitig arbeiten im Gegensatz zu früher immer mehr Entwickler gemeinsam daran, Lösungen umzusetzen. In der Praxis aber wird nach wie vor recht uneinheitlich programmiert. Entsprechend notwendig erscheint es daher, eine Grundlage zu schaffen, die Orientierung und allgemeingültiges Verständnis für alle Softwareentwickler bietet.

Geteilte Verantwortung

Clean Code Development strebt eine Reduzierung von Fehlern und stabilere Softwarelebenszyklen an.
Clean Code Development strebt eine Reduzierung von Fehlern und stabilere Softwarelebenszyklen an.
Foto: N-Media-Images - Fotolia.com

Eine derartige Basis bilden die Prinzipien und Praktiken des Clean Code Development (CCD). Es verfolgt den Anspruch, die Qualität von Software zu steigern. Lange Entwicklungszeiten, die bei Software-Funktionserweiterungen häufig zu hohen Kosten führen, lassen sich durch die Ausrichtung auf CCD verkürzen. CCD reduziert Fehler und stabilisiert insgesamt den Softwarelebenszyklus. Doch wie wird man ein Clean Code Developer?

Wer nach dem Wertesystem von Clean Code Development arbeiten möchte, sollte sich zunächst mit den darin beschriebenen Techniken auseinandersetzen, die auf Evolvierbarkeit, Korrektheit, Produktionseffizienz und Reflexion basieren. Damit Entwickler sich damit gut vertraut machen können, sind die Praktiken in mehrere Lernmodule unterteilt. Diese widmen sich einschlägigen Themen rund um nachhaltige Softwareentwicklung wie dem Schreiben automatisierter Tests und Prinzipien zur Codestrukturierung.

Durch die Fokussierung auf ein allgemeinverständliches Vorgehen in der Softwareentwicklung gelingt es, Verständnisschwierigkeiten aufzulösen, die eine individuelle Codestrukturierung mit sich bringt. Auf diese Weise bleibt zum Beispiel der Quellcode nicht nur für einzelne Entwickler nachvollziehbar, was sich auf die Teamarbeit positiv auswirkt und ein effektives Zusammenarbeiten ermöglicht. Fällt etwa ein Entwickler urlaubs- oder krankheitsbedingt aus, gefährdet das nicht das gesamte Projekt, weil sich Verantwortlichkeiten leichter teilen lassen.

Auf Neues einlassen

Auch für CCD-Entwickler sind die "weichen" Kompetenzen wichtig. Denn es sind meist die Soft Skills, an denen nicht nur einzelne Personen, sondern auch ganze Teams und Projekte scheitern. Umso entscheidender ist es für einen Clean Code Developer, nicht nur strukturiert zu arbeiten, sondern auch eine positive und motivierte Haltung gegenüber seiner Tätigkeit mitzubringen.

Hierzu gehören vor allem die Bereitschaft, sich auf etwas Neues einzulassen, und die Disziplin, die erlernten Prinzipien zu festen Bestandteilen des Arbeitsalltags zu machen. Hinzu kommt die Motivation, sich immer wieder aufs Neue mit den einzelnen Modulen des Wertesystems auseinanderzusetzen und die eigene Arbeit zu reflektieren. Dabei braucht es auch ein gewisses Maß an Pragmatismus in der projektbezogenen Anwendung und die Fähigkeit, sich im Team darüber auszutauschen.

Freiräume zulassen

Die Weiterentwicklung der genannten Fähigkeiten ist vor allem Aufgabe des Vorgesetzten. Zunächst sind die Kompetenzen zu definieren und zu erfassen, um danach ein Anforderungsprofil zu erstellen und in einem Kompetenz-Management-Katalog anzulegen.

In der Verantwortung des Unternehmens liegt es, Freiräume zu schaffen, damit sich Softwareentwickler mit den einzelnen Bausteinen des Clean Code Development beschäftigen können. Nicht zu vergessen sind regelmäßige Reviews mit Teammitgliedern und weiterführende Schulungen. (hk)