On biasing behaviour to the optimal

A formal framework for synthesizing interactive systems is outlined. A distinction is made between the functional ‘behaviour’ of a system, which is a description of everything that the user is permitted to do, and the ‘use’ of a system, which is what the user is likely to do. A way for capturing the use requirements of a system in terms of how ‘good’ is a given use is proposed and discussed as well as a way of describing interface specifications and terms of what user interfaces do rather than how they do it. The two aspects are related so that an analyst can judge whether changes in the interface model cause required improvements in the use of the system. Some of the implications of this approach are discussed and a comparison is made to other formal approaches in HCI.