Abstract State Machines

A Method for High-Level System Design and Analysis This book introduces into a new software engineering method which guides the development of systems seamlessly from requirements capture to coding. The method bridges the gap between understanding and formulating real-world problems by humans and the deployment of their solutions by code-executing machines on changing platforms.It covers design and analysis for both hardware and software systems.It has a scientific foundation and improves current industrial practice by linking the descriptions at the successive stages of the system development cycle in a coherent conceptual framework to keep the system models at related levels synchronized.The method supports the integration of standard design, analysis and documentation techniques for model reuse (by abstraction), validation (by simulation and high-level testing), verification (by reasoning) and maintenance (by structured documentation). The book is addressed to software engineers (architects, designers, program managers, implementers), researchers, lecturers and students. It is conceived as Modeling Handbook for the Working Software Engineer and as ASM Compendium. As textbook it supports both self-study (providing numerous exercises) and teaching (coming with lecture slides on an accompanying CD). Springer-Verlag 2003, ISBN 3-540-00702-4