Archiv


Neue Programmierwerkzeuge sorgen für sichere Software

Zwei unterschiedliche Ansätze, sicherere Computerprogramme zu entwerfen, trafen in dieser Woche auf der "Safecomp 98" aufeinander. Während die sogenannten Probabilisten mit dem Auftreten von Fehlern rechnen und sich um entsprechende Abwehrmaßnahmen bemühen, versuchen die Deterministen durch möglichst hohe technische Anforderungen Fehler von vornherein auszuschließen. Das gelang den Deterministen bisher nur bei kleineren Systemen. Mit neuen Softwaretools und Strategien wollen sie nun auch große Systeme sicherer machen.

Klaus Herbst, Wolfgang Ehrenberger |
    Deterministische Methoden sorgen bei eine Vielzahl von Systemen für mehr Sicherheit - etwa in der chemischen Industrie, im Automobil oder bei Haushaltsgeräten. Die probalistische Richtung, die es erlaubt, mit Fehlertoleranzen umzugehen, kommt bei komplizierten technischen Anwendungen zum Einsatz, beispielsweise in Kernkraftwerken. Sie kann versagen, was sich unlängst in einer Softwarepanne gezeigt hat, die den Bahnhof Hamburg-Altona stundenlang lahmlegte. Der Schwerpunkt liege eher bei den deterministischen Verfahren, meint Wolfgang Ehrenberger, Professor für Softwareengineering an der Fachhochschule Fulda: "Es gibt immer mehr Möglichkeiten nachzuweisen, ob das, was man über das gesamte System gedacht hat, wirklich deterministisch richtig und widerspruchsfrei ist."

    Moderne Verfahren erlauben schon vor der Testphase Beweise, bevor man also mit dem Schreiben des eigentlichen Programms beginnt. "Es sind insbesondere logische Verfahren, die man in der Vergangenheit nicht vollständig erforscht hatte, etwa das sogenannte Model Checking", so Ehrenberger. "Und dann gibt es Sprachen, in die man eine verbal abgefaßte Spezifikation übersetzen kann, um die Richtigkeit der Überlegungen zu prüfen." Bewährt hat sich hier die Unified Modelling Language (UML). Da sie logische Wahr-Falsch-Ausdrücke verwendet, entwickeln die Programmierer nun Werkzeuge, die automatisch prüfen, ob die Ausdrücke eines Programmentwurfs wahr sind.