Middleware facilitates the development of distributed systems by accommodating heterogeneity, hiding distribution details and providing a set of common and domain specific service...
We propose a model for describing the parallel performance of multigrid software on distributed memory architectures. The goal of the model is to allow reliable predictions to be m...
Product line engineering allows for the rapid development of variants of a domain specific application by using a common set of reusable assets often known as core assets. Variabil...
To support rapid software evolution, it is desirable to construct software systems from reusable components. In this approach, the architecture of a system is described as a collec...
The integration of distributed, data dependent components requires a data synchronisation model. We consider a class of systems where data-dependent components produce data in dis...