Parlavantzas, N. and Coulson, G. (2007) Designing and Constructing Modifiable Middleware using Component Frameworks. IET Software, 1 (4). pp. 113-126. ISSN 1751-8806
Abstract
Because of the increasingly diverse and dynamic environments in which they must operate, modern middleware platforms need to explicitly support 'modifiability'. Modifiability should encompass change that is both static and dynamic, small scale and large scale. Also, the process of modification should be flexible, easy to perform and consistency-preserving. To address these needs, a generic component-based modifiability approach is proposed here, and used to build a highly-modifiable middleware framework. The modifiability approach provides design support for building component frameworks (CFs), that is reusable and extensible component architectures that are targeted at specific domains. In the approach, CFs build upon a minimal, technology-independent component model and can be recursively assembled into more complex CFs. The middleware framework - an instantiation of the proposed approach - takes the form of a specific assembly of CFs, each of which addresses a distinct middleware-related concern. This middleware framework supports two styles of modification: First, 'architectural modification' enables large-scale, static changes, such as customising the framework to a new application domain or underlying infrastructure. Second, 'system modification' enables changes that are based on specific customisations of the framework; these changes are smaller in scope (e.g. replacing protocol implementations) but are applicable at both deploy-time and run-time. A prototype implementation demonstrates the feasibility of the approach and framework presented and demonstrates a sufficient degree of supported modifiability.