David J. A. Cooper
Curtin University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by David J. A. Cooper.
conference on software engineering education and training | 2009
David A. McMeekin; Brian R. von Konsky; Elizabeth Chang; David J. A. Cooper
This paper reports on results from a pilot study that used Bloom’s Taxonomy to observe cognition levels during software inspections conducted by undergraduate computer science and software engineering students. Cognition levels associated with three different code inspection techniques were investigated. These were the Ad hoc, Abstraction Driven, and Checklist-based reading strategies. Higher cognition levels were observed when using inspection techniques that utilise a more structured reading process. This result highlights the importance of introducing novice programmers to structured code reading strategies. Findings suggest that teaching different software inspection techniques throughout software courses, beginning with structured techniques, is an excellent way to build a student’s critical software reading and analysis skills.
international conference on program comprehension | 2008
David A. McMeekin; B.R. von Konsky; Elizabeth Chang; David J. A. Cooper
Software maintenance can consume up to 70% of the effort spent on a software project, with more than half of this devoted to understanding the system. Performing a software inspection is expected to contribute to comprehension of the software. The question is: at what cognition levels do novice developers operate during a checklist-based code inspection followed by a code modification? This paper reports on a pilot study of Blooms taxonomy levels observed during a checklist-based inspection and while adding new functionality unrelated to the defects detected. Blooms taxonomy was used to categorise think-aloud data recorded while performing these activities. Results show the checklist-based reading technique facilitates inspectors to function at the highest cognitive level within the taxonomy and indicates that using inspections with novice developers to improve cognition and understanding may assist integrating developers into existing project teams.
australian software engineering conference | 2009
David A. McMeekin; Brian R. von Konsky; Michael C. Robey; David J. A. Cooper
Software inspections have been used to improve software quality for 30 years. The Checklist Based Reading strategy has traditionally been the most prevalent reading strategy. Increased Object Oriented usage has raised questions regarding this techniques efficacy, given issues such as delocalisation. This study compared two OO inspection techniques: Use-Case Reading and Usage-Based Reading, with Checklist Based Reading. Students and industry professionals were recruited to participate in the study. The effectiveness of each reading strategy was analysed, and the effect experience had on inspection efficacy. The results showed no significant difference between inspection techniques, whether used by student or professional developers but a significant difference was identified between student and professional developers in applying the different techniques. Qualitative results highlighted the differences in ability between industry and students with respect to what each group considered important when inspecting and writing code. These results highlight the differences between student and industry professionals when applying inspections. Therefore, when selecting participants for empirical software engineering studies, participant experience level must be accounted for within the reporting of results.
australian software engineering conference | 2008
David A. McMeekin; B.R. von Konsky; Elizabeth Chang; David J. A. Cooper
This paper addresses the influence the checklist based reading inspection technique has on a developers ability to modify inspected code. Traditionally, inspections have been used to detect defects within the development life cycle. This research identified a correlation between the number of defects detected and the successful code extensions for new functionality unrelated to the defects. Participants reported that having completed a checklist inspection, modifying the code was easier because the inspection had given them an understanding of the code that would not have existed otherwise. The results also showed a significant difference in how developers systematically modified code after completing a checklist inspection when compared to those who had not performed a checklist inspection. This study has shown that applying software inspections for purposes other than defect detection include software understanding and comprehension.
australian software engineering conference | 2006
David J. A. Cooper; M.W. Chan; M. Harding; Gautam Mehra; P. Woodward; B.R. von Konsky; Mike Robey
Many researchers have demonstrated the value of software inspections in finding and fixing defects early in the development process. However, manual inspection can be a labour-intensive process. We present a tool that applies dependence graphs to aid object oriented software inspection. Our tool, Coffee Grinder, uses control and data dependence graphs both to immediately visualise a Java system and to facilitate the development of scripts to find defects or locate areas of potential inspection interest. These scripts can output results textually or graphically. We present the design of Coffee Grinder and several example scripts. Coffee Grinder illustrates the case for extensible tool support in the software inspection process
International Conference on IT Revolutions | 2008
David A. McMeekin; Brian R. von Konsky; Elizabeth Chang; David J. A. Cooper
This paper demonstrates that different software code inspection techniques have the potential to improve developer understanding of code being inspected to varying extents. This suggests that some code inspection techniques may be superior to others with respect to improving the efficacy of future inspections, harnessing collective wisdom, and extending team knowledge and networked intelligence. In particular, this paper reports results from a study of novice developers’ cognitive development during a software inspection training exercise. We found that developers who performed a code inspection prior to modification tended to operate at higher cognitive levels beginning very early in the modification exercise. Those who had not performed an inspection tended to operate at lower cognitive levels for longer periods of time. Results highlight the importance of code inspections in increasing developers’ understanding of a software system. We believe collaboration between academia and industry in studies such as these would benefit the three major stakeholders: academia, industry and graduates.
australasian computing education conference | 2006
Brian R. von Konsky; Allan W. K. Loh; Mike Robey; Susan J. Gribble; Jim Ivins; David J. A. Cooper
ACSC '04 Proceedings of the 27th Australasian conference on Computer science - Volume 26 | 2004
David J. A. Cooper; Benjamin Khoo; Brian R. von Konsky; Mike Robey
australian software engineering conference | 2007
David J. A. Cooper; B.R. von Konsky; Mike Robey; David A. McMeekin
frontiers in education conference | 2006
Mike Robey; B.R. von Konsky; Jim Ivins; Susan J. Gribble; Allan W. K. Loh; David J. A. Cooper