Dissertação

Next-Gen Pure Function Synthesis EVALUATED

A OutSystems é uma plataforma de automatização de software que permite aos utilizadores criar as suas próprias aplicações, utilizando interfaces gráficas em vez de uma linguagem de programação. No entanto, a lógica subjacente à interface gráfica da plataforma utiliza um grafo para ilustrar o seu comportamento, o que continua a exigir que o utilizador consiga pensar como um programador tradicional. Assim, torna-se útil para utilizadores sem essa capacidade a automatização deste mecanismo. Esta tese tem como objetivo estender o trabalho na automatização dos grafos da plataforma de OutSystems, aumentando a sua eficiência e eficácia, e permitindo operações mais complexas. A solução baseia-se na síntese de funções puras utilizando Programação-por-Exemplo como especificação e uma técnica de procura que combina Teorias do Módulo de Satisfação e enumeração de sketches. Nesta tese, introduzimos PUFS-X, um sintetizador que suporta a geração de atribuições, condicionais, operações de listas e queries de SQL. Começamos por criar uma versão melhorada do trabalho realizado na área, o sintetizador PUFS+, que suporta a geração de atribuições e condicionais. De seguida, estendemos o sintetizador em duas formas distintas: operações de listas criando o sintetizador PUFS-L e queries de SQL, criando o sintetizador PUFS-SQL. Por fim, o sintetizador PUFS-X foi criado com todas as capacidades num só. Uma análise extensiva é realizada para observar o desempenho de cada sintetizador.
Síntese de Programas, Teorias do Módulo de Satisfação, Programação-por-Exemplo

novembro 30, 2021, 9:0

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