Modellgetriebene Methoden steigern die Effizienz und Qualität der Softwareentwicklung

Effiziente Softwareentwicklung im Maschinen- und Anlagenbau

Ausgangssituation und Projektziel

Modellgetriebene Methoden erlauben eine effizientere Softwareentwicklung, wenn ein Großteil des Quellcodes aus abstrakteren Modellen automatisch generiert wird. Die Methoden eignen sich besonders bei ähnlichen Produkten mit jeweils individuellen Anteilen, z.B. im Maschinen- und Anlagenbau: Wissen über den typischen Aufbau der Produkte und zuvor erstellte Software werden geschickt genutzt, um den schematisch immer gleichen Software-Anteil automatisch zu erzeugen. Der individuelle Teil wird manuell ergänzt.

Lösung und Kundennutzen

Die Firma G. Kraft Maschinenbau verfolgt in der Entwicklung von neuen Anlagen bereits erfolgreich den modellgetriebenen Ansatz. So kann die Software für eine neue Anlage größtenteils konfiguriert und anschließend automatisch generiert werden. Auf diese Art und Weise wurde der manuelle Entwicklungsaufwand um 80% reduziert. Neben der gesteigerten Effizienz bei der Erstellung des Anlagencodes wird auch die Softwarequalität erhöht. Denn die systematische Wiederverwendung von Software-Bausteinen für immer wieder benötigte Funktionalitäten führt zu ausgereiften Standardbausteinen, in denen Fehler schnell gefunden und behoben werden. Die Nutzung dieser qualitätsgesicherten Bausteine ist nicht nur effizient, sondern steigert wiederum direkt die Qualität der Anlagensoftware.

Aktuell arbeitet das Fraunhofer IEM in einem gemeinsamen Projekt daran, den Anteil des automatisch generierten Codes weiter zu erhöhen. Dazu wurde für G. Kraft eine domänenspezifische Sprache entwickelt, welche es erlaubt, auch Abläufe (Schrittketten) mittels eines grafischen Editors zu modellieren und anschließend automatisch mit einem Codegenerator den Steuerungscode zu generieren. Zukünftig ist G. Kraft daran interessiert, auch Steuerungstechnik verschiedener weiterer Hersteller zu unterstützen. Dies bedeutet, dass weitere Codegeneratoren einmalig entwickelt werden müssen. Die abstrakten Modelle der Anlagen und die domänenspezifische Sprache können dabei weiter genutzt werden – ein zusätzlicher Vorteil der modellgetriebenen Entwicklung.