Monday, May 25, 2015

Its my baby, I don't want to break it

The old school philosophy of testing is "Break the software". I used to think this way and be driven this way. Then I realized something, when my focus is on breaking something, my approach is attack mode.....




If I want to break a glass vase, I throw it down and it breaks.

If I want to break my software, I find vulnerable spots and take a jab at it.
Then what?
I report, "hey, its broken" and probably feel proud that "Hey, I broke it!!"
Then what?
I don't know. 
I am not sure if this approach every worked for me.


I usually fall in love with most products I work on. They are my babies. I want the best for them. I want them to evolve and improve. I want them to co-exist with their sibling applications. I want them to have a unique name in the software industries. I want to give them the best opportunities I can provide with my team.




It takes a village
It take a village to raise a kid.
It takes a team to create a product.


Know the history
Know where the kids come from. Their background, family history, family health history and such.
Know where the idea for the application come from. The requirements and the needs that lead to creating the application.


Understand what they want
We want to give the best of the best to our kids. But that wont make them happy. Understanding what they want and trying to give them as much of what they want will make us happy.
We want to create the best possible application. But the application may not need the extra bells and whistles. It just needs that extra umph. Try to give what it needs with what we got.

Protect them from threats
Kids should be educated about pedaphiles and manipulators so that they can protect themselves when we are not around. Because, the bastards always make sure the kids are alone to take advantage of them. Provide them with whistle or phone or a process to attract attention when in trouble.
Software should be prepared to deal with hackers and hijackers so that they it can protect itself anywhere in the world. Provide them with Captchas or trace of analytics to understand what happened when.



Extra care when sick


We have to give extra attention to the kids when they are sick. Not hate them for being sick.
We have to give extra attention to the application when they are vulnerable. Not walk away and abandon them.








Rules have to be followed
Kids may not want to follow rules sometimes. But they should not be given an opportunity certain times. They have to follow the rules as part of the society
Application functionality may become dull or not enough adventurous some times. That is okay. It is for the application's own good. It is to follow some rules a it is part of the society.








They will leave the nest
Don't try to hold on to the application out of fear of being jobless. When it is time, it is time for the application to go through new process and into new departments and have a life of their own.


Enjoy them

Enjoy being with the kids. Explore the world with them. Talk about anything with them and see what they think. If they need to understand certain things more than the other, explain it to them.
Enjoy working on the application. Explore the software world with it. Input anything and observe what comes out. If the software needs to be tested in other ways using other tools, definitely do it.



Watch them grow and evolve
Watch your kids grow and evolve into something wonderful
Watch the application grow and evolved into what it is meant to be.

Saturday, February 21, 2015

Quality Assistant



I am often asked about how I deal with my programmers on a day to day basis. The question means well, I am giving them bad news about their work. It is only natural for anyone to doubt - how this paid relationship works!?

There is this joke / story I heard a while ago that could explain the tension between a developer and the QA. Here the Wife is the Developer and the Husband is the QA.

Wife: (puts on a new pair of jeans) Does this make my butt look big?
Husband: (just stares, if he tells her the truth, she might get mad. If she does not her friends will tell her the truth and she will still get mad)
Wife: Honey, you can tell me. I won’t get mad.
Husband: You say that now….
Wife: I promise I won’t get mad. You can tell me anything. We should be able to tell each other anything.
Husband: OK, here it goes. I slept with your sister.


That is how I typically roll. I gain their trust and then give them a bunch of bugs I found. It is not my job to make sure every bug I logged is fixed and is accepted. It is  team decision to fix a bug now or to backlog it or reject it. It is not my decision or the developer's decision. (Although this is old school thinking from 1997).

Thanks to this notion, many organizations maintain their teams working against each other while working for the same goal (like “frenemies”). But there are teams where developers and their testers work together to build not just a product, but something great. In the later the A in QA means Assistance. Not assurance!

I mean what are we assuring? What can we assure? We are assistants. We are quality assistants to the developers. We assist them in doing a better job. We are not finding faults. Together we build a better product.


I have not met a developer who did not care about the quality of their work or their
product. So, they care. They don’t just code and sit back for the QA to find issues and work on putting them down. They do their part of testing to make sure their code works. It is my job to make sure the product as a whole makes sense and it sensible (Yeah , yeah, bug free, what ever that means).

I prefer to make my application better by continuously exploring it, learning about it and respecting it. I dont believe in breaking it or trying to break it. (Again 1997??)

Tuesday, February 3, 2015

Lots of Work

“Working so hard”
“There is a lot of work to do”
“Such a big application”
“So many bugs”
 "Too much work load"
 "Not enough time"


What should it really mean to the person hearing it? – Nothing.



I have seen members take loads of work and not bat an eye and do it with ease.
I have also seen members take little work and make it look big and stress out and stress others out.
I have also seen organizations that plan and work smart.
I have seen organizations that plan to work really, really hard.

I am not here to explain the right way of doing things. Whatever floats your boat!! Lol

But, when people talk about a lot of work, it reminds me of the Woody Allen movie – Annie Hall
There is a scene in the movie with a psychiatrist. The conversation goes like this -

Alvy's psychiatrist: How often do you sleep together?
Annie's psychiatrist: Do you have sex often?
Alvy Singer: Hardly ever. Maybe three times a week.
Annie Hall: Constantly! I'd say three times a week. 


The frequency is three times a week for both, but the perception of excessive or insufficient varies between people and their wants and capacity. Especially how much, they can get away with.

Why you should not delete Tickets

I am old school. Back in the day, logging a ticket was not everybody’s job. Prioritizing and removing tickets from the queue was also handle...