See MartinFowler's site at http://refactoring.com/catalog/replaceTypeCodeWithStateStrategy.html ------- Regarding the example given: EmployeeTypes ------ CategoryConditionalsAndDispatching