But earlier I tin start writing this post, allow me say yous that this post is basically for software programmers who think:
1. Software Testing does non produce whatsoever adept to the project!
2. What is the signal inwards spending projection resources on testing activity if doing hence tin non guarantee a “100% Bug-Free Pakka Product” [please don’t inquire me for the pregnant of that paraphrase. I am but quoting a programmer from my recent presentation]
3. Software Testers are a bunch of crazy people who observe it amusing to observe defects inwards the code.
4. Testing is a dumb job. What’s the large fuss? Anybody tin produce it!
5. Software Testing is a worth less process. It does non add together whatsoever value to the project!
Having said that, inwards this post I am non going to start over again the traditional Programmer VS. Tester fight. I am a Tester together with I am to a greater extent than concerned almost Testing. Hence I volition essay to limit this post to busting the myths of a typical Programmer almost the necessity together with importance of Software Testing inwards a Software Development scenario rather than trying to evidence how programming sucks together with testing rocks!
Coming dorsum to my recent presentation, when I was trying to signal out the fact that “even if a tested production tin last considered as robust together with reliably (known) bug-free, it may non necessarily hateful that it is a High Quality Product”, a programmer friend from the audience came upward amongst the next sentiment point. Here is a truncated version of the excerpt of the discussion:
Mr. Programmer: If a production cannot last guaranteed of high character fifty-fifty later on testing, together with then does it brand whatsoever sense to pass time, unloosen energy together with endeavour on testing it?
Me: Well, honey friend to respond this inquiry start of all I volition demand to know your agreement of “high quality”. Quality is a multi-dimensional aspect. As Jerry Weinberg describes it - “Quality is value to some person(s) who matters”! In representative of Software Development, testing lonely cannot guarantee high character of a product. Think of a video game that is gratis from whatsoever known bugs together with is robust together with stable plenty but unfortunately it fails to engage the curiosity of the players (users). Would yous nevertheless telephone telephone it as a character video game but because it does non incorporate whatsoever visible defects together with is quite robust? At whatsoever rate, Software Testing is non a salesperson job. As testers nosotros evidence software. We don’t sell idiot box sets where nosotros tin (and nosotros are supposed to) give yous guarantee for the production that nosotros are trying to sell. As a affair of fact, fifty-fifty idiot box companies these days offering warranty, which comes amongst a long listing of “if yous produce this yous void your warranty” price listed nether Conditions Apply* column. Then how tin someone facial expression a tester to offering guarantee for a Product, which he has non fifty-fifty developed himself? Isn’t it unfair?
Mr. Programmer: Taking almost fairness, fifty-fifty later on years of release of Windows XP, nevertheless Microsoft keeps releasing Service Packs to piece defects that were shipped along amongst the master Product. If at that spot tin last bugs inwards a slice of application fifty-fifty later on testing together with then where is the signal inwards testing it inwards the start place?
Me: That is an interesting question, thanks. Before answering your inquiry allow me say yous some facts. In an average MNC the Tester:Programmer ratio hovers somewhere to a greater extent than or less 1:3. That way for every three developers at that spot is i tester to evidence their coded program. In representative of Microsoft the ratio is said to last 1:1 together with inwards NASA it is known to last a whopping 3:1. As yous tin clearly see, NASA spends land lot of endeavour on testing its projects. So apparently their projects must last the most robust amid all. Unfortunately nevertheless nosotros meet major infinite mission failures similar Space Shuttle Columbia disaster from fourth dimension to time. Does this hateful that the testers of NASA are doing nothing? Why don’t nosotros facial expression at it at from a unlike perspective? Microsoft had to release three Service Packs for Windows XP. It is quite possible that inwards representative of lack of plenty testing endeavour the publish of Service Packs could receive got been fifty-fifty 30! NASA ends upward amongst a infinite shuttle mishap i time inwards every decade (on an average). In representative of lack of plenty testing it could good receive got been 10 accidents per year!
Mr. Programmer: Okay that sounds similar a plausible explanation. But how would yous defend yourself inwards representative a Product that was tested past times your testing squad is reported amongst user constitute defects? They are your (tester’s) defects, which receive got slipped into production, right?
Me: Well, I don’t recall that I demand to defend my testing squad hither for whatsoever reason. That’s because the way I meet it, it is non the tester’s defect rather it is the programmer’s! Because it was the programmer who had made an error inwards his code at some signal of fourth dimension together with inwards plow had given nativity to the defect. How tin yous fifty-fifty recall of blaming a tester for a defect that was created past times yous (a programmer) inwards the start place? Having said this, I produce handgrip that at that spot are moral obligations for such kinds of defects that sideslip through the testing phase. It’s non that I don’t experience guilty for receive got missed such a defect earlier it managed to achieve the halt user. I DO experience guilty almost it. Every responsible tester does. But I honestly experience that the programmer should likewise experience every bit guilty (if non less) for such defects. It is non a blame game. Instead of accusing each other for the error made, nosotros must experience responsible for the error made together with to a greater extent than importantly receive got corrective actions hence as to avoid such mistakes from happening inwards future.
Mr. Programmer: You are right. But my signal is if testing tin non brand certain that the released Product is non bug-free together with then where is the signal inwards spending resources (time, someone hours, money) on testing it earlier releasing it? How does testing add together value to a Product development?
Me: I am glad that yous asked this question, thanks. Talking almost value improver allow me inquire yous a inquiry first. Why produce yous gustation your dish earlier serving it to your guests? Does tasting a prepared dish add together value to the preparation? Can tasting brand the dish better? I don’t desire to fighting whether tasting the dish adds value to the training or not, but I know it gives us an thought of the preparation. It gives us data almost the training (another pinch of tabular array salt needed, the dish is fleck spicy for the gustation of your guest, it could receive got been improve if yous had left it on the stove for some other v minutes etc). These data tin assist yous inwards making the training better. So does tasting the dish add together value to its preparation? It’s upward to yous to decide. Similarly does testing add together value to the project? The respond tin last Yes or NO depending on your way of looking at it. It does add together value if yous consider data gathering as a business office of value addition. It does non add together value if yous recall that exclusively coding the application is all almost value addition. However, testing does furnish of import value related data almost the Application Under Test (AUT) to the stakeholders of the project. And this investigation together with data gathering is as much of import as the evolution of the application. That is why it becomes of import to pass resources on testing.
Either my replies were satisfactory to Mr. Programmer or he was tired of fighting dorsum amongst to a greater extent than “we don’t demand testing” arguments, but later on this I did non remove heed to a greater extent than questions from him till the halt of the presentation. I really give thank yous him for bringing such questions to my attention. At to the lowest degree past times doing hence he gave me a hint of thought almost how a programmer feels almost testing. I receive got no difficult feelings for him. He felt that testing is a useless chore may last because he had non got whatsoever endangerment to last made aware of the demand of testing inwards Software Development. I promise I was able to instill at to the lowest degree a trivial fleck of awareness together with honor for testing inwards his heart. I promise I was able to brand him realize the fact that exactly because nosotros testers select handgrip of defects inwards your codes, nosotros are non your enemies. We but produce it to salve yous from the embarrassment earlier someone else (a senior programmer, a manager, an halt user, the client) catches it!
Coincidentally, at acquaint at that spot is a give-and-take (Risk-Reward, Output-based pricing model for Testing services - Is our community ready?) going on inwards software testing yahoo grouping (software-testing@yahoogroups.com) where I saw Michael Bolton responding amongst an splendid reply to a similar question. I am quoting him below:
Thinking to a greater extent than expansively, if yous consider the projection as the amount of the production AND everything nosotros know almost it, together with then testers produce add together value past times adding to the puddle of knowledge. - Michael Bolton
I don’t recall I could receive got described it to a greater extent than brilliantly. As Michael points out, testers produce add together value to the projection past times providing of import mission-critical data to the stakeholders. What produce yous think? Do yous recall testers add together value to the project? Or they don’t? Let me remove heed your viewpoint past times leaving your comment.
Happy Testing…
For those who powerfulness last wondering how my presentation almost TDD looked similar hither is the slideshow: