Normen der funktionalen Sicherheit wie die ISO 26262 verpflichten zum Konfigurations- und Change-Management auch in Modellen. In der Softwareentwicklung eines führenden deutschen Autozulieferers wird dafür LemonTree eingesetzt. Die nutzerfreundlichen Eigenschaften des Werkzeugs erleichtern die Arbeit der Entwickler wesentlich und lassen die Fehlerquote sinken.

Wien – Gerade in der Autoindustrie ist die nachweisbare Einhaltung von Normen der funktionalen Sicherheit wie die ISO 26262 unumgänglich. Damit sind die Hersteller und Zulieferer zum Konfigurations- und Change-Management auch in Modellen verpflichtet. „Für uns sind verschiedene Safety-Normen wie Automotive SPICE und die Einhaltung des „Automotive Safety Integrity Level ASIL“ maßgeblich bei der Softwareentwicklung. Da in der Abteilung Software-Architektur die Modellierungs-Plattform Enterprise Architect schon länger erfolgreich eingesetzt wird, konnten wir uns von der Nützlichkeit der modellbasierten Softwareentwicklung überzeugen. Aber erst durch den Kontakt mit LieberLieber und die Verwendung von LemonTree wird unsere tägliche Arbeit mit den Modellen nun wesentlich erleichtert und beschleunigt“, so der Mitarbeiter eines führenden deutschen Autozulieferers, der in der Abteilung für Funktions-Software an der Erstellung sicherheitskritische Software mitwirkt. Während Enterprise Architect also im Unternehmen im Bereich der System-Architektur schon länger im Einsatz ist, findet die Plattform nun mit der Erweiterung durch LemonTree auch vermehrt den Weg in die Softwareentwicklung. Dafür war es aber z.B. notwendig, dass LemonTree die unternehmenseigene Modellierungssprache unterstützt und dort auch Markierungen mit definierten Safety-Levels ermöglicht.

Alle Änderungen leicht überprüfbar
Um die Einhaltung aller gesetzlichen Vorgaben auch bei Änderungen in der Software belegen zu können, sind für die Arbeitsgruppe beim Autozulieferer Reviews besonders wichtig. Dabei werden die Arbeitsergebnisse der Softwareentwicklung manuell geprüft, um die geforderte Qualität sicherzustellen. „Bei uns muss jede Veränderung im Modell – auch Change Request genannt – einem Review unterzogen werden. Dafür bietet LemonTree hervorragende Möglichkeiten, die unsere Arbeit sehr beschleunigen“, so der Mitarbeiter. Konnten nämlich bisher nur kleine Änderungen zwischen zwei Modellversionen gereviewt werden, so erweitert LemonTree die Möglichkeiten auf komplexere Modelle und unterstützt die Arbeit mit vielen nützlichen Features. Dazu Dr. Konrad Wieland, bei LieberLieber verantwortlich für LemonTree: „Der hier vorliegende Fall ist für LemonTree ein typischer Use Case. Denn das Change Management verbunden mit dem Review von Modellen ist für alle Unternehmen verpflichtend, die Software im Umfeld funktionaler Sicherheit erstellen. Wir freuen uns, dass wir dank großer Nachfrage die Vorteile von LemonTree für dieses Szenario immer weiter ausbauen können.“

Nur das Wesentliche ist sichtbar
Auch das Entwicklungsteam beim Autozulieferer will sich in der täglichen Arbeit auf das Wesentliche konzentrieren können. Für den Reviewprozess über alle geänderten Elemente im Modell wurden daher durch LieberLieber spezielle Filter eingebaut, die den Nutzer mit Vorschlägen durch den Prozess führen. Auch lassen sich beim Review durch mehrere Personen bereits geprüfte Elemente extra kennzeichnen, um so eine unnötige Doppelprüfung auszuschließen. „Durch die von LieberLieber durchgeführten Anpassungen unterstützt uns LemonTree nun ganz individuell in den von uns definierten Reviewabläufen. Praktische Erleichterungen wie die deutliche Hervorhebung von Änderungen in Diagrammen oder die Möglichkeit, Fenster zur besseren Sichtbarkeit einfach größer zu ziehen, machen das Werkzeug inzwischen praktisch unentbehrlich“, unterstreicht der Mitarbeiter. Die neue Arbeitsqualität soll nun in einem abteilungsübergreifenden Review-Meeting vorgestellt und diskutiert werden, um so den Weg zu einem breiteren Einsatz im Unternehmen zu ebnen.

Screenshot 1: Ein einzelnes Diagramm ist aus dem Haupt-User-Interface von LemonTree herauslösbar und kann z.B. auf ein anderes Display verschoben oder als maximiertes Fenster betrachtet werden.

