Home > Research > Publications & Outputs > Designing and Constructing Modifiable Middlewar...

Electronic data

Links

Text available via DOI:

View graph of relations

Designing and Constructing Modifiable Middleware using Component Frameworks

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published
Close
<mark>Journal publication date</mark>08/2007
<mark>Journal</mark>IET Software
Issue number4
Volume1
Number of pages14
Pages (from-to)113-126
Publication StatusPublished
<mark>Original language</mark>English

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.