Welche Faktoren über eine gelungene Realisierung von Softwareprojekten
entscheiden, weiß Sebastian Dörr-Willken, Geschäftsführer der Semantic
Applications GmbH und Co. KG
Mehr als nur ein paar Codezeilen: Faktoren für eine gelungene Realisierung von Softwareprojekten
In der heutigen Zeit reiht sich scheinbar ein Softwareprojekt an das nächste. Während die Entwickler noch am Feinschliff der letzten Fassung tüfteln, steht der Nachfolger oft schon in den Startlöchern. Nicht jeder Versuch ist dabei jedoch selbstverständlich von Erfolg gekrönt und viele Softwareprojekte schaffen es nicht über die Entwicklung hinaus – oder scheitern noch in den ersten Testphasen. Schlimme Fälle, die beispielsweise doppelt so teuer zu Buch schlagen und in einem unermesslichen Zeitaufwand enden, kriegen hierbei sogar den berüchtigten Namen ‚schwarzer Schwan‘. Damit das eigene IT-Projekt nicht im Chaos versinkt, hilft es schon, sich auf ein paar wichtige Faktoren zu konzentrieren und diese in der alltäglichen Arbeit an der Software zu berücksichtigen. Dann steht einer erfolgreichen Realisierung von internen oder externen Softwareaufträgen innerhalb des Zeit- und Budgetrahmens nichts mehr im Weg.
Vorbereitet auf Änderungen
Alle, für die Entwicklung einer neuen Software erforderlichen Arbeiten stehen im Projektumfang – in Fachkreisen auch Scope genannt – den alle Parteien bei Absprachen im Vorfeld festlegen. Dieses Dokument bildet die Grundlage für die einwandfreie Zusammenarbeit von Kunde und Entwickler bei der Aufgabenbewältigung. In vielen Fällen kommt es jedoch zu Tendenzen, die entsprechenden Anforderungen zu erweitern oder den Scope während des Projekts auszubauen. Durch diesen natürlichen Vorgang der Scope Changes, welcher meist vom Kunden oder manchmal auch durch das Entwicklerteam Anstoß findet, soll die Software beispielsweise plötzlich acht statt vier Funktionen besitzen oder die Zahl der vereinbarten Leistung steigt überraschend. In manchen Situationen kann dies jedoch zu Blockaden, Verzögerungen oder starken Budgetüberschreitungen führen, die das Vorhaben gefährden. Um dem Ernstfall zuvorzukommen, braucht es hier das gezielte und koordinierte Eingreifen des Projektmanagers, der entsprechende Kompromisse aushandelt und so den Arbeitsumfang an die neuen Anforderungen anpasst.
Faktor Mensch nicht vergessen
Viele Softwareunternehmen setzen bei ihrer Arbeit auf agile Strukturen mit viel Flexibilität. Je nach Größe des Unternehmens nutzen Projektmanager hier entweder die Scrum- oder die SAFe-Methode. Im Zuge dessen erarbeiten Teams in einer vorher festgelegten Größe in kleinen Sprints von circa ein bis vier Wochen schnelle Projektfortschritte und Teillösungen, bis die Software fertiggestellt ist. Aufgrund der Wichtigkeit dieser Zusammenarbeit brauchen Mitarbeiterinnen und Mitarbeiter daher eine hohe Anpassungsfähigkeit und eine noch bessere Kommunikation. Für ein gelungenes Softwareprojekt muss somit neben der Technik auch immer die menschliche Chemie im Team stimmen. Selbst kleine Streitigkeiten oder Diskussionen zwischen Mitarbeitenden, Entwicklern oder Projektleitern können schnell zu Spannungen und Hindernissen für das ganze Vorhaben führen. Gelungene Softwareprojekte beruhen daher in der Regel immer auf Arbeitsgemeinschaften mit einem offenen und fehlertoleranten Klima.
Richtiges Maß finden
Im Zuge einer IT-Entwicklung kommt es oft zu einem Datensalat bei der präzisen Dokumentation von Fortschritten und Änderungen. Damit unter anderem alle Teammitglieder einwandfrei nachvollziehen können, warum die Software an bestimmten Stellen Anpassungen erhalten hat, braucht es ein möglichst genaues und übersichtliches System. Nichts gefährdet ein Vorhaben mehr als unlesbare Notizzettel oder schlecht verwaltete Aufzeichnungen. Für die Gewährleistung einer übersichtlichen und gut geführten Dokumentation, darf die Masse an Informationen aber auch nicht überhandnehmen. Neuigkeiten zum Arbeitsstand sollten für alle Mitglieder kurz, aber eindeutig und am besten digital zugänglich sein, damit es im Realisierungsprozess nicht zu Unstimmigkeiten kommt. Im Sinne des Pragmatismus beim agilen Arbeiten bildet die Vollendung der Software jedoch immer das höchste Ziel und ein entsprechend sauberer Report nur einen einzelnen Grundstein für Erfolg oder Misserfolg.
Planung hält das Projekt zusammen
Vor dem Beginn der eigentlichen Entwicklung einer neuen Software sollten sich Unternehmen immer eine Reihe wichtiger Fragen stellen, um so unter anderem die Komplexität der Aktion gut einzuschätzen. Passt das Projekt beispielsweise zur Unternehmensgröße oder verfügt der Betrieb überhaupt über genügend Ressourcen für die erfolgreiche Umsetzung? Muss vielleicht noch am preislichen Rahmen des Konzepts geschraubt werden und welchen Umfang soll das Projekt überhaupt haben? Kontrollfragen wie diese erlauben besonders Führungskräften schon im Vorfeld zu checken, ob sich das geplante Vorhaben möglicherweise negativ auf das Unternehmen auswirken könnte. Solche ungeklärten Grundpfeiler führen ansonsten schnell dazu, dass sich die erste Euphorie in Frust umwandelt. Kurze Reflexionen oder Feedbackrunden während der Entwicklung erlauben es Teamleitungen, im Ernstfall umgehend die Notbremse zu ziehen, bevor das Unternehmen beispielsweise finanziellen Schaden erleidet.