Quote:

I love deadlines. I like the whooshing sound they make as they fly by.” – Douglas Adam

Wednesday 31 December 2014

DEC 31st and a Tester's thoughts



Hai! Hello!

Today is December 31st and its time for us to bid farewell to the current year and start the party to welcome new year.

Since my childhood, this day has been an exciting day for me, as it comes with many emotions and feelings. This day speaks about both the past and the future. While this day is to recall the memories of the past, this day is also to hope and dream about the future.

This day takes me back into the journey of one long year and recalls the memories, challenges and all the great moments. It also keeps me excited about new days of a new year to come.

On this day, I see a businessman thanking his clients for this year, and also wishing to add many more in the new year. I see a student thanking his teachers and friends for this year and wishing to be more successful in this new year. I see many more professionals with a similar kind of emotions.

As a tester, I too have many people to thank for this wonderful year of testing journey and wish for a happy new year.

Thank you Testers

Dear testers, I am nobody without you. I always believe that great work comes from team work and its you who make a good team player. Just like every year, while the testers at my office are helping me to do things better and deliver better, the testing community around has been caring and affectionate to exchange the knowledge and make me a better tester everyday.

Thank you for a fun'test'ic year. I carry the joy of working with you in all the challenging times and cherish the moments of success.

I wish to continue this awesome journey and test better and better in this new year.

Thank you Devs

It was my pleasure to test the greatest of the applications developed by you in this year. I really had an awesome experience working on tough jobs and cherishing the success stories of our releases. The fun time and the learning journey with you was really great this year.

Thank you for all the assistance and a team work for making the big things happen.

I wish to continue to work together with you, to build many more awesome things in this new year.

Thank you Managers

All that we achieve is your planning and execution. This year, I am glad that I got a chance to work under different versatile and dynamic leaderships which has played a great role in shaping my attitude and skills. The kind of projects I had worked under you demanded the best of the skill set and I am glad you could extract it out of me.

Thank you for trusting me and believing in my skills. Thanks for mentoring me at tough time and encouraging me to test better.

I wish this new year gives us many more opportunities to work together to deliver the best of the products.

Thank you Business

Business has been the key factor which puts across new challenges and opportunities. This year, it was really great to see the kind of business importance tasks I had been through and absolutely they have shaped me into a better player.

Thank you business team for bringing in such a challenging work across. Thank you for the amaing opportunities you have provided us. While the roots were challenging, the fruits were always sweet and cherishing.

I wish you a great luck in bringing in more business and wish to be a part many more success stories along with you.

Thank you Blogging world

Blogging world has been my greatest source of knowledge. I cherish every thing I receive and share through this media. This year, I could take out time to write few articles which showcased a better writer in me.

Thank you readers for all the care and support you shower on me. Be it a smallest of the contributions, I am always welcomed here and supported.

I wish to write many more good posts and learn from your feedback in this new year. Wish you all a great reading and wish to see many more interactions with everyone of you through this media in this new year.


Thank you one and all, and wish to hear many successful stories of your new journey in this new year.

Let the party begin \m/_0_\m/


HAVE A HAPPY AND AN AWESOME NEW YEAR 2015 



Tuesday 16 September 2014

Two years old Tester and the Story of Change


This day, September 17th 2014, I complete two long years of my professional life and became a two years old Software Tester. On this occasion, I have something to recall for myself and share with you all.

Why do I want to write today?

Though I have been growing old every year, though there might have been some or other changes in my life, I was never surprised with what was happening to me. May be I neither noticed nor was I conscious about them happening. I am surprised and equally happy about the change I have brought to myself in this past two years and I have been consciously observing it.

My last two years of professional life and this stay in Moolya have made me a better person day by day. The influence of Moolya and the people at Moolya have been great on me, and the echo of quotes from 'Steve Jobs' and the movie 'KungFu Panda' at Moolya, have played a wide role in making me a person what I am right now

I wanted to write, not a experience report, but a story of change and the process of learning and unlearning, that I have been through. 

I wanted to write, because I was recalling this story of change in me. I wanted to write, because I wanted to share, if this story of change might trigger something worthy in you too.

The Story of Accepting Life

There are no accidents

