B&R präsentiert einzigartigen offenen Ansatz für die Programmierung von Sicherheitsfunktionen
- Neue offene Datenarchitektur für agiles und transparentes Programmieren
- Effizientere Abläufe mit Werkzeugen und Plattformen von Drittanbietern
- Flexibler bei der Wahl der Programmiersprachen und Datentypen
B&R, eine Division von ABB, präsentiert mit Safety+ einen zukunftsweisenden offenen Ansatz, um Sicherheitsfunktionen zu programmieren. Entwickler können nun die neuesten Werkzeuge und Methoden des Software-Engineerings auch für Sicherheitsapplikationen nutzen. Eine innovative Datenstruktur mit digitalem Fingerabdruck macht den Quellcode frei zugänglich und erfüllt gleichzeitig die besonderen Anforderungen der funktionalen Sicherheit. Damit überwindet B&R eine bisherige Hürde, die Innovationskraft bei der Sicherheitsprogrammierung behindert hat.
Sicherheit zu programmieren, wird agil und transparent
„Mit Safety+ bieten wir den Kunden erstmalig ein offenes Programmiersystem, so dass sie die fortschrittlichen Werkzeuge und Methoden einsetzen können, die sie bereits aus der Standardprogrammierung kennen“, erklärt Franz Kaufleitner, Produktmanager für Safety bei B&R, der Division für Maschinenautomatisierung von ABB. „Sicherheitsanwendungen lassen sich so wesentlich effizienter und flexibler entwickeln.“
Möglich geworden ist dieser Produktivitätsschub in der Programmierung von sicherheitsorientierten Applikationen im Wesentlichen durch drei Aspekte: eine innovative Datenarchitektur, flexible Wahl von Sprache und Datentyp sowie der Einsatz von Tools und Prozessen aus der Standardprogrammierung.
Jede Datei verfügt über digitalen Fingerabdruck
Die innovative Datenarchitektur ist eine zentrale Neuerung von Safety+. Die Daten werden in einem frei zugänglichen Format gespeichert, wobei jede Änderung mitdokumentiert wird. Dabei werden die Quelldateien in einem offenen textbasierten Code-Repository in Formaten wie XML oder JSON abgespeichert. Um trotz dieser Offenheit die Integrität des Programmcodes zu gewährleisten, erhält jede Datei einen digitalen Fingerabdruck. Dieser zeigt an, wenn sich etwas ändert. Ergänzt mit detaillierten Metadaten bietet dies Transparenz, wer was wann geändert hat.
Ein Novum bei Systemen für Sicherheitsprogrammierung ist, dass sich diese Metadaten nicht nur auf die gesamte Sicherheitsapplikation beziehen. Ingenieure können jetzt jede Änderung bis auf die Ebene von Funktionsbaustein und Parametersatz nachvollziehen und den Code gezielter optimieren. Dies führt zu einem agileren Engineering der Sicherheitsfunktionen, die sich leichter an verändernde Benutzeranforderungen anpassen lassen.
Standards machen das Programmieren produktiver
Neben der neuen Datenarchitektur erlaubt es die neue Offenheit von Safety+ Ingenieuren, Sicherheitsapplikationen mit Werkzeugen und Plattformen von Drittanbietern zu erstellen und zu verwalten. „Durch die Integration der Sicherheitsprogrammierung in gängige Tools wie GitHub und Jenkins wird das Arbeiten für Entwickler in hohem Maß flexibler,“ so Kaufleitner. „Dies vereinfacht den Entwicklungsprozess und fördert darüber hinaus auch die Zusammenarbeit und den Austausch innerhalb der Entwicklergemeinschaft.“
Für die automatische Build-Generierung und kontinuierliche Integration ist ein Kommandozeilen-Interface (CLI) verfügbar. So können Entwickler im sogenannten Headless-Betrieb direkt mit der Software interagieren und Programmcode effizient verarbeiten.
Mehr Programmieroptionen und Datentypen
Als drittes wesentliches Novum bietet Safety+ auch bei der Wahl der Programmiersprache und dem applikationsspezifischen Fine-Tuning beim Programmieren durch Datentypen neue Freiräume. Bisher waren Entwickler bei der Wahl von Programmiersprachen und Datentypen bei funktionalen Sicherheitsapplikationen beschränkt, was sich negativ auf Entwicklungszeit und Flexibilität auswirkte.
Safety+ bietet Ingenieuren eine größere Auswahl an Programmieroptionen, einschließlich Funktionsbausteinen, Kontaktplänen und strukturierten Texten. Safety+ hebt frühere Beschränkungen für Datentypen auf und unterstützt Elemente wie Arrays, Structs und reale Datentypen, die in der nicht-sicheren Programmierung Standard sind. „Mit Safety+ geben wir Entwicklern die Freiheit, die sie benötigen, um innovative und effiziente Sicherheitslösungen zu schaffen“, betont Kaufleitner. „Ich denke, es ist nicht zu hoch gegriffen, wenn wir von einer kleinen Revolution in der Programmierung von Sicherheitsfunktionen sprechen.“
Bisher kamen in Systemen für das Engineering funktionaler Sicherheitsapplikationen proprietäre, verschlüsselte Dateisysteme zum Einsatz. Diese schützten Applikationen vor unautorisierten Veränderungen, schlossen jedoch auch die Verwendung gängiger produktivitätssteigernder Softwarewerkzeuge und Methoden aus.