Von der Programmierung zur Prozessautomatisierung 4.0
Modellgetriebene Plattformen als Multiplikator der Digitalisierung
Ulrich Storck, CTO Scheer GmbH
Kurz und bündig:
In den kommenden Jahren wird die Automatisierung der Prozesse im Vergleich zu heute deutlich voranschreiten. Dieser Artikel zeigt, wie sich die Veränderungen bei der Entwicklung von Softwareapplikation der letzten Jahrzehnte auf die Prozessautomatisierung ausgewirkt haben und wie sich diese Erfahrungen auf die Plattformen zur Prozessautomatisierung 4.0 übertragen lassen, um neue Potenziale der Digitalisierung zu erschließen.
Die Entwicklung von Softwareapplikationen hat sich in den letzten Jahrzehnten zunehmend von der klassischen Programmierung hin zu modellgetriebenen Ansätzen gewandelt. Die verschiedenen Ansätze der modellgetriebenen Softwareentwicklung haben zum Ziel, dass immer weniger Teile der Anwendungen programmiert werden müssen und immer größere Teile davon durch Personen ohne Programmierkenntnisse modelliert werden können.
In der klassischen Softwareentwicklung wurden Anwendungen durch Programmierung in einer Entwicklungsumgebung umgesetzt. Eine der Schwächen dieser Vorgehensweise war die Kommunikation mit den Fachanwendern, was durch entsprechende Analyse- und Konzeptionstechniken auszugleichen versucht wurde. Bei den ersten Ansätzen der modellgetriebenen Umsetzung von Anwendungen wurden Modelle erstellt, aus denen Programmcodes generiert wurde (Code Generation). Hierdurch konnten die Fachabteilungen erstmals in die Umsetzung einbezogen werden. Durch diese direkte Kommunikation ließen sich die Durchlaufzeit und die Innovationsgeschwindigkeit um ein Vielfaches beschleunigen. Der Ansatz der modellgetriebenen Code-Generierung stellt die Unternehmen jedoch auch vor Herausforderungen:
- Die nachträglichen Veränderungen oder Erweiterungen im Code, müssen in den Modellen hinzugefügt werden oder durch ein Roundtrip-Verfahren geprüft werden. Dieses Vorgehen ist aufwändig und fehleranfällig.
- Wird aus den Modellen ein Code für verschiedene Plattformen erzeugt und/oder werden verschiedene Programmiersprachen verwendet, kann es zu Unterschieden bei der Ausführung kommen, die zahlreiche Fehlerquellen eröffnen.
Aus den Erfahrungen der ersten Ansätze zur modellgetriebenen Entwicklung sind in der Folge Systeme entstanden, die keine Code-Generierung mehr benötigen. Solche Systeme werden als Low-Code-Plattformen bezeichnet. Die oben genannten Probleme werden dadurch vermieden:
- Nach