Modeling and Configuring UML-based Software Product Lines with SMartyModeling
Leandro F. Silva, Edson OliveiraJr · 2020
Variability modeling in UML-based Software Product Lines (SPL) has been carried out mostly using the UML Profiling mechanism. However, there is no UML-based SPL life cycle supporting tool, which takes advantages of UML standard diagrams in a controlled environment exclusively for it. In this scenario, we developed SMartyModeling, which allows SPL modeling on UML models, use of different visualization techniques to SPL/variability information, traceability, and configuration of products. The architecture of SMartyModeling was instantiated based on VMTools-RA, a Reference Architecture for software variability tools. This paper presents the SMartyModeling in an architectural viewpoint, describes its requirements, views, and elements selected from VMTools-RA and the decisions made during the instantiation process. We also present examples of using the environment, modeling an adaptation of the Mobile Media SPL and generating a product. We also discuss lessons learned and performed evaluations.