Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: LIMA, Gênesis Jeferson Ferreira Pereira de
Orientador(a): FIDALGO, Robson do Nascimento
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 Pernambuco
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/32360
Resumo: Refatoração é uma técnica utilizada para melhorar o código de um software ou de um banco de dados. No contexto de banco de dados relacionais, a literatura aponta 64 padrões de refatoração categorizados em: Estrutural (17), Qualidade de Dados (13), Integridade Referencial (7), Arquitetural (12) e de Métodos (15). Por cobrirem as operações Mde refatoração mais frequentes, os padrões estruturais são os mais utilizados. Contudo, considerando que o esquema relacional é normalmente modelado como um diagrama, o levantamento do estado da arte mostra que os trabalhos relacionados não oferecem um suporte diagramático adequado para cobrir a maioria desses padrões. Por exemplo, nenhum trabalho permite remover visão, adicionar campo derivado ou chave substituta ou dividir coluna. O objetivo desse trabalho é propor uma Linguagem de Modelagem Específica de Domínio (do inglês, Domain Specific Modeling Language - DSML) que ofereça um suporte diagramático para especificar refatorações estruturais em banco de dados relacionais. O desenvolvimento desta proposta inicia com o levantamento do estado da arte (i.e., fundamentação teórica e trabalhos relacionados), o que permite entender os principais conceitos relacionados, bem como as necessidades existentes no contexto de refatoração de banco de dados. Na sequencia, apresenta-se o método utilizado para especificar a DSML proposta e a sua Ferramenta CASE (Computer Aided Software Engineering). Por fim, de modo a avaliar o trabalho proposto, a ferramenta CASE desenvolvida é utilizada para realizar uma avaliação sistematizada da expressividade das refatorações estruturais em um banco de dados relacional. Como resultados tem-se a definição da sintaxe concreta (notação), sintaxe abstrata (metamodelo) e semântica estática (regras de boa formação) da DSML proposta, bem como a implementação da sua ferramenta CASE. Além disso, mostra-se que o trabalho proposto oferece uma melhor cobertura diagramática em relação aos trabalhos relacionados.