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

Detalhes bibliográficos
Autor(a) principal: LIMA, Gênesis Jeferson Ferreira Pereira de
Data de Publicação: 2018
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPE
Texto Completo: 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.
id UFPE_c63d68cbb109d12f1b028670e4e3d631
oai_identifier_str oai:repositorio.ufpe.br:123456789/32360
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str 2221
spelling LIMA, Gênesis Jeferson Ferreira Pereira dehttp://lattes.cnpq.br/2709192175900457http://lattes.cnpq.br/6390018491925933FIDALGO, Robson do Nascimento2019-09-06T19:45:23Z2019-09-06T19:45:23Z2018-03-09https://repositorio.ufpe.br/handle/123456789/32360Refatoraçã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.Refactoring is a technique applied to improve both software code and the objects of a database. In the relational database context, the literature points out 64 refactoring patterns categorized in: Structural (17), Data Quality (13), Referential Integrity (7), Architectural (12) and Methods (15). Since the structural patterns covers the most frequent refactoring operations, they are the most used. However, the state of the art survey shows that the related works does not provide adequate support to cover most of these patterns. Since the relational schema is usually modeled by diagram, this work aims to provide a Domain Specific Modeling Language (DSML) that delivers better support for specifying structural refactorings in relational databases. The development of this proposal starts with a survey of the state of the art (i.e., theoretical foundation and related works), which bring to light the key concepts as well as the existing needs in the field of database refactoring. Next, the method used to specify the proposed DSML and its Computer Aided Software Engineering (CASE) tool are shown. Finally, in order to evaluate the proposed work, the developed CASE tool is used to perform a systematic expressiveness evaluation of the structural refactorings in a relational database. The results of the proposed DSML concrete syntax (notation), abstract syntax (metamodel) and static semantics (well-formedness rules) are introduced, as well as the implementation of its CASE tool. In addition, it is shown that the proposed work offers a better coverage than findings.porUniversidade Federal de PernambucoPrograma de Pos Graduacao em Ciencia da ComputacaoUFPEBrasilAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessBanco de dadosBanco de dados relacionalUma linguagem de modelagem para refatoração estrutural de banco de dados relacionaisinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesismestradoreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETHUMBNAILDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdf.jpgDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdf.jpgGenerated Thumbnailimage/jpeg1254https://repositorio.ufpe.br/bitstream/123456789/32360/6/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdf.jpgec266b49d85c05dd4018640bd2f61951MD56ORIGINALDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdfDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdfapplication/pdf3348323https://repositorio.ufpe.br/bitstream/123456789/32360/1/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdfb0cdfc9339e7849e3a9609b4fe9d6a68MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-82311https://repositorio.ufpe.br/bitstream/123456789/32360/3/license.txt4b8a02c7f2818eaf00dcf2260dd5eb08MD53CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufpe.br/bitstream/123456789/32360/4/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD54TEXTDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdf.txtDISSERTAÇÃO Gênesis Jeferson Ferreira Pereira de Lima.pdf.txtExtracted texttext/plain290146https://repositorio.ufpe.br/bitstream/123456789/32360/5/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdf.txt3fe135522b4a4688e24547cab6c890b1MD55123456789/323602019-10-25 10:52:02.635oai:repositorio.ufpe.br:123456789/32360TGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKClRvZG8gZGVwb3NpdGFudGUgZGUgbWF0ZXJpYWwgbm8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgKFJJKSBkZXZlIGNvbmNlZGVyLCDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBQZXJuYW1idWNvIChVRlBFKSwgdW1hIExpY2Vuw6dhIGRlIERpc3RyaWJ1acOnw6NvIE7Do28gRXhjbHVzaXZhIHBhcmEgbWFudGVyIGUgdG9ybmFyIGFjZXNzw612ZWlzIG9zIHNldXMgZG9jdW1lbnRvcywgZW0gZm9ybWF0byBkaWdpdGFsLCBuZXN0ZSByZXBvc2l0w7NyaW8uCgpDb20gYSBjb25jZXNzw6NvIGRlc3RhIGxpY2Vuw6dhIG7Do28gZXhjbHVzaXZhLCBvIGRlcG9zaXRhbnRlIG1hbnTDqW0gdG9kb3Mgb3MgZGlyZWl0b3MgZGUgYXV0b3IuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKTGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKCkFvIGNvbmNvcmRhciBjb20gZXN0YSBsaWNlbsOnYSBlIGFjZWl0w6EtbGEsIHZvY8OqIChhdXRvciBvdSBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMpOgoKYSkgRGVjbGFyYSBxdWUgY29uaGVjZSBhIHBvbMOtdGljYSBkZSBjb3B5cmlnaHQgZGEgZWRpdG9yYSBkbyBzZXUgZG9jdW1lbnRvOwpiKSBEZWNsYXJhIHF1ZSBjb25oZWNlIGUgYWNlaXRhIGFzIERpcmV0cml6ZXMgcGFyYSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGUEU7CmMpIENvbmNlZGUgw6AgVUZQRSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZGUgYXJxdWl2YXIsIHJlcHJvZHV6aXIsIGNvbnZlcnRlciAoY29tbyBkZWZpbmlkbyBhIHNlZ3VpciksIGNvbXVuaWNhciBlL291IGRpc3RyaWJ1aXIsIG5vIFJJLCBvIGRvY3VtZW50byBlbnRyZWd1ZSAoaW5jbHVpbmRvIG8gcmVzdW1vL2Fic3RyYWN0KSBlbSBmb3JtYXRvIGRpZ2l0YWwgb3UgcG9yIG91dHJvIG1laW87CmQpIERlY2xhcmEgcXVlIGF1dG9yaXphIGEgVUZQRSBhIGFycXVpdmFyIG1haXMgZGUgdW1hIGPDs3BpYSBkZXN0ZSBkb2N1bWVudG8gZSBjb252ZXJ0w6otbG8sIHNlbSBhbHRlcmFyIG8gc2V1IGNvbnRlw7pkbywgcGFyYSBxdWFscXVlciBmb3JtYXRvIGRlIGZpY2hlaXJvLCBtZWlvIG91IHN1cG9ydGUsIHBhcmEgZWZlaXRvcyBkZSBzZWd1cmFuw6dhLCBwcmVzZXJ2YcOnw6NvIChiYWNrdXApIGUgYWNlc3NvOwplKSBEZWNsYXJhIHF1ZSBvIGRvY3VtZW50byBzdWJtZXRpZG8gw6kgbyBzZXUgdHJhYmFsaG8gb3JpZ2luYWwgZSBxdWUgZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBhIHRlcmNlaXJvcyBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2Ugb3MgZGlyZWl0b3MgZGUgb3V0cmEgcGVzc29hIG91IGVudGlkYWRlOwpmKSBEZWNsYXJhIHF1ZSwgbm8gY2FzbyBkbyBkb2N1bWVudG8gc3VibWV0aWRvIGNvbnRlciBtYXRlcmlhbCBkbyBxdWFsIG7Do28gZGV0w6ltIG9zIGRpcmVpdG9zIGRlCmF1dG9yLCBvYnRldmUgYSBhdXRvcml6YcOnw6NvIGlycmVzdHJpdGEgZG8gcmVzcGVjdGl2byBkZXRlbnRvciBkZXNzZXMgZGlyZWl0b3MgcGFyYSBjZWRlciDDoApVRlBFIG9zIGRpcmVpdG9zIHJlcXVlcmlkb3MgcG9yIGVzdGEgTGljZW7Dp2EgZSBhdXRvcml6YXIgYSB1bml2ZXJzaWRhZGUgYSB1dGlsaXrDoS1sb3MgbGVnYWxtZW50ZS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBlc3NlIG1hdGVyaWFsIGN1am9zIGRpcmVpdG9zIHPDo28gZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3UgY29udGXDumRvIGRvIGRvY3VtZW50byBlbnRyZWd1ZTsKZykgU2UgbyBkb2N1bWVudG8gZW50cmVndWUgw6kgYmFzZWFkbyBlbSB0cmFiYWxobyBmaW5hbmNpYWRvIG91IGFwb2lhZG8gcG9yIG91dHJhIGluc3RpdHVpw6fDo28gcXVlIG7Do28gYSBVRlBFLMKgZGVjbGFyYSBxdWUgY3VtcHJpdSBxdWFpc3F1ZXIgb2JyaWdhw6fDtWVzIGV4aWdpZGFzIHBlbG8gcmVzcGVjdGl2byBjb250cmF0byBvdSBhY29yZG8uCgpBIFVGUEUgaWRlbnRpZmljYXLDoSBjbGFyYW1lbnRlIG8ocykgbm9tZShzKSBkbyhzKSBhdXRvciAoZXMpIGRvcyBkaXJlaXRvcyBkbyBkb2N1bWVudG8gZW50cmVndWUgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBwYXJhIGFsw6ltIGRvIHByZXZpc3RvIG5hIGFsw61uZWEgYykuCg==Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-25T13:52:02Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
title Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
spellingShingle Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
LIMA, Gênesis Jeferson Ferreira Pereira de
Banco de dados
Banco de dados relacional
title_short Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
title_full Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
title_fullStr Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
title_full_unstemmed Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
title_sort Uma linguagem de modelagem para refatoração estrutural de banco de dados relacionais
author LIMA, Gênesis Jeferson Ferreira Pereira de
author_facet LIMA, Gênesis Jeferson Ferreira Pereira de
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/2709192175900457
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/6390018491925933
dc.contributor.author.fl_str_mv LIMA, Gênesis Jeferson Ferreira Pereira de
dc.contributor.advisor1.fl_str_mv FIDALGO, Robson do Nascimento
contributor_str_mv FIDALGO, Robson do Nascimento
dc.subject.por.fl_str_mv Banco de dados
Banco de dados relacional
topic Banco de dados
Banco de dados relacional
description 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.
publishDate 2018
dc.date.issued.fl_str_mv 2018-03-09
dc.date.accessioned.fl_str_mv 2019-09-06T19:45:23Z
dc.date.available.fl_str_mv 2019-09-06T19:45:23Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/32360
url https://repositorio.ufpe.br/handle/123456789/32360
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.publisher.program.fl_str_mv Programa de Pos Graduacao em Ciencia da Computacao
dc.publisher.initials.fl_str_mv UFPE
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
bitstream.url.fl_str_mv https://repositorio.ufpe.br/bitstream/123456789/32360/6/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdf.jpg
https://repositorio.ufpe.br/bitstream/123456789/32360/1/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdf
https://repositorio.ufpe.br/bitstream/123456789/32360/3/license.txt
https://repositorio.ufpe.br/bitstream/123456789/32360/4/license_rdf
https://repositorio.ufpe.br/bitstream/123456789/32360/5/DISSERTA%c3%87%c3%83O%20G%c3%aanesis%20Jeferson%20Ferreira%20Pereira%20de%20Lima.pdf.txt
bitstream.checksum.fl_str_mv ec266b49d85c05dd4018640bd2f61951
b0cdfc9339e7849e3a9609b4fe9d6a68
4b8a02c7f2818eaf00dcf2260dd5eb08
e39d27027a6cc9cb039ad269a5db8e34
3fe135522b4a4688e24547cab6c890b1
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1797780573543989248