"Some birds aren't meant to be caged, their feathers are just too bright"- Morgan Freeman, Shawshank Redemption. This blog is from one such bird who couldn't be caged by organizations who mandate scripted software testing. Pradeep Soundararajan welcomes you to this blog and wishes you a good time here and even otherwise.

Wednesday, February 20, 2008

The Bangalore Roti Curry! Now comes with free* testing lessons

Yesterday, I presented a guest lecture on "Questioning Specification and Requirements as a skilled tester" at Edista Testing's newly launched, really unique career program, which I think, can be titled as "Keep learning software testing and we'll keep supporting you to do that" as they intend to keep track of the progress of one's testing career, knowledge and skills even after the completion of the program or after the placement.

One hour after the guest lecture, I hit the treadmill at a gym nearby my home. I love pace walking over the treadmill. Once I get my rhythm , I start thinking about something that doesn't make me focus on how tired I get or how long I have been on a treadmill. Yesterday's treadmill thoughts were about questioning specification, requirement, process, policies, rules, guidelines, best practices...

The common thing about the above list is, "Someone says it, others follow it". Topic I chose to think on the treadmill was interesting enough to help me burn a lot more. I guess for people like me, thinking about following a requirement/rules/policies/process/best practices without questioning burns more calories than running heavy on a treadmill for 30 minutes.

After the workout, I dropped in at a nearby popular and reputed food joint for dinner at Bannerghatta Road, Bangalore.

I bought a token for 1 plate of Roti and curry ( Indian bread ) Cost: 16 rupees. After I got the token in hand, I realized it would not be sufficient and asked if I could get an extra Roti. I had to pay 10 rupees to buy an extra Roti token.

While eating one of the two Rotis, I realized that the curry isn't sufficient for the next Roti and I asked for more curry, I was asked to pay 10 rupees more for extra curry that is of same quantity provided to me the first time.

So here is the interesting thing:

One plate Roti and curry is: 16 rupees : [ 1 Roti + 1 set Curry ]
If I buy an extra Roti and Extra curry: that's 10 + 10 = 20 rupees
Total: 36 rupees
[ 2 * 1 Roti + 2 * 1 set Curry ]

If I buy two plate Roti and curry: 16 * 2 = 32 rupees [ 2 * 1 Roti + 2 * 1 set Curry ]

I went to the hotel supervisor and said, "I have never come across any hotel other than yours which has two different prices for the same quantity and item served if purchased in a different order. Is that intended?" and then explained to him the sequence in which I bought Roti and Curry. You might not believe this: He nor the other staff knew that they had been charging customers different rate for the same quantity they buy an item based on the order in which they buy things.

This certainly surprised their staff and I could witness an argument over the issue among other staff members. There was excitement over the issue and I enjoyed the argument between them.

Supervisor of the hotel then assured me that they would fix this issue after consulting the hotel manager and thanked me with a smile for bringing this up.

I was happy. As a tester, I questioned things and provided them information about their service with evidence. I handled it politely and helped them understand how illogical it would sound to people and how their credibility is at stake if they continue to do so.

If I hadn't questioned at the logic, or their menu, or their process, or their specification, I wouldn't have helped them understand something was seriously wrong - because they seem to be concerned to not do anything wrong as it could affect their reputation. They are into this business for at least 5 years and they hadn't realized what rule they set could conflict with their own menu rates.

When customers say "We want A,B, C, D, E, F", they are less aware that A could conflict with E unless we ( testers ) help them understand and that's our job. If we (great testers) don't question requirement/specification/process/rule/guideline/best practices, and the customer by himself finds B conflicts with D at a later stage, he might think of us as fools and maybe get our butts fired.

"If testers aren't questioning, they aren't testing. If testers aren't testing then they aren't testers anymore".

In the Roti Curry story above, I think there is another lesson hiding. As a customer of the hotel, I realized I wanted more, only when I got some bit of it - which means I didn't know how much I needed to buy till I saw some sample. If someone were to have collected my requirement/need, I would have stated something and changed it because I am not sure what I want.

There are a lot of customers who are not sure what they want and if we ( great testers ) are to follow a document that was prepared so early in the project before the customer could see something, we would never be doing what we should be doing. Testing is *not* satisfying a customer but providing information to help the management or customer take informed decisions. The information we provide could be bugs, assessment of risks, questions we have, answers we found...

Little does the hotel know that testing lessons are for free when people buy Roti and Curry.

Laugh (if you want): Research Doctors at National Health Research Institute are recommending to take a minute of every day, especially for those in software testing, to laugh out loud at those testers who don't question the specification/requirements/test scripts/test cases/process/best practices.

It is found through their research that the health condition and testing has had a significant improvement by doing so. Researchers also encourage laughing at yourself, if you are one among the testers who don't question.

