Alloy Analyzer

In der Informatik und Software-Engineering, ist die Legierung Analyzer ein Software-Tool, das verwendet werden kann, um Daten in der Legierung Spezifikation Sprache geschrieben zu analysieren. Der Analyzer kann Instanzen von Modell Invarianten zu erzeugen, simulieren die Durchführung der Maßnahmen, die als Teil des Modells, und überprüfen Sie Benutzer angegebenen Eigenschaften eines Modells. Die Legierung Analyzer unterstützt die Analyse von Teilmodellen. Als Ergebnis ist es inkrementale Analyse von Modellen, wie sie aufgebaut sind, ausführen können, und bieten eine unmittelbare Rückmeldung an die Benutzer.

Die Legierung Analyzer, und die damit verbundene Alloy Sprache, wurden von einem Team von Daniel Jackson am Massachusetts Institute of Technology in den Vereinigten Staaten führte entwickelt.

Ansatz zur Analyse

Die Legierung Analyzer wurde speziell entwickelt, um so genannte "leichte formale Methoden" zu unterstützen. Als solche ist beabsichtigt, vollständig automatisierte Analyse im Gegensatz zu den interaktiven Theorembeweisens Techniken, die üblicherweise mit Spezifikationssprachen ähnliche Legierung verwendet wird. Entwicklung der Analyzer wurde ursprünglich von der automatisierten Analyse von Model Checker vorgesehen inspiriert. Allerdings Model-Checking ist mit der Art von Modellen, die in der Regel in Legierung entwickelt werden schlecht geeignet, und als ein Ergebnis der Kern der Analyzer wurde schließlich als Modell-Finder auf einem boolean SAT Solver gebaut implementiert.

Durch die Version 3.0, die Alloy Analyzer integriert einen integrierten SAT-basiertes Modell-finder basierend auf einem Off-the-shelf SAT-Solver. , Ab Version 4.0 die Analyzer macht jedoch den Einsatz des Kodkod Modell-Finder, für die der Analyzer dient als Front-End. Beide Modellmessern im wesentlichen zu übersetzen, ein Modell in relationalen Logik ausgedrückt in eine entsprechende Boolesche Logik Formel, und rufen Sie dann ein Off-the-shelf SAT-Solver auf der boolesche Formel. Im Falle, dass der Solver eine Lösung findet, wird das Ergebnis wieder in eine entsprechende Bindungs ​​von Konstanten, Variablen in der relationalen Logik-Modell umgerechnet.

Um die Modellfindungsproblem sicherzustellen entscheidbar ist, führt der Legierung Analyzer Modell-Befund über eingeschränkte Bereiche, bestehend aus einer benutzerdefinierten endliche Anzahl von Objekten. Dies hat den Effekt der Einschränkung der Allgemeingültigkeit der Ergebnisse durch den Analysator erzeugt wird. Doch die Designer der Legierung Analyzer rechtfertigen die Entscheidung, innerhalb begrenzter Bereiche durch einen Appell an den kleinen Umfang Hypothese arbeiten: dass ein hoher Anteil der Fehler kann durch Testen eines Programms für alle Testeingänge in einigen kleinen Rahmen finden.

  0   0
Vorherige Artikel Earls Abitur
Nächster Artikel Anna Wing

Kommentare - 0

Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha