12,000

We have over 12,000 students, from over 100 countries, within one of the safest campuses in the UK

93%

93% of Lancaster students go into work or further study within six months of graduating

Home > Research > Publications & Outputs > Designing and Constructing Modifiable Middlewar...
View graph of relations

« Back

Designing and Constructing Modifiable Middleware using Component Frameworks

Research output: Contribution to journalJournal article

Published

Journal publication date08/2007
JournalIET Software
Journal number4
Volume1
Number of pages14
Pages113-126
Original languageEnglish

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.