--
Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"The test doesn't find the bug. A human finds the bug, and the test plays a role in helping the human find it." --

Monday, February 11, 2008

Educating customers on testing

Everyone has heard about testing and unfortunately everyone has heard about it from different sources that say different and contradicting things.
  • One of the customer I worked for thought - testing is about delivering bug free product - which, in my opinion and many other experts with whom I interact is an impractical idea about testing.
  • Another customer I worked for thought - testing is about delivering quality - which, again, is a bad idea.
  • Another customer thought - testing is about executing test cases and based on the test case pass/fail ratio decide to release - even if the test cases isn't helping testers catch bugs.
  • Another customer thought - testing is a job of repeating tests to compare build quality and take a decision to release a specific build to his/her customer.
  • Another customer thought - testing is meeting specification.
  • Another customer thought - testing is satisfying the customer.
Working with multiple customers is a huge challenge for test managers or testers like me and you. I have so far been repeating the word "customer" and whom do you think I am referring to?

I am referring to the manager we report to and the manager we report to is also our first customer. When testers quit their job and join another one, they never ask their customer (manager) what he/she thinks about testing. That's why some people feel they were performing good in their previous company or they are able to perform better in their recent organization - reason being - their idea of testing matched with that of their manager's idea.

If our idea of testing doesn't match with that of your customer's ( manager ), you and I seem to face a lot of trouble in meeting our customer's expectation and are unable to satisfy them.

Everyone, including you and me might be thinking that the idea we have towards testing is the right one. I have been realizing and teaching that there isn't THE RIGHT WAY to do something. Rapid Software Testing taught me cost v/s value and I took it very serious and I am practicing it.

All customers, irrespective of what definition they have towards testing look for cost v/s value. I am striving to deliver a fabulous value to my customers and I am facing a challenge since I realize what value means to me is different from what value means to my customer (manager).

That's why I was looking as a bad tester (despite finding a lot of bugs) to some of my managers in the past. They think the value they wanted to get out of me is - to execute thousands of scripts or test cases.

Unfortunately I wanted to add more value to the testing efforts which wasn't liked and was fired for attempting to do that. They weren't wrong - they just cleared a trap that they dug in when they hired me.

I learned - what I think as value might be a threat to someone else's idea of value and I value this learning I had about value.

Once I (and my team) found a lot of bugs, so much that there weren't as many bugs that the test case document had helped the team catch in the past. The questions from our customer started to focus on why we had a bad test case document and *not* "Why can't we do more of what you guys did?"

A definition, customer has towards "value" doesn't appear to change despite showing enough evidence. Its hard to continue working for such a customer but there is another dimension to think - money.

Some of those who attend my Exercises for a testers mind - A Rapid Software Testing Approach workshop say, "Well, this is great. I am excited to do testing this way but I suspect the problem is - I don't think my manager would be interested on any of these things I do"

I have had different replies to the above:
  • Stop thinking that your manager would not be interested. That's the first step.
  • Convince your manager to take this workshop.
  • Educate your manager on this.
  • Just do it and make your manager ask, "How are you doing these things?"
Here is a list that I suggest you to use, if you realize facing similar challenges: (I practice the same, too)
  • Educating your customer, starts with you.
  • Stop thinking that your first customer wouldn't be willing to see more value.
  • Provide evidence for him/her and ask her to critique the evidence you provide.
  • Request for a discussion about - What you think of value v/s What your first customer thinks of value.
  • If it fails the first time, provide repeated evidence and suddenly do things the way your first customer wants to do - see if your first customer comes back asking why suddenly things appear not so good.
  • If you have been successful educating your first customer, then motivate your first customer to educate his/her first customer.
BTW, what do you plan to educate your first customer on?

