CSMR-WCRE 2014 – Author Index |
Contents -
Abstracts -
Authors
|
Anquetil, Nicolas |
CSMR-WCRE '14-TOOLS: "APIEvolutionMiner: Keeping ..."
APIEvolutionMiner: Keeping API Evolution under Control
André Hora, Anne Etien, Nicolas Anquetil, Stéphane Ducasse , and Marco Tulio Valente (INRIA, France; UFMG, Brazil) During software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool. @InProceedings{CSMR-WCRE14p420, author = {André Hora and Anne Etien and Nicolas Anquetil and Stéphane Ducasse and Marco Tulio Valente}, title = {APIEvolutionMiner: Keeping API Evolution under Control}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {420--424}, doi = {}, year = {2014}, } |
|
Bakota, Tibor |
CSMR-WCRE '14-TOOLS: "QualityGate SourceAudit: A ..."
QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software
Tibor Bakota, Péter Hegedűs, István Siket, Gergely Ladányi, and Rudolf Ferenc (FrontEndART Software, Hungary; MTA-SZTE Research Group on Artificial Intelligence, Hungary; University of Szeged, Hungary) Software systems are evolving continuously in order to fulfill the ever-changing business needs. This endless modification, however, decreases the internal quality of the system over time. This phenomena is called software erosion, which results in higher development, testing, and operational costs. The SourceAudit tool presented in this paper helps managing the technical risks of software deterioration by allowing immediate, automatic, and objective assessment of software quality. By monitoring the high-level technical quality of systems it is possible to immediately perform the necessary steps needed to reduce the effects of software erosion, thus reaching higher maintainability and lower costs in the mid and long-term. The tool measures source code maintainability according to the ISO/IEC~25010 based probabilistic software maintainability model called ColumbusQM. It gives a holistic view on software quality and warns on source code maintainability decline. @InProceedings{CSMR-WCRE14p440, author = {Tibor Bakota and Péter Hegedűs and István Siket and Gergely Ladányi and Rudolf Ferenc}, title = {QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {440--445}, doi = {}, year = {2014}, } |
|
Cleve, Anthony |
CSMR-WCRE '14-TOOLS: "Dahlia: A Visual Analyzer ..."
Dahlia: A Visual Analyzer of Database Schema Evolution
Loup Meurice and Anthony Cleve (University of Namur, Belgium) In a continuously changing environment, software evolution becomes an unavoidable activity. The mining software repositories (MSR) field studies the valuable data available in software repositories such as source code version-control systems, issue/bug-tracking systems, or communication archives. In recent years, many researchers have used MSR techniques as a way to support software understanding and evolution. While many software systems are data-intensive, i.e., their central artifact is a database, little attention has been devoted to the analysis of this important system component in the context of software evolution. The goal of our work is to reduce this gap by considering the database evolution history as an additional information source to aid software evolution. We present DAHLIA (Database ScHema EvoLutIon Analysis), a visual analyzer of database schema evolution. Our tool mines the database schema evolution history from the software repository and allows its interactive, visual analysis. We describe DAHLIA and present our novel approach supporting data-intensive software evolution. @InProceedings{CSMR-WCRE14p464, author = {Loup Meurice and Anthony Cleve}, title = {Dahlia: A Visual Analyzer of Database Schema Evolution}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {464--468}, doi = {}, year = {2014}, } |
|
Dal Sasso, Tommaso |
CSMR-WCRE '14-TOOLS: "in*Bug: Visual Analytics of ..."
in*Bug: Visual Analytics of Bug Repositories
Tommaso Dal Sasso and Michele Lanza (University of Lugano, Switzerland) Bug tracking systems are used to track and store the defects reported during the life of software projects. The underlying repositories represent a valuable source of information used for example for defect prediction and program comprehension. However, bug tracking systems present the actual bugs essentially in textual form, which is not only cumbersome to navigate, but also hinders the understanding of the intricate pieces of information that revolve around software bugs. We present in*Bug, a web-based visual analytics platform to navigate and inspect bug repositories. in*Bug provides several interactive views to understand detailed information about the bugs and the people that report them. The tool can be downloaded at http://inbug.inf.usi.ch @InProceedings{CSMR-WCRE14p415, author = {Tommaso Dal Sasso and Michele Lanza}, title = {in*Bug: Visual Analytics of Bug Repositories}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {415--419}, doi = {}, year = {2014}, } |
|
Damevski, Kostadin |
CSMR-WCRE '14-TOOLS: "How the Sando Search Tool ..."
How the Sando Search Tool Recommends Queries
Xi Ge, David Shepherd , Kostadin Damevski, and Emerson Murphy-Hill (North Carolina State University, USA; ABB, USA; Virginia State University, USA) Developers spend a significant amount of time searching their local codebase. To help them search efficiently, researchers have proposed novel tools that apply state-of-the-art information retrieval algorithms to retrieve relevant code snippets from the local codebase. However, these tools still rely on the developer to craft an effective query, which requires that the developer is familiar with the terms contained in the related code snippets. Our empirical data from a state-of-the-art local code search tool, called Sando, suggests that developers are sometimes unacquainted with their local codebase. In order to bridge the gap between developers and their ever-increasing local codebase, in this paper we demonstrate the recommendation techniques integrated in Sando. @InProceedings{CSMR-WCRE14p425, author = {Xi Ge and David Shepherd and Kostadin Damevski and Emerson Murphy-Hill}, title = {How the Sando Search Tool Recommends Queries}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {425--428}, doi = {}, year = {2014}, } |
|
De Roover, Coen |
CSMR-WCRE '14-TOOLS: "Building Development Tools ..."
Building Development Tools Interactively using the Ekeko Meta-Programming Library
Coen De Roover and Reinout Stevens (Vrije Universiteit Brussel, Belgium) Ekeko is a Clojure library for applicative logic meta-programming against an Eclipse workspace. Ekeko has been applied successfully to answering program queries (e.g., “does this bug pattern occur in my code?”), to analyzing project corpora (e.g., “how often does this API usage pattern occur in this corpus?”), and to transforming programs (e.g., “change occurrences of this pattern as follows”) in a declarative manner. These applications rely on a seamless embedding of logic queries in applicative expressions. While the former identify source code of interest, the latter associate error markers with, compute statistics about, or rewrite the identified source code snippets. In this paper, we detail the logic and applicative aspects of the Ekeko library. We also highlight key choices in their implementation. In particular, we demonstrate how a causal connection with the Eclipse infrastructure enables building development tools interactively on the Clojure read-eval-print loop. @InProceedings{CSMR-WCRE14p429, author = {Coen De Roover and Reinout Stevens}, title = {Building Development Tools Interactively using the Ekeko Meta-Programming Library}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {429--433}, doi = {}, year = {2014}, } |
|
Ducasse, Stéphane |
CSMR-WCRE '14-TOOLS: "APIEvolutionMiner: Keeping ..."
APIEvolutionMiner: Keeping API Evolution under Control
André Hora, Anne Etien, Nicolas Anquetil, Stéphane Ducasse , and Marco Tulio Valente (INRIA, France; UFMG, Brazil) During software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool. @InProceedings{CSMR-WCRE14p420, author = {André Hora and Anne Etien and Nicolas Anquetil and Stéphane Ducasse and Marco Tulio Valente}, title = {APIEvolutionMiner: Keeping API Evolution under Control}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {420--424}, doi = {}, year = {2014}, } |
|
Etien, Anne |
CSMR-WCRE '14-TOOLS: "APIEvolutionMiner: Keeping ..."
APIEvolutionMiner: Keeping API Evolution under Control
André Hora, Anne Etien, Nicolas Anquetil, Stéphane Ducasse , and Marco Tulio Valente (INRIA, France; UFMG, Brazil) During software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool. @InProceedings{CSMR-WCRE14p420, author = {André Hora and Anne Etien and Nicolas Anquetil and Stéphane Ducasse and Marco Tulio Valente}, title = {APIEvolutionMiner: Keeping API Evolution under Control}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {420--424}, doi = {}, year = {2014}, } |
|
Ferenc, Rudolf |
CSMR-WCRE '14-TOOLS: "QualityGate SourceAudit: A ..."
QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software
Tibor Bakota, Péter Hegedűs, István Siket, Gergely Ladányi, and Rudolf Ferenc (FrontEndART Software, Hungary; MTA-SZTE Research Group on Artificial Intelligence, Hungary; University of Szeged, Hungary) Software systems are evolving continuously in order to fulfill the ever-changing business needs. This endless modification, however, decreases the internal quality of the system over time. This phenomena is called software erosion, which results in higher development, testing, and operational costs. The SourceAudit tool presented in this paper helps managing the technical risks of software deterioration by allowing immediate, automatic, and objective assessment of software quality. By monitoring the high-level technical quality of systems it is possible to immediately perform the necessary steps needed to reduce the effects of software erosion, thus reaching higher maintainability and lower costs in the mid and long-term. The tool measures source code maintainability according to the ISO/IEC~25010 based probabilistic software maintainability model called ColumbusQM. It gives a holistic view on software quality and warns on source code maintainability decline. @InProceedings{CSMR-WCRE14p440, author = {Tibor Bakota and Péter Hegedűs and István Siket and Gergely Ladányi and Rudolf Ferenc}, title = {QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {440--445}, doi = {}, year = {2014}, } |
|
Ge, Xi |
CSMR-WCRE '14-TOOLS: "How the Sando Search Tool ..."
How the Sando Search Tool Recommends Queries
Xi Ge, David Shepherd , Kostadin Damevski, and Emerson Murphy-Hill (North Carolina State University, USA; ABB, USA; Virginia State University, USA) Developers spend a significant amount of time searching their local codebase. To help them search efficiently, researchers have proposed novel tools that apply state-of-the-art information retrieval algorithms to retrieve relevant code snippets from the local codebase. However, these tools still rely on the developer to craft an effective query, which requires that the developer is familiar with the terms contained in the related code snippets. Our empirical data from a state-of-the-art local code search tool, called Sando, suggests that developers are sometimes unacquainted with their local codebase. In order to bridge the gap between developers and their ever-increasing local codebase, in this paper we demonstrate the recommendation techniques integrated in Sando. @InProceedings{CSMR-WCRE14p425, author = {Xi Ge and David Shepherd and Kostadin Damevski and Emerson Murphy-Hill}, title = {How the Sando Search Tool Recommends Queries}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {425--428}, doi = {}, year = {2014}, } |
|
Hegedűs, Péter |
CSMR-WCRE '14-TOOLS: "QualityGate SourceAudit: A ..."
QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software
Tibor Bakota, Péter Hegedűs, István Siket, Gergely Ladányi, and Rudolf Ferenc (FrontEndART Software, Hungary; MTA-SZTE Research Group on Artificial Intelligence, Hungary; University of Szeged, Hungary) Software systems are evolving continuously in order to fulfill the ever-changing business needs. This endless modification, however, decreases the internal quality of the system over time. This phenomena is called software erosion, which results in higher development, testing, and operational costs. The SourceAudit tool presented in this paper helps managing the technical risks of software deterioration by allowing immediate, automatic, and objective assessment of software quality. By monitoring the high-level technical quality of systems it is possible to immediately perform the necessary steps needed to reduce the effects of software erosion, thus reaching higher maintainability and lower costs in the mid and long-term. The tool measures source code maintainability according to the ISO/IEC~25010 based probabilistic software maintainability model called ColumbusQM. It gives a holistic view on software quality and warns on source code maintainability decline. @InProceedings{CSMR-WCRE14p440, author = {Tibor Bakota and Péter Hegedűs and István Siket and Gergely Ladányi and Rudolf Ferenc}, title = {QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {440--445}, doi = {}, year = {2014}, } |
|
Heing-Becker, Marcel |
CSMR-WCRE '14-TOOLS: "Bit-Error Injection for Software ..."
Bit-Error Injection for Software Developers
Marcel Heing-Becker, Timo Kamph, and Sibylle Schupp (Hamburg University of Technology, Germany) This paper presents FITIn, a bit-error injection tool designed for evaluating software-implemented hardware fault tol- erance (SIHFT) mechanisms. Like most bit-error injection tools, FITIn injects faults at run time into the binary of a program. Unlike previous bit-error injection tools, FITIn allows a software developer to control the targets of injection campaigns at the level of a higher programming language rather than assembler. FITIn is implemented as a Valgrind plugin and has been tested for C programs. We present its architecture, demonstrate its functioning using examples from three benchmarks (Dhrystone, STAMP, and CoreMark), provide performance figures, and discuss general limitations of the approach. @InProceedings{CSMR-WCRE14p434, author = {Marcel Heing-Becker and Timo Kamph and Sibylle Schupp}, title = {Bit-Error Injection for Software Developers}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {434--439}, doi = {}, year = {2014}, } Video Info |
|
Hendren, Laurie |
CSMR-WCRE '14-TOOLS: "Mc2for Demo: A Tool for Automatically ..."
Mc2for Demo: A Tool for Automatically Translating Matlab to Fortran 95
Xu Li and Laurie Hendren (McGill University, Canada) MATLAB is a dynamic numerical scripting language widely used by scientists, engineers and students. While MATLAB's high-level syntax and dynamic types makes it ideal for prototyping, programmers often prefer using high-performance static languages such as Fortran for their final distributable code. Rather than requiring programmers to rewrite their code by hand, our solution is to provide a tool that automatically translates the original MATLAB program to an equivalent Fortran program. There are several important challenges for automatically translating MATLAB to Fortran, such as correctly estimating the static type characteristics of all the variables in a MATLAB program, mapping MATLAB built-in functions, and effectively mapping MATLAB constructs to Fortran constructs. In this tool demonstration, we introduce the tool Mc2For, a mature prototype which automatically translates MATLAB programs to Fortran. This tool takes as input a MATLAB entry point function file of a program with corresponding information of its input parameters, then automatically finds all functions reachable directly or indirectly from the entry point, loads the necessary files, and translates all the reachable MATLAB functions to equivalent Fortran. The output of the tool is a collection of Fortran function files, which can be compiled with any Fortran 95-compliant compiler. Mc2For is open source, and has been implemented in Java using the McLab framework, which means that the tool runs on any system supporting Java. @InProceedings{CSMR-WCRE14p458, author = {Xu Li and Laurie Hendren}, title = {Mc2for Demo: A Tool for Automatically Translating Matlab to Fortran 95}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {458--463}, doi = {}, year = {2014}, } |
|
Hills, Mark |
CSMR-WCRE '14-TOOLS: "PHP AiR: Analyzing PHP Systems ..."
PHP AiR: Analyzing PHP Systems with Rascal
Mark Hills and Paul Klint (East Carolina University, USA; CWI, Netherlands; INRIA, France) PHP is currently one of the most popular programming languages, widely used in both the open source community and in industry to build large web-focused applications and application frameworks. To provide a solid framework for working with large PHP systems in areas such as evaluating how language features are used, studying how PHP systems evolve, program analysis for refactoring and security validation, and software metrics, we have developed PHP AiR, a framework for PHP Analysis in Rascal. Here we briefly describe features available in PHP AiR, integration with the Eclipse PHP Development Tools, and usage scenarios in program analysis, metrics, and empirical software engineering. @InProceedings{CSMR-WCRE14p454, author = {Mark Hills and Paul Klint}, title = {PHP AiR: Analyzing PHP Systems with Rascal}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {454--457}, doi = {}, year = {2014}, } Info |
|
Hirschfeld, Robert |
CSMR-WCRE '14-TOOLS: "Follow the Path: Debugging ..."
Follow the Path: Debugging Tools for Test-Driven Fault Navigation
Michael Perscheid and Robert Hirschfeld (HPI, Germany) Debugging failing test cases, particularly the search for failure causes, is often a laborious and time-consuming activity. Standard debugging tools such as symbolic debuggers and test runners hardly facilitate developers during this task because they neither provide advice to failure causes nor back-in-time capabilities. In this paper, we present test-driven fault navigation as a debugging guide that integrates spectrum-based and state anomalies into execution histories in order to systematically trace failure causes back to defects. We describe and demonstrate our Path tools that implement our debugging method for the Squeak/Smalltalk development environment. @InProceedings{CSMR-WCRE14p446, author = {Michael Perscheid and Robert Hirschfeld}, title = {Follow the Path: Debugging Tools for Test-Driven Fault Navigation}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {446--449}, doi = {}, year = {2014}, } Info |
|
Hora, André |
CSMR-WCRE '14-TOOLS: "APIEvolutionMiner: Keeping ..."
APIEvolutionMiner: Keeping API Evolution under Control
André Hora, Anne Etien, Nicolas Anquetil, Stéphane Ducasse , and Marco Tulio Valente (INRIA, France; UFMG, Brazil) During software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool. @InProceedings{CSMR-WCRE14p420, author = {André Hora and Anne Etien and Nicolas Anquetil and Stéphane Ducasse and Marco Tulio Valente}, title = {APIEvolutionMiner: Keeping API Evolution under Control}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {420--424}, doi = {}, year = {2014}, } |
|
Kamph, Timo |
CSMR-WCRE '14-TOOLS: "Bit-Error Injection for Software ..."
Bit-Error Injection for Software Developers
Marcel Heing-Becker, Timo Kamph, and Sibylle Schupp (Hamburg University of Technology, Germany) This paper presents FITIn, a bit-error injection tool designed for evaluating software-implemented hardware fault tol- erance (SIHFT) mechanisms. Like most bit-error injection tools, FITIn injects faults at run time into the binary of a program. Unlike previous bit-error injection tools, FITIn allows a software developer to control the targets of injection campaigns at the level of a higher programming language rather than assembler. FITIn is implemented as a Valgrind plugin and has been tested for C programs. We present its architecture, demonstrate its functioning using examples from three benchmarks (Dhrystone, STAMP, and CoreMark), provide performance figures, and discuss general limitations of the approach. @InProceedings{CSMR-WCRE14p434, author = {Marcel Heing-Becker and Timo Kamph and Sibylle Schupp}, title = {Bit-Error Injection for Software Developers}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {434--439}, doi = {}, year = {2014}, } Video Info |
|
Klint, Paul |
CSMR-WCRE '14-TOOLS: "PHP AiR: Analyzing PHP Systems ..."
PHP AiR: Analyzing PHP Systems with Rascal
Mark Hills and Paul Klint (East Carolina University, USA; CWI, Netherlands; INRIA, France) PHP is currently one of the most popular programming languages, widely used in both the open source community and in industry to build large web-focused applications and application frameworks. To provide a solid framework for working with large PHP systems in areas such as evaluating how language features are used, studying how PHP systems evolve, program analysis for refactoring and security validation, and software metrics, we have developed PHP AiR, a framework for PHP Analysis in Rascal. Here we briefly describe features available in PHP AiR, integration with the Eclipse PHP Development Tools, and usage scenarios in program analysis, metrics, and empirical software engineering. @InProceedings{CSMR-WCRE14p454, author = {Mark Hills and Paul Klint}, title = {PHP AiR: Analyzing PHP Systems with Rascal}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {454--457}, doi = {}, year = {2014}, } Info |
|
Ladányi, Gergely |
CSMR-WCRE '14-TOOLS: "QualityGate SourceAudit: A ..."
QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software
Tibor Bakota, Péter Hegedűs, István Siket, Gergely Ladányi, and Rudolf Ferenc (FrontEndART Software, Hungary; MTA-SZTE Research Group on Artificial Intelligence, Hungary; University of Szeged, Hungary) Software systems are evolving continuously in order to fulfill the ever-changing business needs. This endless modification, however, decreases the internal quality of the system over time. This phenomena is called software erosion, which results in higher development, testing, and operational costs. The SourceAudit tool presented in this paper helps managing the technical risks of software deterioration by allowing immediate, automatic, and objective assessment of software quality. By monitoring the high-level technical quality of systems it is possible to immediately perform the necessary steps needed to reduce the effects of software erosion, thus reaching higher maintainability and lower costs in the mid and long-term. The tool measures source code maintainability according to the ISO/IEC~25010 based probabilistic software maintainability model called ColumbusQM. It gives a holistic view on software quality and warns on source code maintainability decline. @InProceedings{CSMR-WCRE14p440, author = {Tibor Bakota and Péter Hegedűs and István Siket and Gergely Ladányi and Rudolf Ferenc}, title = {QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {440--445}, doi = {}, year = {2014}, } |
|
Lanza, Michele |
CSMR-WCRE '14-TOOLS: "in*Bug: Visual Analytics of ..."
in*Bug: Visual Analytics of Bug Repositories
Tommaso Dal Sasso and Michele Lanza (University of Lugano, Switzerland) Bug tracking systems are used to track and store the defects reported during the life of software projects. The underlying repositories represent a valuable source of information used for example for defect prediction and program comprehension. However, bug tracking systems present the actual bugs essentially in textual form, which is not only cumbersome to navigate, but also hinders the understanding of the intricate pieces of information that revolve around software bugs. We present in*Bug, a web-based visual analytics platform to navigate and inspect bug repositories. in*Bug provides several interactive views to understand detailed information about the bugs and the people that report them. The tool can be downloaded at http://inbug.inf.usi.ch @InProceedings{CSMR-WCRE14p415, author = {Tommaso Dal Sasso and Michele Lanza}, title = {in*Bug: Visual Analytics of Bug Repositories}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {415--419}, doi = {}, year = {2014}, } |
|
Li, Xu |
CSMR-WCRE '14-TOOLS: "Mc2for Demo: A Tool for Automatically ..."
Mc2for Demo: A Tool for Automatically Translating Matlab to Fortran 95
Xu Li and Laurie Hendren (McGill University, Canada) MATLAB is a dynamic numerical scripting language widely used by scientists, engineers and students. While MATLAB's high-level syntax and dynamic types makes it ideal for prototyping, programmers often prefer using high-performance static languages such as Fortran for their final distributable code. Rather than requiring programmers to rewrite their code by hand, our solution is to provide a tool that automatically translates the original MATLAB program to an equivalent Fortran program. There are several important challenges for automatically translating MATLAB to Fortran, such as correctly estimating the static type characteristics of all the variables in a MATLAB program, mapping MATLAB built-in functions, and effectively mapping MATLAB constructs to Fortran constructs. In this tool demonstration, we introduce the tool Mc2For, a mature prototype which automatically translates MATLAB programs to Fortran. This tool takes as input a MATLAB entry point function file of a program with corresponding information of its input parameters, then automatically finds all functions reachable directly or indirectly from the entry point, loads the necessary files, and translates all the reachable MATLAB functions to equivalent Fortran. The output of the tool is a collection of Fortran function files, which can be compiled with any Fortran 95-compliant compiler. Mc2For is open source, and has been implemented in Java using the McLab framework, which means that the tool runs on any system supporting Java. @InProceedings{CSMR-WCRE14p458, author = {Xu Li and Laurie Hendren}, title = {Mc2for Demo: A Tool for Automatically Translating Matlab to Fortran 95}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {458--463}, doi = {}, year = {2014}, } |
|
Meurice, Loup |
CSMR-WCRE '14-TOOLS: "Dahlia: A Visual Analyzer ..."
Dahlia: A Visual Analyzer of Database Schema Evolution
Loup Meurice and Anthony Cleve (University of Namur, Belgium) In a continuously changing environment, software evolution becomes an unavoidable activity. The mining software repositories (MSR) field studies the valuable data available in software repositories such as source code version-control systems, issue/bug-tracking systems, or communication archives. In recent years, many researchers have used MSR techniques as a way to support software understanding and evolution. While many software systems are data-intensive, i.e., their central artifact is a database, little attention has been devoted to the analysis of this important system component in the context of software evolution. The goal of our work is to reduce this gap by considering the database evolution history as an additional information source to aid software evolution. We present DAHLIA (Database ScHema EvoLutIon Analysis), a visual analyzer of database schema evolution. Our tool mines the database schema evolution history from the software repository and allows its interactive, visual analysis. We describe DAHLIA and present our novel approach supporting data-intensive software evolution. @InProceedings{CSMR-WCRE14p464, author = {Loup Meurice and Anthony Cleve}, title = {Dahlia: A Visual Analyzer of Database Schema Evolution}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {464--468}, doi = {}, year = {2014}, } |
|
Mihancea, Petru Florin |
CSMR-WCRE '14-TOOLS: "jModex: Model Extraction for ..."
jModex: Model Extraction for Verifying Security Properties of Web Applications
Petru Florin Mihancea and Marius Minea (Politehnica University of Timisoara, Romania; Institute e-Austria Timisoara, Romania) Detecting security vulnerabilities in web applications is an important task before taking them on-line. We present jModex, a tool that analyzes the code of web applications to extract behavioral models. The security properties of these models can then be verified with a model checker. An initial evaluation, in which a confirmed security flaw is identified using a model extracted by jModex, shows the tool potential. @InProceedings{CSMR-WCRE14p450, author = {Petru Florin Mihancea and Marius Minea}, title = {jModex: Model Extraction for Verifying Security Properties of Web Applications}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {450--453}, doi = {}, year = {2014}, } |
|
Minea, Marius |
CSMR-WCRE '14-TOOLS: "jModex: Model Extraction for ..."
jModex: Model Extraction for Verifying Security Properties of Web Applications
Petru Florin Mihancea and Marius Minea (Politehnica University of Timisoara, Romania; Institute e-Austria Timisoara, Romania) Detecting security vulnerabilities in web applications is an important task before taking them on-line. We present jModex, a tool that analyzes the code of web applications to extract behavioral models. The security properties of these models can then be verified with a model checker. An initial evaluation, in which a confirmed security flaw is identified using a model extracted by jModex, shows the tool potential. @InProceedings{CSMR-WCRE14p450, author = {Petru Florin Mihancea and Marius Minea}, title = {jModex: Model Extraction for Verifying Security Properties of Web Applications}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {450--453}, doi = {}, year = {2014}, } |
|
Murphy-Hill, Emerson |
CSMR-WCRE '14-TOOLS: "How the Sando Search Tool ..."
How the Sando Search Tool Recommends Queries
Xi Ge, David Shepherd , Kostadin Damevski, and Emerson Murphy-Hill (North Carolina State University, USA; ABB, USA; Virginia State University, USA) Developers spend a significant amount of time searching their local codebase. To help them search efficiently, researchers have proposed novel tools that apply state-of-the-art information retrieval algorithms to retrieve relevant code snippets from the local codebase. However, these tools still rely on the developer to craft an effective query, which requires that the developer is familiar with the terms contained in the related code snippets. Our empirical data from a state-of-the-art local code search tool, called Sando, suggests that developers are sometimes unacquainted with their local codebase. In order to bridge the gap between developers and their ever-increasing local codebase, in this paper we demonstrate the recommendation techniques integrated in Sando. @InProceedings{CSMR-WCRE14p425, author = {Xi Ge and David Shepherd and Kostadin Damevski and Emerson Murphy-Hill}, title = {How the Sando Search Tool Recommends Queries}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {425--428}, doi = {}, year = {2014}, } |
|
Perscheid, Michael |
CSMR-WCRE '14-TOOLS: "Follow the Path: Debugging ..."
Follow the Path: Debugging Tools for Test-Driven Fault Navigation
Michael Perscheid and Robert Hirschfeld (HPI, Germany) Debugging failing test cases, particularly the search for failure causes, is often a laborious and time-consuming activity. Standard debugging tools such as symbolic debuggers and test runners hardly facilitate developers during this task because they neither provide advice to failure causes nor back-in-time capabilities. In this paper, we present test-driven fault navigation as a debugging guide that integrates spectrum-based and state anomalies into execution histories in order to systematically trace failure causes back to defects. We describe and demonstrate our Path tools that implement our debugging method for the Squeak/Smalltalk development environment. @InProceedings{CSMR-WCRE14p446, author = {Michael Perscheid and Robert Hirschfeld}, title = {Follow the Path: Debugging Tools for Test-Driven Fault Navigation}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {446--449}, doi = {}, year = {2014}, } Info |
|
Schupp, Sibylle |
CSMR-WCRE '14-TOOLS: "Bit-Error Injection for Software ..."
Bit-Error Injection for Software Developers
Marcel Heing-Becker, Timo Kamph, and Sibylle Schupp (Hamburg University of Technology, Germany) This paper presents FITIn, a bit-error injection tool designed for evaluating software-implemented hardware fault tol- erance (SIHFT) mechanisms. Like most bit-error injection tools, FITIn injects faults at run time into the binary of a program. Unlike previous bit-error injection tools, FITIn allows a software developer to control the targets of injection campaigns at the level of a higher programming language rather than assembler. FITIn is implemented as a Valgrind plugin and has been tested for C programs. We present its architecture, demonstrate its functioning using examples from three benchmarks (Dhrystone, STAMP, and CoreMark), provide performance figures, and discuss general limitations of the approach. @InProceedings{CSMR-WCRE14p434, author = {Marcel Heing-Becker and Timo Kamph and Sibylle Schupp}, title = {Bit-Error Injection for Software Developers}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {434--439}, doi = {}, year = {2014}, } Video Info |
|
Shepherd, David |
CSMR-WCRE '14-TOOLS: "How the Sando Search Tool ..."
How the Sando Search Tool Recommends Queries
Xi Ge, David Shepherd , Kostadin Damevski, and Emerson Murphy-Hill (North Carolina State University, USA; ABB, USA; Virginia State University, USA) Developers spend a significant amount of time searching their local codebase. To help them search efficiently, researchers have proposed novel tools that apply state-of-the-art information retrieval algorithms to retrieve relevant code snippets from the local codebase. However, these tools still rely on the developer to craft an effective query, which requires that the developer is familiar with the terms contained in the related code snippets. Our empirical data from a state-of-the-art local code search tool, called Sando, suggests that developers are sometimes unacquainted with their local codebase. In order to bridge the gap between developers and their ever-increasing local codebase, in this paper we demonstrate the recommendation techniques integrated in Sando. @InProceedings{CSMR-WCRE14p425, author = {Xi Ge and David Shepherd and Kostadin Damevski and Emerson Murphy-Hill}, title = {How the Sando Search Tool Recommends Queries}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {425--428}, doi = {}, year = {2014}, } |
|
Siket, István |
CSMR-WCRE '14-TOOLS: "QualityGate SourceAudit: A ..."
QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software
Tibor Bakota, Péter Hegedűs, István Siket, Gergely Ladányi, and Rudolf Ferenc (FrontEndART Software, Hungary; MTA-SZTE Research Group on Artificial Intelligence, Hungary; University of Szeged, Hungary) Software systems are evolving continuously in order to fulfill the ever-changing business needs. This endless modification, however, decreases the internal quality of the system over time. This phenomena is called software erosion, which results in higher development, testing, and operational costs. The SourceAudit tool presented in this paper helps managing the technical risks of software deterioration by allowing immediate, automatic, and objective assessment of software quality. By monitoring the high-level technical quality of systems it is possible to immediately perform the necessary steps needed to reduce the effects of software erosion, thus reaching higher maintainability and lower costs in the mid and long-term. The tool measures source code maintainability according to the ISO/IEC~25010 based probabilistic software maintainability model called ColumbusQM. It gives a holistic view on software quality and warns on source code maintainability decline. @InProceedings{CSMR-WCRE14p440, author = {Tibor Bakota and Péter Hegedűs and István Siket and Gergely Ladányi and Rudolf Ferenc}, title = {QualityGate SourceAudit: A Tool for Assessing the Technical Quality of Software}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {440--445}, doi = {}, year = {2014}, } |
|
Stevens, Reinout |
CSMR-WCRE '14-TOOLS: "Building Development Tools ..."
Building Development Tools Interactively using the Ekeko Meta-Programming Library
Coen De Roover and Reinout Stevens (Vrije Universiteit Brussel, Belgium) Ekeko is a Clojure library for applicative logic meta-programming against an Eclipse workspace. Ekeko has been applied successfully to answering program queries (e.g., “does this bug pattern occur in my code?”), to analyzing project corpora (e.g., “how often does this API usage pattern occur in this corpus?”), and to transforming programs (e.g., “change occurrences of this pattern as follows”) in a declarative manner. These applications rely on a seamless embedding of logic queries in applicative expressions. While the former identify source code of interest, the latter associate error markers with, compute statistics about, or rewrite the identified source code snippets. In this paper, we detail the logic and applicative aspects of the Ekeko library. We also highlight key choices in their implementation. In particular, we demonstrate how a causal connection with the Eclipse infrastructure enables building development tools interactively on the Clojure read-eval-print loop. @InProceedings{CSMR-WCRE14p429, author = {Coen De Roover and Reinout Stevens}, title = {Building Development Tools Interactively using the Ekeko Meta-Programming Library}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {429--433}, doi = {}, year = {2014}, } |
|
Valente, Marco Tulio |
CSMR-WCRE '14-TOOLS: "APIEvolutionMiner: Keeping ..."
APIEvolutionMiner: Keeping API Evolution under Control
André Hora, Anne Etien, Nicolas Anquetil, Stéphane Ducasse , and Marco Tulio Valente (INRIA, France; UFMG, Brazil) During software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool. @InProceedings{CSMR-WCRE14p420, author = {André Hora and Anne Etien and Nicolas Anquetil and Stéphane Ducasse and Marco Tulio Valente}, title = {APIEvolutionMiner: Keeping API Evolution under Control}, booktitle = {Proc.\ CSMR-WCRE}, publisher = {IEEE}, pages = {420--424}, doi = {}, year = {2014}, } |
31 authors
proc time: 0.27