Living the life of a student with too much of dreams and wishes, and less efforts, I somehow had been expecting a lot from my life. I had days of disappointments, repents, confessions, depression and hatred. I had a habit of cursing myself and worrying about the reasons.

I first learnt to accept my past. Unless you accept what has happened to you and let it go off, you can't make a move forward, because your mind shall always stay in past and you are not allowing it to live the present. I have understood this truth. Yes with great difficulty and I am still practising it. This is bringing me more peace and allowing me to live the day better instead of weeping about yesterday.

'Oogway' in KungFu Panda movie says, 'There are no accidents'. Yes, I have started believing that everything in life has a reason behind it, and has got a purpose to serve. So, I just started accepting my life, instead of denying it. Accept it, learn from it, let it go off and Live a better day. 

The Story of Passion

The only way to do great work is to love what you do

Somehow I was never serious about this word 'Passion', before. May be I never knew this word in dictionary has such a great influence. I never knew this will drive a man to heights of sacrifices. I never knew this is a never exhausting fuel that keeps the journey on, in spite of food, water and air.

Two years back when I stepped into Moolya, I happened to see people uttering this word again and again. I heard stories behind the passion they had, I saw the way they enjoyed their passion, and how their passion towards testing have been driving them. 

I learnt the story of passion. Passion is something that rests within you. You got to identify it. You got to speak to yourself. You just need to analyse what you love to do, what brings more happiness to you and what is that you enjoy doing. 

I started speaking to myself. I started studying my habits, wishes, interests, views, opinions and thoughts. I recognised my likes and dislikes. I worked on what I could do better and where I would like to put my efforts. I started knowing what I love to do, and the art of enjoying while on work. I am able to define what my passion is and align my work to it.  Now I know that my urge of doing great work is possible only when I follow my passion. Day by day, I am strengthening my passion and defining it more clearly for myself, and living it to the fullest.

The Story of Vision

I want to put a dent in the universe

Right from my childhood, I somehow had this - A wish to be a leader. A desire to be a creator. A dream to stand on the top of the world and say 'Hey! Look here I am!'. So what do I do? Where do I start from? Is there any route map? What do I need? How? When? etc., etc., Too much of questions and too much of choices.  

There came a day I stepped into this awesome start up Moolya. I noticed people speaking about Vision. A vision to change the world. Oh! This was something what I was thinking about. But what is this vision? How do you decide it? What is it all about? How do I have mine?

Then I learnt the story of vision. A vision is something you want to strive for. A vision is a purpose behind your work. A vision is a clarity about what you want to achieve. A vision is a journey that you are destined for. So a Vision is that drives you towards what you really care for.

If you are working on something exciting that you really care about, you don't have to be pushed. The vision pulls you

I have identified that my passion towards my work would set a vision for me, and it shall pull me to achieve it. Though I haven't actually defined what is my vision or what is the dent that I am going to create in the universe, but I have been telling to me that following my passion and strengthening it, would help me understand what my vision is, and what dent I am gonna create.

The Secret Ingredient 

There is no secret ingredient, for something to be special, you just have to believe its special

Here are the awesome words from the movie KungFu Panda. This says you are special, if you believe in it. There is no secret ingredient other than yourself, who could make you special. You don't need any magic or miracles to happen to make you special or a hero. You got to do it for yourself. First you got to believe that you are gonna be something and you are almost there. There is no secret ingredient, its just YOU.

The one's who are crazy enough to think that they can change the world, are the one's who do

If you want to change the world, you got to think that you will do it. If you want to create something, you got to believe that you are a creator. If you want to rock your life, you got to believe that you are rocking it already and shall continue to do it. It is you who is going to strengthen yourself. It is you who is going to lead yourself. Believe in you and you shall be the magician who does all the magic to yourself.

I started believing that I am special. I started telling to myself that I am gonna rock. I somehow started loving myself and my decisions a lot. This brought more happiness to me, this brought more confidence in me, because here I am my hero and I am gonna decide what I want to be. This started mirroring my life to me and set my standards for myself, break my own and raise the bars.

Thank You Moolya!

Thank you Moolya. Thanks for telling me what does working with passion mean and what does striving towards the vision mean. 

Above all thanks for the Dragon Scroll and the Secret Ingredient in it.



Thursday 17 July 2014

Heuristics in testing


