STRATEGIE21. Dezember 2023

Automatische Software­entwicklung: Geschäftsmodelle schnell in der IT umsetzen

Reinhard Irsigler will Geschäftsmodelle schnell in der IT umsetzen - per automatischer Softwareentwicklung
Reinhard Irsigler, Mitgründer und Vorsitzender des Aufsichtsrates IntervistaIntervista

Softwareentwicklung schlägt einen neuen Weg ein: die Automatisierung der Codegenerierung – dem Testing und Bereitstellung, basierend auf dem FMC (Fundamental Modelling Concept). Reinhard Irsigler (Vorsitzender des Aufsichtsrates) erklärt, wie diese Methode eine effiziente und fehlerarme Entwicklung maßgeschneiderter Softwarelösungen ermöglicht. Das Ziel: Geschäftsmodelle automatisiert umsetzen.

von Reinhard Irsigler, Vorsitzender des Aufsichtsrates Intervista

Die Entwicklung von Informationstechnik hat sich stark verändert und beschleunigt: Viele IT-Funktionalitäten werden heute iterativ standardisiert. Das heißt, dass Funktionsblöcke für dedizierte Aufgaben aus Programmsystemen isoliert und mit abstrakten Schnittstellen zur allgemeinen Verwendung zu Verfügung gestellt werden. Komplizierte Vorgänge werden mit Transaktionsmonitoren und einfachen Schnittstellen gekapselt. Damit und mit vielen weiteren Standardmodulen wurde die Programmierung neuer Systeme insgesamt einfacher, schneller und fehlerfreier und die Lösungen flexibel auf verschiedene Branchen anwendbar.

Nun geht es einen Schritt weiter: Es werden Methoden und Werkzeuge eingesetzt, um den Entwicklungsprozess selbst zu automatisieren, etwa automatisierte Codegenerierung, automatisierte Tests und automatisierte Bereitstellung von Software. Das Ziel ist, aus dem eigenen Modell-Konzept FMC Software komplett zu erstellen. So gibt man den Rahmen vor, in den applikationsspezifische Software eingebettet werden kann.

Das Konzept FMC

In der Methode FMC (Hasso Plattner Institut und SAP) werden anders als in der agilen Vorgehensweise etwa mit Scrum oder dem Wasserfallmodell der Aufbau und Ablauf des Systems durchgehend grafisch beschrieben: Der Aufbau dient als eine Art Stadtplan der Software und der Ablauf entspricht der (Prozess-)Route im System. Letztere kann direkt in der Prozess-Engine abgebildet werden und wird in der weiteren geplanten Entwicklung aus der (elektronischen) Grafik in Software umgesetzt.

Der Ansatz erlaubt es, die Arbeitsaufwände weitgehend in Planung und Design des Systems vorzuziehen und in der Implementierung einzusparen. Dieses methodischeres Vorgehen in der ersten Projektphase vermeidet teure und schwerer zu behebende Fehler in späteren Projektphasen.”

Die Neuartigkeit der Implementierung bedeutet, dass nun unterschiedliche Branchen-Anwendungen nicht mehr von null „from scratch“ entwickelt werden müssen. Stattdessen werden sie aus einem Archetypus abgeleitet, einer Kernsoftware. Diese enthält eine Prozess-Engine, also eine Softwarekomponente, die Business-Prozesse ausführt, und einen Datenmodell-Editor mit einem Daten-Visualizer.

Automatisierte Systeme für die Umsetzung von Geschäftsmodellen

Mit den drei Software-Komponenten Enterprise-Processor, Application-Modell-Editor und -Visualizer können Systeme für branchenverschiedene und voll automatisierte Anwendungsfälle erstellt werden. Unternehmen haben das System bereits unter anderem für prozessautomatisierte Kreditabschlüsse (B2B-Kredit in Echtzeit), SmartMeter-Gateway oder InsuranceFactory im Einsatz. Es erlaubt es, Unternehmenskredite zu beantragen und zu realisieren, Smart-Meter abzurechnen und das komplette Versicherungsbestandsgeschäft zu führen – inklusive automatischer Schadensbearbeitung. Damit ist es in der Lage, Anforderung und Aufgaben von Finanzwesen, Energie- und Versicherungs-Wirtschaft umzusetzen, die sich naturgemäß stark unterscheiden – alle Anwendungen verwalten unterschiedliche Produkte und bilden unterschiedliche Geschäftsprozesse ab.

Der Software-Ansatz im Detail

Daten der Softwareanwendung, ihr Business Know-How, müssen in strukturierter Form abgelegt und zugreifbar sein. Üblicherweise erfolgt das durch Datenbanken. Die Erfahrung aus zahlreichen Projekten zeigte, dass der Aufwand der Darstellung der Datenstrukturen und der Zugriffsmethoden, um diese am Computer darzustellen, enorm ist.

