Search For:

Displaying 1-50 out of 82 total
REPENT: Analyzing the Nature of Identifier Renamings
Found in: IEEE Transactions on Software Engineering
By Venera Arnaoudova,Laleh M. Eshkevari,Massimiliano Di Penta,Rocco Oliveto,Giuliano Antoniol,Yann-Gael Gueheneuc
Issue Date:May 2014
pp. 502-532
Source code lexicon plays a paramount role in software quality: poor lexicon can lead to poor comprehensibility and even increase software fault-proneness. For this reason, renaming a program entity, i.e., altering the entity identifier, is an important ac...
 
MADMatch: Many-to-Many Approximate Diagram Matching for Design Comparison
Found in: IEEE Transactions on Software Engineering
By Segla Kpodjedo,Filippo Ricca,Philippe Galinier,Giuliano Antoniol,Yann-Gael Gueheneuc
Issue Date:August 2013
pp. 1090-1111
Matching algorithms play a fundamental role in many important but difficult software engineering activities, especially design evolution analysis and model comparison. We present MADMatch, a fast and scalable many-to-many approximate diagram matching appro...
 
Report on the 1st International Workshop on Design Pattern Theory and Practice
Found in: Software Technology and Engineering Practice, International Workshop on
By Yann-Gael Gueheneuc, Giuliano Antoniol
Issue Date:September 2005
pp. 193-195
This report summarises the content and results of the 1st InternationalWorkshop on Design Pattern Theory and Practice, held during the 3rd IEEE Software Technology and Engineering Practice workshop series (STEP?05), in Budapest, Hungary, on the Morning of ...
 
A Pilot Experiment to Quantify the Effect of Documentation Accuracy on Maintenance Tasks
Found in: 2013 IEEE International Conference on Software Maintenance (ICSM)
By Maurizio Leotta,Filippo Ricca,Giuliano Antoniol,Vahid Garousi, Junji Zhi,Guenther Ruhe
Issue Date:September 2013
pp. 428-431
This paper reports the results and some challenges we discovered during the design and execution of a pilot experiment with 21 bachelor students aimed at investigating the effect of documentation accuracy during software maintenance and evolution activitie...
 
Trustrace: Mining Software Repositories to Improve the Accuracy of Requirement Traceability Links
Found in: IEEE Transactions on Software Engineering
By Nasir Ali,Yann-Gaël Guéhéneuc,Giuliano Antoniol
Issue Date:May 2013
pp. 725-741
Traceability is the only means to ensure that the source code of a system is consistent with its requirements and that all and only the specified requirements have been implemented by developers. During software maintenance and evolution, requirement trace...
 
A Study on the Relation between Antipatterns and the Cost of Class Unit Testing
Found in: 2013 17th European Conference on Software Maintenance and Reengineering (CSMR)
By Aminata Sabane,Massimiliano Di Penta,Giuliano Antoniol,Yann-Gael Gueheneuc
Issue Date:March 2013
pp. 167-176
Antipatterns are known as recurring, poor design choices, recent and past studies indicated that they negatively affect software systems in terms of understand ability and maintainability, also increasing change-and defect-proneness. For this reason, refac...
 
A New Family of Software Anti-patterns: Linguistic Anti-patterns
Found in: 2013 17th European Conference on Software Maintenance and Reengineering (CSMR)
By Venera Arnaoudova,Massimiliano Di Penta,Giuliano Antoniol,Yann-Gael Gueheneuc
Issue Date:March 2013
pp. 187-196
Recent and past studies have shown that poor source code lexicon negatively affects software understand ability, maintainability, and, overall, quality. Besides a poor usage of lexicon and documentation, sometimes a software artifact description is mislead...
 