Understanding Heuristics

I have discussed about heuristics and how they help us in solving a problem in my previous post. You can go through it.

We understood that heuristics helps us in studying the problem well and aids us in figuring out a solution for it.

Why heuristics in testing?

Testing aims at figuring out many problems of the system. This includes a very exhaustive list of problems like - problems the system might face while functioning, while the user is using it, while competing with similar systems in the market etc.,

Tester while aiming to figure out these problems, has got many problems to solve for himself. This again is a very exhaustive list like - understanding the system, studying its behavior, planning the testing strategy, coming up with test ideas, finding the bugs, having a good test coverage etc.,

So here comes the role of heuristics to figure out solutions for these problems. I shall discuss here, how heuristics help tester to solve the following the following problems.
  • Solving the problem of understanding the context of testing
  • Solving the problem of building the test strategy
  • Solving the problem of generating test ideas
  • Solving the problem of buildling test coverage
  • Solving the problem of confirming some behavior as a bug
  • Solving the problem of finding bugs
Repeating again - Heuristic is an approach that could help us in solving a problem, which is fallible

Solving the problem of understanding the context of testing

Understanding the context of 'what to test?' is the first and foremost challenge a tester would face. The better understanding of the context will help the tester to test the application better and strengthen him to add the required value.

A tester could understand the context better when he is able to ask good number of questions to the stake holders. Now the problem here is 'What questions to ask?', 'How to cover all the possible questions?' etc., etc.,

Heuristics would solve the problem here. The tester could come up with various heuristics based on which he could list down the possible questions to ask. The better the coverage of heuristics, better the quality of questions, hence better is the understanding of context.

For example, 'Targeted audience', is an heuristic, around which a tester could frame quetsions. He could ask the stake holder about the type of targeted audience, their expectations, the previous feedback from them if any etc., to understand the user based context of the product.

Also, he can come up with more heuristics like 'Competitors of product', 'Business importance of the release' etc., to frame questions around them and understand the business context of the product. Similarly, he can apply this heuristic approach to get to know different other things about the product.

Solving the problem of building a test strategy

Test strategy contains various aspects of the testing activity which tester might want to consider while testing the system. It may include many things ranging from the mission of the project to the deliverables from the testing team.

The more relevant aspects you bring into your test strategy, the well equipped your testing activity would be. Here we can think of various heuristics to come up with different components of the strategy. Bringing in more and more heuristics will enrich the strategy with more possible things for consideration.

For example, we can think of heuristic 'What Quality criteria to focus on?'. This approach will help us to include all the possible quality criteria like functionality, security, performance, usability etc., that a tester might be interested to consider while testing.

Also we can think of other heuristic 'Project schedule', which would help the tester to consider things like - What is the duration of project? What are the scheduled release dates? When would the build be available for testing? What are the timelines of deliverables etc.,

You can also refer to the 'Heuristic test strategy model' designed by James Bach, for more insight on the heuristic approach in building a test strategy.

Solving the problem of generating test ideas

Test idea tells us how to perform a test on the application. Coming up with a test idea and testing the system is the major task of a tester. We try to have a good list of test ideas to test the system better. How we generate the test idea depends upon the approach or the way we are choosing to create these ideas. So, here comes again the role of heuristic methods or heuristics to help us in figuring this out.

Tester could think of heuristic ways to generate test ideas. Depending upon the context, we can come up with list of possible heuristics, considering which we could test the system. Each heuristic will help us build a bunch of test ideas around it and thus helping us to create more and more ideas from every new heuristic.

For example you can look refer this link Heuristics - User Experience Testing, which lists down few heuristics that I had come up with, to test for 'User Experience' of an application. Using these heuristics, you can generate test ideas and start testing the system.

You can also refer to the Test heuristics cheat sheet by Elisabeth Hendrickson for exhaustive list of heuristics.

Solving the problem of building test coverage

Test coverage is a track of various aspects against which we have tested our application. Having a good test coverage means that we have tested our application to a larger extent. So our next challenge as a tester lies in building a good test coverage.

The essence of test coverage lies in variety of test ideas we have. We can have varied test ideas by coming up with different approaches to build test ideas. So here again we see the need of heuristics. We discussed before that heuristics help us in building test ideas, so having diverse heuristics would help us in building varied test ideas, which in turn helps in building a good test coverage.

