Standort: science.ORF.at / Meldung: "Nie wieder Absturz"

Junge Frau sitzt verzweifelt vor ihrem PC.

Nie wieder Absturz

Der Bildschirm ist blau, nichts geht mehr: Computerabstürze auf dem Schreibtisch sind bestenfalls ärgerlich - in Autos oder Flugzeugen können sie sogar sehr gefährlich werden. Informatiker um Helmut Veith von der TU Wien sagen dem Absturz nun mit logischer Gründlichkeit den Kampf an.

Informatik 30.04.2010

Anstatt wie bisher üblich Software bei der Anwendung zu testen, verfolgen Veith und Kollegen einen neuen Ansatz: Sie durchleuchten die Programme bereits im Vorhinein - und zwar mit Hilfe von Prüfprogrammen, die beweisen: Diese Software läuft fehlerlos.

science.ORF.at: Was passiert bei einem Computerabsturz?

Helmut Veith: Das kann natürlich viele Ursachen haben, aber ein klassischer Fall ist: Sie installieren ein neues Gerät für ihren Computer - eine Maus, einen USB-Stick. Mit diesem Gerät kommt ein kleines, zusätzliches Programm in diesen Computer, ein sogenannter Gerätetreiber. Und dieses Programm kann einen Fehler machen.

Es kann zum Beispiel passieren, dass dieses Programm zu arbeiten beginnt, aber nie mehr aufhört. Durch diese Endlosschleife können all die anderen Programme nicht ausgeführt werden. Dann tut sich gar nichts mehr, der Computer hängt - und dann sagt man: Er ist abgestürzt.

Das Problem ist vermutlich nicht nur auf PCs beschränkt.

Helmut Veith, TU Wien

Helmut Veith ist seit Dezember letzten Jahres Professor für Formal Methods in Systems Engineering an der TU Wien. Davor war er unter anderem an der Carnegie Mellon University tätig.

Ein ganz großer Teil der Computer steht nicht auf unseren Schreibtischen, sondern in den Backoffices von Banken oder an Bord von Flugzeugen oder in Autos - ein modernes Auto hat 70 bis 200 Mikroprozessoren. Und wenn es da zu Fehlern kommt, kann das natürlich dramatischere Folgen haben, als dass sie nur einen Patch installieren müssen.

Zum Beispiel?

In den USA sind beispielsweise schon größere Teile des Telefonnetzes durch kleine Computerfehler ausgefallen. 2003 gab es im Nordosten der USA einen Stromausfall, der die ganze Region für viele Stunden lahmgelegt hat. Ein Experte des Pentagon hat letztes Jahr beim Forum Alpbach berichtet, dass der Blackout von 2003 unter Umständen von einer Cyberattacke ausgelöst wurde.

Wie funktioniert so eine Attacke?

Sicherheitsprobleme mit Computersoftware lassen sich immer auf Fehler in Programmen zurückführen. Es gibt eine klassische Art von Fehlern namens "Buffer Overflow" - die kann man verwenden, um die Kontrolle über einen Computer zu erlangen. Konsequenz dessen ist, dass es mittlerweile einen Schwarzmarkt für Computerfehler gibt.

Wenn Sie einen Fehler finden, dann können sie ihn entweder veröffentlichen, damit die entsprechende Firma das korrigieren kann. Oder Sie können auch versuchen, das an Kriminelle weiterzuverkaufen, weil die das ausnützen können.

Was ist ein Buffer Overflow?

Ein Buffer Overflow ist ein Fehler, der typischerweise in Programmiersprachen wie C auftritt. Er ermöglicht, dass man einen fremden Computer Befehle ausführen lassen kann, die so nicht vorgesehen waren. Man kann gewissermaßen über vorgetäuschte Eingaben einen Befehl in ein Programm hineinschmuggeln.

Das verhindert man wie?

Traditionell legt man bei der Entwicklung von Computersoftware sehr viel Wert auf die Prozesse. Letztlich wird der Ingenieur überprüft - die Art wie er arbeitet, wie er dokumentiert, wie er systematisch vorgeht, aber nicht das Produkt selbst. Das Produkt selbst, also das Programm, wird vielleicht getestet. Aber es wird keiner systematischen und mathematischen Analyse unterzogen.

