Independence & Freedom – everybody likes it. Wants it. Fights for it. And finally celebrates it. It gives you the objectivity to express your views & opinions. It is essential for a thriving society where the mind is without fear & the head is held high. As India celebrates its ‘Independence Day’ on August 15th, let’s see what it means for a Test team.
The ‘I am Right’ rule
It’s a generic human mentality of ‘liking’ your own thoughts, ideas, views or creations. After all who doesn’t love their own kids? Why do people think they have a million-dollar start-up idea which will be a sure-shot success? Why do we have independent judicial system for judging the crimes? Why most of us are so good at giving advice rather than working on self-development? The ‘I am Right’ perception is always a part of our lives, call it confidence, knowledge, affection or wisdom – unknowingly we all have that tendency.
Why I am talking about the ‘I am Right’ mentality? And what it has to do with the independence? Patience people Patience 😛 Coming back to the concept of ‘Software Engineering’ or ‘Software Testing’ in particular – Who develops the software? Yeah! The developers. They are the creators. And who describes the ‘idea’ i.e. requirements? Yeah! The client. The Business team. The creators are a team, just like the idea team. Applying the concept of ‘I am Right’, how do you expect either developers or business people to identify the ‘short-comings’ in their own creation or idea? Hope you got the point 😉 But we will still elaborate…
The Independence revolution
Once upon a time when ‘Software Testing’ wasn’t discovered, developers used to test their own developed code & find defects. The process was known as ‘debugging’. Sometimes the roles were swapped within the team – one of the team-mate checked the code developed by a peer. Can you guess what happened then? Yeah! They couldn’t identify so-many defects in their own code. Why? The ‘I am Right’ tendency. After all the mentality is set as ‘to develop’, not ‘to find defects’ 🙂
The result – In 1979, ‘Software Testing’ got its independence from Software development (debugging). Vande Mataram!! The pioneer fighter was Glenford J. Myers who initiated the concept of ‘Testing is an activity focused on finding defects’. It initiated a series of discussions and finally in 1988 Dave Gelperin and William C. Hetzel defined the constitution – the goals & phases of Software testing as an independent activity.
Now don’t ask me the benefits 😛 Just kidding…
- Quality: Unbiased, Impartial & Independent view of the developed product with focus on ‘finding defects’
- Expertise: Independent testers (trained) bring a vast amount of experience and expertise on the table which ensures quality
- Break it: Apart from existing ‘This will work’ developer approach (make it), it gives an added ‘What will not work’ point of view (break it)
- Reporting: Independent & honest reporting to the client & senior management about the quality of the product
- Focus: No assumptions please, everything should be perfect as described in the requirements (strict adherence to client’s business goals & objectives)
Please note that independence as in ‘separate’ not ‘separated’. A Test team still needs to have a healthy communication with the development, business & client team’s in order to deliver value to the delivery chain.
The key take-away
The importance of independence is unquestionable. Independence ensures that there will be no bias. Independence is a proven way to ensure quality. The solution, therefore, rests in having a completely independent team for testing the product. Vande Mataram!!