Components, Contracts and Vocabularies - Making Dynamic Component Assemblies more Predictable

Jens Dietrich, Graham Jenson
2009 Journal of Object Technology  
In recent years, dynamic component-based systems such as OSGi and its derivatives have become very successful. This has created new challenges for verification. Assemblies are created and modified dynamically at runtime, but many existing techniques such as unit testing are designed for buildtime verification. Runtime verification is usually restricted to type checks. We propose a simple component contract language that is powerful enough to represent different types of complex contracts
more » ... collaborating components, including contracts with respect to component semantics and quality of service attributes, and contracts that refer to resources other than programing language artefacts. These contracts are based on a pluggable contract vocabulary and can then be used for runtime verification of assemblies. We present a proof of concept implementation of the contract language proposed for the OSGi/Eclipse component model.
doi:10.5381/jot.2009.8.7.a4 fatcat:hyiw5llsgbhklfd3sw4scuzuuy