SCAN: An Approach to Label and Relate Execution Trace Segments
Found in: 2012 19th Working Conference on Reverse Engineering (WCRE)
By Soumaya Medini,Giuliano Antoniol,Yann-Gael Gueheneuc,Massimiliano Di Penta,Paolo Tonella
Issue Date:October 2012
pp. 135-144
Identifying concepts in execution traces is a task often necessary to support program comprehension or maintenance activities. Several approaches -- static, dynamic or hybrid -- have been proposed to identify cohesive, meaningful sequence of methods in exe...
 
Can Lexicon Bad Smells Improve Fault Prediction?
Found in: 2012 19th Working Conference on Reverse Engineering (WCRE)
By Surafel Lemma Abebe,Venera Arnaoudova,Paolo Tonella,Giuliano Antoniol,Yann-Gael Gueheneuc
Issue Date:October 2012
pp. 235-244
In software development, early identification of fault-prone classes can save a considerable amount of resources. In the literature, source code structural metrics have been widely investigated as one of the factors that can be used to identify faulty clas...
 
TRIS: A Fast and Accurate Identifiers Splitting and Expansion Algorithm
Found in: 2012 19th Working Conference on Reverse Engineering (WCRE)
By Latifa Guerrouj,Philippe Galinier,Yann-Gael Gueheneuc,Giuliano Antoniol,Massimiliano Di Penta
Issue Date:October 2012
pp. 103-112
Understanding source code identifiers, by identifying words composing them, is a necessary step for many program comprehension, reverse engineering, or redocumentation tasks. To this aim, researchers have proposed several identifier splitting and expansion...
 
Support vector machines for anti-pattern detection
Found in: 2012 27th IEEE/ACM International Conference on Automated Software Engineering (ASE)
By Abdou Maiga,Nasir Ali,Neelesh Bhattacharya,Aminata Sabane,Yann-Gael Gueheneuc,Giuliano Antoniol,Esma Aimeur
Issue Date:September 2012
pp. 278-281
Developers may introduce anti-patterns in their software systems because of time pressure, lack of understanding, communication, and--or skills. Anti-patterns impede development and maintenance activities by making the source code more difficult to underst...
 
An empirical study on requirements traceability using eye-tracking
Found in: 2012 IEEE International Conference on Software Maintenance (ICSM)
By Nasir Ali,Zohreh Sharafl,Yann-Gael Gueheneuc,Giuliano Antoniol
Issue Date:September 2012
pp. 191-200
Requirements traceability (RT) links help developers to understand programs and ensure that their source code is consistent with its documentation. Creating RT links is a laborious and resource-consuming task. Information Retrieval (IR) techniques are usef...
 
Improving Bug Location Using Binary Class Relationships
Found in: 2012 12th IEEE Working Conference on Source Code Analysis and Manipulation (SCAM)
By Nasir Ali,Aminata Sabane,Yann-Gael Gueheneuc,Giuliano Antoniol
Issue Date:September 2012
pp. 174-183
Bug location assists developers in locating culprit source code that must be modified to fix a bug. Done manually, it requires intensive search activities with unpredictable costs of effort and time. Information retrieval (IR) techniques have been proven u...
 
ADvISE: Architectural Decay in Software Evolution
Found in: Software Maintenance and Reengineering, European Conference on
By Salima Hassaine,Yann-Gaël Guéhéneuc,Sylvie Hamel,Giuliano Antoniol
Issue Date:March 2012
pp. 267-276
Software systems evolve continuously, requiring continuous maintenance and development. Consequently, their architecture tends to degrade with time as it becomes less relevant to new, emerging requirements. Therefore, stability or resilience is a primary c...
 
Requirements Traceability for Object Oriented Systems by Partitioning Source Code
Found in: Reverse Engineering, Working Conference on
By Nasir Ali,Yann-Gaël Guéhéneuc,Giuliano Antoniol
Issue Date:October 2011
pp. 45-54
Requirements trace ability ensures that source code is consistent with documentation and that all requirements have been implemented. During software evolution, features are added, removed, or modified, the code drifts away from its original requirements. ...
 
