Resumo: A Arquitetura de Linha de Produto (ALP) é considerada o artefato mais importante em uma Linha de Produto de Software (LPS), pois engloba um projeto comum a todos os produtos da LPS. Dessa forma, avaliar e modularizar a ALP é imprescindível para se obter um bom projeto de LPS. No entanto, a avaliação e modularização da ALP são atividades difíceis e que exigem grande esforço humano sem o auxílio de uma ferramenta automatizada. Pode ser fácil para um arquiteto reconhecer um bom projeto de ALP, todavia, tendo em vista as complicações apontadas, torna-se difícil obtê-lo. Diante disso, foi proposta a abordagem denominada MOA4PLA (Multi-Objective Approach for Product-Line Architecture Design), a qual tem o propósito de auxiliar o arquiteto a avaliar e melhorar projetos de ALP. Essa abordagem é multiobjetivo e utiliza um modelo de avaliação composto por funções de avaliação para avaliar o projeto de ALP. Tais funções valem-se de diferentes métricas, as quais envolvem propriedades arquiteturais também diferentes, dentre elas as funções CM(pla) e FM(pla). Atualmente, o modelo de avaliação proposto apresenta problemas em algumas funções de avaliação, pois essas funções avaliam o projeto utilizando métricas com diferentes grandezas, de modo que a informação resultante da avaliação é fornecida de maneira mais genérica. Este trabalho propõe, portanto, reestruturar o modelo de avaliação da MOA4PLA, separando as funções de avaliação CM(pla) e FM(pla) por propriedades arquiteturais, gerando novas funções de avaliação e aumentando as opções de otimização da MOA4PLA. Estudos experimentais foram realizados para analisar uma possível correlação entre as novas funções de avaliação. Os resultados apontam que a maioria das funções são negativamente correlacionadas, de modo que quando uma aumenta, a outra diminui. Sendo assim, a função tem que ser selecionada como objetivo, se o arquiteto quiser priorizá-la no processo de otimização.
Abstract: The Product Line Architecture (ALP) is considered the most important artifact in a Software Product Line (LPS), as it includes a joint design to every LPS product. Thus, evaluate and modularize the ALP is essential to get a good LPS design. However, evaluation and modularization of ALP activities are difficult and require great human effort without the aid of an automated tool. It can be easy for an architect to recognize a good ALP design, however, it is difficult to get it. Therefore, MOA4PLA (Multi-Objective Approach for Product-Line Architecture Design), was proposed, which has the purpose to help the architect to evaluate and improve ALP design. This approach is multi-objective and uses an evaluation model composede by evaluation function to assess the ALP design. These functions are based on different metrics, which involve different architectural properties. Currently, the evaluation model presents problems in some evaluation functions, because these functions evaluate the desingn utilizing metrics with different magnitudes, so that the information resultant of the assessment is provided in a more general way. This work therefore proposes to restructure the evaluation model of MOA4PLA, separating the CM (pla) and FM (pla) by its architectural properties, generating new evaluation functions and increasing optimization options. Experimental studies were performed to investigate a possible correlation between the new evaluation functions. The results show that most of the functions are negatively correlated, so that when one function increases the other decreases. Thus the function has to be selected as an objective, if the architect wants to prioritize it in the optimization process. |