Customization of open source software systems, such as the development of specific artifacts that meet their functional and non-functional requirements, can be licensed to acquiring organizations. However, it brings future problems to system maintenance, which in parallel is in constant evolution by their creators. The biggest challenge on this scenery is handling the evolutions of the original system made by their creators, which usually impact the acquiring organizations artifacts. In this context, the application of Software Product Lines (SPL) techniques emerges as a proposal to provide support in customizing acquired software. This study aims to evaluate in a real context and through controlled experiments the process of adaptation and maintenance of customized systems by comparing the approach currently used in the customizations, performed directly on the base code of the original system with the LPS techniques AspectJ, FeatureHouse and XVCL. The selection of those techniques for evaluation was based on a comparative analysis of the techniques raised on a systematic study that was realized, taking as a premise the possibility of creating customizable artifacts and the implementation of the variations apart of the base code, keeping it intact. Finally, after the experiment proposed in this study, quantitative and qualitative results regarding the usage of the SPL techniques AspectJ, FeatureHouse and XVCL in the adaptation and maintenance of customizable systems were obtained. These results show that FeatureHouse and XVCL were considered equivalent to each other and to the current approach. AspectJ, though it proved feasible, requires a steep learning curve. However, the adoption of one of those SPL techniques brings qualitative gains due to the possibility of creating customizable software artifacts and to the separation of the variations from the system base code. / Customizações em sistema de software open-source, tais como o desenvolvimento de artefatos específicos que atendam seus requisitos funcionais e não funcionais, pode ser licenciada às organizações adquirentes. Contudo, traz problemas futuros à manutenção do sistema, o qual paralelamente está em constante evolução pelos seus criadores. O maior desafio neste cenário é lidar com as evoluções do sistema original realizadas pelos criadores, que normalmente impactam os artefatos das organizações adquirentes. Neste contexto, a aplicação de técnicas de Linha de Produto de Software (LPS) surge como uma proposta para prover suporte na customização de software adquirido. Este estudo objetiva avaliar em um contexto real e através de experimentos controlados, o processo de adaptação e manutenção de sistemas customizados, comparando a abordagem atualmente usada nas customizações realizadas diretamente no código base do sistema original com as técnicas LPS AspectJ, FeatureHouse e XVCL. A seleção dessas técnicas para avaliação foi baseada em uma análise comparativa das técnicas levantadas no estudo sistemático realizado, tomando como premissa a possibilidade de criação de artefatos customizáveis e a implementação das variações separada do código base, mantendo-o intacto. Finalmente, após o experimento proposto neste estudo, resultados quantitativos e qualitativos sobre o uso das técnicas de LPS AspectJ, FeatureHouse e XVCL na adaptação e manutenção de sistemas customizáveis foram obtidos. Estes resultados mostram que FeatureHouse e XVCL foram consideradas equivalentes entre si e à abordagem atual. AspectJ, embora tenha se provado viável, demanda uma acentuada curva de aprendizado. Entretanto, a adoção de uma destas técnicas de LPS traz ganhos qualitativos devido à possibilidade de criar artefatos de software customizáveis e a separação das variações do código base do sistema.
Identifer | oai:union.ndltd.org:IBICT/oai:ri.ufs.br:riufs/3387 |
Date | 24 September 2014 |
Creators | Passos, Fernanda Almeida |
Contributors | Costa Neto, Alberto |
Publisher | Universidade Federal de Sergipe, Pós-Graduação em Ciência da Computação, UFS, BR |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Repositório Institucional da UFS, instname:Universidade Federal de Sergipe, instacron:UFS |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.003 seconds