A graphical representation for communicating sequential processes
The use of formal notations has many advantages in the specification of interactive systems. However, validating specifications written using formal notations is generally difficult as these specifications are often hard to understand for those less familiar with such notations. Whilst it is widely acknowledged that users should be involved in validating requirements in order both to check that a specification says what they intended it to say, and to assist developers in refining requirements relating to the usability of the system, most users are not familiar with the formal notations used by software engineers and cannot realistically be expected to validate formal specifications in their raw state. One notation which has been found to be useful in specifying the behaviour of interactive systems is CSP (Communicating Sequential Processes). This paper presents a graphical representation of CSP which has been designed with the intention of making it easier to understand, and hence validate, specifications written in CSP. This graphical representation has been evaluated by a range of potential users, and refined in the light of their comments. The resulting representation is also analysed in terms of notational properties derived from Green’s work on cognitive dimensions. Directions for further work are discussed.