Code Assist und Navigation für IoT-Konfigurationen mit Language Server Protocol

Projektbild

Ausgangslage

Die Colomba Link GmbH entwickelt mit Monidas eine IoT-Plattform zur Vernetzung, Verwaltung und Auswertung industrieller Anlagedaten. Der aktuelle Konfigurationsprozess erfordert das manuelle Erstellen und Verknüpfen zahlreicher Komponenten über mehrere Eingabemasken, was bei wachsender Komplexität zu hohem Aufwand und eingeschränkter Flexibilität führt. Bestehende Editoren bieten keine erweiterte Unterstützung wie Validierung oder Autovervollständigung.

Zielsetzung

Ziel dieser Arbeit ist die Entwicklung einer generischen, erweiterbaren Lösung zur schemabasierten Konfiguration und Navigation von IoT-Daten in Visual Studio Code. Neue Schemadefinitionen sollen ohne Quellcodeänderung unterstützt werden. Der Editor soll Validierung, Autovervollständigung und kontextbasierte Navigation bereitstellen.

Architekturübersicht

Architekturübersicht

Die Architektur folgt einem modularen Aufbau und verdeutlicht die Beziehungen zwischen den zentralen Komponenten.

E-Commerce

Gezeigt wird die Navigation im Explorer anhand eines E-Commerce-Datenbankschemas.

Monidas

Die gleiche Funktionalität wird am Beispiel eines Monidas-Datenbankschemas demonstriert.

Ergebnisse

Die entwickelte Lösung zeigt, dass sich Datenbankschemas generisch in Visual Studio Code abbilden und bearbeiten lassen. Änderungen am zugrunde liegenden Datenbankschema werden ohne Quellcodeanpassungen unmittelbar in Explorer- und Editoransicht übernommen. Durch die Integration eines Language Server Protocol (LSP) stehen Validierungs-, Autovervollständigungs- und Navigationsfunktionen zur Verfügung, die die Konsistenz der Daten unterstützen.

Schlüsselbegriffe

  • VS Code – Erweiterung der Entwicklungsumgebung
  • Virtuelles Filesystem – Hierarchische Abbildung von Datenbankinstanzen
  • Language Server Protocol – Validierung, Autovervollständigung, Navigation
  • Datenbankabstraktion – Schemabasierte Konfiguration und Verwaltung

Kunde

Logos

Colomba Link GmbH
Unternehmenswebsite

Team

Student
Gianni Parrillo