Analyzing exception flow in Java']Java™ programs

被引:0
|
作者
Robillard, MP [1 ]
Murphy, GC [1 ]
机构
[1] Univ British Columbia, Dept Comp Sci, Vancouver, BC V6T 1Z4, Canada
关键词
exception handling; software analysis; object-oriented programming languages; software engineering tool;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Exception handling mechanisms provided by programming languages are intended to ease the difficulty of developing robust software systems. Using these mechanisms, a software developer can describe the exceptional conditions a module might raise, and the response of the module to exceptional conditions that may occur as it is executing. Creating a robust system from such a localized view requires a developer to reason about the flow of exceptions across modules. The use of unchecked exceptions, and in object-oriented languages, subsumption, makes it difficult for a software developer to perform thus reasoning manually. In this paper, we describe a tool called Jex that analyzes the flow of exceptions in Java code to produce views of the exception structure. We demonstrate how Jex can help a developer identify program points where exceptions are caught accidentally, where there is an opportunity to add finer-grained recovery code, and where error-handling policies are not being followed.
引用
收藏
页码:322 / 337
页数:16
相关论文
共 50 条
  • [41] Evolution of distributed Java']Java programs
    Eisenbach, S
    Sadler, C
    Shaikh, S
    COMPONENT DEPLOYMENT, 2002, 2370 : 51 - 66
  • [42] Are Java']Java applets independent programs?
    Ball, S
    Crawford, JM
    DR DOBBS JOURNAL, 1999, 24 (04): : 101 - +
  • [43] Program slicing of Java']Java programs
    Galindo, Carlos
    Perez, Sergio
    Silva, Josep
    JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING, 2023, 130
  • [44] Simplifying the evolution of Java']Java programs
    Seiter, LM
    Lieberherr, KJ
    Orleans, D
    PROCEEDINGS OF THE 1997 INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 1997, : 655 - 656
  • [45] Functional Testing of Java']Java Programs
    Benac Earle, Clara
    Fredlund, Lars-Ake
    TRENDS IN FUNCTIONAL PROGRAMMING (TFP 2015), 2016, 9547 : 40 - 59
  • [46] Flow Java']Java: Declarative concurrency for Java']Java
    Drejhammar, F
    Schulte, C
    Brand, P
    Haridi, S
    LOGIC PROGRAMMING, PROCEEDINGS, 2003, 2916 : 346 - 360
  • [47] Inlining with traces in java']java programs
    Bradel, Borys J.
    Abdelrahman, Tarek S.
    COMPUTER SYSTEMS SCIENCE AND ENGINEERING, 2012, 27 (04): : 251 - 266
  • [48] Formal techniques for Java']Java programs
    Drossopoulou, S
    Eisenbach, S
    Jacobs, B
    Leavens, GT
    Müller, P
    Poetzsch-Heffter, A
    OBJECT-ORIENTED TECHNOLOGY, PROCEEDINGS, 2000, 1964 : 41 - 54
  • [49] A refinement method for Java']Java programs
    Grandy, Holger
    Stenzel, Kurt
    Reif, Wolfgang
    FORMAL METHODS FOR OPEN OBJECT-BASED DISTRIBUTED SYSTEMS, PROCEEDINGS, 2007, 4468 : 221 - +
  • [50] The Use of Overloading in JAVA']JAVA Programs
    Gil, Joseph
    Lenz, Keren
    ECOOP 2010: OBJECT-ORIENTED PROGRAMMING, 2010, 6183 : 529 - 551