5. Overengineering

Der Markt entscheidet was gut ist

Der Begriff Overengineering (auch Over-Engineering) wird in Wikipedia folgendermaßen erklärt: Darunter wird die Erstellung eines Produktes oder einer Dienstleistung in höherer Qualität oder mit mehr Aufwand verstanden, als dies vom Kunden gewünscht ist. Oft übersteigen die Kosten für das fertige Produkt daher die Zahlungsbereitschaft des Kunden.
Damit ist auch die alltäglich, im Zusammenhang mit digitalen Projekten auftretende Problematik der Diskrepanz zwischen Business-Idee und Umsetzung schon (fast) perfekt erklärt. Doch noch 2 weitere wichtige Faktoren bestimmen die Realisierung und Weiterentwicklung der Digitalisierung – also die Programmierung – vehement mit: Kosten & Geschwindigkeit!

Grundsätzlich wünscht sich jedes Unternehmen, dass sein digitales Projekt in Top-Qualität, superschnell und zu geringen Kosten produziert/programmiert wird. Diese 3 Kriterien beeinflussen sich gegenseitig: Geringe Kosten und superschnell produziert führt in der Regel in der Programmierung automatisch zu geringerer Qualität. Umgekehrt lässt der Anspruch an eine hohe Qualität bereits den Schluss zu, dass dies mit mehr Zeit und damit mehr Kostenaufwand verbunden ist!

Unter 80% sind zu wenig

Software ist nie fehlerfrei. Aber man kann die auftretenden und potenziellen Fehler bis zu einem gewissen Grad in den Griff bekommen. Manche sind kritischer, viele weniger, aber ärgerlich sind sie alle. Sprich, habe ich eine Qualität und einen Funktionsumfang erreicht, welche zu 80% funktioniert und 15% noch nicht erledigt sind und nur in 5% der Fälle einen Fehler liefert, bin ich schon auf einem guten Weg. Ab jetzt fehlen zwar nur noch gesamt 20% bis zum Ziel, aber je weiter die Qualität und Quantität nach oben wandert, desto härter wird es, eine weitere Verbesserung, eine weitere Funktion, um nur einen Prozentpunkt zu erzielen. Vereinfacht gesprochen kann man sagen, dass die Ressourcen, die man für 80% benötigt, gleich hoch sind wie die, die man für die letzten 20% braucht. Die Erfahrung zeigt nämlich, dass man von den angestrebten 100% mindestens 20% nach Marktstart sowieso wieder verändert oder komplett streicht. Daher auch Eingangs der Satz: Der Markt entscheidet was gut ist. Man kann sich alles ausmalen, zurechtlegen, die tollste Strategie haben, aber am Ende entscheiden die Besucher einer Website, ob das Ziel erreicht wurde.

Über 100% sind zu viel

Wie eingangs unter dem Begriff „Overengineering“ aufgezeigt, passiert es bei Digitalisierungen häufig, dass gleichzeitig extrem viele Fälle und Ausnahmen einer Lösung mitbedacht und miteinbezogen werde. Es wird komplett über das Ziel hinausgeschossen. Alles wird ewig getestet, x-Mal Korrektur gelesen, geprüft und kontrolliert, um ja mit keinem Fehler online zu gehen. Wir reden hier aber nicht von medizinischen Projekten, Satelliten und Atomkraftwerken, sondern „nur“ von klassischen Web-Projekten. Dadurch sammeln sich sehr schnell sehr hohe Kosten an. Schlimm dann, wenn man am Ende darauf kommt, dass man in die falsche Richtung gegangen ist. Dann ist für eine Richtungsänderung kein Budget mehr vorhanden.

Warum liegt der Fokus auf Qualität?

Der Grund liegt darin, dass sowohl die Kosten als auch die Zeit messbare Größen sind, die zu jedem Zeitpunkt des Projekts abrufbar sind. Hier reicht ein kurzer Check, um zu wissen, wo man steht. Nicht so die Qualität. Oft geht man mit zu vielen Problemen aber zu vielen Funktionen online. Beispiele – von öffentlicher Hand bis zu großen privaten Unternehmen – liefert uns die Presse genug. Das Scheitern derer, die zu über 100% etwas perfekt gemacht haben, das jedoch keiner braucht, verläuft dagegen eher still, aber nicht weniger dramatisch. Hier wurde oft noch mehr Geld versenkt.

In der Programmierung ist es allerdings auch immer so, dass erst bei voller Funktionsfähigkeit das Ziel erreicht ist. Man kann zu 99% die Codezeilen erstellt haben. Allerdings ist alles unbrauchbar. Erst wenn alles ineinander greift und funktioniert, dann sind 100% erreicht. Natürlich können immer sich noch Fehler verstecken. Aber rein in der Erstellung von Quellcode ist alles unter 100% de facto 0 und ab 100% zu 100% erledigt.

Fazit

Neben der Definition der Kosten und der verfügbaren Zeit gilt es daher, vor dem Projektstart ein Konzept für die zu erreichende Qualität zu erstellen. Erst danach kann man alle drei Faktoren gleichberechtigt beurteilen. Fehlt dies, wird sicherlich die Qualität unweigerlich darunter leiden. Kurzer Hinweis: Bei Relaunches gelten hier ein wenig andere Gesetzmäßigkeiten, da man ja in der Regel genau weiß, welche Features funktionieren und daher benötigt werden. Allerdings gilt es davor genau zu analysieren, welche Dinge warum funktionieren und wie diese verbessert werden können.