Made available in DSpace on 2016-06-02T19:06:09Z (GMT). No. of bitstreams: 1
5515.pdf: 2859644 bytes, checksum: 8f2473af784eb07ff38067a957051dde (MD5)
Previous issue date: 2013-08-27 / Universidade Federal de Sao Carlos / Software systems are considered legacy when they were developed many years ago with outdated technologies and their maintenance process consumes a large amount of resources. One cause of these problems is the inadequate modularization of its crosscutting concerns. In this situation, an alternative is to modernize the system with a new language to provide better support for concern modularization. ADM (Architecture-Driven Modernization) is an OMG model-driven proposal to modernize legacy systems and consist of a set of metamodels in which the main metamodel is KDM (Knowledge Discovery Metamodel), which allows to represent all the characteristics of a system. The modernization process begins with reverse engineering to represent the legacy system in a KDM model. Thereafter, refactorings can be applied to the model and then generate the modernized code. However, the current proposals do not support crosscutting concerns modularization. This occurs because the first step is to identify the elements which contribute with the implementation of a particular concern and it is not supplied by ADM. In this sense, this dissertation presents an approach for mining crosscutting concerns in KDM models, thus establishing the first step towards to a Concern-Driven modernization. The approach is a combination of two techniques, a concern library and a modified K-means clustering algorithm, which comprises four steps where the input is a KDM model and the result is the same KDM model with annotated concerns and some log files. In addition, we developed an Eclipse plugin called CCKDM to implement the approach. An evaluation was performed involving three software systems. The results show that for systems using APIs to implement their concerns the developed technique is an effective method for identifying them, achieving good values of precision and recall. / Sistemas de software são considerados legados quando foram desenvolvidos há muitos anos com tecnologias obsoletas e seu processo de manutenção consome uma quantidade de recursos além da desejada. Uma das causas desses problemas é a modularização inadequada de seus interesses transversais. Quando se encontram nessa situação, uma alternativa é modernizar o sistema para novas linguagens que forneçam melhor suporte à modularização desse tipo de interesse. A ADM (Architecture-Driven Modernization) é uma proposta do OMG para a modernização orientada a modelos de sistemas legados, sendo composta por um conjunto de metamodelos, em que o principal é o KDM (Knowledge Discovery Metamodel), que permite representar todas as particularidades de um sistema. O processo de modernização inicia-se com a engenharia reversa, em que o sistema legado é inteiramente representado em KDM. Depois disso, pode-se aplicar refatorações nesse modelo e gerar o código modernizado. Entretanto, a proposta atual da ADM não inclui suporte para modularizar interesses transversais de um sistema. Isso ocorre porque o primeiro passo desse processo é minerar e encontrar os elementos que contribuem para a implementação de um dado interesse, e isso não é fornecido pela ADM. Nesse sentido, nesta dissertação é apresentada uma abordagem para mineração de interesses no metamodelo KDM, estabelecendo o primeiro passo para um processo de modernização dirigido a interesses. A abordagem de mineração proposta atua com uma combinação de duas técnicas; uma biblioteca de interesses e um algoritmo modificado K-means para agrupar strings similares. A abordagem inclui quatro passos onde a entrada é um modelo KDM e o resultado é o mesmo modelo KDM com os interesses anotados e mais alguns arquivos de registro. Além disso, desenvolveuse um plugin chamado CCKDM para o ambiente Eclipse que implementa a abordagem. Uma avaliação foi realizada envolvendo três sistemas de software. Os resultados da avaliação mostraram que para sistemas que utilizam APIs para implementar seus interesses a técnica desenvolvida é efetiva para a identificação deles, atingindo bons valores de precisão e cobertura.
Identifer | oai:union.ndltd.org:IBICT/oai:repositorio.ufscar.br:ufscar/549 |
Date | 27 August 2013 |
Creators | Santibáñez, Daniel Gustavo San Martín |
Contributors | Camargo, Valter Vieira de |
Publisher | Universidade Federal de São Carlos, Programa de Pós-graduação em Ciência da Computação, UFSCar, BR |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Repositório Institucional da UFSCAR, instname:Universidade Federal de São Carlos, instacron:UFSCAR |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0192 seconds