Screenshot 2: Die Listen „Impacted Elements“ und „Impacted Diagrams“ sind filterbar. Dafür gibt es unter anderem auch vorgefertigte Filter, wie z.B.: #Removed oder #Reviewed. Die Liste zeigt dann nur mehr Elemente / Diagramme an, welche dem Filterkriterium entsprechen. Alle nicht betroffenen Elemente / Diagramme werden „ausgegraut“.

Screenshot 3: Das sogenannte „3. Diagramm“ zeigt eine Vorschau des zusammengeführten Diagramms.

Screenshot 4: Der „New Session Dialog“ wurde geändert. Es ist nun möglich, gespeicherte LemonTree Sessions zu laden und mit den Buttons „Merge“ oder „Compare“ den jeweiligen Modus zu starten. (Compare startet LemonTree mit 2 Spalten um einen „Diff“ durchzuführen, Merge startet LemonTree mit den zwei Compare Spalten sowie einer Merge Preview Spalte). 

Screenshot 5: LemonTree kann den aktuellen Zustand einer sogenannten „Session“ speichern. Dabei gibt es zwei Möglichkeiten:

  1.  Session File only: Der erzeugte Session File referenziert die miteinander verglichenen EAP Dateien mit einem absoluten Pfad.
  2. Session Complete including models: Die miteinander verglichenen EAP Dateien werden kopiert und mit dem Session File an einem Ort abgelegt. Dadurch lässt sich LemonTree Session einfach verteilen.

LemonTree für Change Management und Reviews von Modellen
Normen der funktionalen Sicherheit wie die ISO26262 verpflichten zum Configuration- und Change Management für alle entwicklungsrelevanten Artefakte. Modelle sind gerade bei der Entwicklung sicherheitsrelevanter, mechatronischer Systeme mittlerweile ein fester Bestandteil des Entwicklungsprozesses und müssen daher einem passendem Change Management unterliegen. Mit LieberLieber LemonTree werden diese Änderungen nachvollziehbar aufbereitet und sind zu jedem Zeitpunkt abfragbar. Dabei sind nicht nur der aktuelle Stand des Modells wichtig, sondern auch die Änderungen am Modell bzw. zwischen einzelnen Versionen des Modells. Die Information darüber, welcher Benutzer wann etwas am Modell geändert hat, hilft nicht nur bei der Zusammenarbeit im Team, sondern ist gerade im Functional Safety Bereich unabdingbar. LemonTree  ermöglicht es auch, diese Änderungen zu begutachten oder zu „reviewen“. Die ausgeklügelte Darstellung der Änderungen und die Filtermöglichkeiten im LemonTree erleichtern diese Arbeit enorm. Darüber hinaus bietet LemonTree durchdachte Features, um eine Review-Konfiguration inklusive der zu begutachtenden Modellversionen und den aktuellen Stand des Reviews abspeichern zu können. So wird es möglich, im Reviewprozess jederzeit eine Pause einzulegen und danach ohne Informationsverlust fortzufahren. Nicht zuletzt lassen sich Review-Kommentare in eigene Branches nachvollziehbar einfügen, um einen optimierten Review-Prozess zu unterstützen.

Die Vorteile von LemonTree :

  • Revisionssicherheit nach ISO Normen
  • Nachvollziehbare Änderungen
  • Review-Kommentare zusammenführen
  • Zusätzliche Checkmarks für die Filterung bereits begutachteter Änderungen
  • Filter-Möglichkeiten in der Änderungsliste
  • Export der Änderungen als CSV
  • XML Export für eigene Change-Visualisierungen
  • Änderungshistorie verfügbar

Nutzen für Anwender
Modellierer und Reviewer bekommen mit LemonTree die Sicherheit, dass alle Änderungen an den UML- oder SysML-Modellen zuverlässig zusammengeführt werden und jede Änderung für sich präzise dokumentiert ist. Die lückenlose Information darüber, welcher User exakt was und wann geändert hat, ist in der Entwicklung sicherheitsrelevanter Artefakte oder auch in anderen Bereichen äußerst wichtig. Die Modelländerungen werden verständlich präsentiert und lassen sich jederzeit einem kontrollierten Review unterziehen. Ergänzende Reviewkommentare werden in einer eigenen Modellversion gepflegt, was dem Benutzer garantiert, das produktive Modell nicht zu zerstören. Sollte mehrere Reviewer solche Anmerkungen pflegen, so lassen sich auch diese einfach mit LemonTree zusammenführen. Verschiedene Export- Möglichkeiten (z.b. XML) diene dazu, Änderungen über den Zeitverlauf zu dokumentieren.

Foto: iStock.com/gerenme