Sep 16, 2009

Lessons Learned from “How I Fixed” Posts!

Yesterday during an online conversation, one of my blog readers expressed her concern: “Debasis, recently I have seen you posting 2 “How I Fixed” posts in quick succession. I wonder why you are deviating from your mission, considering “Software Testing Zone” is primarily a testing related blog”! I replied back quickly: “Well, why not? And no, I don’t think that I’m deviating from my mission to grow STZ as a testing-centered blog”!
If you are a regular reader of “Software testing Zone” and also wondering the same [why I have started writing these “How I Fixed” posts (first “IE 7 Operation Aborted Error” and now “MyWebSearch Spyware Removal”)], here is why…
I believe that technical investigation is one of the major responsibilities that we are often required to perform as testers. Personally, I love this aspect of testing more than anything else and I take pride in describing my role as a tester to be a “technical investigator” who helps the project stakeholders by providing important project related information that in turn guides the stakeholders in taking critical decisions. While trying to get rid of (fix) the above problems I think I did quite a bit of technical investigation to get around the problem and learned the following lessons that, in my opinion, can be helpful for a tester in her work:
a) How to maintain a cool head while being confronted with tough problems/situations.
b) How to narrow down the problem and get to the root of it. This particular skill can help testers while trying to narrow down the reproducibility criteria for hard to reproduce bugs.
c) How to engage in critical problem solving.
d) How to explore free information that is available via search engines and how to use them to your advantage.
e) How to use your observation skills to spot any subtle clues that can lead you to the error triggering condition of the problem.
f) How to use your critical thinking skills to pinpoint the problem.
g) How to use your lateral thinking skills to identify multiple possible causes of the problem.
I think each of the above lessons can also help someone in becoming a better tester. As testers, often we are required to do some research to learn more about a bug and do some investigation to narrow down it's reproducibility factors. As we all know, the shorter and crispier are the steps to reproduce certain bug, easier it is for the programmers to reproduce it and hence the chance of the bug getting fixed gets higher. Good technical investigation skills can also empower a tester to quickly nail down a critical defect that may be too subtle for a mediocre tester to spot and recognize. So overall, I think while trying to *fix* the above problems in my real life  I learned important testing lessons.
Moreover as Dr. Cem Kaner says, “The best software tester isn’t the one who finds the most bugs in the software or who embarrasses the most programmers. The best tester is the one who gets the most bugs fixed.” (~The Bug Advocacy) I thought, why not move one step ahead and fix the problems whenever we have the opportunity to do the same? I completely understand that as testers we seldom get the chance to fix the problems (bugs, defects, issues) that we find in the software. But while testing (problem solving) in real life I did recognize opportunities where I had the chance to hunt down the problem and at the same time try and fix it myself. Thus my recent “How I Fixed” posts took birth. At any rate, I like to solve problem that has the potential to tickle my gray matter and problems like the above proved to be worth trying. And I thought that it would be appropriate to record my approach in the form of blog posts as the documentary of the episodes!
Do you feel that this is against the mission of a blog that is supposed to be testing-oriented? Do you think that I should stop writing these posts? Do you think that I am deviating from my goals as a tester? I would like to hear you out.
Happy Testing… 

Sep 14, 2009

Confusing LinkedIn Status Update Screen when the Session is timed-out! Is this a Bug?

As if the number of post categories on Software Testing Zone were few, I am introducing yet another series of posts, which I have decided to call as “Is this a Bug?” In this series I am going to post a number of software anomalies that look suspicious and buggy to me. This series will be a kind of repository where I am going to dump all the suspected software defects and bugs that I encounter in my day to day life. When I post them under this category it essentially means that these are the kind of software failures that are ambiguous and one can’t be very sure if something indeed is a software failure or it is just the way it was designed to work! I would leave the final decision (whether this is a Bug or not) up to my readers and will just post here my observations. I think this is going to be fun. 
So here goes the first post of the “Is this a Bug?” series:
1. Login to your LinkedIn A/C (yes, you need a LinkedIn profile to be able to verify this).
2. Update your LinkedIn status. You can find the corresponding text box to enter and update your status on the home page, on the left side bar and elsewhere. “Your status was updated” message should be displayed by LinkedIn.
3. Now simulate a scenario of network failure. 
[Hint: unplug your modem and connect it back OR disconnect the connection and connect again OR simply logout of LinkedIn -> hit the browser Back button -> Page Refresh (F5) OR use your own ingenious method to simulate a network failure.] 
I had a REAL network failure and when I connected back to the internet I saw this rather confusing LinkedIn screen (please refer the screenshot) that displayed on one hand that *my* status was updated and on the other hand asked me to Join/Sign-In to LinkedIn. This is same as asking a guest at your door to come in and take a seat in your living room, offering her with coffee, chatting with her for a while and then asking her "do I know you?"!
[click on the image for an enlarged version]
What do you think? Is this a Bug? Feel free to share your opinion by commenting below.
P.S. If you had experienced such a bug?/not-a-bug? situation, feel free to Contact Me with the details (if possible screenshots) and I will try to post it on Software Testing Zone with your name.
P.P.S. This “Is this a Bug?” series is inspired by Ben Simo’s Is There A Problem Here? Blog. If you liked this post I recommend you to visit Ben’s Blog as well. Chances are very high that you would like it.
Happy Testing…