Code-Generierung für sicherheitsrelevante Anwendungen

Software ohne Fehler

20. Januar 2012, 14:25 Uhr | Von Dr. Darren Buttle
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Modularität, Abstraktion und Kapselung

Bild 1. Ascet hilft dabei, auch in komplexen Systemen den Überblick zu behalten.
Bild 1. Ascet hilft dabei, auch in komplexen Systemen den Überblick zu behalten.

Komplexität ist eine der maßgeblichen Ursachen von Entwicklungsfehlern. Häufig lässt sich ein Entwurf in seiner Gesamtheit nicht von allen daran Beteiligten in allen Feinheiten verstehen. Komplexe Systeme lassen sich jedoch besser verstehen und beherrschen, wenn die Details auf der unteren Ebene abstrahiert und das System in Teile zerlegt wird, die leicht zu handhaben und zu testen sind.

Ascet verwendet als Framework für das Erstellen und Zusammenführen von Entwürfen eine objektbasierte Modellierungssprache mit einer hierarchischen Klassenstruktur. Durch die genaue Definition der intermodularen Schnittstellen sind anderen Systemteilen nur die jeweils notwendigen Informationen zugänglich (Bild 1). Hierdurch wird sowohl der beabsichtigte als auch der unbeabsichtigte Zugriff auf interne Funktionen von Modulen vermieden.

 

Bild 2. Ascet stellt die eindeutigen Beziehungen von Nachrichten sicher.
Bild 2. Ascet stellt die eindeutigen Beziehungen von Nachrichten sicher.

Die Interaktion zwischen verschiedenen Modulen erfolgt durch Nachrichten, die gesendet oder empfangen werden (Bild 2). Jede Nachricht verfügt über genau einen Sender und einen oder mehrere Empfänger. Dadurch werden mögliche Sequenzierungsprobleme zwischen Sendern und Empfängern vermieden und sichergestellt, dass die Empfänger immer die aktuellsten Daten erhalten.

 


  1. Software ohne Fehler
  2. Vermeiden von Fehlern im Software-Entwurf
  3. Modularität, Abstraktion und Kapselung
  4. Vermeiden von Mehrdeutigkeiten
  5. Sichere numerische Operationen
  6. Unterstützung von Echtzeit-Systemen
  7. Absicherung des Entwurfs in der Simulation
  8. Automatische Code-Generierung sorgt für reproduzierbare Ergebnisse
  9. Automatisches Einhalten von Spracheinschränkungen
  10. Vermeidung von Laufzeitfehlern
  11. Markieren von potentiellen Problemen bei der Kompilierung

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu ETAS GmbH

Weitere Artikel zu Funktionale Sicherheit/Safety