Análise da Modularidade de Características Aspectuais de Tecnologia para Implementar Linhas de Produtos de Software
Linha De Produtos de Software. Modularidade. Tecnologia Assistiva.
Linha de Produtos de Software (LPS) visa à geração de produtos de software pertencentes a determinado domínio, por meio do reúso sistemático de artefatos de software. Para isso, a abordagem consiste na identificação de features comuns, permitem que os produtos sejam desenvolvidos com comportamento padrão, e features variáveis, permitem a variação no comportamento dos produtos e compõem os produtos específicos. O ponto crítico da LPS é a modularização dos artefatos de software para serem coerentes, bem definidos, independentes e combináveis. Para isso, são utilizadas tecnologias de gerenciamento de variabilidades que permitem o desenvolvimento do conjunto de features da LPS e suportam configuradores para a propagação de escolhas das features e a auto-conclusão dos produtos da LPS. Este trabalho propõe uma investigação da modularidade de uma LPS desenvolvida com três tecnologias de gerenciamento de variabilidades: (i) Orientação a Aspectos, (ii) Orientação a Características, e (iii) Módulos de Características Aspectuais. Para essa investigação, foram coletadas três medidas de acoplamento (Dependency In, Dependency Out e Structural Feature Coupling) e três medidas de coesão (External-ratio Feature Dependency, Internal-ratio Feature Dependency e Lack of Concern-based Cohesion). Essas medidas foram analisadas utilizando o teste de significância de Friedman (com nível de 5% de significância). Primeiramente, foi realizada a análise individual das medidas, por meio da qual foi constatada a diferença significativa entre as tecnologias Orientação a Aspectos e Módulos de características Aspectuais, para todas as medidas. Posteriormente, as medidas foram analisadas conforme o agrupamento em medidas de acoplamento e em medidas de coesão. No entanto, não foi constatada diferença significativa entre as três tecnologias de gerenciamento de variabilidades utilizando as medidas agrupadas em acoplamento e em coesão.