An Exploratory Study of Macro Co-changes
Found in: Reverse Engineering, Working Conference on
By Fehmi Jaafar,Yann-Gaël Guéhéneuc,Sylvie Hamel,Giuliano Antoniol
Issue Date:October 2011
pp. 325-334
The literature describes several approaches to identify the artefacts of programs that change together to reveal the (hidden) dependencies among these artefacts. These approaches analyse historical data, mined from version control systems, and report co-ch...
 
MoMS: Multi-objective miniaturization of software
Found in: Software Maintenance, IEEE International Conference on
By Nasir Ali,Wei Wu,Giuliano Antoniol,Massimiliano Di Penta,Yann-Gael Gueheneuc,Jane Huffman Hayes
Issue Date:September 2011
pp. 153-162
Smart phones, gaming consoles, and wireless routers are ubiquitous; the increasing diffusion of such devices with limited resources, together with society's unsatiated appetite for new applications, pushes companies to miniaturize their programs. Miniaturi...
 
A seismology-inspired approach to study change propagation
Found in: Software Maintenance, IEEE International Conference on
By Salima Hassaine,Ferdaous Boughanmi,Yann-Gael Gueheneuc,Sylvie Hamel,Giuliano Antoniol
Issue Date:September 2011
pp. 53-62
Change impact analysis aims at identifying software artefacts that are being affected by a change. It helps developers to assess their change efforts and perform more adequate changes. Several approaches have been proposed to aid in impact analysis. Howeve...
 
Trust-Based Requirements Traceability
Found in: International Conference on Program Comprehension
By Nasir Ali, Yann-Gaël Guéhéneuc, Giuliano Antoniol
Issue Date:June 2011
pp. 111-120
Information retrieval (IR) approaches have proven useful in recovering traceability links between free-text documentation and source code. IR-based traceability recovery approaches produce ranked lists of traceability links between pieces of documentation ...
 
Can Better Identifier Splitting Techniques Help Feature Location?
Found in: International Conference on Program Comprehension
By Bogdan Dit, Latifa Guerrouj, Denys Poshyvanyk, Giuliano Antoniol
Issue Date:June 2011
pp. 11-20
The paper presents an exploratory study of two feature location techniques utilizing three strategies for splitting identifiers: Camel Case, Samurai and manual splitting of identifiers. The main research question that we ask in this study is if we had a pe...
 
Change Impact Analysis: An Earthquake Metaphor
Found in: International Conference on Program Comprehension
By Salima Hassaine, Ferdaous Boughanmi, Yann-Gaël Guéhéneuc, Sylvie Hamel, Giuliano Antoniol
Issue Date:June 2011
pp. 209-210
Impact analysis is crucial to make decisions among different alternative implementations and to anticipate future maintenance tasks. Several approaches were proposed to identify software artefacts being affected by a change. However, to the best of our kno...
 
An Approach for Search Based Testing of Null Pointer Exceptions
Found in: Software Testing, Verification, and Validation, 2008 International Conference on
By Daniele Romano, Massimiliano Di Penta, Giuliano Antoniol
Issue Date:March 2011
pp. 160-169
Uncaught exceptions, and in particular null pointer exceptions (NPEs), constitute a major cause of crashes for software systems. Although tools for the static identification of potential NPEs exist, there is need for proper approaches able to identify syst...
 
Sub-graph Mining: Identifying Micro-architectures in Evolving Object-Oriented Software
Found in: 2011 15th European Conference on Software Maintenance and Reengineering (CSMR 2011)
By Ahmed Belderrar,Segla Kpodjedo,Yann-Gaël Guéhéneuc,Giuliano Antoniol,Philippe Galinier
Issue Date:March 2011
pp. 171-180
Developers introduce novel and undocumented micro-architectures when performing evolution tasks on object-oriented applications. We are interested in understanding whether those organizations of classes and relations can bear, much like cataloged design an...
 
