Principled Software Development [electronic resource] : Essays Dedicated to Arnd Poetzsch-Heffter on the Occasion of his 60th Birthday /
Müller, Peter.editor.
Schaefer, Ina.editor.
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.
Includes bibliographical references.
Smart Contracts - A Killer Application for Deductive Source Code Verification -- A Methodology for Invariants, Framing, and Subtyping in JML -- Trends in Relational Program Verification -- Collaborative work management with a highly-available Kanban board -- A Case for Certifying Compilers in Industrial Automation -- Compositional Semantics for Concurrent Object Groups in ABS -- Same Same But Different: Interoperability of Software Product Line Variants -- A Hoare Logic Contract Theory An Exercise in Denotational Semantics -- Towards Reliable Concurrent Software -- Dynamic Software Updates and Context Adaptation for Distributed Active Objects -- Using CSP to Develop Quality Concurrent Software -- Modular Verification Scopes via Export Sets and Translucent Exports -- The Binomial Heap Verification Challenge in Viper -- Abstract and Concrete Data Types vs Object Capabilities -- A Personal History of Delta Modelling -- Are Synchronous Programs Logic Programs? -- Illi Isabellistes Se Custodes Egregios Praestabant -- Reasoning about Weak Semantics via Strong Semantics -- Recipes for Coffee - Compositional Construction of JAVA Control Flow Graphs in GROOVE.
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.
Software engineering.
Mathematical logic.
Programming languages (Electronic computers).
Software Engineering.
Mathematical Logic and Formal Languages.
Programming Languages, Compilers, Interpreters.