Resumo: Assimilar a diversidade e a complexidade dos sistemas de software com a heterogeneidade das equipes de profissionais que desenvolvem esses sistemas sempre foi um dos grandes desafios enfrentados pela engenharia de software. Para isso, é necessária a definição, reutilização e melhoria constante de processos de software que organizem as tarefas diárias, auxiliando na melhoria da qualidade e aumentando a produtividade dessas equipes. Entretanto, a manutenção e reutilização de processos de software não é uma tarefa simples. Neste cenário, as linguagens de modelagem de processos de software são importantes, pois descrevem de maneira clara as atividades, tarefas, papéis, artefatos e ferramentas desses processos. Com o objetivo de gerenciar sistematicamente as variabilidades encontradas durante a manutenção e reutilização de processos de software, estudos recentes propõem técnicas e ferramentas baseadas em Linha de Processo de Software (LPrS). Embora essa área de pesquisa ainda não seja consolidada, diversas abordagens encontradas na literatura podem ser consideradas promissoras, como é o caso de SMartySPEM. Essa abordagem propõe um mecanismo para representação de variabilidades em LPrS. Ela é baseada no metamodelo Software & System Process Engineering Metamodel (SPEM) para modelagem de processos e em SMarty para auxiliar no gerenciamento de variabilidades. Esta dissertação apresenta um conjunto de estudos empíricos com o objetivo de avaliar a abordagem SMartySPEM, fornecendo evidências iniciais sobre a viabilidade e a efetividade do seu mecanismo de variabilidade. Para isso, adotou-se a Estratégia Explanatória Sequencial baseada em Métodos Mistos de pesquisa. Os resultados apresentam evidências relevantes sobre a viabilidade e efetividade de SMartySPEM, propõe a evolução de tal abordagem, além de novos insumos para trabalhos futuros relacionados a área de LPrS.
Abstract: Assimilating the diversity and complexity of software systems with the heterogeneity of professionals teams who develop such systems has always been one of the great challenges faced by software engineering. For this, it is necessary to define, reuse and constantly improve software processes that organize daily tasks, helping improve quality and increase the productivity of such teams. However, software processes maintaining and reusing is not a simple task. In this scenario, software process modeling languages (SPML) are important because they clearly describe the activities, tasks, roles, artifacts, and tools of these processes. In order to systematically manage the variability found during the maintenance and reuse of software processes, recent studies propose techniques and tools based on Software Process Line (SPrL). Although this research area is still not consolidated, several approaches found in the literature can be considered promising, as SMartySPEM. This approach proposes a mechanism to represent variability in SPrL. It is based on the SPEM metamodel for process modeling and on SMarty to aid in the management of variabilities. This work presents a set of empirical studies aimed at evaluating the SMartySPEM approach, providing initial evidence on the feasibility and effectiveness of its variability mechanism. For this, the Sequential Explanatory Strategy based on Mixed Methods of research was adopted. The results present relevant evidence on the feasibility and effectiveness of SMartySPEM, proposes the evolution of such an approach, as well as new artifacts for future work related to the SPrL area. |