Eye Tracking

11 09 2010

Tracking the human eye is a fascinating science. Recently I was one of the supervisors of an Honours student in an eye tracking study. From the thesis we published a paper with the results. This paper is now available under the Publications section.



The actual thesis: A Software Inspection Methodology for Cognitive Improvement in Software Engineering

7 08 2010

So here it is. Four years in the making and it is now available. If you are suffering from insomnia one evening and need something that will put you straight to sleep here it is. In full and unabridged attached to this past is my final PhD thesis.

The Abstract

This thesis examines software inspections application in a non-traditional use through examining the cognitive levels developers demonstrate while carrying out software inspection tasks. These levels are examined in order to assist in increasing developers’ ability to understand, maintain and evolve software systems.

The results from several empirical studies carried out are presented. These indicate several important findings: student software developers find structured reading techniques more helpful as an aid than less structured reading techniques, while professional developers find the more structured techniques do not allow their experience to be applied to the problem at hand; there is a correlation between the effectiveness of a software inspection and an inspector’s ability to successfully add new functionality to the inspected software artefact; the cognitive levels that student developers functioned at while carrying out software inspection tasks were at higher orders of thinking when structured inspection techniques were implemented than when unstructured techniques were applied.

From the empirical results a mapping has been created of several software inspection techniques to the cognitive process models they support and the cognitive levels, as measured using Bloom’s Taxonomy that they facilitate. This mapping is to understand the impact carrying out a software inspection has upon a developer’s cognitive understanding of the inspected system.

The knowledge and understanding of the findings of this research has culminated in the creation of a code reading methodology to increase the cognitive level software developers operate at while reading software code. The reading methodology distinguishes where in undergraduate and software developer training courses different software inspection reading techniques are to be implemented in order to maximise a software developer’s code reading ability dependent upon their experience level.



Distinguishing the Virtual World from the Real World…

30 07 2010

In a Rolling Stone magazine on November 7, 2007 William Gibson stated:

One of the things our grandchildren will find quaintest about us is that we distinguish the digital from the real.”

I find this to be a very helpful statement as of late I have begun to hear the changing of terminology. In the past we have spoken of reality and virtual reality. Virtual reality was often thought of as something that was not real, a place to escape and to getaway from reality. If you were in the Virtual Reality World too much you were often looked down upon. This was especially for people of my age, our own generation would judge us.

However, of late I have noticed the changing language. Very rarely do I hear the term “Virtual Reality” used. The term that is being used is “Alternate Reality.” No longer is the digital arena being referred to as something that has an underlying “not real” tone but rather it is referred to as something very real but alternate to that which has traditionally been referred to as reality.

The world that my children will grow up in, and are currently growing up in, is one in which the old perception of virtual reality will not exist but simply these digital areas of our lives will be, and are currently, referred to as simply alternates to what has traditionally been considered reality.



It is finally over

21 07 2010

On February 12, 2010, I submitted my PhD thesis for examination. Something that was supposed to be completed back in September 2009, well that is at least when I thought it would be done finally came to an end on that Friday in February. Almost 4 years of my life was summed up on just over 300 pages and just under 70000 words. Then it was up to 2 people who I had never met nor even knew existed to decide whether or not it was worthy of granting my the admission in to the degree of Doctor of Philosophy.

Just before the 3 month mark passed, I finally heard. It was a Tuesday afternoon when the BVK called and said that I had passed. The worst thing, the day before I had gone to the Office of Research and Development and enquired as to the status of my thesis and was informed that both examination reports had arrived. However, the person in that office was a little busy writing an email so I would still have to wait for anther day until I heard.

So it is over and I am no longer a student. I will link the thesis to this blog shortly. If you come across this page and you download it to read, please drop  me an email, I would like to know anyone who actually takes the time to download it and then even more if they take the time to even read it.



What really has changed

7 07 2009

While reading the Report on a conference sponsored by the NATO SCIENCE COMMITTEE Garmisch, Germany, 7th to 11th October 1968, I was amazed to read the opening comments as to the motivation behind the conference: “One of the major motivations for the organizing of the conference was an awareness of the rapidly increasing importance of computer software systems in many activities of society.”

Then when reading the President’s Information Technology Advisory Committee Report to the President (1999) I read: “Information Technology will be one of the key factors driving progress in the 21st century it will transform the way we live, learn, work, and play.”

