Compiladores para as linguagens da abordagem WED-flow

A abordagem WED-flow propõe modelar e implementar Sistemas de Informação Cientes de Processos (PAIS) a partir da especificação de estruturas que representam eventos, dados e tarefas de um processo de negócio, oferecendo a execução de instâncias do processo em um ambiente transacional definido sobre...

ver descrição completa

Detalhes bibliográficos
Autor: Dias Filho, Eduardo
Tipo de documento: dissertação
Estado:Versão publicada
Data de publicação:2021
País:Brasil
Recursos:Universidade de São Paulo (USP)
Repositório:Biblioteca Digital de Teses e Dissertações da USP
Idioma:português
OAI Identifier:oai:teses.usp.br:tde-24082021-113225
Acesso em linha:https://www.teses.usp.br/teses/disponiveis/45/45134/tde-24082021-113225/
Access Level:Acceso aberto
Palavra-chave:Análise léxica
Análise semântica
Análise sintática
Compilador
Compiler
Lexical analysis
Semantic analysis
Syntactic analysis
WED-flow
WED-SQL
Descrição
Resumo:A abordagem WED-flow propõe modelar e implementar Sistemas de Informação Cientes de Processos (PAIS) a partir da especificação de estruturas que representam eventos, dados e tarefas de um processo de negócio, oferecendo a execução de instâncias do processo em um ambiente transacional definido sobre um banco de dados. A definição de estruturas que compõem o modelo WED-flow é expressa em uma linguagem declarativa de alto nível baseada em notação de conjuntos. A implementação atual do WED-flow permite que as definições sejam especificadas em uma linguagem intermediária chamada WED-SQL, que é traduzida para código SQL. No entanto, o código que realiza esta tradução não segue as etapas de compilação e não é criado a partir de uma descrição formal da gramática, o que torna o tradutor de difícil manutenção e propenso a erros. Este trabalho propõe a implementação de um compilador da linguagem WED-SQL para a linguagem destino SQL e de um outro compilador da linguagem declarativa de alto nível do WED-flow para a linguagem destino WED-SQL, ambos envolvendo as etapas de análise léxica, análise sintática, análise semântica e geração de código na linguagem destino. Com o uso de uma ferramenta de geração automática de analisadores sintáticos e léxicos a partir de regras definidas, os compiladores facilitam possíveis alterações nas regras de tradução da linguagem.