Autor: Reinhard Irsigler, Intervista
Reinhard Irsigler ist Mitgründer und Vorsitzender des Aufsichtsrates bei Intervista (Website). An der TU Berlin und der UC Santa Barbara studierte er Informatik und fungierte zudem als wissenschaftlicher Angestellter am Hahn-Meitner-Institut Berlin. Sein erworbenes Wissen ließ er in seine Tätigkeit als Geschäftsführer im CAD-Unternehmen System Consult ebenso einfließen wie in die Gründung und Leitung der TeraCom GmbH, einer Firma für Order-Management und CRM-Software.
Das System erlaubt es nun, abstrakt jedes Modell abzubilden und im Browser bzw. im Internet zu visualisieren: Datenstrukturen werden mit dem Modell-Editor erstellt und direkt im Browser dargestellt. Die Prozess-Engine enthält die Zugriffs- und Änderungs-Algorithmen für diese speziellen Datenstrukturen.

Die Visualisierung in der Business-Anwendung kann so im „no-code“-Verfahren erfolgen – der Anwendungsprogrammierer muss dafür nichts mehr programmieren; die Darstellungsmethode ist immanent im Visualizer enthalten.

Das jeweilige Business Know-How wird durch unterschiedliche Prozesse und die entsprechenden Parameterdaten dargestellt. Die Business-Prozesse werden auf den Schnittstellen des Enterprise-Processors programmiert und die Business-Daten fließen maßgeblich durch den Modell-Editor ein. Das können zum Beispiel technische Produkte oder Versicherungstarife sein, die meist mit baumstrukturierten Daten dargestellt werden. Alle Möglichkeiten der Versionierung und Variantenbildung sind enthalten.

In der Entwicklung zahlreicher Projekte hat sich herausgestellt, dass eine Baumstruktur, die Versionen und Varianten, das heißt Erweiterungen des Zeit- und des Funktionsraums, verwalten kann, für die Darstellung der Objekte in fast allen Branchen geeignet ist. Die Modellstruktur hat sich bewährt, selbst bei so unterschiedliche Anforderungen wie in Autoindustrie oder Versicherungen.

Der Konfigurations-Editor des branchenspezifischen Produktmodells, seine Darstellung und Bearbeitung im Internet sowie das Rechtesystem, Reporte, Meldungswesen oder Finanzbuchhaltung sind als Software für alle Anwendungsbeispiele identisch, sie unterscheiden sich nur durch branchenspezifische Daten und anwendungsspezifische Softwarekomponenten.

Diese Prozess-Engine erspart es dem Anwendungsprogrammierer, Transaktionstechniken, Synchronisation und Eventverarbeitung programmieren zu müssen: Sie alle sind in den Methoden der Basismaschine enthalten. Damit wird der Ansatz verfolgt, Schnittstellen funktionell umfangreicher zu gestalten.”

Die Vorteile

Alle heute gewünschten Anforderungen wie sicheres Transaktionsmanagement, Skalierbarkeit, Sicherheit oder Benutzerverwaltung sind bereits im System enthalten. Mit einem solchen Programmieransatz muss sich der Systementwickler nur noch um anwendungsspezifische Belange kümmern. Mit dem Archetypen hat er von Anfang an ein lauffähiges System, das im Rahmen der Weiterentwicklung mit Methoden wie „nighty-built“ und „nighly-tests“ erhalten bleibt: Das am Tage von den Anwendern weiterentwickelte System wird nachts automatisch zusammengeführt und mittels vorgefertigter Testdaten verifiziert. Ein kritischer Ur-Start einer komplett neuen Lösung entfällt damit. Auch das Erstellen von Oberflächen ist nicht mehr notwendig, da diese aus den Modellen des Editors automatisch generiert werden.

Projekteinführung

Rollout- und Implementierung einer solchen Software beginnen mit einer Systemanalyse, die mit FMC graphisch unterstützt wird: Dabei werden die Branchenanforderungen ermittelt, die Datenmodelle konzipiert und Geschäftsprozesse definiert. Dem schließt sich die Definition von Testfällen an. Diese erste Projektphase benötigt branchenabhängig in der Regel etwa drei Monate.

Im Anschluss beginnt die Systemerstellung: Der Archetyp des Enterprise-Prozessors mit Datenbank wird erstellt, der zu diesem Zeitpunkt noch keine Daten, sondern Standardprozesse enthält. Er wird in die Versionsverwaltung integriert und die Benutzer­verwaltung aufgesetzt. Branchenspezifische Produktmodelle werden im Modell-Editor konfiguriert und die Prozesse auf Basis der Methoden des Enterprise-Processors programmiert. Danach werden die automatisierten Builts aufgebaut. Die Qualitätssicherung-Automatisierung wird eingerichtet und das neue System mit Testdatensätzen getestet. Danach erfolgt das Deployment beim Kunden.

Die reine Anwendersoftware, also die Datenstrukturen und programmierten Prozesse, die für jede Branche erstellt werden, gehen meist in das Eigentum des Auftraggebers über. Für die Programmierung der Anwendersoftware ist ein Zeitraum von zwei Monaten realistisch.

Fazit

Der FMC-Ansatz erlaubt es, die Projektstruktur von Softwareentwicklung zu verändern und Arbeitsaufwände in die Plan- und Designphase vorzuziehen, so dass Fehler früh erkannt und behoben werden können. Gleichzeitig müssen Geschäftsmodell-Anwendungen nicht mehr von null entwickelt werden und es steht von Anfang an ein lauffähiges System zur Verfügung – der oft kritische Ur-Start entfällt.Reinhard Irsigler, Vorsitzender des Aufsichtsrates Intervista

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert