MOONSTONE: Support for Understanding and Writing Exception Handling Code

被引:0
|
作者
Kistner, Florian [1 ]
Kery, Mary Beth [2 ]
Puskas, Michael [3 ]
Moore, Steven [2 ]
Myers, Brad A. [2 ]
机构
[1] Tech Univ Munich, Dept Informat, Munich, Germany
[2] Carnegie Mellon Univ, Human Comp Interact Inst, Pittsburgh, PA 15213 USA
[3] Arizona State Univ, Sch Comp Informat & Decis Syst Engn, Tempe, AZ USA
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
MOONSTONE is a new plugin for Eclipse that supports developers in understanding exception flow and in writing exception handlers in Java. Understanding exception control flow is paramount for writing robust exception handlers, a task many developers struggle with. To help with this understanding, we present two new kinds of information: ghost comments, which are transient overlays that reveal potential sources of exceptions directly in code, and annotated highlights of skipped code and associated handlers. To help developers write better handlers, MOONSTONE additionally provides project-specific recommendations, detects common bad practices, such as empty or inadequate handlers, and provides automatic resolutions, introducing programmers to advanced Java exception handling features, such as try-with-resources. We present findings from two formative studies that informed the design of MOONSTONE. We then show with a user study that Moonstone improves users' understanding in certain areas and enables developers to amend exception handling code more quickly and correctly.
引用
收藏
页码:63 / +
页数:9
相关论文
共 50 条
  • [31] Distributed exception handling:: Ideas, lessons and issues with recent exception handling systems
    Campéas, A
    Dony, C
    Urtado, C
    Vauttier, S
    RAPID INTEGRATION OF SOFTWARE ENGINEERING TECHNIQUES, 2005, 3475 : 82 - 92
  • [32] Unveiling Exception Handling Bug Hazards in Android based on GitHub and Google Code Issues
    Coelho, Roberta
    Almeida, Lucas
    Gousios, Georgios
    van Deursen, Arie
    12TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2015), 2015, : 134 - 145
  • [33] AUTOMATED SUPPORT FOR LEGACY CODE UNDERSTANDING
    NING, JQ
    ENGBERTS, A
    KOZACZYNSKI, W
    COMMUNICATIONS OF THE ACM, 1994, 37 (05) : 50 - 57
  • [34] Revisiting exception handling practices with exception flow analysis
    de Pádua, Guilherme B.
    Shang, Weiyi
    arXiv, 2017,
  • [35] Mining exception instances to facilitate workflow exception handling
    Hwang, SY
    Ho, SF
    Tang, J
    6TH INTERNATIONAL CONFERENCE ON DATABASE SYSTEMS FOR ADVANCED APPLICATIONS, PROCEEDINGS, 1999, : 45 - 52
  • [36] Revisiting Exception Handling Practices with Exception Flow Analysis
    de Padua, Guilherme B.
    Shang, Weiyi
    2017 IEEE 17TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2017, : 11 - 20
  • [37] Exception handling for copyless messaging
    Jaksic, Svetlana
    Padovani, Luca
    SCIENCE OF COMPUTER PROGRAMMING, 2014, 84 : 22 - 51
  • [38] Is Exception Handling a Reusable Aspect?
    Almeida, Adauto
    Barreiros, Emanoel
    Saraiva, Juliana
    Castor, Fernando
    Soares, Sergio
    2014 EIGHTH BRAZILIAN SYMPOSIUM ON SOFTWARE COMPONENTS, ARCHITECTURES AND REUSE (SBCARS), 2014, : 32 - 41
  • [39] EXCEPTION HANDLING IN PARALLEL COMPUTATIONS
    SZALAS, A
    SZCZEPANSKA, D
    SIGPLAN NOTICES, 1985, 20 (10): : 95 - 104
  • [40] Current trends in exception handling
    Perry, DE
    Romanovsky, A
    Tripathi, A
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2000, 26 (10) : 921 - 922