Ein Angebot von

Statische Analyse

Bugs und Defekte in Multitasking-Software eliminieren

| Autor / Redakteur: David Kalinsky * / Martina Hafner

Wo steckt der Fehler? Bestimmte Defekte in Multitasking-Software im Embedded-Umfeld lassen sich mit Hilfe von Tools für die statische Analyse aufsprüren.
Wo steckt der Fehler? Bestimmte Defekte in Multitasking-Software im Embedded-Umfeld lassen sich mit Hilfe von Tools für die statische Analyse aufsprüren. (Bild: gemeinfrei / CC0)

Firma zum Thema

Werkzeuge für die statische Analyse spüren Multitasking-Fehler auf, die mit Softwaretests nur schwer gefunden werden. Diese Tools eignen sich auch für das riesige Spektrum an Fehlern, bei denen es zu Interaktionen zwischen mehreren Tasks sowie mit einem Echtzeitbetriebssystem (RTOS) kommt.

Vor etwa 30 Jahren, in meinem ersten Job im Bereich Echtzeitsysteme, leitete ich ein Softwareentwicklungsteam, das an einem Erste-Hilfe-Monitor arbeitete (das Gerät war etwa einen Kubikmeter groß, also nicht so kompakt wie die Monitore in modernen medizinischen Geräten, wie wir sie heute kennen).

Eines Tages rief mich der Firmenchef zu sich und fragte mich: „David, warum schaffen Sie es nicht, dass Ihre Software auf Anhieb fehlerfrei läuft?“ Er fuhr verärgert fort: „Laut Ihren Berichten haben Sie die Software doch fertig gestellt, aber danach sind Sie noch monatelang damit beschäftigt, sie von sogenannten Bugs zu befreien. Können Sie die Software denn nicht einfach von Anfang an richtig programmieren? Sie würden sich eine Menge Frust und ich mir einen Haufen Geld sparen.“

Damals in den Siebzigern hatte ich noch keine Antwort auf diese Fragen. Ich dachte, dass er mich feuern würde und meine Karriere im Embedded-Bereich damit beendet sei.

Machen wir einen Zeitsprung in die Gegenwart. Dreißig Jahre sind inzwischen vergangen, und Embedded-Entwickler haben viel über Wirtschaftlichkeit und Management in der Softwareentwicklung gelernt. Trotzdem wird auch heute noch gut die Hälfte der Entwicklungszeit dafür aufgewendet, Fehler im Softwarecode zu finden und zu beheben.

Seit kurzem gibt es einen Hoffnungsschimmer am Horizont der Softwareentwicklung — eine neue Generation von Tools für die statische Codeanalyse. Diese analysieren Softwarecode auf Bugs und andere Defekte, ohne dass die Programme selbst ausgeführt werden müssen.

Sie basieren auf bestehenden Analysatoren wie beispielsweise MISRA-C-Compilern und LINT und verwenden Algorithmen, die den Quellcode akribisch auf Softwarefehler prüfen und gefundene Fehler zuverlässig und hochpräzise anzeigen.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
  1. Avatar
    Avatar
    Ausklappen
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Ausklappen
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44759460 / Test & Qualität)