This thesis focuses on model-driven software product line development, which is the combination of the following two software development paradigms: (1) Model-Driven Engineering (MDE), which focuses on modeling software products and automating code generation from product models. In particular, Domain-Specific Modeling (DSM), as a technique in the arena of MDE, is about defining a Domain-Specific Language (DSL) and creating software product models using the language. (2) Software Product Line Engineering (SPLE), is a means to produce similar software products, by consolidating those into product lines to enable managed reuse. In a model-driven Software Product Line (SPL) which adopts DSM technique, products are represented as product models defined in a DSL. The variability (and commonality) of all intended products is specified in a product line model, typically using a variability modeling language. Based on the variability specified in the product line model, reusable model fragments specified using the base DSL, serving as the core assets of the product line, will be reused to derive all intended product models. This thesis provides methods for developing model-driven software product lines, in terms of development methodology, automated assistance and SPL evolution support. Firstly, this thesis presents two results on the methodology for developing a modeldriven SPL: (1) A generic and separate variability modeling language, which can be used to specify a product line model defining how intended product models can vary from each other, both at the domain conceptual level and the realization level (model object level). (2) Guidelines on how to define a DSL that is suitable to serve as the base language for a model-driven SPL, if the base language of the product line does not exist yet. Secondly, this thesis reports on two results in providing automated tool support for model-driven product line development: (1) A method for synthesizing a product line model from a set of existing product models when the product line is not built from scratch. (2) A method for ensuring that all the product models that can be derived from the product line model are intended. Thirdly, this thesis reports on three results in providing support for evolving model-driven SPLs: (1) A method for augmenting the existing product line model when new product models need to be included. (2) A method for suggesting automatic update to the product line model when the core assets of the product line have been changed. (3) A method for calculating semantic difference between two model-driven SPLs. We illustrate the application of our approaches in various case studies in different domains, provided by both industry and academia. Different phases of SPL development and evolution can require substantial amount of manual efforts, of which productivity can be improved by adopting our automatic tool support. We show that
Abstract. Any modeling language can be said to model variability, but our concern is how variability can be expressed generically and thus be standardized on its own and not as an add-on or profile to other languages. In product line engineering feature modeling has been applied to express variants of product models. This paper shows how the Common Variability Language can be designed to enhance feature modeling and automate the production of product models from a product line model.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.