Followed by reading Ian Sommerville: “Virtually all countries now depend on complex computer-based systems. National infrastructures and utilities rely on computer-based systems…”(Software Engineering, Sommerville, 2007).

What does this tell us: 40 years further into the software engineering discipline we are still talking in similar terms. Software is going to play a key role in the evolution of society as we know it. It was foreseen in 1968, and we continue to see it today. We now talk about our Digital Lifestyle, where so much of our lives are stored in the digital zone. Even so, we are still working out the same thing, how do we produce better software faster, software that won’t collapse under pressure, software that won’t do strange things when we least expect it?

I think these types of questions will remain for quite sometime to come. In the mean time, we can continue to strive to produce higher quality software, with fewer bugs, that achieve the goal set out for them in more efficient ways.



Clarifying Definitions

7 05 2009

thesis (noun): 1. a statement or theory that is put forward as a premise to be maintained or proved: his central thesis is that psychological life is not part of the material world. 2. a long essay or dissertation involving personal research, written by a candidate for a college degree: a doctoral thesis (New Oxford American Dictionary).

dissertation (noun): a long essay on a particular subject, esp. one written as a requirement for the Doctor of Philosophy degree (New Oxford American Dictionary).

So what I’m writing is not actually a thesis, I’m writing a dissertation that is about my thesis. It is, as I thought, quite a challenging thing to write. Writing my honours dissertation was rather challenging, but my PhD dissertation is proving to be a lot more challenging.

In trying to go Agile, I’ve encountered my first mistakes: trying to do too much in one iteration. In writing agile style I wanted to produce early versions for feedback. This hasn’t happened this week so far but there is still two days left in the week.



Thesis Writing Using Agile Principles

3 05 2009

Over this weekend I have spent much time attempting to work out how to reach my goal for this month: draft 1 of my thesis completed by May 26. I was recently at ASWEC 2009 with a theme of Agile the New Mainstream. After much thought in the last few days I’ve decided to attempt writing my thesis in an Agile manner. Currently, I’m not sure how this will all look but I am working on it. My template planner looks like this:

ooagiletemplate

My goal is that I will be delivering 2 chapters to my supervisors each week. Obviously, the chapters will be delivered, read and feedback sent back to me, and then I will go through them again. But in this manner I will have a deliverable, probably 2 deliverables each week. This shows me that I am achieving something and keeps my supervisors up to date with what I’m doing. It also means that feedback comes early and if I have missed something or drifted way off task then they catch it before I have strayed too far.

So this is what my first updated Story Board looks like:

oopagile01



New Papers Uploaded

2 05 2009

I’ve just uploaded my final papers for the IEEE International Conference on Digital Ecosystems and Technologies (DEST 2009) and for the 7th IEEE International Conference on Industrial Informatics (INDIN 2009). Looking forward to visiting the countries that the conferences are in and also to meeting the different people that are there at the conferences.



Thesis writing is underway.

18 03 2009

Three years into the PhD and thesis writing is happening. A long time ago I set out my thesis structure with chapters and potential sections to those chapters. However, after more work and several other changes the structure has changed. I now have a new structure and need to make the changes. I must confess to liking the new structure more than the old one. this new structure means that I need to start pretty much from the beginning and work on from there. Let’s see how it goes.

The next challenge that I face is what to use to write my thesis. Up to this point in time I have always used LaTeX for my writing but there is a small push from above for me to use Word.

Why LaTeX?
I have been using it for the past 4 or 5 years and find it very simple to use.
The ability to focus on only the text without anything else happening is very useful.
It generates fantastic pdf documents.
The automatic pagination means I do not need to be concerned with layout as this is all taken care of.

Why Word?
My 2 supervisors use it and it would mean that Track changes could be used.

Now that I have those things out there I think more and more I will use LaTeX and my supervisors can use a pdf annotator in order to make comments.

OK so from here on in it is head down and write, write, write.



2009 has begun

6 01 2009

First blog post for 2009. The work year got underway for me yesterday with my first day back in the “office.” The plan for the year is to finish my PhD. That translates to spending the next months with bum in a seat, fingers on keyboard or headset/microphone on typing/talking out my thesis.

The time has gone so fast, at the beginning I thought the end would never come and now I wish the end would never come, not really but I will need much time to get through this.

I wish everyone well for their year of research, work and whatever else you get up to. Now it is back to writing for me.