Here is a list of heuristics about educating your first customers:

  • Educate yourself before you educate your first customer.
  • Testing is questioning a product in order to evaluate it AND testers provide quality related information to stakeholders/management to help them take better informed decisions -- James Bach & Cem Kaner
  • 100 test cases might not help a tester catch 1000 bugs and if you want more bugs, exploratory testing ( with a mission/charter) is an important approach to be incorporated. Adding another 1000 test cases is not a solution.
  • Specification document is just one or the oracle that helps a tester find bugs. End users or your customers never use specification oracle to spot bugs and hence going beyond specification can help in finding more bugs.
  • Session Based Test Management is a way where Exploratory Testing can be tracked and managed more efficiently.
  • Spending less time on documentation that's going to end up wasteful is a nice way to get more time executing tests to find more bugs.
  • "If you are too bothered about repeatability of tests - then it is good to have a document of test ideas and *not* test cases that tends to have more ambiguity."
  • "Diversification of approaches and techniques helps testers find more and different bugs that otherwise might be caught by a customer."
  • Software testing books are not the *only* books that helps tester find bugs and hence the library should stock a lot of books on thinking, ideas, pattern, philosophy, psychology, humans, communication...
  • We didn't appear to find a bug because of one or all of these:
      • We did not have the skill.
      • Someone did not let us know when they put it.
      • A stakeholder asked us not to report it although we found it.
      • We didn't intend to find that.
      • We thought it is OK to not to find that, if it existed.
      • We were finding other important bugs thinking opportunity cost.
      • We didn't have the right oracle.
  • { You might want to try a lot more, provided some of the above works for you. Sometimes I am aware that I am going to fall into a trap but that's a way I choose to avoid bigger traps }
There might be a trap you may fall into. Some of your first customer's might not deserve/ might be reluctant / be egoistic - to such an education, sense it out smartly and stop educating him/her to get more time to educate yourself. An indication that you fell into a trap is when your first customer fires you.

+ A heuristic is a fallible method of solving a problem
++ An oracle is a principle or mechanism by which we (humans) identify problems.

--
Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"The test doesn't find the bug. A human finds the bug, and the test plays a role in helping the human find it." --


Monday, February 04, 2008

Schools of testing, Test experts, and Blood bath - Why do they exist?

In Test Republic, Jayapradeep Joithis posted a topic and discussion under the name "Shun the experts ... Long live the experts" and I replied to it with my thoughts. In this post, I publish, for the first time about Schools of testing and my ideas. In this post, I publish the same because I love to have it on my blog for some of you to comment or question me or Jayapradeep or share your thoughts about it. This is not my personal attack on Jayapradeep Joithis nor I know what school of thought he belongs to.

I have decided consciously to not conclude on things but keep learning about them - Schools of testing is just one of them. As days are passing the list of not to conclude is growing and the learning about them is growing as well. I am happy.

You could either keep track of the above given link or read the following ( a little edited version of the same ).

Here it goes:

First, before you read further, you must know and note that I am *NOT* a testing expert but I interact a lot with some of them, NOT because I love their association that helps me build my credibility or reputation BUT I enjoy the learning I have from them during every interaction.

Jayapradeep wrote "Software testing has become a Ba##$d science . Put the testing experts in a room and u see them going for each others throats in a jiffy."

Put politicians together in a room, you might notice the same.
Put a husband and wife in a room, you might notice the same
Put sales experts together in a room you might notice the same.
Put marketing experts in a room you might notice the same.
Put cricketing experts in a room you might notice the same.

OR

Watch programs like NDTV "We the people" where topics and experts vary from a lot of things happening in and around world are discussed and you *will* notice the same.

Why do you think it is a common behavior among experts?

That's nature! I am happy that you seem to be questioning the nature and I'd be happy if you are doing that for learning - more about the nature and yourself.

JJ wrote "Experts have all the rights to have differences of opinion(after all "when compromises continue REVOLUTION stops) but i always hope it could be done in a more dignified manner and with humility."

At least in Context Driven Community ( to which I associated myself without anyone influencing me to do that ), I have seen people respect each other a lot and have hot discussions. They appreciate each other and agree to disagree, at times. Sometimes one member doesn't want to agree to the other and I think that's perfectly okay because as you said, they have a right to do so.

I think within every school or community - there might be a lot of fight and betterment of ideas or learning as a resultant - that's good.

In my opinion humility is one of the toughest thing for someone to learn and practice. At least for me, I admit openly that I don't know how to express my humility although I think I have plenty of them. It might happen so that I might never be able to learn to communicate my humility. I DONT want to be humble to those who are spoiling the craft and that's when my inability to express my humility is of great help.

We always fight, you always fight - that's nature. You fought your way among several candidates during an interview to get a job. Fighting is our nature. The mightiest, smartest, timely, blessed, and the luckiest ( if it exists ) wins. All of us win at some and lose at the other. When we lose, others might be winning. Sometimes, we lose and win at the same instant.

JJ wrote, "I am no expert nor have insights into what goes on in their minds but what i have seen is that the same experts who speak about creativity , freedom of expression et.c. behave in the most vile manner when their beliefs are questioned."

If you are not the Prime Minister of India, you might not be pleased when he/she announces a war against a neighboring country. You never know why the person took such a decision or does so during a situation. If you want to know that - the only way I can think of is - for you to become a Prime Minister.

There are some test experts who have dedicated their life to better the craft and the rest to make money as testing is offering a huge opportunity to make money.

Betterment of craft means - disproving and taking off those so called experts who are making money and spoiling the craft.

Not that some experts don't bother about money but they wouldn't bother about money sacrificing the betterment of the craft. Money moves everyone and everything that is under "business" clause.

