An investigation into computer-aided design of software

Riha, Karel (1987) An investigation into computer-aided design of software. (PhD thesis), Kingston Polytechnic,


Manual software design methods suffer from many handicaps. As a result, the design documentation of software systems usually either does not exist, or is full of errors and out of date. Many software development, reliability, and maintainability problems reported in the literature can be traced to this state of affairs. The solution of these problems does not appear to lie in improved manual software design methods, but in the potentially much more "effective" computer-aided software design tools. This project set out to investigate how to aid the manual software design methods with a computer. A novel entity-relationship model for the software design specification was formulated and built into an interactive pilot software design tool. In spite of its simplicity, the model is capable of representing software structures from high-level architectural design to low-level detailed design. The tool stores the model entered by the user in a database. The model can then be inspected either on-line, or from printed documentation. The evaluation of the pilot tool, based on the feedback from the users, was favourable to the underlying model. However, many human-computer interface problems were identified. The effectiveness of software design tools was defined in terms of the designer productivity and the quality of the design documentation. An approach which consisted of repeated propositioning, implementation, and evaluation of modifications was then used to improve the effectiveness of the tool. A questionnaire was used to assess the opinion of the tool users more objectively, and an experiment was carried out to compare the effectiveness of the tool with a manual method. The results of this research have shown that the latest version of the tool is significantly more effective than the manual method.

Actions (Repository Editors)

Item Control Page Item Control Page