Features as Transformations: A Generative Approach to Software Development

Valentino Vranić1 and Roman Táborský1

  1. Institute of Informatics and Software Engineering, Faculty of Informatics and Information Technologies
    Slovak University of Technology in Bratislava, Ilkovičova 2, 84216 Bratislava 4, Slovakia
    vranic@stuba.sk, crudecrude@gmail.com


The objective of feature modeling is to foster software reuse by enabling to explicitly and abstractly express commonality and variability in the domain. Feature modeling is used to configure other models and, eventually, code. These software assets are being configured by the feature model based on the selection of variable features. However, selecting a feature is far from a naive component based approach where feature inclusion would simply mean including the corresponding component. More often than not, feature inclusion affects several places in models or code to be configured requiring their nontrivial adaptation. Thus, feature inclusion recalls transformation and this is at heart of the approach to feature model driven generation of software artifacts proposed in this paper. Features are viewed as transformations that may be executed during the generative process conducted by the feature model configuration. The generative process is distributed in respective transformations enabling the developers to have a better control over it. This approach can be applied to modularize changes in product customization and to establish generative software product lines by gradual refactoring of existing products.

Key words

feature modeling, transformation, metatransformation, generative process, reuse, change, customization, software product lines, variability

Digital Object Identifier (DOI)


Publication information

Volume 13, Issue 3 (November 2016)
Special issue on Trends in Software Technologies
Year of Publication: 2016
ISSN: 2406-1018 (Online)
Publisher: ComSIS Consortium

Full text

DownloadAvailable in PDF
Portable Document Format

How to cite

Vranić, V., Táborský, R.: Features as Transformations: A Generative Approach to Software Development. Computer Science and Information Systems, Vol. 13, No. 3, 759–778. (2016), https://doi.org/10.2298/CSIS160128027V