Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.
Who is “responsible” for quality? This is one of those interesting questions that on the surface of it seems really simple to answer depending upon your viewpoint … and yet the question itself hides a few thorny issues. Quality is not that simple. We all have the ability to add bits of quality and we all have the ability to take them away. In my opinion, there are various people who handle (certain aspects of) quality and those people are gatekeepers (for their area of quality).
There are so many role involves in Software Development Life Cycle (SDLC) and it is next to impossible to assign responsibility against all roles within the development team and this is where initiative comes into picture. Quality is one of the main factor in SDLC as it has direct relation with end users and when we speak about quality then one question comes into mind, i.e. “who is responsible for Quality?” Our understanding is, it is the job of a Software Tester. There is just no way that Testing can assure quality all on its own.
Quality is not the result of efforts of one single person. It is a combined effort of the whole team.
In general when you are working in a Development Team, many times we came across a statement like ‘I am developer and testing is not my responsibility’. Whenever I hear such statement , I recall this example from my father that “if your family has to be happy then you can’t assign a person in your family a role and responsibility of happiness and blame that person if something goes wrong”. If you want your family to be happy forever then it has to be happen with everyone participating in it!
Quality is not a one time activity. It is a continuous process.
Quality is the responsibility of everyone because no one person can successfully deliver a project by themselves. Usually, in the project world, projects are run by a number of people that are seldom from one organization.
It is imperative that each organization takes appropriate measures to ensure quality is engraved within its culture.
When quality expectations are understood by the project team; and each organization has set up in place a procedure to ensure quality control and assurance measures are taken, the project is more likely to be delivered to a better quality and hence more like to be a succes.
A simple example:
- During the Front End Loading of a project (aka. The Planning Stage of a Project Life Cycle), documents are the bulk of the deliversbles. Ensuring quality documents are submitted by the Consultant teams will definetly influence the project’s success.
- Likewise, during the Execution Stage (aka. Construction), the Contract shall ensure appropriate quality control and inspection tests are set up as it will also have an influence on the project’s success.
But is it just the Consultant’s responsibility in the first example or just the Contractor’s responsibility in the second?
I would argue it is not.
In my opinion Quality is just like Safety. Every person can contribute to having a safer construction site by identifying “near misses” or ensuring they take action when they see any unsafe act; likewise, every person can contribute to having a higher quality deliverables by understanding project’s quality expectations and delivering up to its standard.
I’ve been involved in software testing for 16+ years, working on major software implantations right across the globe, from Europe to United States, and India. Over that time I’ve seen testing evolve and go through various facelifts, but one thing is always true – you can’t have a good project without good testing!
During my stint in testing, I’ve realised something fundamental: Testers are just the information providers.
Testers alone can’t assure quality… but good testing can highlight low-quality. Through their various reports, testers provide the rest of your project with information needed to drive a quality solution.
Testing will never fix problems itself, but good testing will:
- Accurately relay the status of a given solution at a given stage of development
- Provide development with target areas to focus their efforts
- Let the business know if the project is on track, or not
- Let training get their ducks in a row ahead of the roll-out
I want to stress; you can achieve this with good testing. That means the right tools, correct coverage, appropriate test conditions, efficient prioritisation, and robust strategy.
It is not enough if one department or one person who is in charge of quality, works towards this. To achieve the goal of 100% perfect quality every employee connected to the company have to do their work on time, in an accurate manner.
I don’t mean that everyone needs to refocus on quality as a number one priority. Rather, other teams should work closely with the testers to understand the information and what to do with it. Despite what a lot of you think, testers aren’t the enemy. Other teams can and should use their information to make their own lives easier.
Accuracy of data and punctuality in the data delivery are very important aspects when it comes to proper Quality Management System.
As Aristotle has rightly said “Quality is not an act. It is a habit.” It has to become a way of life. Only if Quality is inculcated in the daily routine of an employee his or her work output will automatically be accurate and will also be punctual. All that we need to for this is to guide them properly.
Quality is not an act! It is a habit! We have to develop a culture of delivering quality products. You have to develop this culture not only in your work life or product you are developing but you need to develop this in your daily routine and this is how you can leave a Quality Life and develop a Quality Culture!
It’s really important to keep in mind that the term responsibility refers to the contextually proper sphere or extent of someone’s activities. When you call a team “Quality Assurance” that very name tends to imply that this is the team that is responsible. So don’t do that. Treat quality assurance as what it is: a function. It’s a function that stretches across multiple teams, embracing many roles. When you look at things this way then, yes, quality is potentially everyone’s responsibility but with the recognition that everyone has various areas of quality that they can reasonably influence and others that they have to rely on others to influence. What everyone can do is collaborate and communicate about those areas of influence, learning how to build a shared notion of quality throughout the organization.
In the end, the output of quality is primarily the result of all the people in the organisation so rather than blaming each other, let’s work as a team and deliver what is exactly needed. After all, there is only one team, and we’re all in it.
Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!