For example, there is a mnemonic of heuristics - 'SFDIPOT' quoted by James Bach in Rapid software testing slides, which lists down the heuristics like - Structure, Function, Data, Interface, Platform, Operations and Time to achieve the test coverage respectively.

Solving the problem of confirming some behavior as a bug

While we apply test ideas to test the application, we figure out some behavior of the system as a bug. We confirm something as a bug only when we acknowledge that the behavior is not as expected. Here the challenge is how do we confirm if some behavior is expected or not expected.

We have heuristic methods to decide the expected behavior and confirm something as a bug. These heuristics those help in confirming something as bug are called as Oracles.

For example, 'comparing the output with the requirement' is an Oracle. We can confirm something as a bug using this approach. Also our 'common sense' is an Oracle, we tend to declare some behavior as a bug using our common sense.

So better list of oracles you have got, there are more chances of solving your problem of confirming some behavior as a bug.

Of course, solving the problem of finding bugs

Keeping it short, if the heuristics you have applied so far has helped you to understand the context of testing better, build a efficient test strategy, generate good number of test ideas, have a wide test coverage, and have good set of oracles, then you are well armed and are sure to find good quality and good quantity of bugs too.

So finally solving the problem of 'solving the problem' while testing

So be it whatever problem we face while testing the system, we have got heuristic approach or heuristics to solve our problem of 'solving the encountered problem'.

More you think, more heuristics you have, and more are the chances to solve the problem.

Not to forget, heuristics are fallible

Yeah! You got to keep in mind, heuristics are fallible. Every heuristic you apply might not help you to solve the problem. Your heuristics may fail to figure out a solution.

So, every time you fail, try figuring out more relevant heuristics to solve the problem. At the end its context of problem you are going to solve matters. So, make sure your heuristics are always aligned with the context.

Thanks for reading, hope this helped you :)

Happy problem solving! Happy testing!

Thursday 10 July 2014

Understanding Heuristics

Hello!

I have been listening to the word 'heuristic' and the role of heuristics in solving the problems,  in many conversations with my testing friends, and in many blogs that I read. I have been giving lot of thought about it and exercising it in my work.

I have also noticed that many of my friends had difficulty in understanding what heuristics are exactly and how are they helpful in solving problems.

So here I come up with a small article that might help to understand heuristics and know if they help in solving problems.

Let us first look at the google meaning of this word Heuristic











From the above definition we get that, Heuristic process - enables us to discover or learn something - by ourselves. So, by making use of heuristics we will be able to discover a problem or learn about a problem ourselves.

Let us look at another definition and understand this better



So heuristic is a - rule of thumb - educated guess (a guess with some sense behind it) - that helps us in searching a solution to a problem - which is difficult or poorly understood

Now lets look at this wiki definition

Heuristic (/hjʉˈrɪstɨk/Greek: "Εὑρίσκω", "find" or "discover") refers to experience-based techniques for problem solving, learning, and discovery that give a solution which is not guaranteed to be optimal

So heuristic is a - experience based technique - to solve a problem - to learn a problem - to discover a problem - to give a solution - which is not guaranteed to be optimal


Combining all these, let us say

Heuristic is a - technique, approach, guess - to solve, learn, discover - a difficult or poorly understood problem - which might not be guaranteed to be optimal

Putting it in the simple language, we can understand heuristic as - any thought, idea or approach that helps us to find out or figure out something.

Let us take some daily life examples and understand heuristics better.

'Trial and error' - Heuristic

We all must be familiar with the 'Trial and error' method.  While applying this method to solve a problem, we assume a possible solution and check if it is feasible. If it fails, we come up with another trial and check again. We keep making trials every time we fail, and we may or may not find a solution.

So here 'trial and error' is an heuristic method, though every attempt of it din't promise us a solution, it has helped us in figuring out some or other method to try for a solution.

Turn on the tap - exercise

Let us take an exercise where you are asked to turn on the tap to wash your hands. Also let us say this tap is of new design which you haven't seen so far. By looking at it you could analyze that it has a valve that is stopping the water flow and all you need to do is move the valve in some direction so that water flows out.

