December is more than half gone and we are getting to the end of the year.
In the spirit of On-Going-Improvement and the art of Good Retrospectives I decided to take a look back at these past 12 months and make a list of what I’ve learned during this year that’s coming to an end.
1. It is hard to be critical and have a good perspective of your own work. For the first time I started writing customer-facing code (instead of the small programs I used to write for my own use).
Up to now I never understood why a programmer could not test his own work and find all the bugs in the product in the same way we testers do.
Now I know we humans have an unexplained cognitive bug in our heads that blinds us from looking at our own products from different angles and perspectives, and from fully criticizing our own work. (I think this is the same cognitive bug that make us see our children as perfect).
2. We are not being paid to test!
As I worked mainly with Higher Management this past year I understood that in their eyes we are getting paid to provide Testing Intelligence ™ and to help the Organization make the right decisions (about the Product under Development and the Development Process).
Taking the lead from a post in QAForums, if you can do your work using your clairvoyance powers you might be doing a better job than the rest of us who need to calculate risks, run tests and report defects in order to achieve the same results.
3. The customer is always right, so make sure you know who you are working for…
Since we are paid to provide decision-making information to our stakeholders it is imperative to know who are these people, what decisions they want/need to make, and what information will help them to make it.
It is important to do this before you start working hard on gathering the data in order to make sure you will have all the inputs required to reach and compile the information you need to provide.
4. You need to cover your basic processes
At the beginning of the year I did a consulting job for company trying to fix its process.
Even as they started showing me graphs with outputs and defect curves it became obvious that they where missing some important stuff at the beginning of their input-chain.
We worked on how to plan their testing project and make correct risk assumptions, on how to re-shape their bug life-cycle, and finally on how to manage their testing-cycles.
By then it was obvious they understood what needed to be done in the reporting and output sides of their Organization and my work was done.
The moral of the story is that if the basics of your work are crooked, their is no way the output of your project will be OK.
5. Look for Quick-wins and Low-hanging fruit
Many times we can do a lot of good without too much effort if we concentrate on finding the data and information that is already been gathered by our processes.
I wrote about it on this article about improving your process with the information that you are already gathering as part of your bugs.
There are always many ways of reaching the same conclusion, you will look better in the eyes of your management if you do this using the most efficient way, and not by creating new mind-bobbling algorithms based on fuzzy-logic and complex extrapolation curves.
There were many other things that I learned, but these were the top-five.
There is an additional thing I learned that is not testing-related but I will still write it here since it was the most important thing I learned this year:
Trust your instincts and move forward as soon as you think you should. Sometimes we wait, to think and re-think all our possible steps, and by the time we start moving we already missed the opportunity we had.
Life is not a chess-game, it is easier to correct your wrong moves than to regret the moves you didn’t make.
Have a Great New Year and Seasons Greetings wherever you are and whatever you are doing!!
Practitest is an end-to-end test management tool, that gives you control of the entire testing process - from manual testing to automated testing and CI.
Designed for testers by testers, PractiTest can be customized to your team's ever-changing needs.
With fast professional and methodological support, you can make the most of your time and release products quickly and successfully to meet your user’s needs.