Skip to main content
  • Book
  • © 2018

Principled Software Development

Essays Dedicated to Arnd Poetzsch-Heffter on the Occasion of his 60th Birthday

  • Presents original research results and inspiring visions related to various software engineering topics, including the design and implementation of programming languages, software modeling, and software product lines
  • Includes contributions from prominent researchers in programming languages and software engineering
  • Honors the life’s work of Arnd Poetzsch-Heffter, who has made major contributions to software technology

Buy it now

Buying options

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

Tax calculation will be finalised at checkout

Other ways to access

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

Table of contents (19 chapters)

  1. Front Matter

    Pages i-viii
  2. Smart Contracts: A Killer Application for Deductive Source Code Verification

    • Wolfgang Ahrendt, Gordon J. Pace, Gerardo Schneider
    Pages 1-18
  3. A Methodology for Invariants, Framing, and Subtyping in JML

    • Yuyan Bao, Gary T. Leavens
    Pages 19-39
  4. Trends in Relational Program Verification

    • Bernhard Beckert, Mattias Ulbrich
    Pages 41-58
  5. Collaborative Work Management with a Highly-Available Kanban Board

    • Annette Bieniusa, Peter Zeller, Shraddha Barke
    Pages 59-72
  6. Compositional Semantics for Concurrent Object Groups in ABS

    • Frank S. de Boer, Stijn de Gouw
    Pages 87-98
  7. Same Same But Different: Interoperability of Software Product Line Variants

    • Ferruccio Damiani, Reiner Hähnle, Eduard Kamburjan, Michael Lienhardt
    Pages 99-117
  8. Towards Reliable Concurrent Software

    • Marieke Huisman, Sebastiaan J. C. Joosten
    Pages 129-146
  9. Dynamic Software Updates and Context Adaptation for Distributed Active Objects

    • Einar Broch Johnsen, Ingrid Chieh Yu
    Pages 147-164
  10. Using CSP to Develop Quality Concurrent Software

    • Derrick G. Kourie, Tinus Strauss, Loek Cleophas, Bruce W. Watson
    Pages 165-184
  11. Modular Verification Scopes via Export Sets and Translucent Exports

    • K. Rustan M. Leino, Daniel Matichuk
    Pages 185-202
  12. Abstract and Concrete Data Types vs Object Capabilities

    • James Noble, Alex Potanin, Toby Murray, Mark S. Miller
    Pages 221-240
  13. A Personal History of Delta Modelling

    • Ina Schaefer
    Pages 241-250
  14. Are Synchronous Programs Logic Programs?

    • Klaus Schneider, Marc Dahlem
    Pages 251-266
  15. Illi Isabellistes Se Custodes Egregios Praestabant

    • Simon Bischof, Joachim Breitner, Denis Lohner, Gregor Snelting
    Pages 267-282
  16. Reasoning About Weak Semantics via Strong Semantics

    • Roland Meyer, Sebastian Wolff
    Pages 283-303

About this book

This book presents a collection of research papers that address the challenge of how to develop software in a principled way that, in particular, enables reasoning. The individual papers approach this challenge from various perspectives including programming languages, program verification, and the systematic variation of software. Topics covered include programming abstractions for concurrent and distributed software, specification and verification techniques for imperative programs, and development techniques for software product lines.


With this book the editors and authors wish to acknowledge – on the occasion of his 60th birthday – the work of Arnd Poetzsch-Heffter, who has made major contributions to software technology throughout his career. It features articles on Arnd’s broad research interests including, among others, the implementation of programming languages, formal semantics, specification and verification of object-oriented and concurrent programs, programming language design, distributed systems, software modeling, and software product lines. All contributing authors are leading experts in programming languages and software engineering who have collaborated with Arnd in the course of his career.


Overall, the book offers a collection of high-quality articles, presenting original research results, major case studies, and inspiring visions. Some of the work included here was presented at a symposium in honor of Arnd Poetzsch-Heffter, held in Kaiserslautern, Germany, in November 2018.

Editors and Affiliations

  • Department of Computer Science, ETH Zürich, Zürich, Switzerland

    Peter Müller

  • Institut für Softwaretechnik und Fahrzeuginformatik, Technische Universität Braunschweig, Braunschweig, Germany

    Ina Schaefer

About the editors

Peter Müller is Full Professor and Head of the Chair of Programming Methodology at ETH Zurich since August 2008. His research focuses on languages, techniques, and tools for the development of correct software. His previous appointments include a position at Microsoft Research in Redmond, an Assistant Professorship at ETH Zurich, and a position at Deutsche Bank in Frankfurt. 

Ina Schaefer is Full Professor and Head of the Institute of Software Engineering and Automotive Informatics at TU Braunschweig since April 2012. Her research focus is software variability and software evolution in all phases of software development, in particular in quality assurance and re-engineering. Previously, she was postdoc at Chalmers University of Technology in Gothenburg, Sweden. She completed her PhD in 2008 at TU Kaiserslautern, supervised by Arnd Poetzsch-Heffter.

Bibliographic Information

  • Book Title: Principled Software Development

  • Book Subtitle: Essays Dedicated to Arnd Poetzsch-Heffter on the Occasion of his 60th Birthday

  • Editors: Peter Müller, Ina Schaefer

  • DOI: https://doi.org/10.1007/978-3-319-98047-8

  • Publisher: Springer Cham

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: Springer Nature Switzerland AG 2018

  • Hardcover ISBN: 978-3-319-98046-1Published: 25 October 2018

  • Softcover ISBN: 978-3-030-07442-5Published: 14 December 2018

  • eBook ISBN: 978-3-319-98047-8Published: 23 October 2018

  • Edition Number: 1

  • Number of Pages: VIII, 323

  • Number of Illustrations: 104 b/w illustrations, 10 illustrations in colour

  • Topics: Software Engineering, Mathematical Logic and Formal Languages, Programming Languages, Compilers, Interpreters

Buy it now

Buying options

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

Tax calculation will be finalised at checkout

Other ways to access