Home

Showing posts with label Interview. Show all posts
Showing posts with label Interview. Show all posts

Monday, August 15, 2011

An interview with a Bug–Part II (The Return of TGB)

It is said that History repeats itself. It has been more than two years when I interviewed the TGB. If any of you have missed that interview by any chance they can read it here.

That was the last time when TGB was seen. After that interview the TGB got fix and we were sure that we would never see him again. But guess what – we all were wrong. The TGB has returned and this time he is more powerful. This time he is going to blow our minds who are involved in the project – the testers, developers, team leads, managers, business managers, client and everybody who is directly or indirectly involved with the project. It seems that we are in deep soup.

Luckily like last time, this was again me who found him but this time I was not happy. First, my job was on stake now and second, the way he was looking at me like making fun of me. But, once again I was ready with my questions and tape recorder for another interview which I never imagined two years back when I interviewed him first.

Me: Hi TGB, It’s good to see you happy and healthy. Welcome back.

TGB: Don’t lie to me. You don’t seem happy at all seeing me again and moreover I never went anywhere so why are you welcoming me?

I was staring at him. He was not changed at all. He still hates me like I hate him.

Me: How did you escape last time? We all thought you were dead.

TGB: In software, the bugs are never died. They just go to unconscious state and wake up again when they get the chance. You only believe in what you see. If you don’t find any of us then you make assumptions that we don’t exists and release the so called bug-free software.

Me: What… By any chance, are you studying Psychology?

TGB: Yes, Psychology of ABS Members clip_image002

Me: Very bad joke. Anyway, I don’t make any assumptions about your existence.

TGB: That’s only why you always find me. I hate you, seriously.

Me: Even I don’t love you and now when you have been found once again, I hate you more. You have put my job on stake. They are going to kick me out from here.

TGB: No, They should not. You are forgetting something. It was not you who confirmed my death. It was other ABS member of your team so you can have narrow escape.

Me: You mean Retesting. Yes, you are correct. It was not me.

There was silence of few seconds. Both of us were thinking. I broke the silence finally.

Me: He is a good tester. I am wondering how he has missed you.

TGB: You tell me.

Me: How can I tell u?

TGB: Think. You must know.

Me: He didn’t retest at all.

TGB: No, Infect he has retested twice.

Me: Then he might not know how to find you.

TGB: Correct and Incorrect as well.

Me: means

TGB: He knew only one way to find me which you mentioned in your report.

Me: and there was other ways?

TGB: Yes. Nobody knew how to find me before you did last time. You have found me because you were not following their steps book.

Me: You mean test cases?

TGB: Oh!!! You call them test cases and what you call such ABS members who follow these test cases?

Me: Testers…. more precisely Scripted Testers.

TGB: Oh!!! We call them ABS Robots and we really love them.

Me: why?

TGB: Because they only see what they are supposed to see. So, most of time they are not able to find us hiding in different areas of software.

Me: Can you explain it bit more?

TGB: Look, these ABS Robots try to find out using the steps book. These steps books are written based on the requirement by the client which says what a system should do and what it shouldn’t. But designed system is too complex than the specified one. The requirement never explain the grey area which lies between and beyond the Do and Don’ts of the software and that’s the place where most of us live in colonies.

Me: Hmmm. So what do you think what we should do?

TGB: I suggest you to continue testing the same way. This will help us to grow. Let us also enjoy the life.

Me: I understand your view but this is not possible. For your information the things are getting changed now. Now we have robust training mechanism for testers. The new testers are going to Context driven testing schools where they learn the martial arts with bugs like you. Few of testers are also practising exploratory testing in our team. Mark my words TGB – This time you are not going to come back.

TGB: WTF!!! You will not let us live happily.

Me: That’ true. If you are happy then we can’t.

TGB: So, you mean my time is near?

Me: Yes, but this time it is going to be too costly for us.

TGB: clip_image004 clip_image004[1] clip_image004[2]

Me: Why you are laughing?

TGB: Dear friend, it is not going to be that easy. Now it is time to start rounds of long meetings, people will be blamed for missing me at earlier stage, you will be blamed for not ensuring earlier that I was dead and finally in the end, the one who missed me at retesting will be found responsible for this blunder and you know the rest clip_image006

Me: Yes, you are right clip_image008 and it reminds me we have a team meeting in 10 minutes. I will come to see you once more before you are dead. Do you have any message for aspiring testers?

TGB: Yes, I request them to follow Steps Book testing so that we can live healthy and happy life. After all, Life is about living happy.

And from next time I am not going to give you any more free interviews.

Me: clip_image010 Bye TGB. See you soon.

TGB: Bye.

Disclaimer: The original interview is edited because of foul and abusive language :)

Wednesday, July 8, 2009

An interview with a Bug

I always want to interview the great testers to know the secret of their great testing skill, to know the way how they perform testing, to know how all they became masters in the field. In short I want to know the recipe of their success as a tester but never got a chance. The reason was I never approached them as I always have a doubt that they will refuse my request as my blog is not popular like the other sites in which their interviews have been published. Even my blog doesn’t have regular readers. This fear never let me approach to ask them for interview and the wish could not fulfill.

But my dream came true. It was different from what I thought but I got a chance to interview. Although he is not a celebrity but he plays very important part in success of a tester. Dear friends, I got chance to interview a Bug. Yes, a Bug.

His name was ‘The Great Bug’, would be abbreviated as ‘TGB’ further. I am using past tense for TGB as he is no more and has been fixed (or ‘dead’) by development team but I promised him before reporting that I would tell his story to the world. So let me present the story of ‘TGB’ in his own words:

Me: Why you are named as 'The Great Bug'?

