Interoperabilidade Semântica entre Códigos Fonte baseada em Ontologia
Nome: CAMILA ZACCHÉ DE AGUIAR
Tipo: Tese de doutorado
Data de publicação: 24/11/2021
Orientador:
Nome | Papel |
---|---|
VÍTOR ESTÊVÃO SILVA SOUZA | Orientador |
Banca:
Nome | Papel |
---|---|
FERNANDA ARAUJO BAIÃO AMORIM | Examinador Externo |
GIANCARLO GUIZZARDI | Examinador Interno |
MONALESSA PERINI BARCELLOS | Examinador Interno |
ROGÉRIO EDUARDO GARCIA | Examinador Externo |
VÍTOR ESTÊVÃO SILVA SOUZA | Orientador |
Resumo: O código fonte é uma sequência bem formada de instruções de computador expressas em
uma linguagem de programação definida por uma gramática formal, composta por um
conjunto de símbolos organizados com suas respectivas sintaxes e semânticas. As diferentes
formas de representação de códigos fonte em diferentes linguagens de programação criam
um contexto de heterogeneidade, assim como o uso em conjunto de múltiplas linguagens
de programação. Esse cenário impede a troca direta de informações entre códigos fonte
de diferentes linguagens de programação, requerendo conhecimento especializado das
respectivas linguagens. Nesse sentido, como forma de mitigar os problemas de heterogeneidade, aplicamos a interoperabilidade semântica para garantir que as informações
compartilhadas tenham seus significados compreendidos e operacionalizados por códigos
fonte de diferentes linguagens de programação. Para isso, adotamos ontologias a fim de
garantir interpretações uniformes que compartilham um compromisso consistente comum
sobre o domínio de código fonte. O uso da ontologia reduz o problema de conhecer a
estrutura e conceitos de diversas linguagens de programação para o problema de conhecer
o conteúdo de ontologias específicas do domínio de código fonte de fácil compreensão, que
um usuário familiarizado com o domínio provavelmente conhece ou entende. Assim, a
ontologia atua como interlíngua entre diferentes códigos fonte.
Para aplicar ontologias na interoperabilidade de códigos fonte, esta pesquisa apresenta
o método OSCIN Ontology-Based Source Code Interoperability, um método que visa
representar semanticamente código fonte de diferentes linguagens de programação e aplicálo a diferentes perspectivas de forma unificada. O método adota três pilares: subdomínio
de código fonte, denota a parte do domínio de código fonte que é tratada pelo método;
linguagem de programação, denota a linguagem de programação que o método é capaz
de manipular; e perspectiva de aplicação, denota o tipo de perspectiva que o método é
aplicado. Objetivando fornecer um conjunto de soluções para apoiar a aplicação do método
OSCIN em diferentes subdomínios de código fonte, múltiplas linguagens de programação
e flexíveis perspectivas de aplicação, esta pesquisa apresenta o framework OSCINF
Ontology-based Source Code Interoperability Framework, que define o método SABiOS
Systematic Approach for Building Ontologies, Supplemented para a construção de ontologias
bem fundamentadas em engenharia de ontologias e o aplica à construção de uma rede
de ontologias de código fonte denominada SCON Source Code Ontology Network.
Finalmente, esta pesquisa apresenta o método OSCIN para interoperabilidade de código
fonte na detecção de smells, métricas de software e migração de código.
Palavras-chaves: Interoperabilidade Semântica. Interoperabilidade Semântica em Código
Fonte. Ontologia. Engenharia de Ontologia.