Ever since i started writing on my company's blog site, i haven't been spending time here. I request all obist readers to read  my articles here.

My Scrum Problem...

With my present scrum model, I am finding a classic problem of requirements Vs scrum model. We are dealing with a web application, in which a new theme/skin is proposed and stories are built around that.

The problem comes when the designer thinks of changing the present proposal and proposes a new skin/theme. With this changes, the previous stories are becoming invalid. 

The real problem starts , when QA defers verifying/closing the defects from one sprint to another due to lack of time. I know this is not the correct method in sprint, but QA just can't do it.This deferring happens especially for defects araised at the end of the sprint in one particular story.

I have list of defects which are invalid now; Well, QA can close them as invalid but lot of time is getting wasted while QA tries to close them in next sprint where QA has to discuss with dev before closing each defect. QA often gets message from dev such as "hey those are invalid defects due to yesterday's change'! We are not going in that path" while trying to reopen the defects. The entire scenario is chaotic. 

I am not sure , whether this is normal in scrum or something fishy.. Solution should be from Scrum Master or from Product Owner

Agile for a Large Maintenance Team....

Going Agile...

Our whole company goes Agile, indeed a great thing, but I personally feel it as a challenge to change. There are many blockers , sorry, impediments..

a.My team is a very large team - 16 Testers and 10 Developers
b.My team has been split between Chicago and Bangalore (both developers and testers)
c.My project is a legacy project and for every release, we have 75%bug fixes and 25% new functionalities
d.As a typical large, legacy project, we have such a huge(sic) platform matrix , which means, there may be situations, where Developers have lot to code, and
its a easy job to testers, in other hand, sometimes, Developer has less code and tester has to put lot of work. Managing this is challenge
e.Automation is very lesss in this project (duh) and no comments
f.Who could be product owner as none of them 'owns' anything here in bangalore. Real decision maker (Program manager) sits in Chicago.
g.and so on...

Is it worth going scrum??!! How to trim the whole thing..???????



We did a virtual booth this time at STARWEST 2012. At hindsight, the decision made sense as i did see not many companies had come over this time for the event. The expo primarily belonged to automation tool companies like Ranorex, TOSCA Suite, IBM Rational Suite, QMetry and others. CTS and WIPRO had their booths in the expo area. UTest seems to be garnering a lot of attention though i am not sure if the model is working for them effectively.

Attended Frank Cohen's(Push2Test) talk on "The Missing Integration at Best Buy: Agile, Test Management and Test Execution". Met Scott Barber and exchanged pleasantries. Gave my ITP(Industry Technical Presentation) on "Mobile, Cloud and Agile - Wearing the QA Head's Hat". James Bach was not seen but Jon Bach had a Keynote session on Oct 1st. Jonathan Kohl gave a Keynote speech on "Tapping into Testing Mobile Applications" which were later referred to in some of the technical presentations that happened on Mobile later.

Couple of sessions that i attended on the Mobile Testing front were good though i was able to see that the presenters were not able to clearly indicate a tool/approach to testing of Mobile applications considering the fragmentation involved with respect to Native/Web, Devices etc. 

Behaviour Driven Testing

The difference between Behavior-Driven Development and testing:

This is a BDD scenario (from Dan North, a man I respect and admire):
+Scenario 1: Account is in credit+

Given the account is in credit

And the card is valid

And the dispenser contains cash

When the customer requests cash

Then ensure the account is debited

And ensure cash is dispensed

And ensure the card is returned
This is that BDD scenario turned into testing:

+Scenario 1: Account is in credit+

Given the account is in credit

And the card is valid

And the dispenser contains cash

When the customer requests cash

Then check that the account is debited

And check that cash is dispensed

And check that the card is returned

And check that nothing happens that shouldn’t happen and everything else happens that should happen for all variations of this scenario and all possible states of the ATM and all possible states of the customer’s account and all possible states of the rest of the database and all possible states of the system as a whole, and anything happening in the cloud that should not matter but might matter.

Do I need to spell it out for you more explicitly? This check is impossible to perform. To get close to it, though, we need human testers. Their sapience turns this impossible check into plausible testing. Testing is a quest within a vast, complex, changing space. We seek bugs. It is not the process of  demonstrating that the product CAN work, but exploring if it WILL.

I think Dan understands this. I sometimes worry about other people who promote tools like Cucumber or jBehave.
I’m not opposed to such tools (although I continue to suspect that Cucumber is an elaborate ploy to spend a lot of time on things that don’t matter at all) but in the face of them we must keep a clear head about what testing is.


I read this article from James Bach's site 6 months back. Why i am posting this here now? Because i am currently managing projects in my unit that use Cucumber, RoR(Ruby on Rails), JRuby as part of the BDD approach. :-))

Test Coverage - PICT Tool from Microsoft

A year ago, I wrote about Pairwise Test Case Generation tool here. Now , somehow that tool was not available (atleast for free) and I searched for another pairwise generation tool and I got it too.. It is from Microsoft and you can rely it 100% and it is much more matured than the previous one.

This tool, by Microsoft, consist of a text file input and almost having a mini language with which we can form complex conditions in our Test Coverage, for e.g.

(i) We can give weightage to factors, In other words, IE(10), FF(5) means, Internet Explorer has more weightage than FireFox.

(ii) We can give conditions such as

IF OS = WIN7 THEN OFFICE<>2003 (means, we dont have the test environment of Office 2003  Windows 7 Operating System) etc.

Google for PICT tool from Microsoft site.

A Simple text file and a command line tool will give you a optimum test coverage matrix.

I am here mentioning a sample input file

# Sample Input File
# A hash at the beginning makes the line as comment
# My Test Coverage is across Operating Systems (OS) , Browsers , MS Office Versions, Databases across servers and clients
# Here is the sample file

Client_OS: Win XP, Win7, Redhat
Server OS: Win 2003, Win 2008 R2, HP_UX
Database: SQLServer(10), Oracle 10g
Browser: IE7, IE8, IE9, FF09, FF10, FF11
Locale: EN(10), DE, JP

IF [Client_OS] = "Redhat" THEN [Browser] like "FF??";

IF [Server_OS] = "HP_UX" THEN [Database] = "Oracle10g";


Client_OS Server_OS Database Browser Locale
Win XP Win 2003 SQLServer FF11 DE
Win XP HP_UX Oracle IE8 JP
Win7 Win 2008 R2 SQLServer IE9 EN
Win7 Win 2008 R2 Oracle IE8 DE
Redhat Win 2003 Oracle FF09 DE
Win XP HP_UX Oracle FF09 EN
Win XP Win 2008 R2 SQLServer IE7 JP
Win7 Win 2003 Oracle IE9 JP
Redhat Win 2008 R2 SQLServer FF10 JP
Win XP HP_UX Oracle IE9 DE
Redhat HP_UX Oracle FF11 EN
Win7 HP_UX Oracle FF10 DE
Win7 Win 2003 SQLServer IE8 EN
Win7 Win 2008 R2 SQLServer FF09 JP
Win7 Win 2008 R2 SQLServer FF11 JP
Win XP Win 2003 SQLServer FF10 EN
Win7 Win 2003 Oracle IE7 DE
Win XP HP_UX Oracle IE7 EN

Bug deBug Chennai