JJ wrote, "Some have become so confrontationist to any opposing views that their tone changes to a jingoistic one, not remembering at many times that there is a fine line between 'proving your point' and megalomania . There is a literally a a blood bath on every forum,group , blog , conference where these experts interact.

They are just being themselves and you and I need not worry about that as long as they offer insightful ideas helping us become better in the craft ( if we want to become )

JJ wrote, "People who oppose semantics and terminology's saying they make u narrow minded go on to propagate their own definitions and terminology's."

Here is a definition of testing that I heard: Testing is a process of making a product bug free!

Really?

By finding bugs - you are not making the product bug free. It is only when ALL bugs can be found and ALL bugs can be fixed without introducing ANY new bugs you might be getting close to it. It is a foolish statement lurking among many testers.

Here is another definition of testing: Testing is questioning a product in order to evaluate it -- James Bach

That's insightful and helps most of us do better as it seems to be insightful that we need to question and provide information to the management take informed decisions. That's all. Achievable and insightful, isn't it?

It is insightful because testers who have subscribed to this definition have done a lot better testing than the ones with the previous definition and are also open to scrutiny about their work. Tell me a test that you did, which is not a question that you asked to the product or environment you tested!

Terminologies and definitions should help people think and not stop them or spoil their thought process or leads them to infinity or impractical ideas.

JJ wrote, "they try to split the community into schools of thought(read the very interesting article by Bret on schools of testing : http://www.pnsqc.org/files/FourSchoolsofSoftwareTesting.pdf ).

Were you ever forced to join one of them?
As long as it doesn't spoil any of your learning or betterment opportunities, do not worry about them.

JJ wrote, "In this game of one upmanship they manage to confuse the bystanders and force them to align themselves to their school of thought. At many times we see its the commercial interests being propagated camouflaged as knowledge sharing.

You can't be confused about something unless you hear or know it. If you came to know about it, it is BECAUSE you were curious to know that. Your CURIOSITY lead to YOUR confusion and NOT they confused you. You could be clear before you read anything that - I am not going to be biased or worry about anything I read or draw conclusions on it the moment I finish reading an article. I am going to experiment and learn from it.

JJ wrote, "As a bystander and a student of testing this has become repulsive."

A true student of testing looks at anything relevant or irrelevant as a learning opportunity.

JJ wrote, "Shouldn't the EXPERTS(respected and self professed) be trying to confluence their ideas?
Do we need to split up into schools of thought?
Do we need to fight over the semantics?


Did anyone, till date, when you approached them, ask you: What school of testing are you from? or Were you deprived of anything because you belonged to one school and not the other?

JJ wrote, "If we look back into history a classical example might come from the schools of thought of the Indian Philosophy, where the schools( Sankhya, Yoga ,Nyaya , Vaisheshika ,Purva Mimamsa, Vedanta) having divergent views still existed besides each other in harmony. They seen as complementary and supplementary to each other and was not an either or not situation. We had the austerism of Mahavira and crass materialism of charvaka having healthy dialogue with each other and co-existing."

I think there exists nothing called a healthy dialogue but I think there exists and existed people who know to make the conversation healthy and there exists people who understand what other person means by healthy.

What do you mean by co-exist?

We co-exist with aliens ( who might be in Mars ) in the same galaxy. We breathe oxygen and they might be breathing nitrogen. I think I made a correct statement because that's my understanding of "co-exist". You might think I made an incorrect statement because it conflicts with your definition of "co-exist".

The four schools of testing do co-exist and I know of many people who are friends with people of other school of thought.

JJ wrote, "Long live the EXPERTS........."

Yes, Let those people, who are experts (or not) and work for betterment of the craft ( with money as secondary interest ) live long or even if they live short let them contribute as much as possible for the craft.

I have seen Context Driven Testing school or community members spoiling the craft for those who want to make money (sacrificing the betterment of the craft) through the ideas that CDT members think of it as a bad idea and a hinder to the betterment of the craft. I think its good to spoil the craft for such people because I too want to see the craft get better and money is secondary. Secondary means - it exists!

The fight is for the ownership of the craft.

Once again, fight is not a bad thing. We all came to existence fighting against one million sperms!

--
Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"The test doesn't find the bug. A human finds the bug, and the test plays a role in helping the human find it." --

Monday, January 28, 2008

Great testing stories from India (Created by Not Following Any "Best Practices")

I would be presenting my workshop on Rapid Software Testing Excersises + a paper at Asia Pacific Software Testing Conference at Kuala Lumpur, Malaysia between Feb 24 to Feb 29, 2008. I wish to thank Vishal Manghani of Processworks Sdn Bhd for the invite.

So, here goes the abstract for the paper I am presenting at the conference:

Great testing stories from India (Created by Not Following Any "Best Practices")

