Informações Principais
     Resumo
     Abstract
     Introdução
     Conclusão
     Download
  
  
  
 
Conclusão
 
 
Acadêmico(a): Fabiano Bender
Título: Ferramenta para Depuração de Funções PL/PgSQL
 
Conclusão:
O trabalho aqui apresentado discorre sobre o desenvolvimento de uma ferramenta para a depuração de funções desenvolvidas na linguagem PL/PgSQL. Funções escritas em linguagem procedural são usadas nos mais diversos SGBDs. Desta forma, tem-se, cada vez mais, a necessidade de ferramentas para compilar e depurar estas funções, pois, como afirmam Geschwinde e Schönig (2002, p. 132), ao inserir uma função PL no banco de dados não se tem garantia que a mesma irá funcionar corretamente, pois o SGBD não efetua toda a análise semântica.
O estudo do SGBD PostgreSQL, dos seus comandos e dos seus tipos de dados, possibilitou um melhor entendimento de como as ferramentas de depuração devem funcionar. Foi este estudo que possibilitou a delimitação do objetivo proposto.
Durante o estudo dos analisadores presentes nos compiladores, viu-se a necessidade de delimitar a gramática a ser atendida, pois sem esta delimitação a ferramenta não seria finalizada em tempo. Aho, Sethi e Ullman (1995, p. 1) afirmam que, “ao longo dos anos 50, os compiladores foram considerados programas difíceis de escrever”. Desde então, foram desenvolvidas várias técnicas para facilitar e agilizar a construção de compiladores e depuradores. Porém, dependendo da linguagem alvo, este processo continua sendo muito trabalhoso: uma ferramenta para depurar funções PL é por si só complexa, tendo em vista que é necessário efetuar as análises léxica, sintática e semântica das funções. Para tanto, foi utilizada a biblioteca PLY. Sem o estudo desta biblioteca não seria possível a obtenção da lista de variáveis e de comandos presentes em uma função.
Com o grande número de comandos e tipos de dados que uma linguagem procedural suporta e a complexidade que as funções desenvolvidas podem alcançar, a probabilidade de ocorrer algum erro durante a compilação ou durante a execução é muito alta. Além disso, no PostgreSQL quando uma função é compilada com sucesso não significa que a mesma será executada sem problemas. Sendo assim, uma ferramenta para depuração auxilia em muito o desenvolvedor a evitar e a localizar possíveis erros que a função desenvolvida poderá conter. Ainda, um depurador pode ajudar o desenvolvedor saber como a função está se comportando a cada linha de execução. Em função dos pontos levantados, a ferramenta foi desenvolvida buscando melhorar o processo de depuração de funções PL/PgSQL por profissionais que utilizam o SGBD Postgres.
A ferramenta desenvolvida possui vantagens em relação as demais presentes no mercado atualmente. Pode-se destacar a possibilidade de utilização da ferramenta em Linux e em Windows, principais sistemas operacionais nos quais são utilizados o SGBD Postgres. Outra vantagem é que a ferramenta não possui nenhuma incompatibilidade com as várias versões do PostgreSQL, suportando desde as primeiras versões lançadas até a versão atual 9.2.1.