Eberhard Wolff innoQ

Software kann nicht nach einem längerfristigen Plan entwickelt werden, wenn sie Innovationen unterstützen soll.

Software ist mittlerweile in praktisch allen Wirtschaftsbereichen zentraler Teil der Wertschöpfung. Also sollte Software auch Innovationen ermöglichen. Die Frage ist, wie Software dazu beschaffen sein muss.

Um die Unterstützung von Innovationen durch Softwarearchitektur zu betrachten, muss zunächst der Begriff Innovation geklärt werden. Innovation bedeutet, dass neue Produkte und Dienste auf den Markt kommen und damit letztendlich neue Umsatzquellen entstehen. Es ist also nicht ausreichend, einfach nur eine neue Technologie zu entwerfen, sondern die Technologie muss tatsächlich Geld in die Kasse bringen.

Ebenso muss der Begriff Softwarearchitektur geklärt werden. Oft wird unter der Softwarearchitektur die Aufteilung eines Systems in verschiedene Komponenten verstanden. Das ist sicher richtig. Schon der Begriff „Architektur“ weist in eine solche Richtung. Es geht um die grobgranulare Gestaltung eines Systems, während Design und Implementierung die feingranulare Arbeit an einem System umfasst. Aber es gibt noch einen weiteren wichtigen Bestandteil der Softwarearchitekturarbeit: Die Softwarearchitektur muss sicherstellen, dass die notwendigen Qualitätsmerkmale durch geeignete technologische Maßnahmen erreicht werden. Qualitätsmerkmale werden oft nicht funktionale Anforderungen genannt. Beispielsweise kann Skalierbarkeit oder Sicherheit ein Ziel einer Architektur sein. Dann muss die Architektur Technologien wählen, die solche Ziele unterstützen.

Was benötigt Innovation?

Um Innovation mithilfe von Software zu unterstützen, muss die Software zwei Qualitätsmerkmale umsetzten: Der Erfolg der Software muss messbar sein, und die Software selbst muss änderbar sein. Wenn eine Änderung in der Software zu einem höheren Umsatz oder zu mehr Registrierungen führen soll, dann muss diese Metrik messbar sein. Das ist wichtig, denn oft beeinflussen Änderungen Metriken gar nicht oder verschlechtern sie sogar. So behauptet der ehemalige Chef des Data Minings bei Amazon Ronny Kohavi, dass 60 bis 90 Prozent aller Ideen, die eigentlich eine Metrik verbessern sollen, dieses Ziel nicht erreichen. Ohne ein Feedback durch Metriken lässt sich der Erfolg von Änderungen nicht ermitteln. Und um Maßnahmen zu ergreifen, die eine Metrik ändern sollen, muss die Software änderbar sein. Die Änderungen müssen nicht nur in der Software vorgenommen werden, sondern tatsächlich in Produktion ausgerollt werden und Nutzern zur Verfügung stehen. Nur dann können die Änderungen tatsächlich genutzt werden, Geld einbringen und Metriken erhoben werden.

Diese Aspekte stehen für einen ganz anderen Ansatz bei der Softwareentwicklung. Software kann nicht nach einem längerfristigen Plan entwickelt werden, wenn sie Innovationen unterstützen soll. Wenn beispielsweise eine Website in einem komplexen, langfristigen Projekt komplett neu erstellt wird, dann besteht diese Entwicklung aus vielen Änderungen. Diese Änderungen sollen Metriken wie Umsatz oder Registrierungen verbessern. Da aber alle diese Änderungen gemeinsam umgesetzt werden, kann man kaum noch die Auswirkungen jeder einzelnen Änderung bewerten. Der größte Teil der Änderungen verbessert aber eben nicht den Erfolg der Software. Daher ist ein umfangreiches Projekt kaum sinnvoll. An Stelle solcher Projekte müssen einzelne Änderungen treten, die sich einzeln bewerten lassen. Nur so können die nicht erfolgreichen Änderungen isoliert und gegebenenfalls zurückgerollt werden.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Business Technology 3.16 - "Innovation starten"

Alle Infos zum Heft
261335Innovationskatalysator: Softwarearchitektur
X
- Gib Deinen Standort ein -
- or -