The untrained eye : how languages for software specification support understanding in untrained users
It is generally recognised that choice of languages can have a significant effect on the system development process, particularly in the early stages. In the development of interactive systems, it is essential that all stakeholders can participate in a meaningful way. In order to do this, they must be able to understand representations of key concepts produced by the developers, especially those relating to problems and requirements for the system. Some stakeholders, such as clients and potential users of the system, may be unfamiliar with the languages used by system developers. They may therefore find it difficult to understand representations produced using such languages well enough to give useful feedback to the developer. In this paper we identify ease of understanding of representations as a key issue for interactive system development and consider how the notion of ease of understanding may be defined in this context. We then discuss an approach to evaluating software specification languages in terms of properties which may affect the understandability of representations, and which may be amenable to object measurement. Our intention is that results from this work will help to classify existing languages in terms of ease of understanding, provide a rational basis for predicting understandability in proposed new languages, and help developers to use current languages in more imaginative ways so that they can produce representations that are easier to understand.