Modeling software product line variability in use case scenarios: an approach based on crosscutting mechanisms - de Albuquerque Ribeiro, Rafael (2010)
A Gerência de Variações é um desafio para a adoção de Linhas de Produtos de Software, uma vez que os desenvolvedores precisam de meios para especificar e implementar variações que ocorrem em diferentes tipos de artefatos (como requisitos, projeto e arquitetura, código fonte e casos de testes). Esta tese apresenta uma nova abordagem para gerenciar variações em cenários de casos de uso. Tal abordagem, Modeling Scenario Variabilities as Crosscutting Mechanisms (MSVCM), objetiva melhorar a separação de preocupações entre a representação de variações e as especificações de cenários, possibilitando aos engenheiros do domínio e da aplicação compreender evoluir ambas as preocupações de forma independente. MSVCM alcança tal objetivo graças ao uso extensivo de mecanismos composicionais para a derivação de produtos, idéia motivada pelo fato de que artefatos como modelos de features, configuração de produtos e modelos de conhecimento da configuração se entrecortam em relação aos membros da linha de produtos. Após a avaliação da abordagem proposta, por meio de alguns estudos de casos, identificou-se que MSVCM reduz o espalhamento de features e melhora a coesão das especificações de cenários. Estes resultados sugerem que a evolução das especificações usando a técnica proposta nesta tese requer alterações mais localizadas, quando comparada com outras abordagens existentes. Por outro lado, os resultados de três experimentos controlados apresentaram evidências de que MSVCM apenas reduz o tempo necessário para evoluir as especificações de uma LPS quando os participantes possuem grande familiaridade com a técnica proposta e com o processo de evoluir especificações de linhas de produtos