Static verification of indirect data sharing in loosely-coupled component systems

  • Authors:
  • Lieven Desmet;Frank Piessens;Wouter Joosen;Pierre Verbaeten

  • Affiliations:
  • DistriNet Research Group, Department of Computer Science, Katholieke Universiteit Leuven, Leuven, Belgium;DistriNet Research Group, Department of Computer Science, Katholieke Universiteit Leuven, Leuven, Belgium;DistriNet Research Group, Department of Computer Science, Katholieke Universiteit Leuven, Leuven, Belgium;DistriNet Research Group, Department of Computer Science, Katholieke Universiteit Leuven, Leuven, Belgium

  • Venue:
  • SC'06 Proceedings of the 5th international conference on Software Composition
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

To maintain loose coupling and facilitate dynamic composition, components in a pipe-and-filter architecture have a very limited syntactic interface and often communicate indirectly by means of a shared data repository. This severely limits the possibilities for compile time compatibility checking. Even static type checking is made largely irrelevant due to the very general types given in the interfaces. The combination of pipe-and-filter and a shared data repository is widely used, and in this paper we study this problem in the context of the Struts framework. We propose simple, but formally specified, behavioural contracts for components in such frameworks and show that automated formal verification of certain semantical compatibility properties is feasible. In particular, our verification guarantees that indirect data sharing through the shared data repository is performed consistently.