Modeling Companion for Software Practitioners

  • Egon Börger
  • Alexander Raschke

Table of contents

  1. Front Matter
    Pages i-xxi
  2. Modeling

    1. Front Matter
      Pages 1-1
    2. Egon Börger, Alexander Raschke
      Pages 3-14
    3. Egon Börger, Alexander Raschke
      Pages 15-92
    4. Egon Börger, Alexander Raschke
      Pages 93-133
    5. Egon Börger, Alexander Raschke
      Pages 135-180
    6. Egon Börger, Alexander Raschke
      Pages 181-205
    7. Egon Börger, Alexander Raschke
      Pages 207-239
  3. Implementation

    1. Front Matter
      Pages 241-241
    2. Egon Börger, Alexander Raschke
      Pages 243-250
    3. Egon Börger, Alexander Raschke
      Pages 251-295
    4. Egon Börger, Alexander Raschke
      Pages 297-315
  4. Back Matter
    Pages 317-349

About this book

Introduction

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

Keywords

Abstract State Machines Software Development Software Modeling Business Process Modeling Abstraction, Modeling and Modularity System Description Languages Modeling Methodologies

Authors and affiliations

  • Egon Börger
    • 1
  • Alexander Raschke
    • 2
  1. 1.Dipartimento di InformaticaUniversità di PisaPisaItaly
  2. 2.Institute of Software Engineering and Programming LanguagesUniversität UlmUlmGermany

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-662-56641-1
  • Copyright Information Springer-Verlag GmbH Germany, part of Springer Nature 2018
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Computer Science
  • Print ISBN 978-3-662-56639-8
  • Online ISBN 978-3-662-56641-1
  • About this book