Please use this identifier to cite or link to this item: https://doi.org/10.1049/ip-sen:20000914
Title: Engineering components for ease of customisation and evolution
Authors: Jarzabek, S. 
Seviora, R.
Issue Date: 2000
Source: Jarzabek, S.,Seviora, R. (2000). Engineering components for ease of customisation and evolution. IEE Proceedings: Software 147 (6) : 237-248. ScholarBank@NUS Repository. https://doi.org/10.1049/ip-sen:20000914
Abstract: Building software systems out of prefabricated components is a very attractive vision. Distributed component platforms (DCP) and their visual-development environments bring this vision closer to reality than ever. At the same time, some experiences with component libraries warn us about potential problems that arise when software-system families or systems evolve over many years of changes. Indeed, implementation-level components, when affected by many independent changes, tend to grow in both size and number, impeding reuse. This unwanted effect is analysed in detail. It is argued that components affected by frequent unexpected changes require higher levels of flexibility than the 'plug-and-play' paradigm is able to provide. A program-construction environment is proposed, based on generative programming techniques, to help in customisation and evolution of components that require much flexibility. This solution allows the benefits of DCPs to be reaped during runtime and, at the same time, keeps components under control during system construction and evolution. Salient features of a construction environment for component-based systems are discussed. Its implementation with commercial reuse technology Fusion™ is described, illustrating with examples from domain-engineering projects. The main lesson learnt from the project is that generative-programming techniques can extend the strengths of the component-based approach in two important ways. First, generative-programming techniques automate routine component customisation and composition tasks and allow developers work more productively, at a higher abstraction level. Secondly, as custom components with required properties are generated on demand, it is not necessary to store and manage multiple versions of components; components do not overly grow in size, helping developers keep the complexity of an evolving system under control.
Source Title: IEE Proceedings: Software
URI: http://scholarbank.nus.edu.sg/handle/10635/39217
ISSN: 14625970
DOI: 10.1049/ip-sen:20000914
Appears in Collections:Staff Publications

Show full item record
Files in This Item:
There are no files associated with this item.

SCOPUSTM   
Citations

12
checked on Dec 12, 2017

Page view(s)

39
checked on Dec 8, 2017

Google ScholarTM

Check

Altmetric


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.