Concept Location with Genetic Algorithms: A Comparison of Four Distributed Architectures
Found in: Search Based Software Engineering, International Symposium on
By Fatemeh Asadi, Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:September 2010
pp. 153-162
Genetic algorithms are attractive to solve many search-based software engineering problems because they allow the easy parallelization of computations, which improves scalability and reduces computation time. In this paper, we present our experience in app...
 
Playing with refactoring: Identifying extract class opportunities through game theory
Found in: Software Maintenance, IEEE International Conference on
By Gabriele Bavota, Rocco Oliveto, Andrea De Lucia, Giuliano Antoniol, Yann-Gael Gueheneuc
Issue Date:September 2010
pp. 1-5
In software engineering, developers must often find solutions to problems balancing competing goals, e.g., quality versus cost, time to market versus resources, or cohesion versus coupling. Finding a suitable balance between contrasting goals is often comp...
 
Physical and conceptual identifier dispersion: Measures and relation to fault proneness
Found in: Software Maintenance, IEEE International Conference on
By Venera Arnaoudova, Laleh Eshkevari, Rocco Oliveto, Yann-Gael Gueheneuc, Giuliano Antoniol
Issue Date:September 2010
pp. 1-5
Poorly-chosen identifiers have been reported in the literature as misleading and increasing the program comprehension effort. Identifiers are composed of terms, which can be dictionary words, acronyms, contractions, or simple strings. We conjecture that th...
 
SQUANER: A framework for monitoring the quality of software systems
Found in: Software Maintenance, IEEE International Conference on
By Nicolas Haderer, Foutse Khomh, Giuliano Antoniol
Issue Date:September 2010
pp. 1-4
Despite the large number of quality models and publicly available quality assessment tools like PMD, Checkstyle, or FindBugs, very few studies have investigated the use of quality models by developers in their daily activities. One reason for this lack of ...
 
AURA: a hybrid approach to identify framework evolution
Found in: Software Engineering, International Conference on
By Wei Wu,Yann-Gaël Guéhéneuc,Giuliano Antoniol,Miryung Kim
Issue Date:May 2010
pp. 325-334
Software frameworks and libraries are indispensable to today's software systems. As they evolve, it is often time-consuming for developers to keep their code up-to-date, so approaches have been proposed to facilitate this. Usually, these approaches cannot ...
 
An exploratory study of the evolution of software licensing
Found in: Software Engineering, International Conference on
By Massimiliano Di Penta,Daniel M. German,Yann-Gaël Guéhéneuc,Giuliano Antoniol
Issue Date:May 2010
pp. 145-154
Free and open source software systems (FOSS) are distributed and made available to users under different software licenses, mentioned in FOSS code by means of licensing statements. Various factors, such as changes in the legal landscape, commercial code li...
 
Recognizing Words from Source Code Identifiers Using Speech Recognition Techniques
Found in: Software Maintenance and Reengineering, European Conference on
By Nioosha Madani, Latifa Guerrouj, Massimiliano Di Penta, Yann-Gaël Guéhéneuc, Giuliano Antoniol
Issue Date:March 2010
pp. 68-77
The existing software engineering literature has empirically shown that a proper choice of identifiers influences software understandability and maintainability. Researchers have noticed that identifiers are one of the most important source of information ...
 
Numerical Signatures of Antipatterns: An Approach Based on B-Splines
Found in: Software Maintenance and Reengineering, European Conference on
By Rocco Oliveto, Foutse Khomh, Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:March 2010
pp. 248-251
Antipatterns are poor object-oriented solutions to recurring design problems. The identification of occurrences of antipatterns in systems has received recently some attention but current approaches have two main limitations: either (1) they classify class...
 
A Heuristic-Based Approach to Identify Concepts in Execution Traces
Found in: Software Maintenance and Reengineering, European Conference on
By Fatemeh Asadi, Massimiliano Di Penta, Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:March 2010
pp. 31-40
Concept or feature identification, i.e., the identification of the source code fragments implementing a particular feature, is a crucial task during software understanding and maintenance. This paper proposes an approach to identify concepts in execution t...
 