Now the possible actions you might do is - turn it to right (may be most common practice), turn it to left (immediate alternate guess), lift it up, push it down etc., While you are doing these, the tap might turn on at a particular action or it might not.

So you have been trying to open it with some possible guess you could make out of whatever logic or whatever knowledge you had on it. Every trial of yours was again a heuristic to open the tap, which failed sometimes and which might have passed another time.

So, heuristics help us to solve a problem. How?

Looking at these definitions and examples, we can say that heuristics help us to solve a problem. Let us analyze how are they helping us to solve a problem.

By looking at the behavior of the system each time a heuristic is applied - we get a chance to study the system, we get a chance to gather more information about the system and get to think about more possible ways of solving the problem. So every time a new heuristic is applied, we get to dive more deeper to solve the problem.

So as we progress, every heuristic might help us in building new heuristics, and might help us in solving or studying the problem much better.

So, heuristics are fallible. How?

After reading all this, we understand that heuristic is not a formula that would guarantee us a solution. Heuristic is an approach that we build to try solving a problem. Heuristic is an idea that we have, that we think, that we assume that, that could solve a problem.

As - assumptions, ideas, approaches - have a probability of failing, so are the heuristics. They might fail at times and they might pass at times.

So heuristics are fallible.

So, my article is an heuristic. How?

I have tried my approach to explain you about heuristics and make you understand. I am not sure if this has helped you or not, but surely it might have helped you to solve your problem of understanding heuristics.

I am sure if you can find out more heuristic ways to learn heuristics yourselves, you will surely understand what heuristics are.

I would be happy if my heuristic article passed to help you, else please come up with some heuristics to help me understand heuristics better.

Thanks for reading :)

Tuesday 31 December 2013

Wish you a Fun'test'ic New Year 2014


Hola!

On this party evening, before we step into the new year and enjoy a beautiful tomorrow, here I recall few highlights of my 'Testing' life in 2013, and thank every one in the industry for adding awesomeness :)


Bloody Tester

Author! Me! Wow! This was one of the finest things that has ever happened to me. I had developed interest towards writing since last year and this year I turned out to be a blogger and started writing posts on Testing.

I was glad and proud that my article on 'Heuristics - User Experience Testing' was well appreciated by the people of Industry and this made me learn more about UX. I am sure to come up with many such articles, especially on UX.

I specially thank Santhosh Tuppad , Parimala Hariprasad and Satyam Dixit for encouraging me to write and guiding me all the time. I thank all my readers for helping with their valuable feedback and driving me to learn more.

I wish I could have been more active on blogging and write more stuff. Though I had plans of writing on many occasions and subjects, I could not take out time for it and this has always been disappointing for me.

Testing Circus


It was wonderful to get associated with Testing Circus this year. I have been a regular reader of testing circus since one and half year and I await for its monthly edition, eagerly, every time.

The day when I started reading this, I had no dreams that my article would be published in it and I could see my face printed on it. It was wonderful to enjoy the pleasure of a contributor to this highly appreciated magazine. I was extremely happy when my article got published in the annual edition of Testing Circus in the month of September.

You can download the magazine here [Link]

Thank you Parimala Hariprasad for pointing out my article to the Testing Circus team and exposing my work to a larger world and Arthy Chandru for reviewing it and making it look more beautiful.

Thank you Ajoy Singha and Testing Circus team for the opportunity and Support. Looking forward to contribute more.


Moolya 'Cool'ya

It is always fun to work with some of the coolest testers of the Industry. I am glad I completed one great year at Moolya and still having the same enthusiasm that of the first day. Be it Anniversary Celebrations, music time, conferences, sessions, Moolya Tech Talks, parties etc., I have been enjoying the pleasure of working here and I treasure all the Fun'test'ic moments of this year.

This year has been more awesome working in some challenging projects that questioned my ability and helped me improvise my testing skills.

On the other side of coin, I head the Corporate Social Responsibility of Moolya and it was really awesome to lead some charity activities on the office floor and make good contributions to help the Orphans of Ashraya Trust.

Thank you Moolya for believing in my skills, attitude and passion. Thank you Moolyans for all the support, love and affection.


Pen Friends


I am always active on social networking sites and I enjoy making friends and getting connected. This year I had a chance to get connected to some cool testers of the Industry, and interact with them regularly.

