Stereotype-based Management of Variability (SMarty)
A abordagem Stereotype-based Management of Variability (SMarty) [1,2], possui suporte, em sua versão 5.1, a modelos UML de casos de uso, classes, atividades, componentes e sequência.
SMarty é composta de um perfil UML, o SMartyProfile, e do processo denominado SMartyProcess. SMarty tem como objetivo permitir que as variabilidades de uma LPS possam ser gerenciadas de forma clara e explícita em modelos UML, e guia o usuário por meio do SMartyProcess na identificação e representação de variabilidades em modelos UML de uma LPS.
O perfil SMartyProfile é formado por um conjunto de estereótipos e meta-atributos para representar variabilidades em modelos UML de LPS. Por meio da UML e seu mecanismo de perfil SMarty permite a representação explícita de variabilidades.
O SMartyProcess é um processo sistemático que guia o usuário na identificação, delimitação, representação, rastreamento de variabilidades e análise de configurações de produtos de uma LPS. Nele há um conjunto de diretrizes que permitem ao usuário a aplicação dos estereótipos do SMartyProfile de forma clara e objetiva.
SMarty 5.1 é resumida conforme apresentado na Figura 2. Nela podemos observar os modelos da UML suportados, bem como um resumo das diretrizes para cada modelo. As setas indicam o processo incremental e interativo entre o SMartyProfile e o SMartyProcess, garantindo a evolução e identificação de novas variabilidades por meio dos modelos UML apoiados pelas diretrizes.

[1] Oliveira Junior, E. A.; Gimenes, I. M. S. & Maldonado, J. C. Systematic Evaluation of Software Product Line Architectures Journal of Universal Computer Science, 2013, 19, 25-52.
[2] Oliveira Junior, E. A.; Gimenes, I. M. S.; Huzita, E. H. M. & Maldonado, J. C. A Variability Management Process for Software Product Lines Proc. Conf. of the Centre for Advanced Studies on Collaborative research, IBM Press, 2005, 225-241.