Evolution and Search Based Metrics to Improve Defects Prediction
Found in: Search Based Software Engineering, International Symposium on
By Segla Kpodjedo, Filippo Ricca, Giuliano Antoniol, Philippe Galinier
Issue Date:May 2009
pp. 23-32
Testing activity is the most widely adopted practice to ensure software quality. Testing effort should be focused on defect prone and critical resources i.e., on resources highly coupled with other entities of the software application.In this paper, we use...
 
Code siblings: Technical and legal implications of copying code between applications
Found in: Mining Software Repositories, International Workshop on
By Daniel M. German, Massimiliano Di Penta, Yann-Gael Gueheneuc, Giuliano Antoniol
Issue Date:May 2009
pp. 81-90
Source code cloning does not happen within a single system only. It can also occur between one system and another. We use the term code sibling to refer to a code clone that evolves in a different system than the code from which it originates. Code sibling...
 
Keynote Paper: Search Based Software Testing for Software Security: Breaking Code to Make it Safer
Found in: Software Testing Verification and Validation Workshop, IEEE International Conference on
By Giuliano Antoniol
Issue Date:April 2009
pp. 87-100
Ensuring security of software and computerized systems is a
 
Recovering the Evolution Stable Part Using an ECGM Algorithm: Is There a Tunnel in Mozilla?
Found in: Software Maintenance and Reengineering, European Conference on
By Segla Kpodjedo, Filippo Ricca, Philippe Galinier, Giuliano Antoniol
Issue Date:March 2009
pp. 179-188
Analyzing the evolutionary history of the design of Object-Oriented Software is an important and difficult task where matching algorithms play a fundamental role. In this paper, we investigate the applicability of an error-correcting graph matching (ECGM) ...
 
Analyzing the Evolution of the Source Code Vocabulary
Found in: Software Maintenance and Reengineering, European Conference on
By Surafel Lemma Abebe, Sonia Haiduc, Andrian Marcus, Paolo Tonella, Giuliano Antoniol
Issue Date:March 2009
pp. 189-198
Source code is a mixed software artifact, containing information for both the compiler and the developers. While programming language grammar dictates how the source code is written, developers have a lot of freedom in writing identifiers and comments. The...
 
Error Correcting Graph Matching Application to Software Evolution
Found in: Reverse Engineering, Working Conference on
By Segla Kpodjedo, Filippo Ricca, Philippe Galinier, Giuliano Antoniol
Issue Date:October 2008
pp. 289-293
Graph representations and graph algorithms are widely adopted to model and resolve problems in many different areas from??telecommunications,??to bio-informatics, tocivil and??software engineering. Many software artefacts such as the class diagram can be t...
 
PREREQIR: Recovering Pre-Requirements via Cluster Analysis
Found in: Reverse Engineering, Working Conference on
By Jane Huffman Hayes, Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:October 2008
pp. 165-174
High-level software artifacts, such as requirements, domain-specific requirements, and so on, are an important source of information that is often neglected during the reverse- and re-engineering processes. We posit that domain specific pre-requirements in...
 
DeMIMA: A Multilayered Approach for Design Pattern Identification
Found in: IEEE Transactions on Software Engineering
By Yann-Gaël Guéhéneuc,Giuliano Antoniol
Issue Date:September 2008
pp. 667-684
Design patterns are important in object-oriented programming because they offer design motifs, elegant solutions to recurrent design problems, which improve the quality of software systems. Design motifs facilitate system maintenance by helping to understa...
 
CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis
Found in: International Conference on Program Comprehension
By Marc Eaddy, Alfred V. Aho, Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:June 2008
pp. 53-62
The concern location problem is to identify the source code within a program related to the features, requirements, or other concerns of the program. This problem is central to program development and maintenance. We present a new technique called prune de...
 
