Massgeschneiderte Low-Code-Entwicklungsumgebungen mittels Open-Source-Software
05.09.2024 , Raum C

In fachspezifischer Software integrierte Low-Code-Entwicklungsumgebungen befähigen Domänenexperten mit wenig Programmierkenntnissen diese Software an dafür vorgesehenen Stellen selbständig an firmenspezifische Prozesse und Systeme anzupassen. In diesem praxisnahen Workshop lernen die Teilnehmer, wie sie unter Verwendung von Open-Source-Software Low-Code-Entwicklungsumgebungen spezifisch für eigene Applikationen entwickeln und dabei mittels den folgenden Low-Code-Programmiermethoden an das Zielpublikum anpassen: Domänenspezifische Sprachen, visuelle Programmierung, Programmierung mittels Demonstration, Programmierung mittels natürlicher Sprache.


In diesem Workshop lernen die Teilnehmer verschiedene Open-Source-Software und Techniken kennen, welche den Einbau massgeschneiderter Low-Code-Programmierumgebungen in bestehende fachspezifische Software ermöglichen. Solche integrierten Low-Code-Entwicklungsumgebungen befähigen Domänenexperten ohne umfassende Programmierkenntnisse fachspezifische Software an dafür vorgesehenen Stellen selbständig anzupassen. Beispiele für solche Anpassungen sind:
* Reports von Finanzsoftware an lokale Regulatorien (z.B. kantons- oder länderspezifische Steuern und Gebühren, zusätzlichen Daten, etc.).
* Workflows einer Versicherungssoftware an die effektiven Prozesse eines Versicherers (Freigaben, Zuständigkeiten, weitere Informationen, Zusammenspiel mit Umsystemen, etc.).
* Erweiterung von IoT-Software mit weiteren Visualisierungen basierend auf den gesammelten Gerätedaten.

Die Low-Code-Programmierung unterscheidet dabei vier verschiedene Programmiermethoden. Dieser Workshop führt die Teilnehmer in alle vier Methoden sowie den entsprechenden Open-Source-Frameworks ein, welche eine Umsetzung dieser Methoden ermöglichen:
* Domain Specific Languages mit Langium.
* Visual Programming mit Blockly (Basis von Scratch).
* Programming by Demonstration mit dem Command-Pattern in Kombination mit Vue.js.
* Programming by Natural Language voraussichtlich mit LocalAI/llama.cpp [*].

[*] Die Entwicklung künstlicher Intelligenz ist rasant. Ggf. setzen wir neuere Open-Source-Software ein.

Der Workshop ist in vier Teile entsprechend dieser vier Programmiermethoden gegliedert. Zu Beginn jedes Workshopteils gibt der Referent jeweils eine Einführung in die entsprechende Methode und Software mitsamt den dafür notwendigen Grundlagen. Anschliessend folgt eine Hands-On-Sequenz, in welcher die Teilnehmer diese Software selbst einsetzen, um eine Beispielsoftware (Issue-Management Applikation) um eine Low-Code-Programmierumgebung zu erweitern. Für die Hands-On-Sequenz stellt der Referent jeweils eine Anleitung sowie eine einfach zu installierende Umgebung bereit. Jeder Teil wird mit einer Diskussionsrunde abgeschlossen, in welcher z.B. ein möglicher Einsatz von Low-Code in eigener Software der Teilnehmer diskutiert werden kann.


Zielpublikum

Entwickler und Architekten, welche die Möglichkeiten zur Unterstützung der Low-Code-Programmierung durch ihre eigenen Applikationen kennenlernen möchten.

Kursziel

Die Teilnehmer des Kurses:
- kennen die Programmiermethoden der Low-Code-Entwicklung: Domänenspezifische Sprachen, visuelle Programmierung, Programmierung mittels Demonstration, Programmierung mittels natürlicher Sprache.
- wissen, welche Open-Source-Software zur Umsetzung der entsprechenden Programmiermethode geeignet ist und kennen deren grundlegende Anwendung.
- können eine einfache Low-Code-Programmierumgebung in ihren eigenen Applikationen umsetzen.

Voraussetzungen

Die Teilnehmer sollten in folgenden Bereichen Grundkenntnisse mitbringen:
- Webapplikationsentwicklung (Frontend)
- JavaScript und TypeScript

Infrastruktur

Für den Praxisteil benötigen die Teilnehmer ein eigenes Notebook. Geeignet sind aktuelle Windows-, MacOS- und Linux-Systeme. Für die Programmierung mittels natürlicher Sprache sollte das Notebook über eine performante CPU/GPU sowie 32GB RAM verfügen.

𝗭𝘂𝗿 𝗔𝗻𝗺𝗲𝗹𝗱𝘂𝗻𝗴: https://eventfrog.ch/de/p/kurse-seminare/computer-edv/massgeschneiderte-low-code-entwicklungsumgebungen-7201145077422335767.html

Martin Bättig arbeitet als Dozent an der Hochschule Luzern in der Ausbildung, Weiterbildung und Forschung. Er unterrichtet systemnahe Themen wie Compilerbau und Verteilte Systeme und betreut sowohl Bachelor- als auch Masterstudierende. In der Forschung beschäftigt er sich mit vor allem mit applikationsspezifischen Low-Code-Systemen. Einen besonderen Fokus legt er dabei auf die vereinfache Entwicklung von resilienten IoT- und generell verteilten und parallelen Systemen mittels Low-Code-Programmierung.