I love this film clip of Loius C.K. talking about how complacent we’ve become with technology. As someone who works in technology everyday, I know it’s easy to become complacent and critical of what we’re doing, but occasionally we need to remind ourselves of how amazing things actually are. For example, tonight I was using Skype to video call my wife and son from my hotel room 1000km from our home. Every now and then it would become a little stuttered, and I’d get a little annoyed. But I need to remind myself: I am 1000km from home and I can talk to, and see, my wife and son fullscreen on my laptop, for free! How amazing is that.
Category Archives: Software
Software Quality Metrics
Software quality metrics are a very interesting topic, and from my experience, there doesn’t seem to be a widely used or accepted list of metrics that can be used to measure software quality. After many years of thought on the topic, and many years of trialing different metrics, I believe the number one metric that accurately measures software quality is defects in production. Quality software won’t include defects in production, so I believe that’s the metric we should use to measure whether testing is done successfully.
Various organizations I have worked in have used this metric in different ways. One organization called each production defect a ‘quality spill’. Another used a mean time to failure metric which is often used to measure the reliability of a production system, or machine. This could be used for example with your car and how long it takes to break down.
The issue I have with some other software quality metrics is that they motivate people the wrong way. For example, having a metric about bug count encourages testers to report bugs. But it can also encourage them to report bugs that aren’t bugs, or split one major bug into multiple bug tickets, so the metrics look good. Also, is a high bug count (in test) a bad thing? Doesn’t it mean you got all the bugs? Or does a low bug count mean the developers are doing a good job? Or perhaps you didn’t catch all the bugs? That’s why production defects is a true measure of software quality. No one wants bugs in production, they cause all sorts of headaches. In the last few days there have been numerous, embarrassing, public computer glitches, some related to the beginning of the year 2010. Have we become complacent after Y2K?
- 3 Jan 2010: “Businesses stung by BOQ computer bug” (link)
- 3 Jan 2010: “Bank of Queensland’s (BOQ) Eftpos terminals go down costing retailers thousands” (link)
- 3 Jan 2010: “Chaos as check-in problems affect Qantas” (link)
- 3 Jan 2010: “Flights delayed after check-in system malfunction” (link)
- 10 Dec 2009: “Computer glitch brings Brisbane trains to a standstill” (link)
- 16 Dec 2009: “Check-in failure sparks Brisbane Airport delays” (link)
- 16 Nov 2009: “Computer glitch delays Qantas flights” (link)
What’s interesting is the Amadeus system Qantas uses failed in November and failed again today. The lesson here is if you do discover bugs in production, make sure you fix them.
Why I do automated testing
I often get asked the question: “so why do you do automated testing?” both in job interviews and from people I meet. My answer is always pretty much the same; being that it provides me with exposure to a variety of business domains and technologies, and allows me to write code.
Let me expand a bit further on this. I like writing code but I’ve chosen not to be a software engineer. The reason is that I have met lots of different software engineers that have responsibility for one area of a system. They become the expert in this area of the system, hence when you find a problem in that area, you know who to speak to. Often time these people don’t really know much outside their area of expertise in the system, so when the problem is outside their own area, you need to speak with someone else. There’s nothing wrong with this, but it just isn’t me.
I like to know, or attempt to ‘work out’, how the system functions as a whole. I usually achieve this on a project I join by writing an automated build verification test, or ‘smoke’ test, that verifies the system functions as a whole. I love writing these kinds of tests because you need to know how the entire thing works, not just the isolated components. Software testing is one of the few areas where you get this broad level of exposure, and this keeps things interesting.
Another added bonus of doing software testing, is that your skills are pretty transferable, both across business domains and different technologies. For example, so far in my career I have tested systems that:
- manage job advertisements, job seeker matches and interviews;
- process immigration and visa applications;
- manage disability support and funding;
- produce electronic school report cards;
- optimise large scale open cut mines;
- monitor health of heavy machinery; and
- manage large funds for people’s retirements.
These systems were developed in various technologies including:
- Java;
- Microsoft .NET;
- Cobol;
- Powerbuilder;
- Web;
- Active X;
- Terminal Emulators;
- SOAP web services and;
- CICS.
The point I am trying to make is that if I decided to be a Java Software Engineer when I finished university, because that’s why I studied, I wouldn’t have had exposure to so many technologies and business areas that I have had as an automated software tester.
Sure, I could become a business analyst, because they work across business domains and technologies, but business analysts don’t code, and I do like writing code, that’s why automated testing is perfect.
The final benefit I see in automated testing is that you can apply your skills in particular testing tools to other tools fairly easily, as the concepts are the same. The biggest issue I see with people doing automated testing isn’t picking up a new tool, but rather developing a maintainable and easy to use test framework. Once you have developed a few frameworks for various business domains and technologies, it is easy to apply the concepts to other testing tools.
So that’s why I do automated testing, and I proud of it.
CITCON Brisbane 2009 is on next month
I am the local coordinator for CITCON Brisbane, a free software testing and continuous integration conference being held on the Friday evening of June 26 and Saturday June 27 at the Acacia Ridge Hotel in Brisbane.
The only catch is that it is limited to 150 people and we already have 100+ registered so be quick and register!
Five user JIRA and Confluence licenses for $5
If you know me you will know that I am a big fan of Atlassian, both the products and the company. I just saw Mike Cannon Brooks’s tweet about offering five user JIRA and Confluence licenses for $5 for the next five days, with all proceeds to Room To Read.
The world economy needs to get back on track and we want to help. Our products help teams communicate better, have more productive interactions and get stuff done. We want to help small entrepreneurial teams get the economy back into high gear.
This is awesome. If you work in a small team and have always wanted Confluence and JIRA but couldn’t convince management, now is the time. They can’t possibly say no!
Watir presentation @ SIGIST Brisbane on May 26
I will be presenting at a SIGIST (Special Interest Group in Software Testing) on Watir on May 26 @ the Hilton in Brisbane. Everyone is welcome to attend.

