Treating Errorhandling as a First Class Consideration in Design
It is unfortunate, but true: for many teams error handling is an afterthought. They design the main flows of their system and then they think about where they need exceptions and logging. However, the error cases are extremely important. When we consider them along with the normal cases, we an often find ways to arrive at better design. In this workshop, we will pursue design a series of solutions to the same problem with the error cases considered early and late. Then we will compare and contrast solutions and see how early consideration of cases can affect the growth of a design.
The workshop convener will outline a problem without error cases. Attendees will design a solution in Java using TDD. Afterward, the convener will outline several different strategies for error handling and recovery - a base set of patterns. Then he will outline the same problem with error cases. Attendees will redesign their solutions and code them. We will them compare and contrast the designs.
- Attendees will likely see error handling and recovery in a different light and recognize its importance in design.