Spotlight on PPIGers


Jim Buckley

Hi. My name is Jim Buckley and I am a lecturer at the Limerick Institute of Technology. I have been listening in on PPIG for quite some time but this is my first active participation!

My work focuses on software comprehension and, in particular, in evaluating system monitoring in empirical studies of software comprehension. System monitoring is where the tool (editor/browser) used by the programmer to study code also logs their interactions. The idea then is to see if experiments can be set up where these log files can give us valuable information about the programmers' comprehension process.

It seems like a neat idea when you compare it to hours and hours of transcription of talk-aloud in a darkened room and the possibility of non-standardised analysis! However, as I'm finding out, its not all easy sailing. Obviously, you have to try to breach the behaviour - intention divide, and the analysis programs can be quite difficult to get right. But once you've written them, you are guaranteed standardised analysis of results, and you can carry out that analysis many times.

I've been struggling over the last year with a new job and a new baby (Sarah), so output hasn't been particularly prolific (or existent even). However, I'm getting back into it again and I've carried out a number of calibration-type experiments at this stage. These experiments try to relate programmers' behaviour with their comprehension models / outcomes, and I hope to publish the results in a "workshop near you" soon!

I have also developed a highly configurable browser/editor as the basis for my system monitoring experiments. This browser /editor logs the programmers viewing of the code as he goes. If anyone is interested in looking at the (really) rough drafts of the experiment findings, in finding out more about the system monitoring tool, or finding out more about my work in general, give me an e-mail

Pete Hornsby

I am a BT-sponsored research student at Loughborough University, in the final year (hopefully!) of my Ph.D, supervised by Ian Newman. My research topic was originally 'End User Programming using Components', but I have since broadened this to include all programmers. I am interested in all aspects of the psychology of programming, but particularly problem solving and representation. The main product of my research is a tool called DesignMatcher, which uses evolving documentation produced during the design process to identify opportunities for reuse. I am also interested in approaches to, and notations for, design, particularly the Unified Modelling Language (UML), and programming using Java. I am currently looking for people to participate in the evaluation of the system who know both Java and UML, as well as designs and code with which to initialise the system. I am a teaching assistant on the Object-oriented Programming (Java) module for Computer Scientists and the Systems Theory module for Systems Engineers.

I can be contacted at:

Michael O'Brien

Hello, my name is Michael O'Brien and I am a postgraduate student at Limerick Institute of Technology, Ireland. My M.Sc. project entitled "Software Comprehension of Familiar Systems", is supervised by Jim Buckley and in a nutshell, deals with the recall and recognition of familiar software systems. Our research review suggests that most of the empirical studies, which have been carried out in this area, limit themselves to programmers' comprehension of unfamiliar systems. While some work has been carried out in the area of comprehending familiar software, it almost exclusively deals with the generic concept of plans (domain and program plans).

As we are aware, it is widely recognised that program comprehension is an essential part of the software development process, especially at the maintenance phase. Studies have shown that up to 70% of lifecycle costs are consumed with the maintenance phase, with 50% of these costs relating to comprehension alone. Despite being such a significant activity, research in the area of program comprehension is relatively new. Only recently have researchers attempted to evaluate the factors that affect comprehension and develop processes that aim to describe how programmers comprehend or understand code.

Such research is difficult because, while computer programs are formal, logical entities, the programmers who understand them are not. Their comprehension processes are guided by a number of psychological factors including the capacity of human memory, problem solving skills and perception abilities. Hence, researchers in this area must carry out empirical studies to validate their hypotheses and to assess the degree to which they are representative of programmers behaviour.

The aim of this project is to widen this research by characterising software comprehension with respect to recall and recognition of familiar software systems. As part of this project, we are currently designing an experiment that investigates inference-based processing, hypothesis-based processing and systematic-based processing by programmers during program comprehension. We will categorise talk-aloud utterances made by programmers during comprehension into the above strategies, expanding a classification system previously successfully employed.

If you would like some more information on our project, please, do not hesitate to get in with contact us:

Michael P. O'Brien / Jim Buckley

Irish National Software Ergonomics Research Centre
Department of Information Technology
Limerick Institute of Technology
Moylish Park