Skip to main content
Book cover

Modeling Companion for Software Practitioners

  • Book
  • © 2018

Overview

  • Introduces a rigorous modeling method for complex, software-intensive systems based on Abstract State Machines
  • Uses numerous examples to illustrate how to build, explain, debug, and maintain a software system based on stepwise refinement
  • Complemented by a website with teaching material, further refinements and executable versions of many models defined

This is a preview of subscription content, log in via an institution to check access.

Access this book

eBook USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

Table of contents (9 chapters)

  1. Modeling

  2. Implementation

Keywords

About this book

This book uses a variety of applications to illustrate a modeling method that helps practitioners to manage complex software-intensive systems. The proposed method relies on the combination of its abstraction concept and its operational character, with behavioral models in the precise and simple form of Abstract State Machines (ASMs).


The book introduces both the modeling method (Part I) and the available tool support (Part II): In Part I the authors detail (using numerous examples) how to construct, explain, debug, explore, extend and reuse accurate system design models, starting from scratch. Only an elementary knowledge of common mathematical (including set-theoretic) notation and some basic experience with computational processes (systems, programs, algorithms) is assumed. Part II then shows how the modeling method can be supported by implementing tools that make design models executable and debuggable.


To illustrate how to build, debug and maintain systems and to explain their construction in a checkable manner, a general, problem-oriented refinement method is adopted to construct system models from components. The method starts with abstract models and refines them step by step, incrementally adding further details that eventually lead to code.


Intended for practitioners who build software intensive systems, and students specializing in software engineering, it can be used both for self-study and for teaching, and it can serve as a reference book. Exercises are included to help readers check their understanding of the explained concepts. For many models defined in the book, refinements to executable versions can be downloaded for experimental validation from the book’s website at http://modelingbook.informatik.uni-ulm.de

Authors and Affiliations

  • Dipartimento di Informatica, Università di Pisa, Pisa, Italy

    Egon Börger

  • Institute of Software Engineering and Programming Languages, Universität Ulm, Ulm, Germany

    Alexander Raschke

About the authors

Egon Boerger has worked since 1972 as professor of computer science at the Universities of Salerno, Dortmund, Udine and Pisa (since 1985). He spent sabbatical years with IBM, Siemens, Microsoft, SAP and ETH Zürich. He is the author of six books on logic, computer science and modeling business processes. In 2007 he received the Humboldt Research Award for his work in logic and computer science. His current interest is in rigorous modeling methods for concurrent software-intensive systems.

Alexander Raschke is an assistant professor at the Institute of Software Engineering and Programming Languages at Ulm University where he acquired most of his extensive teaching and project experience with industrial and academic partners. After some experience in industry, he came back to academia and leads currently the CoreASM project, which provides tool support to make design models executable. His research interests focus on precise modeling methods one can use in industrial practice.

Bibliographic Information

Publish with us