Twitter and Facebook have become Integral part of my life and the addition of new friends has made my social networking life more beautiful.

I thank everyone who respond to my testing updates and discuss on my testing queries. Looking forward for many more interactions and eagerly looking forward for a chance to meet you all in person. Thanks for the knowledge and time.

Bye Bye 2013, Welcome 2014

Everyday has been new and added more value to my testing practice. I am happy to end this year this way and I couldn't have asked god better than this, though I wish more wonderful things to happen next year.

Wish you all a Happy New Year and may 2014 surprise you with much better experiences.

\m/ One Life, Party Harder \m/


Friday 9 August 2013

Why should we blog?


Hello readers,

Here I come with some interesting stuff to read. After I wrote one or two posts, my friends around me, who weren't aware of blogging, were curious to know the reasons behind why I started blogging!

I started answering everyone with some or other answers that came to my mind. To be Frank, I started rethinking on why should I blog! Then I thought why shouldn't I write a post describing my opinion on why should one blog!

Before you read, let me thank you guys for being my readers and encouraging me to continue blogging :)

Why should we blog?

Courage

'Courage is what it takes to stand up and speak' 

We can think of many ideas, but to speak and discuss about the ideas we need courage. It requires a lot of courage to put forward an idea in front of group of people and allow yourself for discussions. This in turn gives rise to gain courage to answer the questions, admit the comments, debate, and conclude. So, in short you end up gaining more and more courage and your courage is multiplied.

Self Confidence

When you gain Courage, self confidence is an add on. Whether you are right or wrong, you gain confidence while speaking about what you know. If you are proved right, you end up multiplying your self confidence. In case you were wrong, you end up gaining more confidence with lessons learned and knowledge gained.

Social Networking

'Social networking helps reach people easier and quicker'

In this electronic world, you are exposed to hundreds of people sitting thousands of miles away. Your words on this media speak more and reach farther than face to face talking, conferences and sessions. You got an opportunity to interact with the millions of readers on the web. You get close to others when you interact more and it would end up building good relations across.

Resources for Learning

"Human resources are like natural resources; they're often buried deep. You have to go looking for them"

Its important for a good learner to have the trait of extracting the available resources to the best and exploring to gather more and more resources. Being a blogger you expose your knowledge to the world  and you build a platform to invite people for mutual learning. This would serve as a good platform to fetch resources for your learning.

Gather feedback to re-think

The important aspect of learning is to invite feedback on your work. More you gather the feedback, more brainstorming you do. Its always essential to re-think our understandings to enhance the quality of learning. Also you get to know the opinion about the perception of the industry.

References

While we search for various resources to learn things, we need to make sure that we treasure our learning and experiences for our future references. Moreover it serves as a reference for others too. We can get back to our past at any point and refer what we did. It serves as a book/collection of our work. It will be easy for us to guide someone to refer on so and so topic instead of recalling all the things. Blogging makes sure that we don't miss any idea in the future and serves as a good reference.

Enhance communication skills

"Practice makes a man perfect"

How effectively we communicate is what that represents you. You got to work on your communication skills and enhance your proficiency. Writing a post and putting it in front of hundreds of people will make you prepare yourself better. You will be more cautious on what you write and you get an idea on how the world is perceiving your writings. This is obviously a good way to train yourself to be a more proficient writer.

Record your work

"Why don't we record our ideas and testing stories and treasure them forever?"

We do some awesome work, we crack many tough locks, we come up with different strategies, we have unique approach, we have unique style of testing etc., What is the use if we don't treasure all these in the form of writings? How will our future generations get to know about the awesome stuff we did? Its well known that we are aware of many events in the history through various scripts, biographies and epics written. So why don't we record our ideas and testing stories and treasure them forever?

Show your existence

"The industry will miss the opinions/suggestions/experiences of a tester if he/she remains quiet"

Its always essential that you tell the world what you are. Else, your presence will go less noticed or unnoticed sometimes. The industry will miss the opinions/suggestions/experiences of a tester if he/she remains quiet. Its important for the industry to know about the existence of the personalities who can share their ideas and help others in understanding them. By doing so, you are not only benefiting yourselves but also you are becoming a benefit to others.

Promote Yourself and your organization

