dc.description.abstract |
RESUMO: Linha de Produto de Software (LPS) é uma forma de desenvolvimento de software, na qual existe uma coleção de sistemas que compartilham um conjunto de artefatos, mas possuem componentes customizados para clientes específicos. Muitas são as vantagens de se utilizar uma LPS, como por exemplo, a melhor gestão das aplicações. Entretanto, muitos também são os desafios para a sua adoção por parte de uma empresa. Embora a engenharia de LPS ofereça menores custos à fábrica de software, a sua implantação ainda é um processo oneroso. Existem hoje diversas abordagens distintas para a implantação da linha de produto em um processo de desenvolvimento, definidas para as diferentes necessidades do mercado. Uma delas denomina-se abordagem extrativa, na qual a LPS será construída a partir de produtos de software individuais pré-existentes. Empresas que já possuem diversas variantes de um produto, por exemplo, têm dificuldade em adotar LPS devido, dentre outros motivos, aos próprios custos decorrentes da migração de produtos individuais para uma plataforma única de desenvolvimento. Para realizar essa transição, são necessárias algumas atividades como identificar o que é comum e o que é variante dentre os produtos de software, reunir todo o código em um único local e prover um ambiente único de desenvolvimento. A fim de auxiliar o processo de adoção de LPS, este trabalho propõe um método para apoiar as empresas na primeira das etapas acima citadas, que é identificar as comunalidades e variabilidades existentes nos produtos que fazem parte do portfólio da empresa. Para alcançar esse objetivo, o método propõe uma ferramenta de visualização dessas comunalidades e variabilidades. De posse dessa informação, o gerente de projetos possui maiores subsídios para guiar o planejamento da reengenharia de seus produtos. Também foi realizada uma avaliação experimental na qual pode-se observar a eficiência da ferramenta desenvolvida sendo utilizada por acadêmicos e profissionais da área. ABSTRACT: Software Product Line (SPL) is an approach to develop collections of systems that share a set of artefacts, but also have customizations to individual customers. Despite the advantages of the SPL approach, such as improvement of the applications management, the adoption is still a challenge. Although SPL engineering can be applied to save development costs, its implantation is still a costly process. Nowday, there are three approachs to product line implatation in a development process that are defined according to the varying need of the companies. In the extractive approach, the SPL is built from single pre-existing software product. Companies with already existing variants of a product may have difficulties to adopting SPL due, among others, to own migration cost from single products to a single development platform. Some activities must be executed to perform the transition, as to identify the common and the variable elements among the products, to gather all the code in a unique local and provide an environment to integrated development. In order to reduce the adoption costs, this work proposes a method to support the companies in the first activity presented above, that is the identification of commonalities and variabilities of the products that are part of the company product portfolio. To achieve this objective, the method proposes visualization techniques to support the process. This information can help stakeholders to guide the reengineering planning of your products. |
pt_BR |