Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/53528

TítuloConclave: Writing programs to understand programs
Autor(es)Carvalho, Nuno Alexandre Ramos
Almeida, J. J.
Pereira, Maria João Varanda
Henriques, Pedro Rangel
Palavras-chaveConcept location
Feature location
Natural language processing
Program comprehension
Software evolution
Software maintenance
Data1-Jan-2014
EditoraSchloss Dagstuhl - Leibniz-Zentrum für Informatik
RevistaOpenAccess Series in Informatics
CitaçãoCarvalho, N., Almeida, J. J., Pereira, M. J., & Henriques, P. (2014). Conclave: writing programs to understand programs. In 3rd Symposium on Languages, Applications and Technologies (Vol. 38, pp. 19-34)
Resumo(s)Software maintainers are often challenged with source code changes to improve software systems, or eliminate defects, in unfamiliar programs. To undertake these tasks a sufficient understanding of the system, or at least a small part of it, is required. One of the most time consuming tasks of this process is locating which parts of the code are responsible for some key functionality or feature. This paper introduces Conclave, an environment for software analysis, that enhances program comprehension activities. Programmers use natural languages to describe and discuss the problem domain, programming languages to write source code, and markup languages to have programs talking with other programs, and so this system has to cope with this heterogeneity of dialects, and provide tools in all these areas to effectively contribute to the understanding process. The source code, the problem domain, and the side effects of running the program are represented in the system using ontologies. A combination of tools (specialized in different kinds of languages) create mappings between the different domains. Conclave provides facilities for feature location, code search, and views of the software that ease the process of understanding the code, devising changes. The underlying feature location technique explores natural language terms used in programs (e.g. function and variable names); using textual analysis and a collection of Natural Language Processing techniques, computes synonymous sets of terms. These sets are used to score relatedness between program elements, and search queries or problem domain concepts, producing sorted ranks of program elements that address the search criteria, or concepts respectively. © Nuno Ramos Carvalho, José João Almeida, Maria João Varanda Pereira, and Pedro Rangel Henriques.
TipoArtigo em ata de conferência
URIhttps://hdl.handle.net/1822/53528
ISBN978-3-939897-68-2
DOI10.4230/OASIcs.SLATE.2014.19
ISSN2190-6807
Versão da editorahttp://drops.dagstuhl.de/portals/oasics/index.php?semnr=14003
Arbitragem científicayes
AcessoAcesso aberto
Aparece nas coleções:CAlg - Artigos em revistas internacionais / Papers in international journals

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
4.pdf1,39 MBAdobe PDFVer/Abrir

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID