Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Bruno Laguë is active.

Publication


Featured researches published by Bruno Laguë.


international conference on software maintenance | 1997

Assessing the benefits of incorporating function clone detection in a development process

Bruno Laguë; Daniel Proulx; Jean Mayrand; Ettore Merlo; John P. Hudepohl

The aim of the experiment presented in this paper is to present an insight into the evaluation of the potential benefits of introducing a function clone detection technology in an industrial software development process. To take advantage of function clone detection, two modifications to the software development process are presented. Our experiment consists of evaluating the impact that these proposed changes would have had on a specific software system if they had been applied over a 3 year period (involving 10000 person-months), where 6 subsequent versions of the software under study were released. The software under study is a large telecommunication system. In total 89 million lines of code have been analyzed. A first result showed that, against our expectations, a significant number of clones are being removed from the system over time. However, this effort is insufficient to prevent the growth of the overall number of clones in the system. In this context the first process change would have added value. We have also found that the second process change would have provided programmers with a significant number of opportunities for correcting problems before customers experienced them. This result shows a potential for improving the software system quality and customer satisfaction


working conference on reverse engineering | 2000

Advanced clone-analysis to support object-oriented system refactoring

Magdalena Balazinska; Ettore Merlo; Michel Dagenais; Bruno Laguë; Kostas Kontogiannis

Manual source code copy and modification is often used by programmers as an easy means for functionality reuse. Nevertheless, such practice produces duplicated pieces of code or clones whose consistent maintenance might be difficult to achieve. It also creates implicit links between classes sharing a functionality. Clones are therefore good candidates for system redesign. This paper presents a novel approach for computer-aided clone-based object-oriented system refactoring. The approach is based on an advanced clone analysis which focuses on the extraction of clone differences and their interpretation in terms of programming language entities. It also focuses on the study of contextual dependencies of cloned methods. The clone analysis has been applied to JDK 1.1.5, a large scale system of 150 KLOC.


ieee international software metrics symposium | 1999

Measuring clone based reengineering opportunities

Magdalena Balazinska; Ettore Merlo; Michel Dagenais; Bruno Laguë; Kostas Kontogiannis

Code duplication, plausibly caused by copying source code and slightly modifying it, is often observed in large systems. Clone detection and documentation have been investigated by several researchers in the past years. Recently, research focus has shifted towards the investigation of software and process restructuring actions based on clone detection. This paper presents an original definition of a clone classification scheme useful to assess and measure different system reengineering opportunities. The proposed classification considers each group of cloned methods in terms of the meaning of the differences existing between them. The algorithm used for automatic classification of clones is presented together with results obtained by classifying cloned methods and measuring reengineering opportunities in six freely available systems whose total size is about 500 KLOC of Java code.


working conference on reverse engineering | 1999

Partial redesign of Java software systems based on clone analysis

Magdalena Balazinska; Ettore Merlo; Michel Dagenais; Bruno Laguë; Kostas Kontogiannis

Code duplication, plausibly caused by copying source code and slightly modifying it, is often observed in large systems. Clone detection and documentation have been investigated by several researchers in past years. Recently, research focus has shifted towards the investigation of software and process restructuring actions based on clone detection. The paper presents a new redesign approach developed for Java software systems. The approach factorizes the common parts of cloned methods and parameterizes their differences using the strategy design pattern. The new entities created by such transformations are also decoupled from the original contexts of their use, thus facilitating reuse and increasing maintainability. The applicability and automation of the technique presented in the paper have been verified by partially redesigning JDK 1.1.5.


workshop on program comprehension | 1999

Extending software quality assessment techniques to Java systems

Jean-François Patenaude; Ettore Merlo; Michel Dagenais; Bruno Laguë

The paper presents extensions to Bell Canada source code quality assessment suite (DATRIX tm) for handling Java language systems. Such extensions are based on source code object metrics, including Java interface metrics, which are presented and explained in detail. The assessment suite helps to evaluate the quality of medium-large software systems identifying parts of the system which have unusual characteristics. The paper also studies and reports the occurrence of clones in medium-large Java software systems. Clone presence affects quality since it increases a system size and often leads to higher maintenance costs. The clone identification process uses Java specific metrics to determine similarities between methods throughout a system. The results obtained from experiments with software evaluation and clone detection techniques, on over 500 KLOC of Java source code, are presented.