Warum reicht das Testen nicht aus?

Sendungshinweis:
Mit Computerabstürzen und möglichen Gegenstrategien beschäftigt sich auch ein Beitrag im aktuellen "Dimensionen"-Magazin:
Ö1, 30.4. um 19.06 Uhr.

Wenn wir ein Programm testen, dann bedeutet das: Wir führen für dieses Programm für unterschiedliche Eingaben für dieses Programm aus und schauen, ob dabei Fehler auftreten. Das Problem ist, dass es so viele unterschiedliche Eingaben geben kann, sodass es absolut unmöglich ist, all diese Eingaben zu überprüfen.

Man kann das immer nur für einen ganz kleinen Teil machen - und deswegen sind die Testergebnisse immer nur Erfahrungswerte. Nach dem Motto: "Ich weiß halt, dass bis jetzt nichts passiert ist." Das unterscheidet sich aber sehr stark von einem mathematischen Beweis, der mir zusichert, dass nichts passieren kann.

Nach solchen Beweisen suchen Sie in ihrer Forschung?

Ja, das Ganze nennt sich "Model Checking". Das ist eine Methode, die in der theoretischen Informatik Anfang der 80er Jahre von Kollegen von uns entwickelt wurde. Sie wurden dafür kürzlich mit dem Turing-Preis ausgezeichnet - das ist der wichtigste Preis in der Informatik, vergleichbar dem Nobelpreis.

Berechnungen zeigen: Die Zahl möglicher Zustände selbst einfacher Computer übersteigt die Zahl der Elementarteilchen im Universum bei weitem. Auch Beweise müssen diese kombinatorische Explosion irgendwie bändigen.

Das ist das Hauptproblem des Model Checking. Die Entwicklungsschübe dieser Disziplin sieht man genau daran, wie gut man mit dieser kombinatorischen Explosion umgehen kann. Ein ganz entscheidender Faktor dabei ist, dass Programme letztlich Texte bzw. Formeln sind, die von Menschen geschrieben wurden.

Sie sind nicht zufällig, sie haben eine Struktur, die ihnen der Programmierer gegeben hat. Die Herausforderung ist, die Struktur in mathematische Methoden zu fassen, damit es eben nicht zu dieser Explosion kommt.

Und wenn mehrere Softwaresysteme zusammenkommen?

Dann verwendet man eine spezielle Strategie, die wir "assume guarantee reasoning" nennen: Man trifft vereinfachende Annahmen für einen Teil des Systems, um den anderen Teil zu überprüfen - und umgekehrt. Wenn man das ganze logisch geschickt auspendelt, kann man einen Schluss bauen, der nicht-zirkulär und korrekt ist.

Ganz vereinfacht gesprochen: Was tut ein Model Checker?

Model Checking bedeutet im Grunde, dass wir ein Computerprogramm entwickeln, das ein anderes Computerprogramm liest, um dort Fehler zu finden.

Ein Programm prüft ein Programm. Klingt paradox.

Ist es auch. Der britische Mathematiker Alan Turing hat schon in den 30er Jahren gezeigt, dass unser Ansinnen eigentlich mathematisch-logisch betrachtet unmöglich ist. Das heißt, kein Computer wird jemals in der Lage sein, alle Fehler in einem anderen Computer zu finden. Das führt zu einem logischen Paradox und ist deshalb nicht möglich.

Und wie entkommen Sie dem Turing'schen Beweis?

Wir entkommen ihm auf pragmatische Art und Weise: Indem wir uns einerseits auf Programme konzentrieren, wie sie im wirklichen Leben auftauchen. Zum Beispiel auf Gerätetreiber, typische Arten von Software.

Und zum anderen, indem wir einfach auf den Anspruch verzichten, dass wir alle Fehler finden müssen. Es reicht uns schon, wenn wir viele Fehler finden und dadurch die Sicherheit und Qualität der Programme erhöhen.

Sie gründen nun mit Fachkollegen aus Österreich einen Verein namens "ARiSE".

