Dissertação

Sketch-Driven SQL Synthesis EVALUATED

Atualmente, a quantidade de dados que necessitam de ser analisados e manipulados está a crescer rapidamente. Estas manipulações são normalmente um processo complexo e moroso. A OutSystems é uma plataforma de desenvolvimento de baixo código, cujo objetivo é simplificar o desenvolvimento de aplicações para permitir uma rápida, ágil, e contínua entrega de aplicações a nível empresarial, com a maioria das tarefas a serem automatizadas pela plataforma. Esta automatização de tarefas está fortemente relacionada com o problema da síntese de programas, que consiste na geração automática de um programa através de uma especificação. Para além disto, muitas destas manipulações seguem um determinado padrão. Esta informação leva-nos a ser capazes de gerar programas de uma forma mais eficiente e com uma maior precisão. Nesta dissertação de tese, introduzimos SKEL, um sintetizador de queries SQL que utiliza exemplos de input-output como especificação e utiliza também um sketch para guiar o processo de síntese de uma forma mais eficaz. Começamos por estudar diferentes tipos de sketches e criamos um formato de sketch que suporta uma grande variedade de opções e lacunas. Depois, usamos a ferramenta CUBES como ponto de partida, modificando-a para receber sketches de forma a otimizar o processo de procura. Finalmente, avaliamos a nossa ferramenta analisando em que medida a precisão e rapidez melhoram ao usarmos diferentes tipos de sketches. Em geral, os nossos resultados mostram que SKEL é mais eficiente e preciso quando comparado com outras soluções para o mesmo problema.
Síntese de Programas, Exemplos de Input-Output, Sketching, SQL, Programação por exemplo, Engenharia Reversa de Queries

novembro 30, 2021, 10:30

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Maria Inês Camarate de Campos Lynce de Faria

Departamento de Engenharia Informática (DEI)

Professor Catedrático

ORIENTADOR

Miguel Terra-Neves

OutSystems

Lead Research Scientist