Wednesday, December 1, 2010

Essential guiding principles - QA Automation Framework

  • Test automation is a fulltime effort, not a sideline.
  • The test design and the test framework are totally separate entities.
  • The test framework should be application-independent.
  • The test framework must be easy to expand, maintain, and perpetuate.
  • The test strategy/design vocabulary should be framework independent.
  • The test strategy/design should remove most testers from the complexities of the test framework.
Wonderful points above. More details @ link below

Sunday, July 4, 2010

"Right thing all the time"

Doing the right thing all the time. Every minute, every day, thruout the year. This is the hidden meaning behind the saying - 'Right thing @ Right time'. When you do right thing all the time, automatically when right time comes, the results accelerate. People call it luck. :)

Saturday, July 3, 2010

Experienced power of Automation Testing!

Recently I experienced a wonderful effect of Automation Test Suite. I think I'd like preserve this experience in the form of few words and share it with friends.

Present Scenario:
Cycle 3 Started beginning of this week.
The 26 Test Sets totalling 3000+ automated test cases started to be executed.
Test data was prepared as a pre-requisite by SME manual testing team.
The very first day of Cycle 3 execution the application which was nearing UAT completion, started crying.
23 Critical, High and Medium defects were logged the very first day.
The management lost confidence in the build.
No Go.

Scenario a couple of months back:
Automation suite creation in progress.
The scripts are failing due to problems within themselves.
The automation review process is identifying a lot of issues within scripts.
The naming conventions are not being followed completely.
No test data management strategy is documented.
Testing team starts estimating 100% manual regression cycle.
Management sees low confidence in automation testing.

How did the perspective change within a couple of months?
Results.

Business looks for results to accept success on ROI.
But someone in the top leadership had the "vision" to be patient and invest in building an Automation test suite. They accepted waiting and waiting for the build and review cycle of automation test suite, to be complete.

Recently, just on click of a button the 3000+ test cases drilled thru the huge complex application with a huge business value. Helping the leadership to decide quickly not to launch the product at this point in time, and wait for the desired quality in the product to be built.

Friday, April 16, 2010

Monday, April 12, 2010

Be A Witness - Always

Let not your 'I' get identified with your body and mind. This de-identification is meditation.

The Buddha was once meditating. His mind started creating problems and distracted him from the path of enlightenment. It was as though hundreds of horses were galloping through his mind. But the monk remained a witness and did not identify with fear. His mind turned into thousands of elephants tempting him to identify with them, but again Buddha was just a witness... he saw through the mind's game. His mind became a loving deer but still Buddha remained a witness. He did not get tempted.

Finally, his mind turned into a loving child drowning in the ocean, seeking his attention. Buddha, out of compassion, merged with his thoughts and stretched out his hands to save the drowning child. At once, the child turned into a monster and started pulling Buddha to the ocean. Buddha realised his folly and left the monster and continued being a witness. The monster turned again into a child and started pleading for help.

Buddha continued his meditation of being not participating but being a witness. The child drowned in the ocean and emerged as an enlightened mind, reflecting Buddha's mind.

Learn to be a witness to your thoughts and feelings. In the witnessing consciousness, there is no identification with anything. Identification leads to misery. Worry is a form of identification. Literally, worry means twisting and tearing. Have you observed that when you worry, your moving centre gets twisted? Negative state of worry depression or fear... shows up strongly in the form of twisting one's body-moving centre.

I read the above extract around 6 months back. And I did not totally understand it then. But somehow it made an impact on my mind, because I tried to understand it but I couldn't make much sense of it.

I recalled it again and thanks to Google, it acts like a copy of your mind. You think it, you get it.

What I get it from this now, in my present state of my mind is, learn to dis-associate actions with results. The actions may include anything like, speaking to someone, suggesting to someone, participating in discussion, helping someone, asking for help,... You may get expected results or unexpected reactions. Do not get attached to the results or reactions. Disconnect the actions from results.

Sounds pretty far off. It is easy to write / read / discuss / preach, but difficult to practice. But practice make a man...

My take is God has made human beings as super living beings. The ultimate super powers. S/he can achieve anything desired. Just desire.

