82 research outputs found
Merging cloned alloy models with colorful refactorings
Likewise to code, clone-and-own is a common way to create variants of a model, to explore the impact of different features while exploring the design of a software system. Previously, we have introduced Colorful Alloy, an extension of the popular Alloy language and toolkit to support feature-oriented design, where model elements can be annotated with feature expressions and further highlighted with different colors to ease understanding. In this paper we propose a catalog of refactorings for Colorful Alloy models, and show how they can be used to iteratively merge cloned Alloy models into a single feature-annotated colorful model, where the commonalities and differences between the different clones are easily perceived, and more efficient aggregated analyses can be performed.This work is financed by the ERDF — European Regional Development Fund
through the Operational Programme for Competitiveness and Internationalisation
– COMPETE 2020 Programme and by National Funds through the Portuguese
funding agency, FCT – Fundação para a Ciência e a Tecnologia within project
PTDC/CCI-INF/29583/2017 – POCI-01-0145-FEDER-029583
Structured document algebra in action
A Structured Document Algebra (SDA) defines modules with variation points and how such modules compose. The basic operations are module addition and replacement. Repeated addition can create nested module structures. SDA also allows the decomposition of modules into smaller parts. In this paper we show how SDA modules can be used to deal algebraically with Software Product Lines (SPLs). In particular, we treat some fundamental concepts of SPLs, such as refinement and refactoring. This leads to mathematically precise formalization of fundamental concepts used in SPLs, which can be used for improved Feature-Oriented Software Development (FOSD) tooling
- …