[Theses] [Software Engineering Research Group] [Department of Computer Science] [University of British Columbia]
Analyzing Exception Flow in Java Programs
Martin P. Robillard
M.Sc. thesis, University of British Columbia, September 1999.
Abstract
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
this reasoning manually. In this thesis, I describe an approach for
analyzing the flow of exceptions in Java source code to produce views
of the exception structure. The approach is supported by a tool called
Jex. I demonstrate how Jex can help a developer identify program
points where exceptions are caught accidentally, where there is an
opportunity to add finer-grain recovery code, and where
error handling policies are not being followed.
© Martin P. Robillard, 1999.
URL: |
http://www.cs.ubc.ca/labs/se/papers/1999/UBC-CS-TR-99-02.html |
File: |
/pub/www/cs.ubc.ca/docs/labs/se/papers/1999/UBC-CS-TR-99-02.html |