English
Related papers

Related papers: Program slicing techniques and its applications

200 papers

Slicing is a program analysis technique originally developed for imperative languages. It facilitates understanding of data flow and debugging. This paper discusses slicing of Constraint Logic Programs. Constraint Logic Programming (CLP) is…

Software Engineering · Computer Science 2007-05-23 Gyongyi Szilagyi , Tibor Gyimothy , Jan Maluszynski

In the present paper we formally define the notion of abstract program slicing, a general form of program slicing where properties of data are considered instead of their exact value. This approach is applied to a language with numeric and…

Logic in Computer Science · Computer Science 2016-05-20 Isabella Mastroeni , Damiano Zanardini

Dynamic program slicing can significantly reduce the code developers need to inspect by narrowing it down to only a subset of relevant program statements. However, despite an extensive body of research showing its usefulness, dynamic…

Software Engineering · Computer Science 2022-01-04 Bogdan Alexandru Stoica , Swarup K. Sahoo , James R. Larus , Vikram S. Adve

Program slicing has been mainly studied in the context of imperative languages, where it has been applied to a wide variety of software engineering tasks, like program understanding, maintenance, debugging, testing, code reuse, etc. This…

Programming Languages · Computer Science 2007-05-23 Josep Silva , Germán Vidal

Object-oriented programming has been considered a most promising method in program development and maintenance. An important feature of object-oriented programs (OOPs) is their reusability which can be achieved through the inheritance of…

Programming Languages · Computer Science 2010-06-15 Santosh Kumar Pani , Priya Arundhati

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural specifications) are going to be accumulated, the development…

Software Engineering · Computer Science 2009-09-25 Jianjun Zhao

We introduce program splicing, a programming methodology that aims to automate the commonly used workflow of copying, pasting, and modifying code available online. Here, the programmer starts by writing a "draft" that mixes unfinished code,…

Programming Languages · Computer Science 2017-05-26 Yanxin Lu , Swarat Chaudhuri , Chris Jermaine , David Melski

Static program slicing is a fundamental software engineering technique for isolating code relevant to specific variables. While recent learning-based approaches using language models (LMs) show promise in automating slice prediction, they…

Software Engineering · Computer Science 2026-05-12 Pengfei He , Shaowei Wang , Tse-Hsun Chen , Muhammad Asaduzzaman

Writing correct distributed programs is hard. In spite of extensive testing and debugging, software faults persist even in commercial grade software. Many distributed systems, especially those employed in safety-critical environments,…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Neeraj Mittal , Vijay K. Garg

Backward slicing has been used extensively in program understanding, debugging and scaling up of program analysis. For large programs, the size of the conventional backward slice is about 25% of the program size. This may be too large to be…

Software Engineering · Computer Science 2014-07-21 Shrawan Kumar , Amitabha Sanyal , Uday Khedker

Static program slicing is a fundamental technique in software engineering. Traditional static slicing tools rely on parsing complete source code, which limits their applicability to real-world scenarios where code snippets are incomplete or…

Software Engineering · Computer Science 2025-09-23 Pengfei He , Shaowei Wang , Tse-Hsun Chen

Given a program, a quotient can be obtained from it by deleting zero or more statements. The field of program slicing is concerned with computing a quotient of a program which preserves part of the behaviour of the original program. All…

Programming Languages · Computer Science 2017-05-23 Sebastian Danicic , Robert M. Hierons , Michael R. Laurence

Program slicing is a critical technique in software engineering, enabling developers to isolate relevant portions of code for tasks such as bug detection, code comprehension, and debugging. In this study, we investigate the application of…

Software Engineering · Computer Science 2024-09-20 Kimya Khakzad Shahandashti , Mohammad Mahdi Mohajer , Alvine Boaye Belle , Song Wang , Hadi Hemmati

Several applications of slicing require a program to be sliced with respect to more than one slicing criterion. Program specialization, parallelization and cohesion measurement are examples of such applications. These applications can…

Programming Languages · Computer Science 2017-09-26 Prasanna Kumar K. , Amitabha Sanyal , Amey Karkare

Program slicing provides explanations that illustrate how program outputs were produced from inputs. We build on an approach introduced in prior work by Perera et al., where dynamic slicing was defined for pure higher-order functional…

Programming Languages · Computer Science 2017-09-12 Wilmer Ricciotti , Jan Stolarek , Roly Perera , James Cheney

Trace slicing is a widely used technique for execution trace analysis that is effectively used in program debugging, analysis and comprehension. In this paper, we present a backward trace slicing technique that can be used for the analysis…

Logic in Computer Science · Computer Science 2011-06-07 María Alpuente , Demis Ballis , Javier Espert , Daniel Romero

Program slicing is a technique for simplifying programs by focusing on selected aspects of their behaviour. Current mainstream static slicing methods operate on the PDG (program dependence graph) or SDG (system dependence graph), but these…

Programming Languages · Computer Science 2019-03-14 Yingzhou Zhang

Splitting a logic program allows us to reduce the task of computing its stable models to similar tasks for its subprograms. This can be used to increase solving performance and prove program correctness. We generalize the conditions under…

Artificial Intelligence · Computer Science 2025-03-30 Jorge Fandinno , Yuliya Lierler

This paper presents a new technique for data slicing of distributed programs running on a hierarchy of machines. Data slicing can be realized as a program transformation that partitions heaps of machines in a hierarchy into independent…

Programming Languages · Computer Science 2014-02-25 Mohamed A. El-Zawawy

Aspect-oriented software development builds upon object-oriented development by offering additional abstraction boundaries that help us separate different types of requirements into so-called aspects. Given a legacy OO application, it pays…

Software Engineering · Computer Science 2021-09-27 Barthélémy Dagenais , Hafedh Mili
‹ Prev 1 2 3 10 Next ›