1. A computer software system comprising: a view sub-system including presentation objects which provide a user interface; a business logic sub-system including business object implementation objects which hold business data objects and implement business functions; a handler sub-system including controller objects which control a sequence of actions in a use case; and a view context sub-system including at least one context object which is arranged to capture input and output data.