“Quality is never an accident; it is always the result of an intelligent effort.”
– John Ruskin
Oftentimes, when people think about system testing, their thought process goes something like this: “If this system has any issues we don’t know about, it’s okay because our testers will find them.” The problem with this is, if the quality of the system being tested is low to begin with, what is the point of testing? The reality is, “testing” is one of many ways of finding defects, but alone it will not get the job done. The ingredient list must also include precision, planning, strategy, know-how, which testing type to use, anticipation, contemporary process, the right people, and vision.
Quality is not just a word associated with testing, especially if you are working in the Quality Assurance domain. It is supposed to be a lifestyle, a mindset, something we do consciously, it is a vital component that every Quality Assurance resource must have. Let us not confuse quality with perfection however, instead let us level it with excellence.
In some projects I have worked on, people give high regards to testing. Test this, test that. Validate this, validate that. At the beginning, everyone is on board with “quality.” But as the actual execution comes and reality kicks in, 2-3 months of scheduled testing becomes 2-3 weeks of execution while the scope is the same or bigger and the project end date remains the same. So, what do you do then to ensure that quality is still applied in testing?
Having a process laid out from the beginning is a huge factor in the lifecycle of testing. But a strict process alone does not bring home the gold. It has to be contemporary. The key – a routine flexible enough to adjust and absorb the ever-changing dependencies and requirements along the way. Assess and adjust. Re-assess and adjust. Not just have something that is SMART (Specific, Measurable, Attainable, Realistic, and Timely), but have something that is smartER (Evaluate and Review) as testing presses on. That way, the process (and team) is robust enough to adapt given the situation, yet still has the capacity and tools to stay on course in spite of hurdles as they move forward. In other words, do not let the process drive you, but rather drive the process and fine-tune it in a way that works for you.
A few fundamentals
Does “pay now, play later” sound familiar? From my experience, this is true if you apply it in any given scenario. Sacrifice now, plan now, create comprehensive scripts now, work with the Business Analyst and Subject Matter Experts (SMEs) now, review and provide feedback on requirement documents and test cases now… and anything else that you can do now rather than later. Given what you have and what you know, doing it “now” gives you the ability to clarify issues and ambiguities at the early stage, therefore giving everyone a chance to get a clearer version of documents and dependencies to work and begin with. Doing it right the first time gives you a much better advantage and greater credibility than the opposite.
As a Quality Assurance resource, position yourself earlier in areas that you consider to have a greater impact on the overall project cycle. Set the Quality Assurance expectation and direction from the start, align yourself in analysis workshop meetings and provide timely feedback, create testing documents and templates that the team will use in uniform, prepare your defect management tool and the process that goes with it to aid in the defect cycle, statistics, and metrics when the time comes. Know the people you will be working with, partner with your dependency teams (e.g. Business Analysts, SMEs, Developers), and ensure traceability is in place. These are considerations that will help you prepare for what is coming. By doing so, it will give you more time later in the project stage to focus on things that are more important as you uncover unforeseen hurdles as testing progresses.
Think about it
Commitment is huge. Stay on from the start to the very end. Engage yourself and go all in. Get ready for what is coming.
Stay connected with the big picture. Always go back to the overall project plan and don’t lose sight of the reason you are doing the work in the first place.
Know your purpose. Contemplate why you were brought into the project in the first place. The trust that the stakeholders have in you and the quality that they know you will bring speaks volumes.
“Purpose is what keeps us focused.”
– John Maxwell
Put it into action
Don’t assume – be absolute.
Having a plan (what) and a strategy (how) in place are vital tasks in the preliminary stage of testing. It provides a level of certainty that the team has what it needs when it needs it. Ensure that your documents are not created just for the sake of having them though. Rather, ensure they serve as a map for everyone that will drive the testing cycle from beginning to end.
Don’t ignore – recognize.
Do your best to gear up for what might be coming. It’s like preparing for a storm that you’re not sure is coming. I’m not saying that there won’t be any issues as the project advances; but by preparing, we are able to minimize some (if not most) of the high risk situations and the impact of what they could have become.
“An ounce of prevention is worth a pound of cure.”
– Benjamin Franklin
Don’t give up – grow up.
Gauge the situation, assess the results, learn from failure, adjust where applicable, pick up the pieces, and go. These are some of the key things I have learned through every project I have worked on.
In closing, here’s one important thing I’ve learned through the years: it is not how you say quality, it’s what you do with quality.
There is no room for an “ad-hoc” mindset in purpose driven testing. In order to deliver success in a quality fashion, know who you are and what you have, be confident in what you can offer, know what you’re up against, set a solid foundation, and you will eliminate most of the ambiguities that are typically the cause of woe in the project testing lifecycle.
I leave you with this quote from James A. Ward: “Quality is the ally of schedule and cost, not their adversary. If we have to sacrifice quality to meet schedule, it’s because we are doing the job wrong from the very beginning.”