Veranstaltung:
Das Forschungszentrum IST Austria und der Verein ARiSE veranstalten nächste Woche einen zweitägigen Fachkongress: "Reactive Modeling in Science and Engineering"
Ort: IST Campus Klosterneuburg, Lecture Hall
Beginn: 6. Mai, 9:00 Uhr

Wir befinden uns in der glücklichen Situation, dass sich in den letzten Jahren eine starke Konzentration in diesem Forschungsgebiet ergeben hat. Die Leute sitzen an ganz unterschiedlichen Universitäten über ganz Österreich verteilt.

Wir werden gemeinsam eine wissenschaftliche Gesellschaft gründen: "Austrian Rigorous Systems Engineering". Sie dient der Koordination unserer Forschung, der Ausbildung unserer Studenten, der Ausrichtung von Kongressen usw.

Die Gesellschaft hat durchaus den Anspruch wissenschaftlich in der ersten Liga mitzuspielen. Wenn Sie sich mit den österreichischen Quantenphysikern oder Molekularbiologen vergleichen: Sehen Sie sich auf dem gleichen Niveau?

Zum einen ist der Verein eine Plattform für unsere Tätigkeiten. Selbstverständlich arbeiten wir für unsere Universitäten, an denen wir angestellt sind. Was wir möchten, ist, unsere Kräfte in Österreich zu bündeln. Wenn das gelingt, wird viel möglich sein. Sagen wir es so: Im internationalen Vergleich sind wir sicher sehr herzeigbar.

Interview: Robert Czepel

Mehr zu diesem Thema:

Die ORF.at-Foren sind allgemein zugängliche, offene und demokratische Diskursplattformen. Die Redaktion übernimmt keinerlei Verantwortung für den Inhalt der Beiträge. Wir behalten uns aber vor, Werbung, krass unsachliche, rechtswidrige oder beleidigende Beiträge zu löschen und nötigenfalls User aus der Debatte auszuschließen. Es gelten die Registrierungsbedingungen.

