• Corpus ID: 5497423

Cross-language Program Slicing in the .NET Framework

  title={Cross-language Program Slicing in the .NET Framework},
  author={Kriszti{\'a}n P{\'o}cza and Mih{\'a}ly Bicz{\'o} and Zolt{\'a}n Porkol{\'a}b},
Dynamic program slicing methods are very attractive for debugging because many statements can be ignored in the process of localizing a bug. [] Key Method The method is utilizing the CLR Debugging Services API, hence it can be applied to large multi-language applications.

Figures and Tables from this paper

Towards Effective Runtime Trace Generation Techniques in the .NET Framework

This paper introduces two cross-language trace generation methods based on the .NET Debugging and Profiling Infrastructure that are compared by performance and applicability to real-size executables.

Towards Detailed Trace Generation Using the Profiler in the .NET Framework?

This paper's non-intrusive method is based on the .NET Profiler; consequently, neither additional development tools, nor the .net Framework SDK is required to be installed on the target system.

ORBS: language-independent program slicing

Five variants of ORBS are evaluated on ten programs of different sizes and languages showing that it is less expensive than similar existing techniques and able to handle systems written in multiple languages without specialist analysis tools.

Automatic Test Case Generation in Object Oriented Programming

A technique is designed that combine the code based technique and model based technique, to allow comparing the object oriented of an application that written in any programming language.

Debugging C++ template metaprograms

Templight is a debugging framework that reveals the steps executed by the compiler during the compilation of C++ programs with templates, and aims to take a step forward to help template metaprogramming become more accepted in the software industry.

Seeing Is Slicing: Observation Based Slicing of Picture Description Languages

  • S. YooD. BinkleyR. Eastman
  • Computer Science
    2014 IEEE 14th International Working Conference on Source Code Analysis and Manipulation
  • 2014
Taking Picture Description Languages as a case study, the challenges and effectiveness of such a generalization are considered and the results show that not only is it possible to generalize the ORBS algorithm, but the resulting slicer is quite effective removing from 27% to 98% of the original source code with an average of 85%.

A General Regression Test Selection Technique

A technique is designed that combine the code based technique and model based technique, to allow comparing the object oriented of an application that written in any programming language.

Observational slicing based on visual semantics

Regression test Selection technique based on dynamic behaviour

A technique is designed that combine the code based technique and model based technique, to allow comparing the object ornieted of an application that written in any programming language.

Inter-Procedural Static Slicing Using Advanced Caching Algorithm *

In this paper an advanced caching algorithm intended to decrease average complexity of SDG-based static slicing is proposed and might imply significant speed growth since re-computing dependences between formal input and output parameters is avoidable.



Design and implementation of bytecode-based Java slicing system

This work proposes a method of constructing a DC slicing system for Java programs which uses both static and dynamic information and has extended a Java virtual machine for extraction of dynamic information.

A slicing method for object-oriented programs using lightweight dynamic information

This paper proposes a program slicing method for object-oriented programs and evaluates its effectiveness with Java programs by using static and dynamic analyses appropriately and computes accurate slices with small costs.

Dynamic slicing method for maintenance of large C programs

The main advantage of this algorithm is that it can be applied to real-size C programs, because its memory requirements are proportional to the number of different memory locations used by the program (which is in most cases far smaller than the size of the execution history which is the absolute upper bound of the algorithm).

Speeding up slicing

A new algorithm for slicing with system dependence graphs that is asymptotically faster than the previous one is defined, providing roughly a 6-fold speedup on examples of 348 to 757 lines.

Advanced slicing of sequential and concurrent programs

  • J. Krinke
  • Computer Science
    20th IEEE International Conference on Software Maintenance, 2004. Proceedings.
  • 2004
This thesis presents a high-precision approach toslice concurrent procedural programs despite the fact that optimal slicing is known to be undecidable, and is the first approach to slice concurrent programs that does not rely on inlining of called procedures.

Dynamic program slicing

This paper investigates the concept of the dynamic slice consisting of all statements that actually affect the value of a variable occurrence for a given program input, and introduces the economical concept of a Reduced Dynamic Dependence Graph, proportional in size to the number of dynamic slices arising during the program execution.

Dependence analysis for recursive java programs

A new approach to analyze dependences of a direct or indirect recursive Java program by simulating its execution by developing a new kind of dependence analysis method for recursive Java programs.

The program dependence graph in a software development environment

The program dependence graph (PDG) may be a suitable internal form that is amenable to incremental data flow analysis, improving response time to the user in an interactive environment and facilitating debugging through data flow anomaly detection.

Interprocedural slicing using dependence graphs

A new kind of graph to represent programs is introduced, called a system dependence graph, which extends previous dependence representations to incorporate collections of procedures (with procedure calls) rather than just monolithic programs.

A survey of program slicing techniques

  • F. Tip
  • Computer Science
    J. Program. Lang.
  • 1995
An overview of the applications of program slicing, which include debugging, program integration, dataflow testing, and software maintenance is presented, including the various general approaches used to compute slices.