A Field Study on Reference Architectural Decisions for Developing a UML-Based Software Product Line Tool - Silva, Leandro F.; OliveiraJr, Edson; Santos, Rodrigo Pereira dos (Anais do Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software (SBCARS); 2022: Anais do XVI Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software, 2022)
Variability modeling in Software Product Lines (SPL) encompasses a set of activities, such as domain analysis, identification of requirements, implementation of variability, variant management, and generation of products. In this context, the existing literature does not present any tools with native support for UML-based SPLs. To deal with the lack of practical solutions, an alternative to variability modeling is to handle XMI files for general-purpose UML tools. However, it requires significant effort, is time-consuming and error-prone, and does not provide users control over data for the SPL life cycle activities. To cope with this scenario, we developed SMartyModeling, an environment to allow SPL-related variability modeling on requirements, features, and UML models, thus providing visualization techniques to SPL/variability information, traceability, and configuration of products. To evolve SMartyModeling, we previously evaluated it throughout two studies: a comparative experiment between SMartyModeling and a general-purpose UML modeling tool, and a survey-based qualitative study on its usability. Results made it possible to identify benefits, limitations, and corrections on the main problems reported by the participants. More specifically in this paper, we present results of a field study focused on analyzing architectural decisions taken during the SMartyModeling instantiation process from a variability tools reference architecture (RA). We took into consideration the opinion of 13 experts in SPL and RA. Experts considered the architectural decisions and the solutions proposed adequate, and the architecture clear and objective. In addition, the analysis of the experts quotes allowed us to identify improvements in the instantiation process, as well as in the instantiated architecture. For example, inclusion of notations to ease the understanding of the instantiation process and the underlying decisions, clear representation of the MVC Design Pattern, and inclusion of other elements to the source RA.