A liskov principle for delta-oriented programming

  • Authors:
  • Reiner Hähnle;Ina Schaefer

  • Affiliations:
  • Department of Computer Science, Technische Universität Darmstadt, Darmstadt, Germany;Institute for Software Systems Engineering, Technical University of Braunschweig, Braunschweig, Germany

  • Venue:
  • ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

In formal verification of software product families one not only analyses programs, but must act on the artifacts and components which are reused to obtain software products. As the number of products is exponential in the number of artifacts, it is crucial to perform verification in a modular way. When code reuse is based on class inheritance in OO programming, Liskov's principle is a standard device to achieve modular verification. Software families, however, employ other variability modeling techniques than inheritance. Delta-oriented programming is an approach to implement a family of programs where code reuse is achieved via gradual transformation of a core program. We define a Liskov principle for delta-oriented programming and show that it achieves modular verification of software families developed in that paradigm.