Infoscience

Student project

Introducing dynamicity in JavaBIP

The JavaBIP framework allows the coordination of software components in an exogenous manner, while clearly separating the functional and coordination aspects of the system behaviour. JavaBIP implements the principles of the BIP component framework rooted in rigorous operational semantics. The recent work both on BIP and JavaBIP has concentrated on the coordination of static components defined prior to the system deployment, i.e., the architecture of the coordinated system is fixed in terms of its component instances. Nevertheless, modern software systems, often make use of components that can register and unregister dynamically during the system execution. This thesis, presents an extension of the JavaBIP framework than can handle this type of dynamicity. We use first-order interaction logic to define architecture constraints based on component types. Additionally, we use directed graphs with colouring edges to model dependencies among components that determine the validity of an online system. We present the software architecture of our implementation; provide and discuss performance evaluation results.

Related material