Experiments on slicing-based debugging aids
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
Interprocedural slicing using dependence graphs
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
The program summary graph and flow-sensitive interprocedual data flow analysis
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Information Processing Letters
Integrating noninterfering versions of programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
The relationship between slices and module cohesion
ICSE '89 Proceedings of the 11th international conference on Software engineering
Software testing techniques (2nd ed.)
Software testing techniques (2nd ed.)
Applied software measurement: assuring productivity and quality
Applied software measurement: assuring productivity and quality
Using Program Slicing in Software Maintenance
IEEE Transactions on Software Engineering
A safe approximate algorithm for interprocedural aliasing
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
Debugging with dynamic slicing and backtracking
Software—Practice & Experience
Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM SIGPLAN Fortran Forum
Context-sensitive interprocedural points-to analysis in the presence of function pointers
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
Program integration for languages with procedure calls
ACM Transactions on Software Engineering and Methodology (TOSEM)
Experimental results from dynamic slicing of C programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient context-sensitive pointer analysis for C programs
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
Context-insensitive alias analysis reconsidered
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
The chaining approach for software test data generation
ACM Transactions on Software Engineering and Methodology (TOSEM)
Points-to analysis in almost linear time
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Program decomposition for pointer aliasing: a step toward practical analyses
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
A specification driven slicing process for identifying reusable functions
Journal of Software Maintenance: Research and Practice
Rule-based approach to computing module cohesion
ICSE '93 Proceedings of the 15th international conference on Software Engineering
Program and interface slicing for reverse engineering
ICSE '93 Proceedings of the 15th international conference on Software Engineering
Fast and accurate flow-insensitive points-to analysis
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Semantics Guided Regression Test Cost Reduction
IEEE Transactions on Software Engineering
Partial online cycle elimination in inclusion constraint graphs
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Effective whole-program analysis in the presence of pointers
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
SUIF Explorer: an interactive and interprocedural parallelizer
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Pointer analysis for programs with structures and casting
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
Reuse-driven interprocedural slicing
Proceedings of the 20th international conference on Software engineering
System-dependence-graph-based slicing of programs with arbitrary interprocedural control flow
Proceedings of the 21st international conference on Software engineering
Efficient points-to analysis for whole-program analysis
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Ultra-fast aliasing analysis using CLA: a million lines of C code in a second
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Evaluating explicitly context-sensitive program slicing
PASTE '01 Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Improving program slicing with dynamic points-to data
Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering
IEEE Transactions on Software Engineering
Software Salvaging Based on Conditions
ICSM '94 Proceedings of the International Conference on Software Maintenance
Flow-Insensitive Interprocedural Alias Analysis in the Presence of Pointers
LCPC '94 Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing
Polymorphic versus Monomorphic Flow-Insensitive Points-to Analysis for C
SAS '00 Proceedings of the 7th International Symposium on Static Analysis
Precise dynamic slicing algorithms
Proceedings of the 25th International Conference on Software Engineering
Qualifying reusable functions using symbolic execution
WCRE '95 Proceedings of the Second Working Conference on Reverse Engineering
Understanding Function Behaviors through Program Slicing
WPC '96 Proceedings of the 4th International Workshop on Program Comprehension (WPC '96)
Incremental Slicing Based on Data-Dependences Types
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Implementation Techniques for Efficient Data-Flow Analysis of Large Programs
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Identifying reusable functions using specification driven program slicing: a case study
ICSM '95 Proceedings of the International Conference on Software Maintenance
Reuse-Driven Interprocedural Slicing in the Presence of Pointers and Recursions
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Evaluating Context-Sensitive Slicing and Chopping
ICSM '02 Proceedings of the International Conference on Software Maintenance (ICSM'02)
Effects of Pointers on Data Dependences
IWPC '01 Proceedings of the 9th International Workshop on Program Comprehension
Program schemas with semantic restrictions.
Program schemas with semantic restrictions.
Program slices: formal, psychological, and practical investigations of an automatic program abstraction method
A Large-Scale Empirical Study of Forward and Backward Static Slice Size and Context Sensitivity
ICSM '03 Proceedings of the International Conference on Software Maintenance
Proceedings of the 5th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Slice-Based Cohesion Metrics and Software Intervention
WCRE '04 Proceedings of the 11th Working Conference on Reverse Engineering
Locating Dependence Clusters and Dependence Pollution
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Kaveri: delivering the indus java program slicer to eclipse
FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
Impact analysis of database schema changes
Proceedings of the 30th international conference on Software engineering
An empirical study of the relationship between the concepts expressed in source code and dependence
Journal of Systems and Software
Change impact graphs: Determining the impact of prior codechanges
Information and Software Technology
Cost effective software engineering using program slicing techniques
Proceedings of the 2nd International Conference on Interaction Sciences: Information Technology, Culture and Human
Assessing the impact of global variables on program dependence and dependence clusters
Journal of Systems and Software
Proceedings of 2010 ICSE Workshop on Search-driven Development: Users, Infrastructure, Tools and Evaluation
SUDS: an infrastructure for creating dynamic software defect detection tools
Automated Software Engineering
Non-parametric statistical fault localization
Journal of Systems and Software
Model projection: simplifying models in response to restricting the environment
Proceedings of the 33rd International Conference on Software Engineering
Practical change impact analysis based on static program slicing for industrial software systems
Proceedings of the 33rd International Conference on Software Engineering
Slicing MATLAB simulink models
Proceedings of the 34th International Conference on Software Engineering
Practical change impact analysis based on static program slicing for industrial software systems
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Hi-index | 0.00 |
This article presents results from a study of all slices from 43 programs, ranging up to 136,000 lines of code in size. The study investigates the effect of five aspects that affect slice size. Three slicing algorithms are used to study two algorithmic aspects: calling-context treatment and slice granularity. The remaining three aspects affect the upstream dependencies considered by the slicer. These include collapsing structure fields, removal of dead code, and the influence of points-to analysis. The results show that for the most precise slicer, the average slice contains just under one-third of the program. Furthermore, ignoring calling context causes a 50% increase in slice size, and while (coarse-grained) function-level slices are 33% larger than corresponding statement-level slices, they may be useful predictors of the (finer-grained) statement-level slice size. Finally, upstream analyses have an order of magnitude less influence on slice size.