Extract from:

Wednesday, February 17, 2010

The Pure Desire

I wish the writer in me is able to express my thoughts like the one below. Never mind, till there are people doing it for me. Thanks to T.O.I. writer who has written the beautiful article below, that truly intercepts my feeling...

...
There are four types of people. Most belong to the fourth category. Caught in the net of maya, delusion, they are oblivious of dangers. There are some who have awakened to a higher dimension and are aware of life’s pitfalls. They make sincere attempts to free themselves. They are the yogis. A few, the sanyasis, are able to free themselves. Rare is the person who, even while living in the world, remains out of it - ever free, the nitya mukta, the jnani.
...
A jnani is a dynamic actor but maintains his objectivity right through. He thinks “I do nothing at all” while actions are going on.
...
Renunciation is not life denying, it is life enabling.
...
A sportsperson, for instance, who turns his back on the trophy gets the trophy and enjoys the celebration.
...
Renunciation is not keeping away and living a life of seclusion. It is learning to live a life of inclusion by weeding out that which comes in the way of a fulfilled life. Ultimately, renunciation opens the doors to realisation.
...

Complete extract at below link:

The question I have after reading this and anyone may have, is how do I get there? I think only a pure desire is enough to take us there. Desire to reach the level of Jnani and feel the joy of this beautiful world created by HIM.

Bidding for Agile SCRUM projects

I received a call from one of my friend asking if I had any idea about how to decide the cost of a project if it needs to be used for bidding for an Agile SCRUM kind of a project. I was puzzled at the thought at that very moment. I directed him to one of my friend who is an expert in SCRUM.

But, later I searched about this on internet and found few good posts pointing to some solutions and thoughts regarding the same, as following --

....the price for the project was fixed, but the features themselves were negotiable according to rules agreed to in the contract. The features were broken down, and time was tracked on each feature. Whenever the development team took longer than anticipated, the client removed scope. Conversely, when the development team finished a feature early, scope was added. In order to add incentive, effort added or removed was discounted by 50%. For example, if the development team finished 2 days early, only 1 day of extra scope was added. On the other hand, if the team finished 2 days late, the client only removed 1 day of scope. The contract actually specified the rules by which scope was added or removed.....

More detail at -- http://www.codesqueeze.com/how-to-sell-agile-to-fixed-bid-contract-clients/

Additionally, TDD, test coverage reports bundled with CI are key to achieve the required quality and agility during the project execution.

Wednesday, January 6, 2010

Pomodoro

I just started using a useful time management technique and would like to record some details about the same for sharing and future reference.

The Pomodoro Technique™ is a way to get the most out of time management. Turn time into a valuable ally to accomplish what we want to do and chart continuous improvement in the way we do it.

The basic unit of work in the Pomodoro Technique™ can be split in five simple steps:

  1. Choose a task to be accomplished
  2. Set the Pomodoro to 25 minutes (the Pomodoro is the timer)
  3. Work on the task until the Pomodoro rings, then put a check on your sheet of paper
  4. Take a short break (5 minutes is OK)
  5. Every 4 Pomodoros take a longer break

http://www.pomodorotechnique.com/resources.html

Try it!!!

Tuesday, January 5, 2010

Lean principles

While going thru a book on Lean Principles by Mary & Tom Poppendieck, I want to preserve quick notes, which form the essence of the lean approach to software development.

1. Eliminate waste - Whatever gets in the way of rapidly satisfying a customer need is waste
2. Amplify Learning - Encourage learning and discovery instead of first time perfect approach.
3. Decide as late as possible - In an evolving market, keeping design options open is more valuable than committing early.
4. Deliver as fast as possible - Design, implement, feedback, improve. The shorter these cycles are, the more can be learned.
5. Empower the team - Involving developers in the details of technical decisions is fundamental to achieving excellence.
6. Build integrity in - integrity comes from wise leadership, relevant expertise, effective communication, and healthy discipline; processes, procedures, and measurements are not adequate substitutes.
7. See the whole - When individuals or organizations are measured on their specialized contribution rather than overall performance, suboptimization is likely to result.

Reference: http://www.poppendieck.com/ld.htm