Was kostet der Stand der Technik?

Wie bereits ausgeführt muss kommerzielle Software dem Stand der Technik entsprechen. Ansonsten drohen Gewährleisungs- und Schadenersatzkosten, die den Hersteller der Software bzw. den mit der Software beauftragten Dienstleister in den Ruin treiben könnten. Aber auch wenn der Stand der Technik aus vertraglicher Sicht nicht eingehalten werden muss, beispielsweise bei Software die nur für den internen Gebrauch bestimmt ist oder nur für freundliche Kunden (z.B. Konzernmutter oder -tochter), so sollte man überlegen, was der Stand der Technik kostet bzw. ob es sich nicht vielleicht auch da auszahlt, Software am Stand der Technik zu entwickeln bzw. zu halten. Die Frage ist also: "Was kostet der Stand der Technik" bzw. "Kostet der Stand der Technik mehr als er bringt?" bzw. "Ist es wirtschaftlich Software am Stand der Technik zu entwickeln?". 

Eines der 4 Kriterien des Standes der Technik ist die Zielgerichtetheit - der Stand der Technik ist per definitionem wirksam (effektiv) und wirtschaftlich (effizient). Es gilt also:

Software am Stand der Technik zu entwickeln bzw. sie am Stand der Technik zu halten ist definitionsgemäß wirtschaftlich, kostet also weniger als es bringt.

Ist eine Technik bzw. Technologie für eine bestimmte Software zielgerichtet, also effizient und effektiv, so ist es immer wirtschaftlicher sie einzusetzen, als sie nicht oder eine weniger effiziente und effektive zu verwenden. Dabei wird allerdings nicht berücksichtigt, für wen die Kosten anfallen bzw. wer den Nutzen lukriert. Übersteigt der Nutzen für den Auftraggeber die Kosten des Softwareproduzenten, so gilt die Maßnahme als wirtschaftlich und somit potentiell Stand der Technik. Softwaretest hat beispielsweise auf ersten Blick für den Ersteller der Software weit weniger Nutzen als Kosten, ist aber dennoch beinahe immer insgesamt wirtschaftlich und Stand der Technik.

Die eingehende Fragen könnte daher umformuliert werden: Was kostet dem Umsetzer der Software der Stand der Technik? Wieviel könnte man sich in der Softwareentwicklung ersparen, wenn man den Stand der Technik nicht berücksichtigt und z.B. die Software gar nicht testet oder bewusst technische Schulden aufnimmt?

Die Antwort darauf ist für viele Nicht-Informatiker genauso überraschend, wie im Vergleich zu anderen Branchen einzigartig: In der Softwareentwicklung gilt - und das ist durch viele Untersuchungen belegt1 - folgendes:

Qualitativ hochwertige Software zu entwickeln ist günstiger als qualitativ minderwertige.

Diese Erkenntnis bezieht sich auf die Entwicklung - d.h. die Aufwände für Qualität amortisieren sich bereits in der Entwicklung, nicht erst bei der Wartung der Software (die bei schlechter Qualität extrem teuer wird). Mit Qualität ist dabei auch nicht nur fachliche Qualität, sondern genauso technische Qualität (oft als Technische Schulden zusammengefasst) gemeint. Technische Qualität wiederum hat eine breite Überschneidung mit dem Stand der Technik: Ist die technische Qualität mangelhaft, so ist auch der Stand der Technik nicht erreicht.

Fazit: Software am Stand der Technik zu entwickeln bzw. sie am Stand der Technik zu halten ist wirtschaftlicher und vermutlich auch für den Umsetzer günstiger als wenn der Stand der Technik vernachlässigt wird.

ABER (und das wird oft vergessen) damit das auch tatsächlich wirtschaftlicher und günstiger ist, darf man die Qualität nicht erst am Ende der Softwareentwicklung "hineintesten" bzw. "hineinrefaktorisieren". Qualität ist nur dann gratis, wenn man extrem viel Zeit und Know-How am Beginn und während der Entwicklung in die Qualität der Software steckt. Beides ist leider oft nur unzureichend vorhanden.

___

1. spätestens seit den 80er Jahren durch das Buch "Quality is Free" von Philip B. Crosby bekannt. Siehe auch z.B. Capers Jones: "Software Assessments, Benchmarks, and Best Practices"

Kommentare

CC BY-NC-SA 3.0 AT Sebastian Dietrich, e-movimento