IEEE Transactions on Software Engineering
Product Line Implementation using Aspect-Oriented and Model-Driven Software Development
SPLC '07 Proceedings of the 11th International Software Product Line Conference
CiAO: an aspect-oriented operating-system family for resource-constrained embedded systems
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Multi-Level Product Line Customization
Proceedings of the 2010 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the 9th SoMeT_10
Consistent product line configuration across file type and product line boundaries
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
I4Copter: an adaptable and modular quadrotor platform
Proceedings of the 2011 ACM Symposium on Applied Computing
Light-weight tool support for staged product derivation
Proceedings of the 16th International Software Product Line Conference - Volume 1
Hi-index | 0.00 |
Deriving a product from a software product line may require various build tasks, such as model transformations, source code generation, preprocessing, compiling, as well as linking and packaging the compiled sources. Usually implemented using simple scripting languages, such as Apache ant or GNU make, build systems tend to become monolithic entities, which are intricate to adapt and maintain. This makes developing the build system for a multi-- product-line, which is composed of several sub--product-lines and maybe other configurable components, particularly challenging. Several, previously independent build systems--- possibly implemented using different build tools (ant, make, etc.)---need to be integrated. In this paper, we approach this by using models to describe the involved build tasks (including their input and output parameters) as well as their composition. An interpreter evaluates the models and executes the tasks in the composed order with the configured parameters to produce the final product. Our approach enables the interaction of build systems implemented with different tools with only little development effort, whereas the build order and parameter flow is made explicit in the models. We have started to apply our tooling to model the build system of two multi--product-lines, where it reveals sufficient expressiveness and clarifies the build system interaction.