Paper Build Level Component Based Software Engineering
Submitted for publication.
A lot of potentially reusable functionality exists in current software
systems that does not become available for reuse. An important reason is
that while at the functional level well-known modularization principles are
applied for structuring functionality into modules, this is not the case at
the build level for structuring files in directories. This leads to a
situation where files are entangled in directory hierarchies and build
processes, making it hard to extract functionality and to make functionality
suitable for reuse. Consequently, software may not become available for reuse
at all, or only in rather large chunks of functionality, which may lead to
extra software dependencies.
We propose to improve this situation by applying component-based software
engineering (CBSE) principles to the build level. Build-level components
serve to make artefacts reusable, while build-level composition techniques
serve to assemble complete applications. This combines advantages of having
small components (e.g., reuse) and large systems (e.g., ease of deployment).
In this article we explore build-level CBSE in full detail. We discuss
theory and practice of build-level development, deployment and composition
techniques. Case studies demonstrate the feasibility of our techniques.
Failed to include URL http://www.cs.uu.nl/wiki/pub/Merijn/PaperBuildLevelComponentBasedSoftwareEngineering/BuildLevelCBSE.bib
- 09 Nov 2004