|M.Sc Student||Judith Somekh|
|Subject||Modeling Exceptions with Object-Process Methodology|
|Department||Department of Industrial Engineering and Management||Supervisors||Full Professor Dori Dov|
|Dr. Peleg Mor|
|Full Thesis text|
Exception handling is a fundamental issue that needs to be addressed by complex, safety-critical systems, such as embedded, real time, and medical decision-support systems. Modeling exceptions appropriately is a crucial step in a system-design process, since correcting errors detected after the design phase can be very costly.
Object-Process Methodology (OPM) is a combined graphical and textual modeling methodology that includes the behavioral and structural aspects of a system in a single model and is supported by the OPCAT (Object-Process CASE Tool) modeling software environment. OPM has been proven experimentally to be effective in producing system specifications of high quality, compared to OMT - the main ancestor of the Unified Modeling Language (UML). OPM is suitable for modeling dynamic systems as it can directly express events, Event-Condition-Action rules, guarding conditions (pre-conditions that guard the execution of a process) and timing exceptions.
Our work focuses on supporting system designers with a methodology for modeling abnormal behaviors and exceptions that can be predicted in advance and developing mechanisms for handling them during the requirements and design phase. Our research has investigated the nature and characteristics of exceptions of the system's behavior that can be envisioned during system design. The result is an exceptions ontology that comprises an extensive, domain-independent classification of exception types and their characteristics, as well as their phases, incorporated into exceptions meta-model. We model the ontology of exceptions in their various dimensions with Object-Process Methodology (OPM), which we refined and extended for this purpose. The OPM exception handling extensions include support of measurable exceptions and general asynchronous exceptions as well as simplifying shortcuts for describing complex conditions. Based on the developed extensions, exception modeling templates have been designed along with an exception management methodology consisting of two methodological guidelines. The first one promotes the elicitation of exceptions at design time and the second—for utilizing and customizing these templates in a system model.
The expressiveness of OPM with its exception handling extensions and templates has been evaluated with favorable results through several real industrial case studies. Additionally, the exceptions elicitation methodology's part was evaluated through a controlled experiment, in which 42 students were asked to elicit exceptions while working with or without the elicitation guideline. It has been shown empirically that working with the exceptions elicitation guideline enhances the number of exceptions defined. Regarding the range of the exceptions coverage, we pinpoint specific exception categories in which significant differences were found.