In general, whether a computer program satisfies ergonomic demands is ascertained only after completion of the software, which means at a point in time when the costs of potential modifications have already increased enormously. This research project follows the far more economic idea of considering software-ergonomic aspects during the early development phases and investigates how far common principles of software-ergonomic design are reflected in UML-diagrams or similar notations and how they can be evaluated by means of such techniques.
In the reporting period about 170 software ergonomic attributes, so called SWEMs ("Software-ergonomische Merkmale") were identified and evaluated according to the seven principles of ISO 9241-10 as well as in terms of their (absolute, relative, or only qualitative) measurability, their (automatic resp. manual) ascertainability, the underlying Seeheim component and the Herczeg level. Successively, hierarchical relations between the SWEMs (like "is a special case of", "is part of", "is an extension of") were identified. Furthermore, each SWEM was associated with the earliest phase in software development, during which it can be identified. Finally, further SWEMs connected with these, e.g. by extension or by refinement, were considered. Such dependencies yielded an additional hierarchical structure of the SWEMs.
A part of the SWEMs identified may be verified automatically by means of patterns of UML diagrams enriched by assertions. For example, the demand for prompt input responses can be modelled, and thus automatically verified, by corresponding constraints in sequence diagrams. The completeness of system reactions (including error messages) can be achieved by covering an appropriate equivalence class partition of the input space.
Interviews with representatives of 26 development labs with a total of 219 developers showed that today user interfaces are hardly designed by use of formal notations (like UML-diagrams). They are rather roughly specified (e. g. by means of the requirements management tool Doors) and successively inspected, or their early prototypes directly flow into the specification. This is mainly due to very powerful user interface management systems tempting the developers to generate iteratively the source code for the user interface from the prototypes.
Based on the SWEMs a procedure is being established allowing to determine the ergonomic quality of an application and to initiates measures for its improvement. The procedure consists of several steps. First, the inspection object is defined and appropriately decomposed, e. g. into partial dialogs. Successively, with the help of the SWEM list a structured inspection of the individual elements is carried out. Anomalies detected are discussed in subsequent meetings with the client in order to derive measures for product enhancements. In addition to the derivation of adequate measures this process also yields a know-how transfer increasing the developers' awareness for ergonomic aspects and thus motivating them to apply this knowledge in future projects. A further benefit of such discussions is the possibility of optimizing the underlying process by a continuous feedback loop.
The procedure described was carried out and continuously improved in different industrial applications. So far the technique is limited to qualitative statements pointing out potential improvements for the items inspected. In future it is to be extended such as to allow quantitative statements as well, e.g. relative quality indicators in terms of achievement of software ergonomic targets. This metric should assist the project manager or the GUI developer in investing more effectively the resources for ergonomic enhancement and in lowering the resulting development costs.