Authored and Presented by Pradeep Soundararajan, Consulting Tester - Satisfice Inc & Test Manager, TriVium Systems, India

When I was 4 years old, I used to eat sand (not because my mother didn't like me eating sand nor for the reason of poverty but as a child, I think, I liked exploring sand as another food option for me) . It was my mother who helped me know my act of eating sand during child hood and referred to me as 'naughty' during childhood.

I could eat sand without knowing it was called 'sand' and I could be naughty without knowing I was called 'naughty'.

When I started my career as a tester and found the first few bugs, I was told by a senior to do more such "negative testing" to find more such bugs. I asked him, "What is negative testing?" and he replied, "Whatever you did to find these bugs is negative testing".

I could do negative testing without knowing that someone refers to what I am doing as 'negative testing'.

Years later, I blogged that I still didn't understand what negative testing means but ideas of what it could be.

It took me a couple of years to learn that I do many things without knowing how someone calls it and then learned from others how some parts of the community I live in calls it.

All these stories indicate that we might be doing great things without knowing it. What is important to us is doing great things and not necessarily knowing the names but it is good to know the names of the great things we do when we intend to communicate with other people.

Anything that works great for me could make you fail badly. For instance, I can live a 100 years eating curd rice and pickle but you may die falling sick of it OR what medicines that could save me from a headache could kill you because although the common problem we might have is headache, the actual root cause is different .

If you disagree to it, 'best practices' fit you well.

If you agree to it, then I am sure you understand why doctors prescribe different medicines for the same person, the next time he /she gets a headache.

In this presentation, you would hear some of the great stories of Indian software testing that fortunately I was a part of and played a role in helping teams achieve the success. What might surprise you is the fact that those teams who did not follow 'best practices' tasted success that teams who claim to follow 'best practices', dream to achieve.

If you are going to listen to these stories in my presentation, I warn you to be aware that you *cannot* see the same success if you try doing things we did.

Welcome to context driven testing!

I would not be able to reveal anymore details about the presentation unless I am done with it but I welcome arguments, questions or success stories that you might want to share with my readers. I think I should be able to publish the slides for the same, post my presentation.

--
Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"The test doesn't find the bug. A human finds the bug, and the test plays a role in helping the human find it."


Wednesday, January 16, 2008

"If you can see it in your mind, you will find it in your life" -- Scott Barber

I saw in my mind that someday, I would be attending Jerry's workshop.
I saw in my mind that someday, I would see James Bach in live testing action.
I saw in my mind that someday, I would show Ariel ( Michael Bolton's daughter) how autorickshaws in India zoom.
I saw in my mind that someday, I would go around Toronto with Michael Bolton.
I saw in my mind that someday, I would get a chance to meet with Dr Cem Kaner.
I saw in my mind that someday, I would see Mike Kelly hosting a conference.
I saw in my mind that someday, I would have lunch with Karen Johnson discussing our experiences in testing.
I saw in my mind that someday, I would meet Scott Barber and learn more about Performance testing.
I saw in my mind that someday, I would meet Jon Bach and explore exploratory testing with him.
I saw in my mind that someday, I would meet my dear friend Ben Simo.
I saw in my mind that someday, I would meet David Gilbert and learn stories of his creation - Test Explorer.
I saw in my mind that someday, I would meet Harry Robinson and develop my model based thinking.
I saw in my mind that someday, I would meet Matt Heusser and learn more Creative Chaos.
I saw in my mind that someday, I would be introduced to John Kohl, a musical exploratory tester.
I saw in my mind that someday, I would meet Geordie and get a chance to listen to Rapid Tester Song, live.
I saw in my mind that someday, I would meet Adam Goucher and thank him for his constant feedback of my blog.
I saw in my mind that someday, I would see Braidy Tester gathering ideas to make more developers cry.
I saw in my mind that someday, I would attend Johanna Rothman's testing workshop.
I saw in my mind that someday, I would meet Elizabeth Hendrickson and help myself think more agile.
I saw in my mind that someday, I would see all stars glittering a few centimeter from my eyes.
I saw in my mind that someday, I would see and experience more things than what I see in mind.
I think I am going to find most of the above in life, this year, at CAST 2008.

If you have such a dream and being in India makes you feel as disconnected from all great action, send a paper to CAST 08 conference and you would see it in your life, too.

If you have all the above in mind then I urge you to have one more thing -- to travel with me on a 24 hour flight to Toronto, Canada from India, discussing and playing testing exercises or testing the in-flight entertainment system [ of course, without bringing the plane to a halt mid air :)) ]

