Extensões do metamodelo KDM para apoiar modernizações orientadas a aspectos de sistemas legados

Detalhes bibliográficos
Ano de defesa: 2014
Autor(a) principal: Santos, Bruno Marinho
Orientador(a): Camargo, Valter Vieira de lattes
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:
POA
Palavras-chave em Inglês:
ADM
KDM
Área do conhecimento CNPq:
Link de acesso: https://repositorio.ufscar.br/handle/20.500.14289/593
Resumo: Maintaining legacy systems is a complex and expensive activity for many companies. A recently proposal to solve this problem is Architecture-Driven Modernization (ADM), proposed by Object Management Group (OMG). The ADM consists of a set of concepts and standard metamodels that support systems modernization using models. The Knowledge Discovery Metamodel (KDM) is the main metamodel of ADM, it can represent many artifacts of a legacy system, such as source code, architecture, user interface, configuration files and business process. In general, legacy systems have crosscutting concerns, it can show source code problems like tangling and scattering, and it raises the maintenance costs. The aspect orientation is an alternative to improve crosscutting concerns modularization. Thus, in this dissertation is presented the term Aspect Oriented Modernization that uses the aspect oriented concepts in the ADM context. This modernization process consists in modularize legacy systems with aspects represented in model level. To achieve this goal, in this work were performed a lightweight and a heavyweight extension in the KDM metamodel, to analyze which one would present a better performance if used by Modernization Engineers. The evaluation of these extensions was performed by a case study that considered the modernization with aspects of a small-sized system. To evaluate the case study in both extensions, a set of comparison criteria were created to support the software engineers in choosing the best extension mechanism, according to their needs. In the context of this dissertation an experimental study were developed that aimed reproducing the scenarios that the modernization engineers had to perform maintenances and developing new refactorings in a aspect oriented KDM model. The experiment data considered the development time of the activities and the found number of errors. Finally, it was noticed that the extension mechanism to be choose will depend on the context that it will be applied, however, considering the approach studied here the best extension mechanism is the heavyweight one.