|
|
|
A
Comparative Study of Exception Handling Mechanisms for Dependable
Object-Oriented Software
Alessandro F. Garcia, Cecília
M.F. Rubira, Alexander Romanovsky & Jie Xu
|
| To be submitted to Journal of
Systems and Software, Elsevier, 2000 |
|
| Abstract |
Object-oriented software systems have to cope with an increasing number of
exceptional conditions and incorporate fault tolerance activities in order
to meet the system's dependability requirements. An exception handling mechanism is one of the most important schemes for detecting and
recovering errors, and structuring the fault tolerance activities incorporated in a system. However,
the current lack of suitable exception handling mechanisms can make an application
non-reliable and difficult to understand, maintain and reuse in the presence of
faults. This paper surveys various exception mechanisms implemented in different
object-oriented languages, evaluates and compares different designs. A taxonomy is developed
to help address nine basic technical aspects for a given exception handling proposal, including
exception representation, exception interface, handler attachment, handler
binding,
exception propagation, continuation of the control flow, cleanup actions, reliability checks,
and concurrent exception handling. Practical issues and difficulties are summarized, major
trends in actual languages are identified, and directions for future work are suggested. |
|
|
|