I am all set to travel to Toronto, Canada for CAST 08 where all the action is set to happen. If you enjoy testing, learning and challenges - CAST is one of the ways that can cast you in such a situation. My current boss has disagreed to sponsor me for this workshop but that doesn't stop me. I have decided to attend CAST 08, shelling out all expenses I would incur from my own pocket. No, I am not rich but I feel I would be too poor as a tester if I dont make it there this time.

Are you going to be on my next seat?

Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton

Tuesday, January 01, 2008

Progress Report 2007 of Pradeep Soundararajan

Happy New Year wishes to all my readers.

It is exactly one year since James Bach officially hired me to represent Satisfice Inc in India. James Bach wrote in his post Satisfice India, "A Satisfice tester, (as my brother Jon, at Quardev will tell you from working for me for 18 months) is expected to be quantum cut above normal testers. We achieve that not through wishful thinking, but through study and practice. A Satisfice tester is always ready to be challenged about his work".

So here is my progress report for 2007 that you might want to go through. When I wrote the report, (which took me a long time to compile, think, laugh and cry as I remembered each moment of 2007) I understood why I think I am one of the most passionate software tester without excluding the fact that I am living among other passionate testers. I finally feel eligible of what credit I got one year before, this day.

-- Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton

Monday, December 10, 2007

Ants solve problems that testers struggle to!

