This thesis presents a new process based approach to software engineering designed to meet the needs of academic computer science researchers. The core objective was to examine whether software engineering approaches could be adapted for the research environment so that they gain acceptance and enable improvement of the research process.
The approach included the provision of selected process descriptors (software, tools, and guidelines) to support research. Inter-researchers support, and support between researchers and a departmental Software Engineer were examined. A new working paradigm for computer science departments was simulated in our experiments; this involves the integration of a software engineer working on projects across the department. The approach encourages researcher’s reflection and conscious engagement with their research process.
For researchers, our approach provides novel ways of documenting the research and research process and sharing this information in a low cost manner. Selected software engineering tools and approaches were evaluated for both their benefits and acceptability to the academic community. A framework for judging academic capability maturity is presented.
Five-month research projects by MSc students form the experimental basis. Data was collected over three years. About half the students opted for the experimental approach. Data collection ranged from inspection of outputs, interviews, and surveys to software engineering approaches like Formal Technical Reviews. In a case study approach we present information on the attitudes, approaches and rationale of the researchers, such understanding is needed for new approaches to be both helpful and acceptable.
Developed in an evolutionary manner, changes and the rationale for them are explained, demonstrating a growing understanding of the needs of researchers and of the research environment.
This work provides a foundation for an area of growing interest in computer science research, and a means of increasing the rate of scientific progress across the Science and Technology domains.
Thanks once again to my supervisors, Prof Ian Sommerville and Dr Simon Lock.
Full citation: Andre Oboler, Software Engineering for the Research Environment (SERE): a process of improving Process Improvement Processes in academic research, PhD Thesis, Computing Department, Lancaster University, 2007.