Trend Analysis and Issue Prediction in Large-Scale Open Source Systems
Found in: Software Maintenance and Reengineering, European Conference on
By Benedicte Kenmei, Giuliano Antoniol, Massimiliano di Penta
Issue Date:April 2008
pp. 73-82
Effort to evolve and maintain a software system is likely to vary depending on the amount and frequency of change requests. This paper proposes to model change requests as time series and to rely on time series mathematical framework to analyze and model t...
 
SQL-Injection Security Evolution Analysis in PHP
Found in: Web Site Evolution, IEEE International Workshop on
By Ettore Merlo, Dominic Letarte, Giuliano Antoniol
Issue Date:October 2007
pp. 45-49
Web sites are often a mixture of static sites and programs that integrate relational databases as a back-end. Software that implements Web sites continuously evolve to meet ever-changing user needs. As a Web sites evolve, new versions of programs, interact...
 
Feature Location Using Probabilistic Ranking of Methods Based on Execution Scenarios and Information Retrieval
Found in: IEEE Transactions on Software Engineering
By Denys Poshyvanyk, Yann-Gaël Guéhéneuc, Andrian Marcus, Giuliano Antoniol, Václav Rajlich
Issue Date:June 2007
pp. 420-432
This paper recasts the problem of feature location in source code as a decision-making problem in the presence of uncertainty. The solution to the problem is formulated as a combination of the opinions of different experts. The experts in this work are two...
 
Automated Protection of PHP Applications Against SQL-injection Attacks
Found in: Software Maintenance and Reengineering, European Conference on
By Ettore Merlo, Dominic Letarte, Giuliano Antoniol
Issue Date:March 2007
pp. 191-202
<p>Web sites may be static sites, programs, or databases, and very often a combination of the three integrating relational databases as a back-end. Web sites require care in configuration and programming to assure security, confidentiality, and trust...
 
Extracting Change-patterns from CVS Repositories
Found in: Reverse Engineering, Working Conference on
By Salah Bouktif, Yann-Gael Gueheneuc, Giuliano Antoniol
Issue Date:October 2006
pp. 221-230
Often, the only sources of information about the evolution of software systems are the systems themselves and their histories. Version control repositories contain information on several thousand of files and on millions of changes. We propose an approach ...
 
Insider and Ousider Threat-Sensitive SQL Injection Vulnerability Analysis in PHP
Found in: Reverse Engineering, Working Conference on
By Ettore Merlo, Dominic Letarte, Giuliano Antoniol
Issue Date:October 2006
pp. 147-156
In general, SQL-injection attacks rely on some weak validation of textual input used to build database queries. Maliciously crafted input may threaten the confidentiality and the security policies of Web sites relying on a database to store and retrieve in...
 
Design Pattern Detection for Reverse Engineering
Found in: Reverse Engineering, Working Conference on
By Francesca Arcelli, Claudia Raibulet, Yann-Gaël Guéhéneuc, Giuliano Antoniol, Jason McC Smith
Issue Date:October 2006
pp. 316
The main goal of the workshop is to address the issues related to design patterns identification for design recovery focusing on the role of the reverse engineering in identifying the sub-elements of the design patterns that can improve their detection.
   
Feature Identification: An Epidemiological Metaphor
Found in: IEEE Transactions on Software Engineering
By Giuliano Antoniol, Yann-Gaël Guéhéneuc
Issue Date:September 2006
pp. 627-641
Feature identification is a technique to identify the source code constructs activated when exercising one of the features of a program. We propose new statistical analyses of static and dynamic data to accurately identify features in large multithreaded o...
 
A Feedback Based Quality Assessment to Support Open Source Software Evolution: the GRASS Case Study
Found in: Software Maintenance, IEEE International Conference on
By Salah Bouktif, Giuliano Antoniol, Ettore Merlo
Issue Date:September 2006
pp. 155-165
Managing the software evolution for large open source software is a major challenge. Some factors that make software hard to maintain are geographically distributed development teams, frequent and rapid turnover of volunteers, absence of a formal means, an...
 
 1  2 Next >>