Master's thesis | @MastersThesis{Schaef2005, ... | Masterarbeit - German
Schäf, Martin
Abstrakte Übergangsrelationen als Mittel zur Verifikation von Programmeigenschaften
Universität des Saarlandes, April, 2006
Die Entwicklung von Software ist ein fehleranf¨alliger Prozess. Allein die Tatsache,
dass ein Programm ausf¨uhrbar ist und dass f¨ur eine begrenzte Menge von Testf¨allen keine Fehler in der Ausf¨uhrung des Programms auftritt, sagt nicht aus, dass ein Programm fehlerfrei ist. Vor allem in Bereichen, in denen Software nicht einfach im Fall eines Versagens abgeschaltet und repariert werden kann ist es wichtig beweisen zu k¨onnen, dass Software fehlerfrei ist. Es existieren verschiedene Methoden diesen Beweis zu erbringen. Die g¨angigste Methode ist deduktive Verifikation, in der die Software von Hand verifiziert wird. Dieser Vorgang ist allerdings teuer und fehleranf¨allig. Formale Verifikation ist eine j¨ungere Methode die vor allem f¨ur die Verifikation von Hardware verwendet wird. Mit formaler Verifikation k¨onnen Systeme mit endlicher Zustandsmenge automatisch bewiesen werden. Um die Methode auf Software anzuwenden, muss diese abstrahiert werden, da die Zustandsmenge eines Programms unendlich gross sein kann. Das U¨ berpr ¨ufen von Programmeigenschaften auf einem abstrakten Modell wird auch Model Checking genannt. Es existieren verschiedene Ans¨atze um durch Model Checking Programmeigenschaften zu beweisen. In [esp] wird ein Ansatz vorgestellt tempor¨are Sicherheitseigenschaften eines Programms automatisch zu Beweisen. [tin] stellt eine M¨oglichkeit vor durch Model Checking Terminierung und Fairness zu beweisen. Diese Ans¨atze arbeiten immer auf dem gesamten Programm. In dieser Arbeit wird eine Methode hergeleitet, ein Programm oder einen Teil eines Programms in eine abstrakte U¨ bergangsrelation zu u¨bersetzen und durch diese, Annahmen ¨uber das Verhalten der Programmvariablen zu beweisen. Der Vorteil dieser Methode ist die Wiederverwendbarkeit von U¨ bergangsrelationen. Da diese unabh¨angig vom Kontrollfluss sind, gen¨ugt es, f¨ur einen Programmteil einmalig die U¨ bergangsrelation zu berechnen, egal wie oft dieser Teil verwendet wird. Diese Eigenschaft bietet es an, dieses Verfahren in den Prozess der Softwareentwicklung einzubeziehen um die Fehlersuche zu erleichtern, oder Fehler fr¨uhzeitig zu erkennen. 4
MPII WWW Server, MPII FTP Server, MPG publications list, university publications list, working group publication list, Fachbeirat, VG Wort
BibTeX Entry:
@MASTERSTHESIS{Schaef2005,
AUTHOR = {Sch{\"a}f, Martin},
TITLE = {Abstrakte {\"U}bergangsrelationen als Mittel zur Verifikation von Programmeigenschaften},
SCHOOL = {Universit{\"a}t des Saarlandes},
YEAR = {2006},
TYPE = {Master's thesis}
MONTH = {April},
}