I used to think we (people working in software development) were far behind when it came to testing. Due to a few experiences over hte last few weeks this has changed… In waterfall projects, testing is at the end of the process, causing it to be the first thing to go when time gets short. In agile methods, test is evenly divided throughout the process. This combined with the popularity of agile methods make that test is getting more and more mature in software development. We all know we should test (although we do not always act upon the things we know), and we’re constantly trying to find ways to optimize our entire process. We are ahead of our times, I tell you.
It started out when we wanted to remodel our bathroom. After three visits to the contractor, everything was documented and sketched correct. We double checked everything, saw it was good and signed the order.
First, the work we did to prepare for the contractor was not good enough. We followed the specs exactly, but it turned out they were no good. That can happen…
Next there were several things that simple requirements testing could have prevented: the wrong tiles were placed on the front of the bath, the lights in the ceiling weren’t where they were supposed to be, the switches were not placed where we wanted them and the grouping of the lights was not the grouping we agreed upon in the order. The correct information on all of these ‘problems’ was documented in the order, but it was not tested before release.
Next up: my car. Because of cruise control trouble, I had to bring it in. I picked it up the next day. A few minutes after I left the garage, I remembered the guys over there always turn my automatic lights to manual ‘off’, probably to make sure the car doesn’t turn its lights on inside the garage. I wanted to switch it back to ‘Auto’, but this option had disappeared from the switch. In stead, all I had was ‘Off’ (which is the Auto setting) and ‘On’. I had no way to disable the automatic switching of the lights of my car…!
In this situation, a simple regression test could have found this problem, making it possible for them to resolve it before release.
It seems the importance of testing hasn’t sunk in in (small) business & retail yet. With little effort these businesses can boost their service levels. There’s a chance it’s more cost-efficient too, because there’s less rework to be done after the ‘release’. Most importantly, customer satisfaction will increase, and as far as I know that’s what makes those businesses tick…