<  Back to the Polytechnique Montréal portal

Automatic derivation of concepts based on the analysis of identifiers

Latifa Guerrouj

Technical Report (2010)

Open Acess document in PolyPublie and at official publisher
Open Access to the full text of this document
Published Version
Terms of Use: Tous droits réservés
Download (705kB)
Show abstract
Hide abstract


The existing software engineering literature has empirically shown that a proper choice of identifiers influences software understandability and maintainability. Indeed, identifiers are developers' main up-to-date source of information and guide their cognitive processes during program understanding when the high-level documentation is scarce or outdated and when the source code is not sufficiently commented. Deriving domain terms from identifiers using high-level and domain concepts is not an easy task when naming conventions (e.g., Camel Case) are not used or strictly followed and–or when these words have been abbreviated or otherwise transformed. Our thesis aims at developing a contextual approach that overcomes the shortcomings of the existing approaches and maps identifiers to domain concepts even in the absence of naming conventions and–or the presence of abbreviations. We also aim to take advantage of our approach to enhance the predictability of the overall system quality by using identifiers when assessing software quality. The key components of our approach are: dynamic time warping algorithm (DTW) used to recognize words in continuous speech, string-edit distance between terms and words as a proxy for the distance between the terms and the concepts they represent, plus words transformations rules attempting to mimic the cognitive processes of developers when composing identifiers with abbreviated forms. To validate our approach, we apply it to identifiers extracted from different open source applications to show that our method is able to provide a mapping of identifiers to domain terms, compare it with the two families of approaches that to the best of our knowledge, exist in the literature with respect to an oracle that we have manually built. We also enrich our technique by using domain knowledge and context-aware dictionaries to analyze how sensitive are the performances of our approach to the use of contextual information and specialized knowledge.

Uncontrolled Keywords

Identifier Splitting, Program Comprehension, Linguistic Analysis, Software Quality

Subjects: 2700 Information technology > 2700 Information technology
2700 Information technology > 2705 Software and development
2700 Information technology > 2706 Software engineering
Department: Department of Computer Engineering and Software Engineering
PolyPublie URL: https://publications.polymtl.ca/2658/
Report number: EPM-RT-2010-09
Date Deposited: 06 Oct 2017 14:07
Last Modified: 20 Apr 2023 10:08
Cite in APA 7: Guerrouj, L. (2010). Automatic derivation of concepts based on the analysis of identifiers. (Technical Report n° EPM-RT-2010-09). https://publications.polymtl.ca/2658/


Total downloads

Downloads per month in the last year

Origin of downloads

Repository Staff Only

View Item View Item