- Abstract State Machine
-
Eine abstrakte Zustandsmaschine (englisch Abstract State Machine (ASM), ehemals auch Evolving Algebra (EVA) genannt), ist in der Informatik ein Modell zur formalen, operationellen Beschreibung von Algorithmen. Anders als bei endlichen Automaten, deren Zustände lediglich Namen haben, sind die Zustände einer ASM allgemeine mathematische Strukturen.
Insbesondere im Gebiet des Übersetzerbaus dient das Modell der Beschreibung der Semantik des zu übersetzenden Programms, und es hilft sicherzustellen, dass die Semantik des zu übersetzenden Programms erhalten bleibt (Verifizierung). Aber auch bei der Entwicklung von Software im Allgemeinen erlaubt das Modell in der Analyse- und Entwurfsphase eine formale Beschreibung der funktionalen Anforderungen. Diese mathematische Herangehensweise verbessert beispielsweise Verifizierbarkeit und Wiederverwendbarkeit.
Inhaltsverzeichnis
Ursprung
Der Erfinder des Modells ist Yuri Gurevich von Microsoft.[1] Der in Italien an der Universität Pisa ansässige Informatiker Egon Börger erforscht Methoden zur Anwendung abstrakter Zustandsmaschinen bei Entwurf und Analyse von Hardware- und Softwaresystemen.[2]
Mittlerweile gibt es unterschiedliche Implementierungen des Modells, sodass Entwurf und Interpretation von Programmen für die abstrakten Maschine rechnergestützt erfolgen kann.
Literatur
- Y. Gurevich, P. Kutter, M. Odersky, L. Thiele (Hrsg.), Abstract State Machines: Theory and Applications, Lecture Notes in Computer Science, Vol. 1912, Springer-Verlag, 2000. (ISBN 3-540-67959-6)
Quellen
- ↑ A New Thesis, Abstracts, American Mathematical Society, Vol. 6, No. 4 (August 1985), page 317, abstract 85T-68-203
- ↑ E. Börger, R. Stärk, Abstract State Machines: A Method for High-Level System Design and Analysis, Springer-Verlag, 2003. (ISBN 3-540-00702-4)
Weblinks
Informationen
- Abstract State Machines - Definition, Beispiele und Gegenbeispiele (19 Seiten PDF)
- Abstract State Machines - kurze Erklärung, ausführliche Definition (englisch, 12 Seiten PDF)
- Abstract State Machines - sortierte Materialien (englisch)
- ASM Workshops - Veranstaltungen zum Thema (englisch)
Implementierungen
- AsmL (Abstract State Machine Language) - von Yuri Gurevich entworfene Sprache
- XASM (Anlauff's eXtensible ASMs) - erweiterbare, minimale Sprache
- Das CoreASM Projekt - Verifikation verteilter und eingebetteter Systeme
- TASM (Timed Abstract State Machine Language and Toolset - Erweiterungen zur Beschreibung nicht-funktionaler Eigenschaften
- ASMETA Projekt - ASM-Metamodell nach den Richtlinien der modellgetriebenen Softwareentwicklung für Interoperabilität zwischen ASM-Sprachen
Wikimedia Foundation.