Ants can go into corners of tables and chair, which we humans might not be able to.
Ants can travel to any country without a passport or Visa (if they manage to slip into someone's baggage).
Ants can live anywhere and yet not pay rent or property tax.
Ants can eat junk food forever and live happily.

Doesn't all of them sound so obvious?

So, here is something that might not be so obvious about ants... Little creatures that we commonly refer to as ants have solved a problem that many testers today struggle to.

Have you heard a tester say, "I haven't tested this before / this is too complex / I don't know how to start testing it".

The important thing to note is that we might have heard it from our own mouth or heart and sometimes from others, too.

Here are some experiments that I did with ants to see how they respond to complexity:

Experiment 1

I took an ounce of sugar, placed it near a colony of ants and observed what happened to the sugar I placed after a while.

My experiment resulted in each ant carrying a crystal of sugar and moved them to their nest. Sugar is all gone!

Experiment 2


I placed a cake of size approximately 1000 times bigger than an ant in the same place and observed what happened to the cake.

This experiment resulted in each ant breaking the huge cake into smaller fragments and moved it to their nest bit by bit. Cake is all gone!

Experiment 3

I put a piece of solidified sugar candy near the same colony, which was hard to break for an ant.


This experiment resulted in ants trying to break the candy to smaller segments, but probably the smart ants realized it to be complex than their earlier two assignments I gave them and then they all co-ordinated together and carried the candy to their nest. Candy is all gone!

I bet I could place a mammoth of food for them and they, without bothering about the complexity of it, would try moving it to their nest or create more nests and colonies to accomodate it or work a strategy to get it to their nest or much it as much as they can till the mammoth lies there...

Ben Simo, a wonderful tester you might already know, recently wrote a post titled Solving Intractable Problems and ended it beautifully by saying, "Start with what you recognize" - which I now think is what ants do instead of saying, "That food(work) is not for us, it is for bigger (skilled) ants"

After having done these experiments I was ashamed of my behavior of hesitating to test a product (which I did a couple of years ago) just because something appeared to be too complex or I thought I didn't know about the product or technology.

No, I said, *I* was ashamed and I am not going to ask if you were ashamed because you might have not done that.

After all they are ants and they don't have the super brains we have and lets ignore them folks and continue to live as happy as we are, complaining that things are complex.

Silly ants, they don't even know they are dealing with complexity. I think they should be ashamed of it.


Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton

Wednesday, December 05, 2007

Jony Jony, Yes Papa! Following Process, Yes Papa! Telling Lies, Ha ha ha!

I am 100% sure that this article would make no difference to the world because there have been better insightful articles than this about the topic that I have started to write, which didn't make much difference to the part of world I think I am living in.

I feel it is important for you to ask yourself, "Why would I want to read an article that the author is certain that it wouldn't make things around me better?' because by asking that question and continuing reading ensures that you are wasting your time because you chose to.

I conducted my public workshop on December 1st through Edista Testing - a QAI venture in Bangalore on December 1st. A couple of months ago, I had expressed my dream to go around places in India other than Bangalore and conduct my workshop on human skills of testing titled Exercises for a Testers mind - A Rapid Software Testing Approach and the dream is coming true as Edista plans to bring this workshop to your city wherever you are in India. Do not worry about the cost as long as your company can sponsor you for a day.

I challenge testing minds and I learn from them and some of the curious minds who attend the workshop largely benefit from the workshop. All audience are thrilled about the things they learn from the workshop but what makes them sad is that they have to go back and follow the process their company mandates them to follow - which at the end of the workshop they know that it doesn't add as much value as they witnessed the value that Rapid Testing adds.

How do you think they witnessed, the value that Rapid Testing adds V/S the value that their process ( IXX, CXX - Level X, SICK6 SXXXX, XXXXX, Centre of Excellence, Test Factory) adds?


This time I felt terribly challenged at the question of process and I revealed something that shocked the audience and were not willing to pose further challenge. Its exactly an year old secret that was lying in my inbox and I had shared it with very few.

Rapid Testers stand up to scrutiny and so I stand up to scrutiny in case the following information you might read, appears to be an exaggarated or made up to prove a point. It might appear so because those who dwell with those processes can never achieve it and it is close to impossible for one who believes in those to believe the following.

Here is an e-mail that I received last December from my Supervisor from a large Products + Services company of India on the last day of my job at that company.

---- Forwarded by Pradeep Soundararajan on 12/27/2006 04:29 PM -----


All the best, Pradeep.

There are learnings for all of us from the way Pradeep has conducted himself in this tenure in the team. The confidence he has shown and willingness to help others and constantly exploring for new ideas are some of the highlights. Fortunately I was also part of the team which Pradeep was associated.

One more thing I would wish to share with you all is that, he was handling XXXX (product name masked) releases for XXXX (A multi billion dollar customer name masked - who also had a test team at his end who tested the releases we made before they released to their customers ) and with proud I can say that there isn't any bug which customer found apart from what we or Pradeep found here.

On behalf of the team and on a personal note I wish him all the best in all his future endeavour .

Regards
XXXXXXXXXXXX ( Supervisor's name masked )

__ end of e-mail excerpt __

Some very important points to think and remember:

  • To remind you, this company too, is one such who believed in the above mentioned process till I helped at least some teams realize that they could achieve bigger success if they could come out of the trap they fell into and add more value to customers. No customer would say - I don't want you to add more value but I am paying you to follow XXXX process. If a customer says that, either the customer needs to be educated on testing or it is a customer who deserve to be off the business list unless the customer is willing to pay a huge price.
  • Some of you might think this post as my self marketing and might fail to learn some important lessons that your customer might want you to learn. Also if I wanted to use the above as my marketing, I wouldn't have waited to reveal it an year later.
  • Some of you might think this happened somewhere too far away from India, which is not true, because this happened in Bangalore, India.
  • Some of you might think I did *complete* testing but I admit that I know no one can completely test anything, so I did not do complete testing.
  • It was no one man Pradeep show, it was a team effort and it was achieved because I practiced the skills that James Bach and Michael Bolton helped me gain on the product I tested with the skills that I already claimed to have + the skills of the team + Exploratory Testing mixed with very little scripted testing.
  • This achievement for the company, the team and me didn't happen because we intended that to happen at the start of the project BUT we had realistic goal as a test team "To find important problems, quickly, and gather as much information as possible through our SKILLS and present them in a useful manner to help the management take informed better decision" AND NO STUPID GOAL SUCH AS "LETS MAKE A BUG FREE PRODUCT".
  • By the customer not finding any bugs other than what we found, although there was a test team at his end, doesn't say that the product was bug free. What customers looked at is value for the money he paid us, and I think he was sure, as the project progressed that he was getting a bonus. At least it helped him understand that he had to hire a better test team than us to find bugs out of what we had found.
  • It is hard for me to know what is the state of the product now but I can safely say that the 8 month duration I stayed there, there was nothing that our customer or ever his customer reported on the releases we made that we didn't know.
  • I'd like to add another important point that in order to achieve what you read above, I and the team had to break certain things that the process mandated to achieve it.
Don't ask your management or customers to read this post because both of them might start to demand more from you, which might take away your coziness you have been enjoying in testing with the process you are asked to follow. In case you are curious to share with them, be prepared to learn and practice human skills of testing and better insight into testing, out of which some of them are taught by James Bach and Michael Bolton's Rapid Software Testing and Cem Kaner and James Bach's BBST courses.

"I would say that a process is the way things happen. The Earth in orbit around the Sun is a process. In that sense, yes Rapid Testing is a process.

What Rapid Testing isn't is a set of instructions to be followed without understanding. It is not a collection of physical behaviors. It isn't even really a set of techniques, although it does feature some of those. To say
it's a skill set and mindset is to locate RST within the mind of a tester. It's a process of making sense of testing problems and reacting to them differently, as the situation demands.
" -- James Bach


"One of the hallmarks of Rapid Testing is that your work can suck less. The pointy-haired bosses can tell you what to do to some degree, but they can't supervise you every minute of every day, and they can't tell you how to think. In the "free" time that you have--those little micromoments of disposable time, for which you won't be punished because they can't watch you every moment--you can perform a quicktest, find a bug, write another line of the test tool you're working on, sneak a look at the specification you managed to photocopy, check in on your mission, befriend a developer, have a chat with another tester about where the bugs might be, cover a product just a little more deeply with just one more test... And after you've leaked a little of what you've discovered and have a few successes under your belt, maybe you can start to train your manager into expecting nuggets like that." -- Michael Bolton

Here is another evidence of high value addition that Rapid Software Testing produced to Michael Bolton's client

Here is one of the great and very insightful quote I have read about achieving the mission, "Who cares if you followed the instructions if it doesn't work when you're done?" -
Scott Barber's Dad

All I have done in this post is to complicate that quote in many words which the wise man said it in one sentence. I apologize for that.

-- Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton

Tuesday, December 04, 2007

Second time, a company in India wants to hire testers in a non traditional way

What is the company looking for?

As a Test Manager of the company, I am looking for 3 testers, each of whom has spent at least 2 to 5 years testing and learning diversified things in testing. I want to challenge the tester in a permanent position in the company I work for, to solve complex software testing problems, whose main focus would be to question testability and supportability of products and write tools to augment testing activity.

Interview

The interview would typically be a telephonic followed by one full day at office premises (probably a weekend) in which you would be given a mission or different missions to achieve by the end of the day. You would face questions based on your testing activity at the end of the day.

I am not listing the skills you need to have but I know whether I should call you for an interview or not through:
  1. Write 2-3 pages about your testing experiences so far. If you reveal any confidential information, although you might be too good, I am not taking the risk of calling you for an interview.
  2. You may want to attach your CV or anything you think might interest me to call you.
  3. Fake experiences would be reported to police, so don't risk yourself.
  4. Don't mention, even if you have certification in software testing, because it just doesn't help/ better any chances nor worsens. I intend to hire you for your skills of testing and not your certificate that plenty people found it easy to clear.
If you are a fresher, Test anything over web and send me your report. I might still be interested to foster you.

e-mail me your reports to testwithpradeep@gmail.com

Here are some highlights of working with me:
  1. All testers who report to me have been enjoying freedom, which is very important for testers.
  2. All testers who report to me haven't been asked to do documentation that's wasteful or for the purpose of documenting to follow a process.
  3. All testers who report to me have got a chance to be questioned on their work quality and some have been rewarded once they practice the changes suggested and also see a value in doing those changes.
  4. At least one tester who reports to me started to blog about her testing activity and the thought process that went through to find some bugs ( without revealing the confidential information, of course)
  5. All testers who work with me have had freedom to challenge me (without bothering if I am their Manager or not) or my ideas I propose to test without bothering if that would affect their credibility with me provided they are open to learning and unlearning.
If all above looks tough to you and don't want to put in that much of hard work to get a challenging testing role, Yahoo, my filter works.

Here are some traditional stuff:
  1. Your designation might be a Senior Test Engineer or Test Lead who reports to me (but don't bother too much about that right away).
  2. Your pay is decided by the budget allocated for these positions which is in par with industry standards calculated based on some formulas that I am not aware of. Post observing your performance, your pay is not decided by any formula but solely your performance and the company's performance in market.
  3. You will be required to join ASAP or within 30 days of the date of offer.
  4. The work location would be Bangalore.
  5. The 10 year old US based medium sized company I work for respects and value testing, and post me coming in, I see more recognition towards testing given by the senior management.
  6. There might be some traveling opportunities in Q3 2008 but no guarantee and don't get attracted just because there might be a traveling opportunity.
  7. You may be a tester from any domain as long as you don't have a mental block to learn new domains and technologies.
  8. Send in your entries before others steal your chance.
The good news for those who are excited about this is, I am sure very few people would dare to compete and hence the competition wouldn't be that fierce. So the more excited and curious you are when you read this, the more likely you might be hired.

So, who are those 3 testers among you who would get this unique opportunity that probably other Indian companies might not offer.

It takes courage to challenge and skills to tackle the challenge. I am calling the skilled and courageous to work with me. Get in touch through
testwithpradeep@gmail.com

For those of you who want to know what traditionally companies ask for, hit MonsterIndia or Naukri websites and search for tester job openings. Not to my knowledge anyone asks for skills of testing from a tester, instead would focus on tools knowledge or horribly trivialize manual testing and process knowledge.

Hey look, at least some part of Indian testing is changing with more focus towards human skills! Are you left behind?

You might want to know, when was the first time a company in India wanted to hire a tester by non traditional ways... Simple, when the company I work for hired Pradeep Soundararajan ( that's me ) as a Test Manager at his age of 26 and helped him become the youngest Test Manager of India.

-- Pradeep Soundararajan - http://testertested.blogspot.com - +91-98451-76817 - pradeep.srajan@gmail.com

"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton