Name: CAMILA ZACCHÉ DE AGUIAR
Publication date: 24/11/2021
Advisor:
Name | Role |
---|---|
VÍTOR ESTÊVÃO SILVA SOUZA | Advisor * |
Examining board:
Name | Role |
---|---|
GIANCARLO GUIZZARDI | Internal Examiner * |
MONALESSA PERINI BARCELLOS | Internal Examiner * |
VÍTOR ESTÊVÃO SILVA SOUZA | Advisor * |
Summary: The source code is a well-formed sequence of computer instructions expressed in a programming language defined by a formal grammar, composed of a set of symbols organized
with their respective syntax and semantics. The different ways of representing a source
code in different programming languages create a heterogeneous context, as does the use
of multiple programming languages in a single source code. This scenario prevents the
direct exchange of information between source codes of different programming languages,
requiring specialized knowledge of their languages. In this sense, in order to mitigate
the problems of heterogeneity, we apply semantic interoperability to ensure that shared
information have their meanings understood and operationalized by code written in different source programming languages. To do this, we adopt ontologies to ensure uniform
interpretations that share a consistent common commitment about the source code domain.
The use of ontology reduces the problem of knowing the structure and concepts of different
programming languages to the problem of knowing the content of specific ontologies of the
source code domain, which a user familiar with the domain probably knows or understands.
Thus, ontology acts as an interlanguage between different source codes.
To apply ontologies to source code interoperability, this research presents the OSCIN
method Ontology-Based Source Code Interoperability, a method that aims to semantically
represent the source code written in different programming languages and apply it to
different perspectives in a unified way. The method adopts three pillars: source code
subdomain, denotes the part of the source code domain that is handled by the method;
programming language, denotes the programming language that the method is able to
manipulate; and application perspective, denotes the type of perspective the method
is applied to. In order to provide a set of solutions to support the application of the
OSCIN method in different source code subdomains, multiple programming languages
and flexible application perspectives, this research presents the OSCINF framework
Ontology-based Source Code Interoperability Framework, which defines SABiOS method
Systematic Approach for Building Ontologies, Supplemented for the construction of
ontologies well-founded in ontology engineering and applies it to the construction of a
source code ontology network called SCON Source Code Ontology Network. Finally, this
research presents the OSCIN method for source code interoperability in smells detection,
code metrics and code migration.
Keywords: Semantic interoperability. Semantic Interoperability in Source Code. Ontology.
Ontology Engineering