Systeme werden immer größer und komplexer. Sie werden zunehmend von multidisziplinären Teams in immer kürzeren Zyklen entwickelt. Für Sie wird es deshalb immer wichtiger, sich darauf zu konzentrieren, wie Sie Ihr System entwickeln.
Wirksame Werkzeuge sind ein wesentlicher Bestandteil zur Bewältigung dieser Herausforderung.
Wiederkehrende Teile des Codes, sowie jene, die von Modellen abgeleitet werden können, können von Generatoren generiert werden, die Ihre Architektur- und Code-Richtlinien respektieren.
Modelle enthalten mehr Domänensemantik als Code und machen so aussagekräftige Analysen wesentlich einfacher. Fehler werden früher erkannt.
Dank benutzerfreundlicher Notationen in Form von Formeln, Tabellen und Diagrammen können auch Nichtprogrammierer einen direkten Beitrag leisten, ohne dass dafür zusätzliche Dokumente benötigt werden.
Halten Sie das Kernwissen Ihrer Domäne getrennt von seiner Implementierung im Quellcode, damit es leichter wiederverwendet werden kann.
Unsere Hauptaktivität ist die Entwicklung von Werkzeugen für Softwareentwickler, Systemingenieure und Geschäftsanalysten, zur Erfassung und Analyse von Informationen und zur automatischen Erstellung einer Reihe von abgeleiteten Artefakten. Modelle sind das Rückgrat dieser Werkzeuge. Sie stellen sicher, dass die erfassten Informationen gut strukturiert sind und einem formell definierten Schema entsprechen. Diese Modelle werden mit einer auf die Domäne zugeschnittenen Sprache ausgedrückt, um die Ausdruckskraft und Analysefähigkeit zu maximieren.
Language Engineering bezieht sich auf die Aktivität der Analyse einer Domäne, des Verstehens ihrer Kernabstraktionen und der anschließenden Implementierung in eine Sprache. Wir verwenden Sprach-Workbenches, um den Sprachentwicklungsprozess zu beschleunigen. Das Team steht an vorderster Front des Language Engineering und seiner Anwendung in der Industrie. Die Sprachen können grafische, tabellarische, symbolische oder textliche Notationen verwenden, je nachdem, was das Zielpublikum erwartet.
Wir verwenden hauptsächlich die Jetbrains MPS- und Xtext-Ökosysteme. In beiden haben wir weltweit führende Experten in unserem Team.
Wir tragen auch zur Entwicklung der Plattformen selbst bei, zum Beispiel über die MPS Erweiterungen.
Mit den neuen Tools von itemis konnten wir massiv Aufwände sparen und gleichzeitig eine hohe Akzeptanz bei unseren Nutzern erzielen. Die Tipparbeit von 1.000 Lines Of Code konnte in vielen Fällen auf nur eine Zeile reduziert werden.
Für Voluntis haben wir eine Reihe domänenspezifischer Sprachen (DSLs) für die Entwicklung von Algorithmen für die Gesundheitsfürsorge für digitale therapeutische Anwendungen entwickelt.
Sehen Sie sich für weitere Informationen das Dokument "Using language workbenches and domain specific languages for safety-critical software development" an.
Mit DATEV arbeiten wir an der Entwicklung von domänenspezifischen Sprachen (DSL) für Steuerberechnungen sowie Lohn- und Gehaltsabrechnungs-Anwendungen.
Lesen Sie diese Vorabveröffentlichung für weitere Details.
Für Zürich haben wir einen Word-basierten Entwicklungsprozess in eine DSL, mit nachgeschalteter Codegenerierung nach C, formalisiert.
Wir unterstützen SIGI bei der Entwicklung einer DSL für administrative Webanwendungen.
Sie wissen jetzt, was wir tun und wie wir Sie bei der Entwicklung Ihrer Systeme unterstützen können. Nehmen Sie jetzt Kontakt mit uns auf, um konkrete Lösungen zu diskutieren.
In allen unseren aktiven Projekten verwenden wir MPS, um innovative Ansätze zu verfolgen. SAFE4I und SecForCARS werden beide vom deutschen BMBF gefördert.
Siehe auch die Liste aller Forschungsprojekte unter itemis.