Detalhes bibliográficos
Ano de defesa: |
2013 |
Autor(a) principal: |
Santibáñez, Daniel Gustavo San Martín |
Orientador(a): |
Camargo, Valter Vieira de
 |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal de São Carlos
|
Programa de Pós-Graduação: |
Programa de Pós-Graduação em Ciência da Computação - PPGCC
|
Departamento: |
Não Informado pela instituição
|
País: |
BR
|
Palavras-chave em Português: |
|
Palavras-chave em Inglês: |
|
Área do conhecimento CNPq: |
|
Link de acesso: |
https://repositorio.ufscar.br/handle/20.500.14289/549
|
Resumo: |
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. |