Softwareentwicklung

Der schönste Job der Welt

24.03.2009
Von 
Alexandra Mesmer war bis Juli 2021 Redakteurin der Computerwoche, danach wechselte sie zu dem IT-Dienstleister MaibornWolff, wo sie derzeit als Head of Communications arbeitet.

Auch das Testen der Software gestaltet sich oft aufwändiger, als Chef und vor allem Kunden es annehmen. Dazu Roeder: "In einem Großprojekt bauen sehr viele Leute ständig neue, voneinander unabhängige, aber miteinander funktionierende Module. Man muss darum jedes Modul testen, was etwa 30 Prozent der Zeit und damit genauso viel Zeit beansprucht wie die eigentliche Entwicklung." Die restlichen 40 Prozent der Projektdauer entfallen auf Konzept, Kommunikation, Abstimmung, Rollout-Planung und Installation. Wichtig sei auch die Versionskontrolle, in der überprüft wird, ob alle Abhängigkeiten stimmen. Im so genannten Bugtracking-Mechanismus tragen Entwickler und Softwaretester diejenigen Fehler rein, die sie entdeckt haben. Selbst den Kunden könne man hier einbeziehen, erklärt Roeder: "Das bedeutet aber, dass Entwicklerteams ihre Arbeit offenlegen und dem Kunden sehr nahe kommen."

Teamrollen in der Entwicklung

Hat der Kunde den Kaufvertrag unterschrieben, erstellen die Entwickler ein Pflichtenheft, das zur verpflichtenden Messlatte ihrer späteren Arbeit wird. Skytec favorisiert ein visuelles Pflichtenheft, so Geyer: "Wer die Funktionen nur beschreibt, lässt zu viel Raum für Interpretationen. Wir bauen für den Kunden eine grafische Oberfläche, über die er auf Screenshots klicken kann, die die einzelnen Funktionen darstellen." Zudem legt man sich im Pflichtenheft auf die Entwicklungsmethode, den Test- und Abnahmezyklus, einzelne Meilensteine, den Projektleiter sowie die Kommunikationswege zum Kunden fest. Zu Letzteren gehört auch ein gemeinsamer Workspace, in den Entwickler und Kunde Informationen stellen können.

Kommunikation ist alles: Die Skytec-Entwickler Michael Reinermann (links) und Martin Roeder müssen untereinander, mit Verkauf und Kunden reden.
Kommunikation ist alles: Die Skytec-Entwickler Michael Reinermann (links) und Martin Roeder müssen untereinander, mit Verkauf und Kunden reden.

Teamarbeit heißt auch die Devise in der eigentlichen Programmierphase, in der weit mehr Aufgaben zu erledigen sind als das reine Schreiben des Codes. Programmierer, Code-Reviewer, die aus der Sicht des ahnungslosen Anwenders die Lesbarkeit der Codes überprüfen, Softwaretester und Qualitätssicherer erfüllen verschiedene Rollen, müssen aber Hand in Hand arbeiten. "Unter Entwicklern sind immer noch viele Individualisten anzutreffen, die ihren Code nicht dokumentieren oder sich mit dem Team nicht abstimmen mögen", räumt Skytec-Chef Geyer ein. Das führe vor allem in großen Projekten manchmal zu Schwierigkeiten. Zu den Aufgaben eines Entwicklers gehört es laut Roeder, seinen Code nach den zum Projektstart beschlossenen Regeln zu dokumentieren und zu den festgelegten Zeiten die neu geschriebenen Codes einzuchecken. Insbesondere bei der agilen Softwareentwicklung, in der die Module nacheinander entwickelt werden, ist es nötig, sich täglich abzustimmen und jede Woche ein Teilergebnis zu präsentieren.