More details here.
Introducing Watif
- Watif if you don’t want to learn a new language just so you can test your web app?
- Watif you want to kick it old-skool with punch cards?
- Watif you want a fully supported automated test solution running SAS and with in built notifications of results?
Introducing Watif
Web Application Testing in FORTRAN:
web application testing that punches!
Watif is simple
Tests are created using simple, easy to use coding forms, easily followed by business analysts and end users. No more expensive test automation engineers!
Watif is automated
Code is created automatically on punch cards using state of the art FORTRAN compilers, saving you valuable compilation time.
Watif is fully supported
Watirfort is a new company of 1,000 monkeys, available 24/7 worldwide to commercially support Watif and make it a success in your organization.
Watif is SAS
All your tests are run by Watirfort using state of the art punch card processing systems, just like salesforce.com.
In built notification systems
When you purchase Watif services from Watirfort, you can specifiy how many homing pigeons you would like to lease. These homing pigeons are dedicated to delivering your printed Watif output directly to you! Rapid feedback!
Planned Additional Browser Support
While Watif 1.0 only initially supports the WorldWideWeb browser, alternative browsers including Netscape Navigator 1.0 are planned for Watif 2.0.
Quotes
“I wanted to run around my office punching my hands in the air.” - Bec Ferguson
Watif is available for immediate release.
Order now and get a bonus FORTRAN book.
AWTA 2009 survey results
I conducted a survey for the Austin Workshop on Test Automation (AWTA) to see what people thought was good about the workshop and what could be improved in the future. The response was very positive.
Whilst there were twenty-one questions, I believe the following two graphs tell the story:
The full results are available here. Bret also did a nice writeup of the AWTA 2009 proceedings here.
Gmail Terminal & Prism: conspicuous at work
I really like the new Gmail themes now available: they make Yahoo Mail look so passé.
The terminal theme is particularly interesting, a product of a bet, it’s really well done, right down to the ASCII art for the Gmail logo.
This would be handy for us who still use green screens as you could run Gmail Terminal in Prism to keep your webmailing at work discrete. Not that I would condone such behaviour :P











