Mit SensIDL kann der Sensor-Entwickler die Schnittstellen spezifizieren und dann automatisiert den notwendigen Implementierungscode generieren. Hierdurch wird er von den immer wiederkehrenden und ähnlichen Aufgaben der Kommunikationsimplementierung entlastet; dadurch werden Effizienz und Qualität der Implementierung gesteigert. Die reine Generierung des Sensor-Codes ist jedoch nur einer der Vorteile bei der Nutzung von SensIDL für die Sensorentwicklung.
Da SensIDL auch die Generierung des Empfänger-Codes erlaubt, kann es bei der Entwicklung von Gesamtsystemen aus einer Hand auch dazu genutzt werden, den notwendigen Empfangs-Code zu generieren. Im Falle eines reinen Sensoranbieters kann SensIDL auch mit einem Mehrwert eingesetzt werden, um den Empfänger-Code für verschiedene Plattformen zu generieren. Hierbei kann SensIDL z.B. sogar Java-Code zur Verfügung stellen, ohne dass eigenes Java-Know-how in der Firma vorgehalten werden muss. Durch die verschiedenen in SensIDL integrierten Generatoren für unterschiedliche Plattformen kann der Sensoranbieter auch den Empfangscode für unterschiedliche Plattformen seinen Kunden zur Verfügung stellen. Falls der Sensoranbieter nicht direkt den generierten Empfangs-Code an seine Kunden weitergeben will, kann er auch die SensIDL-Beschreibung zur Verfügung stellen und der Kunde kann sich mit Hilfe des SensIDL-Werkzeuges die Implementierung für seine Plattform selbst erzeugen.
Die reine Code-Generierung ist nur einer der Vorteile des Einsatzes von modellgetriebenen Techniken in SensIDL. Ein weiter Vorteil ist der Fall bei Schnittstellenänderungen. Hier muss ohne SensIDL manuell die Implementierung auf Sensorseite angepasst werden, dann müssen die Änderungen auf Empfängerseite manuell nachgezogen und parallel dazu muss auch noch die Dokumentation gepflegt und aktualisiert werden. Beim Einsatz von SensIDL reicht es aus, die Änderungen innerhalb der SensIDL-Beschreibung der Schnittstelle durchzuführen. Im Anschluss daran können die Anpassungen der Sensor- und Empfänger- API wie auch das Erstellen einer neuen aktualisierten Dokumentation automatisch mit Hilfe der in SensIDL integrierten Generatoren erzeugt werden.
SensIDL als Basis für individuelle Erweiterungen
Als Open-Source-Projekt ist SensIDL nicht nur frei verfüg- und nutzbar, sondern kann zusätzlich auch noch als Basis für Erweiterungen und Anpassungen dienen, bis hin zur Realisierung eines unternehmensspezifischen Werkzeuges oder Produktes. Unternehmen können SensIDL um eigene Generatoren erweitern, um so z.B. eine optimierte Unterstützung für das eigene Kommunikationsprotokoll anbieten zu können. Das erweiterte SensIDL-Werkzeug kann dann den Kunden angeboten werden und erleichtert die Anwendung der firmenspezifischen Technik.
SensIDL kann auch um Generatoren für spezielle Übertragungsprotokolle erweitert werden. So ist als Erweiterung von SensIDL innerhalb des laufenden Forschungsprojektes NIKI 4.0 [1] auch die Unterstützung der Kommunikation über Lightweight M2M (LwM2M) geplant. Es sind aber auch Generatoren für andere Techniken wie z.B. ioLink oder andere möglich. Durch den modularen Aufbau der Generatorinfrastruktur wird dieses Szenario explizit durch SensIDL unterstützt.
Durch den Aufbau einer offenen Entwickler-Community besteht die Hoffnung, dass die Erweiterungen von SensIDL auch veröffentlicht werden und so alle vom gegenseitigen Erfahrungsaustausch in einer Community profitieren. Um jedoch auch kommerzielle Produkte auf Basis von SensIDL zu ermöglichen und Firmen nicht abzuschrecken, wurde auf eine virale Lizenzierung, z.B. mit der GNU General Public License (GPL), verzichtet und es wurde die Eclipse Public Licence (EPL) für SensIDL ausgewählt.