The Use of Software Engineering in Computer Science Research project examines the weaknesses in the approach to the development of software supporting Computer Science research. The potential to use some adapted form of Software Engineering to meet the needs of this research community is examined. The research is carried out in the context of Computer Science research and investigates and takes account of the exploratory nature of that research. This thesis concentrates specifically on the research environment in a university setting.
The USE CSR research is based on surveys, interviews and case studies. A surveys of academic computer scientists in the Australia, and to a lesser extent the United States, examines the current trends in software engineering use and their effects on research outcomes. Interviews with computer scientists and software engineers in Australia and the US examine the nature of computer science research and the problems facing it. A case study approach examines three research projects in depth.
The results in this thesis suggest there is room for improvement in our approach to computer science research. However different goals require different changes to the current approach. These changes are sometimes contradictory. For example maintaining design documentation is of benefit to a project and supervisor, but often no more than a waste of valuable time for a PhD candidate. This is seen in our results as a difference in the factors correlated with publications resulting from a project and those correlated with the average number of publications per Higher Degree by Research Student. A new software development approach, specifically aimed at research in the university setting, is introduced to reconcile the various needs of stake holders in the research process and provide an agile, workable structure for future development.