UNIGE document Doctoral Thesis
previous document  unige:45686  next document
add to browser collection
Title

Program understanding using ontologies and dynamic analysis

Author
Directors
Defense Thèse de doctorat : Univ. Genève, 2014 - Sc. 4742 - 2014/12/11
Abstract La compréhension de logiciels est essentielle à leur maintenance. En effet, aucune activité de maintenance ne peut être effectuée sans avoir d’abord compris la partie du logiciel qui sera modifié. En outre, la complexité de la compréhension de logiciels est mise en évidence par son coût: elle représente environ la moitié du coût total du cycle de développement logiciel. Par conséquent, dans notre recherche nous visons à améliorer l’efficacité des développeurs dans les tâches de maintenance informatique en les aidant à comprendre le code source du programme concerné. En nous appuyant sur des recherches en psychologie, nous identifions les trois types de connaissance nécessaires à la compréhension d’un programme: son/ses but(s), la structure de son code source et une argumentation sur la capacité du dernier à satisfaire le(s) premier(s). Puis, en utilisant une représentation innovante du traitement élémentaire d’information basée sur des ontologies, nous proposons un artéfact composé de trois couches et capable de modéliser les trois types de connaissance. Enfin, après avoir vérifié empiriquement que notre artéfact est utile dans les tâches de maintenance, nous introduisons une technique d’analyse dynamique automatisant sa production.
Abstract Software understanding is central to the maintenance of software systems. Indeed, no maintenance activity can be performed without understanding the part of the program that needs to be modified. Moreover, the cost of program understanding is an evidence of its complexity: it represents about half of the software development life cycle total cost. Hence, we focus our research on increasing the efficiency of developers during maintenance tasks by helping them understand the concerned program’s source code. Based on psychology research in the literature, we identify the three kinds of knowledge required to understand a program: its purpose(s), its source code’s structure, and an argumentation of how the latter can satisfy the former. Then, using an innovative ontology-based representation of basic information processing, we propose a three-layer artifact able to hold such kinds of knowledge. Finally, after verifying empirically that our artifact is useful for maintenance tasks, we introduce a dynamic analysis technique for its automatic production.
Keywords Compréhension du logicielOntologieAnalyse dynamiqueProgram understandingOntologyDynamic analysis
Identifiers
URN: urn:nbn:ch:unige-456861
Full text
Thesis (5.3 MB) - public document Free access
Structures
Research group Software Modeling and Verification
Citation
(ISO format)
BELMONTE TORREJON, Javier. Program understanding using ontologies and dynamic analysis. Université de Genève. Thèse, 2014. https://archive-ouverte.unige.ch/unige:45686

298 hits

178 downloads

Update

Deposited on : 2015-01-21

Export document
Format :
Citation style :