FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
Testing & Debugging Blog: Five Questions With Shrini Kulkarni
Testing and Debugging
BREAKPOINTS

Test, Debug, Release, Rinse, Repeat ...

by Kevin Carlson
THE BOOK OF TESTING

Thoughts From a Braidy Tester

by Michael Hunter
May 10, 2007

Five Questions With Shrini Kulkarni

Shrini Kulkarni is a passionate tester who happens to be from India. When he's not actively testing software he's getting other people excited about testing software; catch him presenting at a software testing conferences or peruse his blog Thinking Tester for a taste. While some people choose to go deep in a specific industry or role, Shrini has instead opted to go broad, and so he has worked in a multitude of industries including banking and commercial shrinkwrap software, in roles ranging from software developer to configuration manager to his current job as Senior Test Manager at iGATE Global Solutions in Bangalore.

I enjoy talking with Shrini because his background is rather different from mine, and so I find his point of view makes my own biases and automatic assumptions more visible. His colleagues call him a sticky arguer. He calls himself life time tester. Here is what Shrini has to say:

DDJ: What was your first introduction to testing? What did that leave you thinking about the act and/or concept of testing?
SK: My first introduction to testing was to test a supply chain management product where I was hired as a developer around 1998. The company thought that best way to train a new hire in product knowledge is to put him or her in Testing. After some initial hiccups, I could find a few interesting bugs in the product in the areas that were not modified for that release. After 2-3 months of testing, I was assigned to a development project.

That brief stint with testing introduced lots of new things to me about testing. At first, testing appeared to me, like a “proof reading” – double checking someone else’s work. Like others in the industry, I aspired to become a software developer but was constantly pulled for doing “quick” testing due to my raw but effective testing skills - ability to notice subtle bugs in a quick time. Finding bugs in software appeared to me like fun – somewhat similar to a toddler playing with his new toy. Then came a time when I decided to take “testing” as my full time career – something that I enjoyed doing. That was around 1999 – since then I did not look back.

During my last few months of working at Microsoft 2003-2004, I started reading the works James Bach, Cem Kaner and Michael Bolton. I would say that is a turning point in my career in Testing. I learnt that I need to be a better thinker if I want to be a better tester. Today whatever success I have achieved by being a software Test professional, much of I owe to these great thinkers in testing.

DDJ: What has most surprised you as you have learned about testing/in your experiences with testing?
SK: Ignorance about testing and hence the lack of focus on “better thinking”.

I have seen people approaching testing as rote activity of comparison – expected results to actual results. This is trivializing testing. Testing is treated as a simplified act of checking or a set of repeatable actions. In reality, testing is a much more complex and highly intellectual activity. It is because there are more examples of “bad” testing to be seen than “good” ones. There is a need for education and making people aware of testing and its benefits when performed “correctly”. Even now, I am pained to see people considering testing as a “necessary formality” to be completed before software ships.

DDJ: How would you describe your testing philosophy?
SK: At its core, Testing (questioning, search, investigation) is in itself a philosophical thing. I see a solid line connecting testing and philosophy – Search for an idealistic entity. Like a yogi or enlightened soul, a tester while performing testing goes in search of problems, anomalies in the same way as philosophy goes for search of truth. As Cem Kaner puts it, modern software testing is evolving into a discipline of social science. To be good at Testing would mean having an eye for everything that affects human- computer interaction - Science (computer science or otherwise), Engineering, Economics, Business, Human psychology and others.

DDJ: What do you think is the most important thing for a tester to know? To do? For developers to know and do about testing?
SK: According to me, the most important thing to know about testing is that “Testing is a mental discipline – it is about thinking, questioning – it's all in the mind”. If you ask a typical tester what he/she needs to know about testing – you get answers like “knowing programming”, “knowing about business domain”, and “knowing software engineering processes, Quality models etc”. It is rare to see someone saying “I need to think better” to do good testing. That is the point. Good testing emerges from Good thinking. As testers we must learn and invest time in improving our thinking, questioning and problem modeling and solving abilities – the rest all will automatically fall in its place. Reading about Lateral Thinking, General Systems Thinking, Epistemology etc are few good ways to sharpen one’s thinking skills.

Tester to do: Invest time in enhancing your thinking, investigating skills.

Developers need to consider their tester as their friend – some one who can make them look better. Developers and testers often have conflicting but (ironically) complementing skills. An effective collaboration between developers and testers can help in producing “better software”.

Developer to do: “Support and collaborate” with testers – they supplement you.

DDJ: Is there something which is typically emphasized as important regarding testing that you think can be ignored, is unimportant?
SK: I would not call anything “unimportant”; a skilled tester can always mine “good stuff” from any source of information. However, there are a few things which are outrageously “overpriced” in the current market of Testing. Process, domain knowledge and ability to code are being emphasized as without them there can not be any good testing possible. I often hear people saying things like “This is a technical position, we would want all our Testers to be technically sound", and I agree that having knowledge of these can help a tester but I am against “glorifying these”.

DDJ: What do you see as the biggest challenge for testers/the test discipline for the next five years?
SK: Scarcity of human resources, skilled testers – challenge will be of finding real thinking testers among “testing robots”.

Increasing awareness about testing is the biggest challenge. Certain sections of testing community have constantly projected testing as “routine” “factory – assembly line” kind of activity. Testers today are not putting efforts to learn about testing and organizations are forcing testers to become “robots” or “button pushers”. It is serving their purpose now but it can not support them for much longer. When they need testers who can think, they will not find any as the market will be full of “testing robots”. At this time, few privileged ones, the “thinking testers” will be really in demand. Skilled testers will rule “software space” - is my prediction.

Posted by The Braidy Tester at 07:30 AM  Permalink




 
INFO-LINK