I am not right, if I don't speak about the promotion aspect of blogging. Existing in this competitive world, we need to utilize every single opportunity that will promote us and our ideas. In fact it is our basic responsibility to let the world know what we know, and to create a platform to invite the opportunities. Also, its our duty to show the awesome work being done and awesome people being produced by our organization

Guess these reasons are enough for one to start blogging, and for the existing bloggers to continue!


Thank you blogging world! Happy blogging!

P.S: I owe credits to all the people who influenced and encouraged me to write blogs. Few quotes in this post are taken from various sources. The content of this blog may resemble the lines I have read in some other's blogs. I also thank my buddy Satyam Dixit for helping me in bringing this post to your eyes!

Wednesday 7 August 2013

Heuristics - User Experience Testing


Hi People,

Its been many days I have been thinking to write something. I have made enough drafts and failed to post them. I don't know if it is this difficult to post the drafted thoughts. Finally this is the one that I am bringing to your eyes.

Through this post I am making an attempt to throw some light on one of the essential 'Quality criteria' to be considered while testing any application - 'User Experience'. 

I have tried my best to narrate what is User Experience and came up with a list of  few heuristics that you can use while testing for User Experience.

Why is User Experience Testing important?

Scene 1: You are hungry. You go to a restaurant, order your favorite food. What if it is served in an untidy plate?

Scene 2: You need to travel and reach the office in time. You caught the bus at right time and it is going at a right speed. What if the bus is crowded?

Ohhhhh crap!  

This is what we say when we have a bad experience. The question here is, why is that you are not satisfied even though your purpose is met. So, there is something else that bothers you and keeps you unsatisfied, though the requirement is fulfilled.

So similarly, we should notice that, any application, be its requirements are met, it is not accepted by users, unless it provides good User ExperienceSo, here arises the need to not to restrict the testing to requirements alone!

Heuristics:

Before I list down some heuristics, let me define 'Heuristic' for you ~ 'Heuristic is an approach to find a bug which may or may not be fruitful'

In fact, as the only fundamental aspect of any product being 'Satisfy the user', every heuristic we use while testing adds up to User Experience testing.


So, Here is the list of few heuristics, one could use while testing for UX (I say them as heuristics because I am not sure would they end up fruitful wrt to UX testing, as the context differs every time)

Emotion

Human emotions are what that play an important role to decide the UX of the product. Its all about how does the emotions of an user change while using the application. The app needs to be tested considering various aspects of the application that may turn off/on mood of a user. Example: Feel and Flow of the app, UI aspects, etc

Expectation

User expectations are the deciding factors. Keeping in mind the brand of the app, kind of app, success of previous releases of the app, users might be having some expectations. If the app doesn't meet the user expectations it may turn out to be a failure.

Relevancy

User shouldn't experience any irrelevant or undesirable experience. To explain this better let me take an example of error messages. The error messages shown should be relevant with the error occurred. The User should be able to understand the error on reading the message displayed.

Audience

While testing we need to test the app keeping in mind the type of audience who are going to use it. Different audience look for different things in the app. For example what a kid expects is not the same as an old man needs. So testing with the mindset of right audience will help a lot.

Content

The content of the application should be relevant and appropriate to the customer's needs. It also should be according to the business goals. The content should be structured in such a way that the user has a good experience while reading it.

Competitor Analysis:

In this competitive world, you can stay ahead of your competitor by providing better User Experience. Considering the User Experience with other competitive applications, we can end up with bunch of ideas to test upon.

 Reviews

Considering the various reviews given by the users for the same / similar products, we can come up with a bunch of test ideas that could help the application to overcome the failures if any. Reviews act as a good mode to scale the User Experience of the application.

Branding

Though the branding is always essential in any application, it shouldn't dominate the content and annoy the user. Also, in contrast, we need to make sure enough branding is done. So, tester can keep this in mind to generate more test ideas.


Remember, while implementing all these heuristics, we assume the behavior of an user. So, we end up coming up with the behavior what we (Tester) expect than what others expect. We need to make an attempt to discuss the behavior of an user at every step with fellow testers and take in the inputs.


Thanks for reading, guess this was helpful. Do drop in some comments that would help me to learn better so that I could help you more, again and again!

Happy Testing!