Publicité
The bug busters!
Software testing is a critical job. With the size and complexity of today’s software, it is imperative that software testing be performed professionally and effectively to prevent bug-related disasters. Examples of infamous software errors that caused much public outcry are the failure of Disney’s Lion King first CD-ROM game in 1994-1995, the Ariane 5 rocket explosion in 1996, the flop landing of NASA Mars Polar Lander in 1999 and the numerous failures of the Patriot Missile Defense System in 1991.
But the term ‘bug’ came in the limelight with the infamous Y2K (Year 2000) bug. Major catastrophes were predicted and could have occurred had there not been an intensive bug-tracking and bug-fixing exercise well before midnight of 31st December 1999. Naturally this was not without cost as it is estimated that several hundred billion dollars were spent worldwide, to replace or update computer programs and fix potential Y2K failures. By now, the term “bug” should have been clear. Some people call it a software failure, others a software anomaly. Different people call it different names. But the fact remains that a bug is a bug. Be it a small wording problem or a big software crash.
In any software, these have to be detected very early in the development process and critically before the product is released. To do this, every serious software development team has a team of bug busters. If, during the final hectic moments of a software development project, you find some people jumping up and down in glee or doing a little dance, you can be sure that these guys are testers and that they have just brought a system to its knees.
Officially called QA Engineers, testing engineers or analysts are in charge of tracking bugs and making sure that they get fixed. Their famous motto is: “You make it, we break it”. For the layman, this concept of breaking may seem a bit shocking. Why should someone try to break beautiful and intelligent software made by beautiful and intelligent people? The answer can be shocking: a software is never born beautiful and intelligent in contrast to most people who are. In fact, any software in its initial development stages is always prone to bugs, even if the one coding it is a programming guru. The role of the software tester is to test and break the software. He/she should then revert to the coder/programmer and, after mutual consultation, the outcome will be a more robust and beautiful piece of software.
In the movie Star Trek II: The Wrath of Khan, Spock says, “As a matter of cosmic history, it has always been easier to destroy than to create.” At first glance, it may appear that a software tester’s job is easier than a programmer’s. Breaking code and finding bugs must surely be easier than writing the code in the first place. Surprisingly, it is not. Software testing is a methodical and disciplined exercise and requires the same hard work and dedication that programming does. The basic requirements for entering the Software testing job market is to first have some education in software programming (Diploma or Degree) but, more importantly, most software testers should be great explorers, good troubleshooters, extremely relentless, superbly creative, ultra-perfectionists, tactful and diplomatic.
Today, most mature companies treat software testing as a technical engineering profession. They acknowledge the fact that having trained software testers on any project teams and allowing them to apply their trade early in the development process allows them to build better quality and reliable software. Amidst the tower competition currently going on, the intelligent island that we are aspiring to be should definitely take quality into consideration as this is going to be the sine qua non condition that will help us position ourselves in the world software market.
<B>Ukesh Ramjutton</B>
Publicité
Publicité
Les plus récents