Slicing concurrent Java programs using Indus and Kaveri

被引:30
|
作者
Venkatesh Prasad Ranganath
John Hatcliff
机构
[1] Kansas State University,Department of Computing and Information Sciences
关键词
Program slicing; Program dependences; Concurrent Java; Indus; Kaveri;
D O I
10.1007/s10009-007-0043-0
中图分类号
学科分类号
摘要
Program slicing is a program analysis and transformation technique that has been successfully used in a wide range of applications including program comprehension, debugging, maintenance, testing, and verification. However, there are only few fully featured implementations of program slicing that are available for industrial applications or academic research. In particular, very little tool support exists for slicing programs written in modern object-oriented languages such as Java, C#, or C++. In this paper, we present Indus—a robust framework for analyzing and slicing concurrent Java programs, and Kaveri—a feature-rich Eclipse-based GUI front end for Indus slicing. For Indus, we describe the underlying tool architecture, analysis components, and program dependence capabilities required for slicing. In addition, we present a collection of advanced features useful for effective slicing of Java programs including calling-context sensitive slicing, scoped slicing, control slicing, and chopping. For Kaveri, we discuss the design goals and basic capabilities of the graphical facilities integrated into a Java development environment to present the slicing information. This paper is an extended version of a tool demonstration paper presented at the International Conference on Fundamental Aspects of Software Engineering (FASE 2005). Thus, the paper highlights tool capabilities and engineering issues and refers the reader to other papers for technical details.
引用
收藏
页码:489 / 504
页数:15
相关论文
共 50 条
  • [1] Slicing concurrent Java']Java programs
    Zhao, JJ
    [J]. SEVENTH INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION, PROCEEDINGS, 1999, : 126 - 133
  • [2] Slicing concurrent Java']Java programs
    Chen, ZQ
    Xu, BW
    [J]. ACM SIGPLAN NOTICES, 2001, 36 (04) : 41 - 47
  • [3] Dynamic slicing concurrent java']java programs using variable cache table
    He Zhixue
    Mang Guangquan
    Rong Mei
    [J]. ADVANCED COMPUTER TECHNOLOGY, NEW EDUCATION, PROCEEDINGS, 2007, : 363 - 369
  • [4] An efficient technique for dynamic slicing of concurrent Java']Java programs
    Mohapatra, DP
    Mall, R
    Kumar, R
    [J]. APPLIED COMPUTING, PROCEEDINGS, 2004, 3285 : 255 - 262
  • [5] Kaveri: Delivering the Indus Java']Java program slicer to eclipse
    Jayaraman, G
    Ranganath, VP
    Hatcliff, J
    [J]. FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, PROCEEDINGS, 2005, 3442 : 269 - 272
  • [6] Pruning interference and ready dependence for slicing concurrent Java']Java programs
    Ranganath, VP
    Hatcliff, J
    [J]. COMPILER CONSTRUCTION, PROCEEDINGS, 2004, 2985 : 39 - 56
  • [7] Concolic testing based on dynamic slicing of concurrent Java programs
    Pu, Fangli
    Lu, Yansheng
    [J]. Huazhong Keji Daxue Xuebao (Ziran Kexue Ban)/Journal of Huazhong University of Science and Technology (Natural Science Edition), 2009, 37 (10): : 21 - 24
  • [8] An overview of the Indus framework for analysis and slicing of concurrent Java']Java software (Keynote talk - extended abstract)
    Ranganath, Venkatesh Prasad
    Hatcliff, John
    [J]. SIXTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2006, : 3 - +
  • [9] Using compressed bytecode traces for slicing Java']Java programs
    Wang, T
    Roychoudhury, A
    [J]. ICSE 2004: 26TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2004, : 512 - 521
  • [10] Debugging of Java']Java programs using HDT with program slicing
    Kouh, HJ
    Kim, KT
    Jo, SM
    Yoo, WH
    [J]. COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2004, PT 4, 2004, 3046 : 524 - 533