Forum

 
  • elite...

    phobetor, vor 749 Tagen, 10 Stunden, 22 Minuten

    ...kommt halt nicht aus gugging.

  • Fehler in der Programmlogik

    ebenezer, vor 749 Tagen, 11 Stunden, 19 Minuten

    können dadurch nicht erkannt werden.

    • Im Gegenteil

      314159, vor 749 Tagen, 10 Stunden, 29 Minuten

      Model Checking findet Fehler in der Programmlogik, das ist gerade der Witz an der Sache. Aber natuerlich muss der User korrekt spezifizieren, was das Programm tun soll, das kann der Model Checker nicht erraten.

  • Das ist eine weltweite Entwicklung

    lennonlives, vor 750 Tagen, 22 Stunden, 38 Minuten

    Die Informatik wird erwachsen und eine richtige Wissenschaft. Model Checking ist ein Teil davon. Es ist total leicht, ein Programm zu schreiben, das kann jeder Anfänger nach ein paar Tagen. Aber man sieht ja was dabei rauskommt, wenn man das ohne mathematische Grundlagen macht.

  • Apple ...

    onilat, vor 750 Tagen, 23 Stunden, 29 Minuten

    ... und Linux laufen Absturzfrei! Warum ärgert ihr euch mit Windof herum???

    • Koffa...

      roly, vor 750 Tagen, 22 Stunden, 46 Minuten

      ... du hast 0 Plan von IT Sytemen. a) Apple läuft nicht Fehlerfrei b) Linux/Unix läuft nicht Fehlerfrei. Keine Software kann Fehlerfrei laufen, weil sie einfach dafür zu komplex ist. Es scheint mir, du hast den Artikel nicht wirklich gelesen, sonst hättest du das verstanden.

      Mit Windows ist es einfach so: Extrem Komplex, weit verbreitet, viel 3rd Party Anwendungen, Millionen an Codezeilen. Da erklärt es sich von selbst, dass es Ziel vieler Angriffe ist und viele Freaks Lücken in den Systemfiles finden.

      Also hört doch endlich auf immer auf Windows zu schimpfen. Macht es besser!

    • Mit Linux gibt es auch viele Probleme

      lennonlives, vor 750 Tagen, 22 Stunden, 33 Minuten

      Gerade Linux läuft oft in Embedded Devices,
      zB alte Linux Versionen in Routern. Ziemlich gefährlich, nur wissen's nicht viele.

    • naja jein

      0stoney0, vor 750 Tagen, 14 Stunden, 23 Minuten

      In diesem Zusammenhang kann windows nicht mit Linux verglichen werden.
      Bei einem hab ich die Möglichkeit Updates runterzuladen, beim andere hab ich den Quellcode.
      Ironie Ende :)

    • Apple User

      jim99, vor 749 Tagen, 17 Stunden, 14 Minuten

      sind ein wahrer Quell an Naivität.

    • weis doch schon jeder jünger

      fprint, vor 749 Tagen, 15 Stunden, 31 Minuten

      Apples stürtzen nicht ab, und wenn doch, ist Adobe dran schuld :P

    • und es gibt nur ein Betriebssystem, das nicht abstürtzt

      fprint, vor 749 Tagen, 15 Stunden, 29 Minuten

      das gute alte DOS :)

      da blinkt nach 10 jahren der Curser noch fröhlich vor sich hin.. man darf halt nur nix anderes starten

  • hätten wir keine Probleme ...

    selbsteinwitz, vor 751 Tagen,

    so würden wir sich welche schaffen, so es
    die vielen Mikroprozessoren uns den Gefallen
    tun. Jetzt werden die Klugschmeisser sagen,
    na aber wie bequem haben wir es seitdem,
    nicht mal aufstehen muss man noch, oder
    gar wo hingehen, das geht alles online, und
    die Cyberwelt ist ja so heil dass einem graust
    was da in der Welt da draussen vorgeht.
    Da verzichten wir doch lieber auf das Leben,
    so es eines wäre und spielen Blinde Kuh mit
    denen die man gar nicht kennt. Und wenn
    einem eines trüben Tages die Hämorrhoiden
    plagen oder das Kreuz schon weh tut,
    dann wissen wir, dass wir noch leben. Oder
    wissen wir das gar nicht mehr?

  • In der Industrieforschung ...

    badgelaunt, vor 751 Tagen, 3 Minuten

    ... wird viel Geld in Model Checking investiert. IBM, Microsoft, Intel wissen sehr genau, warum sie das tun. In ein
    paar Jahren wird ein Model Checker bei jedem Compiler dabei sein, ohne dass der Durchschnittsprogrammierer das merkt.

    Die Systeme werden komplexer und in Zukunft bekommen wir das ohne Tools wie Model Checker nicht in den Griff.

  • Tja, das Problem (benen dem generellen Ansatz, dass ein Programm...

    pallas, vor 751 Tagen, 10 Stunden, 42 Minuten

    ...ein anderes prueft) :

    Dokumentation einer SW hat in der realen Welt oft nur sehr bedingt etwas mit sem echten Code zu tun ,da in den letzten Phasen der Implementierung und auch des Korrigieren von Fehlern, die bei Tests gefunden werden, der Code immer noch ordentlich geaendert wird, aber die Dokumentation nur sehr schlampig nachgezogen wird (wenn ueberhaupt).

    Ein mathematisches Modell einer SW ist wieder nur eine menschliche Annahme (top-down) oder einfach eine andere Darstellung der der SW selbst (bottom-up) - und es wird eben die SW erst recht wieder "getestet".

    Exceptions koennen oft auch eine gewollte Technik sein. Und nicht immer ist der Exception-Handler im eigenen Produkt enthalten. Die HW hilft hier mit - bei Buffer-Overflow, Address-Violation, Division-By-Zero, Register-Overflow usw. kann der Rechner eigene handler installiert haben, die auf diese Abstuerze kontrolliert reagieren.

    Aber sicher - Codierrichtlinien, die fuer Codereview zur Anwendung kommen sollten, koennen auch automatisiert ueberprueft werden. Und DAS ist machbar. Z.B. zu schauen, dass die Randwerte einer For-Schleife explizit behandelt, Abbruchkriterien von Schleifen strukturiert geprueft werden, Variablen Initialwerte haben, ...
    Und natuerlich das explizite Abfangen und Behandeln von Exceptions/Ausnahmen.

    Gegen Endlosschleifen hilft das Taskkonzept des Betriebssystems, oder wenn es keines gibt, dann...

    • pallas, vor 751 Tagen, 10 Stunden, 42 Minuten

      Gegen Endlosschleifen hilft das Taskkonzept des Betriebssystems, oder wenn es keines gibt, dann eben der Einbau von Systemunterbrechern (ein regelmaessiges Abzweigen zu "Watchdog Prozessen"), die die Systemkonsistenz ueberpruefen und Korrekturmassnahmen einleiten koennen.

      Wenigstens hat der Arktikel den fromalen Beweis erwaehnt, dass es eben im Allgemeinen unmoeglich ist ein Programm auf komplette Fehlerfreiheit zu testen. Das geht nur bei bestimmten Programmarten.

    • Model Checker braucht keine Doku

      314159, vor 751 Tagen, 10 Stunden, 31 Minuten

      Ein Model Checker liest den Source Code, nicht die Doku. Microsofts SDV liest zB einfach den Source Code eines Device Drivers. Model Checker fuer Binaries funktionieren noch nicht gut, also bleibt immer noch das Problem von Compilerfehlern.

    • Es gibt beides

      pallas, vor 751 Tagen, 10 Stunden, 24 Minuten

      Es gab/gibt ja auch den Top-Down Ansatz Code aus den Spezifikationen zu generieren.
      Und beim Top-Down-Verfahren wird eben das Design verifiziert.
      Beim Bottom-up der aktuelle Code.

      Aber praktisch pruefen diese Checker eben die Einhaltung bestimmter Richtlinien bei den Schnittstellen (statisch und dynamisch - wenn sie gut sind) und sonstige COdierrichtlinien (wie von mir schon weiter oben erwaehnt).

    • 314159, vor 751 Tagen, 10 Stunden, 18 Minuten

      Aber beides ist von der Dokumentation unabhaegig, ob ich jetzt Controller Code automatisch aus einem MATLAB/Simulink Modell generiere, oder ihn einem Model Checker gebe. Das macht man halt in unterschiedlichen Situationen.

      Natuerlich, wenn ich zuerst top-down Code generiere, und anschliessend den Code haendisch aendere, oder wenn ich x-beliebig im MATLAB Modell an Parametern drehe, dann passiert genau das, was pallas sagt - Chaos.

    • @3145... : voellig richtig

      lennonlives, vor 750 Tagen, 22 Stunden, 15 Minuten

      pallas hat das missverstanden. ein model checker braucht eben gerade kein mathematisches modell, keine doku oder sonst was. er liest den source code und findet fehler. so wie ein compiler warnungen gibt, nur besser.

  • Firmen die Model Checker verwenden

    314159, vor 751 Tagen, 11 Stunden, 2 Minuten

    NASA, Intel, IBM, Cadence, Synposis, Infineon, NEC, Fujitsu, EADS, Airbus,Boeing GM ...

    Microsoft hat den Model Checker SDV speziell fuer Device Driver gebaut - der wird in tausenden Firmen auf der ganzen Welt verwendet. Und die Driver sind besser geworden, auch wenn alle schimpfen.

    • Und darum muessen sich Treiberhersteller an bestimmte Richtlinien halten

      pallas, vor 751 Tagen, 10 Stunden, 30 Minuten

      Damit sie eben ueberprueft werden koennen.
      Die, die sich nicht daran halten, koennen so nicht geprueft werden, erhalten nicht das MS OK, und landen beim Anwender mit der "Wollen Sie dieses Programm wirklich ausfuehren lassen ?" beim Installieren (und die Anleitung sagt immer, dass man bedenkenlos "Ja" oder "OK" anwaehlen soll).

    • 314159, vor 751 Tagen, 10 Stunden, 15 Minuten

      Klar. Microsoft dreht das aus wirtschaftlichen Gruenden nicht ab. Trotzdem werden die Driver besser, weil
      SDV den Entwicklern hilft, Fehler zu
      finden.

  • solange das Zeug da Leute

    kaharatschonbonatschon, vor 751 Tagen, 11 Stunden, 4 Minuten

    programmieren, die davon leben müssen, bauen die absichtlich Fehler ein. Da ist mir doch noch die Szene vom James Bond bekannt, wo im "Morgen stirbt nie" der Elliot Carver absichtlich fehlerhafte Software ausliefert für die Idioten von Leut´, damit die "noch Jahre lang nachrüsten müssen" - eben! Weil wenn da die Software fehlerfrei wär´, würde sich keiner eine neue kaufen. Genau wie bei den Autos und Elektrogeräten. Früher die Waschmaschine von der Oma hat über 30 Jahre gehalten, bis hin war - heute haltens nicht 1x mehr 5.

    Ist also reine Wertschöpfung, damit die Leut´ was zum Fressen haben und Arbeitsplätze. Fehlerfreie Produkte sind daher verboten!!!

    • Als klassisches Beispiel : Windows und MS Office

      pallas, vor 751 Tagen, 10 Stunden, 34 Minuten

      halten mit ihren "Luecken" einen ganzen berufszweig am Leben - die Luete in IT, die fuer die Sicherheitspatches zustaendig sind.
      Die sind manchmal ausgelagert, und manchmal Teil der eigenen Firma, aber es gibt sie in allen Laendern fuer praktisch alle Firmen (und dann ncoh die privaten "Computerdoktoren").

      Und es war schon immer ein (schmunzelnder) Verdacht, dass da MicroSoft schon dafuer sorgt, dass seine eigenen Teams mit schoenen Wartungsvertraegen am Leben erhalten werden muessen (und wie gesagt weltweit dann ein ganzer Industriezweig dann ebenfalls davon lebt).

    • Als SW-Entwickler kann ich dir versichern...

      quixui, vor 751 Tagen, 1 Stunde, 18 Minuten

      ...dass auch ohne bösartige Absicht komplexere Software-Systeme genug Fehler haben, um die Herstellerfirma noch auf Jahre mit Patches zu beschäftigen.

      Mal abgesehen davon wäre es wirtschaftlich Unsinnig absichtlich Fehler einzubauen - niemand bezahlt MS für die Windows-Patches, für Servicepacks und ähnlichen Kram.

    • @quixui: ganz richtig

      lennonlives, vor 750 Tagen, 22 Stunden, 30 Minuten

      Vielleicht ist das bei kleinen Programmierbuden anders, aber die grossen
      Firmen suchen nach Productivity Tools, mit denen sie Fehler finden können. Testen, Model Checken, Delta Debugging - anything that helps.

    • atagod, vor 750 Tagen, 21 Stunden, 49 Minuten

      Momentmal, Sie halten für bare Münze was sich Filmmemacher über Informatiker ausdenken?

      Ich kenne niemand der absichtlich einen Fehler einbaut und ich bin als Informatiker tätig. Was tun Sie?

    • @atagod: Völlig richtig ...

      lennonlives, vor 750 Tagen, 21 Stunden, 33 Minuten

      ... aber ich kenne viele Informatiker, die Fehler in Kauf nehmen, obwohl sie wissen, dass sie mit mehr Testen, Dokumentieren und auch neueren Tools, Model Checker zum Beispiel, bessere Software hÄtten.
      Der Grund ist oft Kostendruck, aber ein ganz sauberes Gewissen haben nicht alle.

    • clonelinesk8er, vor 749 Tagen, 23 Stunden, 42 Minuten

      Eine gewisses Restfehlerrisiko wird aus Kostengründen in Kauf genommen. Nicht alles, was das Entwicklerteam als Fehler betrachtet, wird vom Endnutzer überhaupt als solcher wahrgenommen. Selbst wenn ein Fehler erkannt wird, ist nicht jeder Fehler gleich ein Showstopper und der Benutzer kann mit dem Fehler mehr oder weniger leben. (Für Perfektionisten sind solche Erkenntnisse allerdings ein gewaltiger Schock.)

    • onkeljosefsnichte, vor 749 Tagen, 17 Stunden, 3 Minuten

      Perfektionisten. Wo gibt es die denn?
      Was ich als ahnungsloser User an Windows hasse, ist die Redundanz. "Intuitiv zu bedienen" heißt das, habe ich mich belehren lassen. Anscheinend habe ich keine Intuition. Oder eine andere, als die sich vorstellen.
      Ist es so, dass wegen uns Doofen diese riesengroßen Betriebssysteme mit jedem Rechner mitverkauft werden müssen? Vielleicht ist mein "Problem", dass ich an computergestützter Unterhaltungselektronik so wenig Bedarf habe und nur ein paar kleine Programme brauche, also zu einem irrelevanten Kundenkreis gehöre. Linux sei nichts für weniger Motivierte wie mich, heißt es.

    • onkeljosefsnichte, vor 749 Tagen, 16 Stunden, 59 Minuten

      lennonlives sagt oben "Es ist total leicht, ein Programm zu schreiben, das kann jeder Anfänger nach ein paar Tagen. Aber man sieht ja was dabei rauskommt, wenn man das ohne mathematische Grundlagen macht." Aha. Die "Intuition" offensichtlich. Wie nett :(

  • Es wurde eine neue Wissenschaftliche Gruppe gebildet

    chrilly, vor 751 Tagen, 12 Stunden, 53 Minuten

    Basiert ja öfters. Und jetzt müssen sie der Welt und vor allen den Forschungsförderungs-Fonds beweisen, dass der Fortbestand der Menschheit von ihren Forschungen abhängt. Basiert auch öfters.

    Ich arbeite in mission-critical (zu Deutsch, wenn was schiefgeht gibts Todesopfer) Projekten mit. Habe noch nie gehört, dass diese Methoden verwendet werden. Abgesehen davon, dass die Modell-Checker bisher nur Spielzeug-Problem checken können. Aber in einem komplexen System spielen analoge und mechanische Effekte eine kritische Rolle. Schwere Unfälle sind in der Regel eine unvorhergesehen Verkettung der verschiedensten Ebenen. Realer Weise kann man diese Fehler nur durch ausgedehnte Tests beseitigen. Wobei die erste Generation von Benutzern auch Test-Crash-Dummies spielt. Manchmal kann man es sich nicht aussuchen (z.B. bei Computer-Tomographen), aber wer sich immer das neueste Produkt kauft ist eigentlich selber für sein Test-Crash-Dummy Dasein Schuld.

    • Upps "passiert" statt "basiert".

      chrilly, vor 751 Tagen, 12 Stunden, 52 Minuten

    • Rockwell Collins

      binimausland, vor 751 Tagen, 12 Stunden, 34 Minuten

      "Software Model Checking Takes Off

      A translator framework enables the use of model checking in complex avionics systems and other industrial settings."

      http://cacm.acm.org/magazines/2010/2/69362-software-model-checking-takes-off/fulltext

    • dachte

      fprint, vor 751 Tagen, 12 Stunden, 33 Minuten

      basiert wär zynistisch für passiert.. naja..

      VS2008 (und auch des neue 2010, MS und Trailversion sei dank) motzt ja auch schon ständig rum.. ok, dank dynamic gibts a neues wörtchen, des rummotzen vom c# compiler "unterdrückt", aber a schwerer ausnahmefehler gehört zu software wie das amen ins gebet.. :)

      lg.. fprint (Console.Write)

    • Die Erste Generation spielt Test Crash Dummy ? ? ?

      314159, vor 751 Tagen, 10 Stunden, 6 Minuten

      @chrilly: Wenn die erste Generation von Usern als Test Crash Dummies missbraucht wird - ist das nicht das ueberzeugendste Argument, dass man Model Checker oder etwas aehnliches braucht ? Oder soll man aeltere Produkte kaufen, weil andere neuere Produkte schon mit ihrem Leben bezahlt haben ?

    • @chrilly: das ist zynisch

      lennonlives, vor 750 Tagen, 21 Stunden, 31 Minuten

      Selbst Tote in Kauf nehmen und auf die Forschung schimpfen, ohne sie zu kennen.