TGB: I am the first bug of the project. I have seen many generations of bugs. Hundreds of bugs have come & fixed but I am still there. The Sixth version of the project is going on and I am still here. So my follower gave me this name with respect. They believe me as the best bug.

Me: What kind of Bug you are?
TGB: I am a Bohr Bug. Do you know about Bohr Bug?

Me: No, but I would like to know.
TGB: A Bohr bug is a bug that makes itself apparent consistently under a well-defined (but possibly unknown) set of conditions. The Bohr bugs include the easiest bugs to fix, but also bugs that are hard to find and fix and remain in the software during the operational phase. These kinds of bugs are often present in parts of source code that are not invoked very often and thus might remain undetected for an extended period of time, and are sometimes termed as 'Ghost in the code'.

The common example is a program which always fails when you divide by zero.

Me: that’s interesting! What are the other kinds of bugs are there?
TGB: There are Heisenbug, Mandelbug & Schroedinbug and many more.

Me: Would you tell us about them, so that we can classify a bug next time we find.
TGB: hmmm..... I don't see any harm in it for our bug family. Ok, I would tell you about the bug classification.

(i) Heisenbug: Heisenbug is a kind of bug that disappears or alters its behavior when one attempts to probe or isolate it.

A common example is a bug that occurs in a release-mode compile of a program, but not when researched under debug-mode.

These bugs are antonym of Bohr Bugs.

(ii) Mandelbug: A Mandelbug is a kind of bug whose underlying causes are so complex that its behavior appears chaotic.

For example, a fault in an algorithm's implementation can lead to an erroneous computation for specific values of a program variable—a case of fault activation causing an error. The software can use this incorrect result internally for further calculations, in which case the error propagation leads to additional errors. A failure occurs only when the system uses one of these incorrect calculations in a way that influences a perceivable system behavior, or when error propagation causes a failure occurrence.

(iii) Schroedinbug: A design or implementation bug in a program that doesn't manifest until someone reading source or using the program in an unusual way notices that it never should have worked, at which point the program promptly stops working for everybody until fixed. Though this sounds impossible, it happens; some programs have harbored latent schroedinbugs for years.

For example, a database program may have initially worked on a small number of records, including test data used during development, but broke once the amount of data reached a certain limit, without this cause being at all intuitive. A programmer without knowing the cause, and who didn’t bother to consider the normal uptick in the database size as a factor in the breakage, could label the defect a schroedinbug.

Me: Why do bug exists?
TGB: It’s your question or it is your problem :)
Me: It’s just a question about your existence.
TGB: hmmm…. there are many reasons of our existence like
(i) Communication Gap between client, management & team members
(ii)Complexity of the project
(iii) Pressure to complete the time within strict time frame
(iv) Continuous change in requirements
(v) Programming errors
(vi) Poor or Incorrect Documentation etc.

Me: How did you come in the world?
TGB: Do you want to know the complete story?
Me: Yes
TGB: Well, about three years ago Mr. Client got an idea to automate his business. He came to meet Business Manager of company to apply his concept. They had long meetings discussing about their new project. They were very exciting about the project. During this excitement, they forgot a very important concept and I was seeded in the project.
Even in the designing phase, they did not find the glitch in the project and when programmer were writing the code, they gave me life and since then I am here.

Me: So, it's a developer who has given you birth?
TGB: No, My original parents are Client & Business Manager of the project. They are responsible for my existence.

Me: That is really interesting! If it’s true what you are saying then why the developers are always claimed for bugs?
TGB: The developers are the weakest in all of them who is responsible for our origin and its human nature to blame the weakest one. Not all bugs are originated by developers. Most of the bug already present in the project when developer is introduced in the project.

Me: Do you think people will agree with your point of view?
TGB: I am not here to make them to believe me. Everybody has its own conception. This is my truth and it is up to them whether they are agree with me or not.

Me: Do you have a family?
TGB: Yes, I have family. In fact, in earlier period of the project I have a big family but with time they all have been caught by ABS members. Now, there are just few people in the family. I miss them all whom I lost with time :(

Me: I am sorry!
TGB: It’s perfectly alright. So don't feel sorry.

Me: How you spend time with your family?
TGB: As I told you, I had a big family. We use to party all the time. We always enjoy our togetherness and our success. We never think about our future, neither we use to look back on our past. We enjoy the present.
Me: it means you know how to live a happy life :)

Me: I am really curious to know why you were not identified by anyone till now.
TGB: :) It was not an easy task my dear but I always succeeded to hide myself. Actually I disguised myself as a feature of the project. Whenever anybody tried to find me, he could see the feature only.



Me: you talked about some ABS members, what is ABS?
TGB: ABS – Anti Bug Squad. ABS members are really heartless people, they are the people who find us, report to Developers and make sure that we all get killed. (Read as 'fixed')

Me: you mean tester!
TGB: We don't care what you people say them. We call them ABS members.

Me: You know I am also an ABS member!
TGB: Yes, but I am just saying the truth. Due to you heartless people our family could not grow. How can you ask developers to kill us?

Me: This is our job. Company is paying us for finding and reporting about you. We help in development of quality product. Our goal is to find bugs in project, to find bugs as early as possible and make sure they all get fixed.

TGB: huh! Quality.... To hell with your Quality :x

Me: It was really a nice interview and I hope whoever read your interview will have the sympathy with you.
TGB: I don't want sympathy. I just want people know about us. That’s all.......

Me: Thanks TGB for your support, Efforts and Time.
TGB: Thank you very much.

It was the last time when I saw TGB. After this interview, TGB was fixed within next 6 hours. The Great Bug is no more. The bug which was not found in six releases has been fixed at last.

This is the story of TGB.

Disclaimer: This is not the original interview of TGB. The original interview is edited because of foul and abusive language :)