Date of Award


Degree Type


Degree Name

Master of Applied Science (Computer studies)


Faculty of Science, Technology and Engineering

First Advisor

Ah Hung


The computer industry has a poor record of system development using the traditional life-cycle approach. The main cause of user dissatisfaction is the unacceptably large amount of time between specification and delivery of a system. In addition, users have limited opportunity to influence how the system will look when implemented once development has commenced. With the advent of 4GLs, system development using a prototyping approach has become a viable option. This has reduced the development tlme significantly and, together with the use of prototyping, has allowed users to become more involved in the development process. However, this change in the development process has meant that often the use of an accepted methodology/system life cycle has been ignored or altered. This has resulted in systems where the definition-of-requirements phase was often fast-tracked or omitted totally and the system documentation is insufficient for effective maintenance. Thus, this approach has not proved to be as successful as expected. However, the opportunities that prototyping offers should not be discarded because of the use of inappropriate software development methodologies, languages or tools. This study seeks to identify factors that may influence the success or failure of a prototyping project and to assess the importance of any developmentmethodologies being used. Information was gathered via interviews, questionnaires and, where deemed necessary, the reviewing of development procedures used. Conclusions have been drawn from data gathered from various organisations in Western Australia that have used prototyping for a number of projects, thus, suggesting a refinement of the development process. Two main areas appeared to affect the success of a software development project. The first is the lack of flexibility in the methodology used and inappropriateness of the development tools and languages. The second is insufficient requirements analysis. The results indicate that a methodology is required that provides a good framework, but is flexible enough to handle different types and sizes of project. It should specifically address prototyping and include guidelines as to how to select the most suitable prototyping approach for each project. It should contain examples of different deliverables and various development cycles appropriate for each type of prototyping. There should be automated tools available to handle documentation and code generation where possible. The development of a methodology with the above characteristics is required if the advantages of prototyping are to be maximised in the future.