workshop on program comprehension | 1998

An analysis framework for understanding layered software architectures

Bruno Laguë; C. Leduc; A. Le Bon; E. Merlo; M. Dagenais

This paper presents the results of an empirical study. The study aims at evaluating the ability to understand the coherence between design documents that describe the layered architecture of large scale systems, and the actual structure of the software source file organization. A clear set of objectives to be addressed for achieving a good understanding of a layered architecture is defined. The objectives are focused on identifying the interfaces between layers, in terms of cross-layer file dependencies. An analysis framework for achieving these objectives is proposed. The framework is applied to analyze the actual software architecture of 6 subsequent releases of a 15MLoc telecommunications product. Results of that experiment show that the framework can provide much insight on the actual implementation of a system with a layered architecture.


workshop on program comprehension | 1999

Parsing C++ despite missing declarations

Gregory Knapen; Bruno Laguë; Michel Dagenais; Ettore Merlo

The paper addresses the problem of parsing a C++ software system that is known to compile correctly, but for which some header files are unavailable. A C++ program file typically depends on numerous included header files from the same system, a third party library, or the operating system standard libraries. It is not possible with a conventional parser to analyze C++ source code without obtaining the complete environment where the program is to be compiled. The paper studies the parsing ambiguities resulting from missing header files and proposes a special parser which uses additional rules and type inference in order to determine the missing declarations. This new parser has achieved 100% accuracy on a large system with numerous missing header files.


working conference on reverse engineering | 2000

E/R schema for the Datrix C/C++/Java exchange format

Richard C. Holt; A.E. Hasan; Bruno Laguë; S. Lapierre; C. Leduc

A SEF (software exchange format), such as GXL (Holt et al., 2000), TA (Holt, 1997) or RSF (Wong, 1996), is used to exchange data between tools that analyze software. Researchers at Bell Canada have specified the Datrix SEF in TA (and soon to be, GXL) for C, C++ and Java. It is designed so that a parser for the language, C, C++ or Java, can read a source program and emit the programs abstract syntax tree (AST) in the Datrix format. This note explains how an entity/relation (E/R) schema (Chen, 1976) was extracted for Datrix, and gives this schema as an E/R diagram.


ACM Sigsoft Software Engineering Notes | 2001

Datrix ™ source code model and its interchange format: lessons learned and considerations for future work

Sébastien Lapierre; Bruno Laguë; Charles Leduc

The Datrix team within Bell Canada has been offering its source code analysis tools to the research community for a number of years. These tools perform a number of analyses that revolve around a central model (Datrix-ASG) developed by the Datrix team, and use an interchange format similar to TA, which we call Datrix-TA. This paper intends to communicate the modeling choices that were made when creating this information model, and the lessons learned over a few years of usage.


international symposium on software reliability engineering | 1997

EMERALD: a case study in enhancing software reliability

John P. Hudepohl; Wendell D. Jones; Bruno Laguë

As software grows in both size and complexity, reliability becomes a critical issue, particularly in the area of telecommunications. This case study examines a tool and procedures developed at a large telecommunications company for software risk assessment. EMERALD (Enhanced Measurement for Early Risk Assessment of Latent Defects) has been applied at all stages of the software life-cycle to indicate risk of future software problems. The tool provides information used for decision support during design, code inspection, testing and maintenance. EMERALD has been instrumental in Nortels efforts to increase efficiency, control costs, and enhance both product quality and customer satisfaction.

Collaboration


Dive into the Bruno Laguë's collaboration.

Top Co-Authors

Avatar

Ettore Merlo

École Polytechnique de Montréal

View shared research outputs
Top Co-Authors

Avatar

Michel Dagenais

École Polytechnique de Montréal

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Kostas Kontogiannis

National Technical University of Athens

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge