Quality assurance (QA) is a process-centered approach to ensure that a company or organization is providing the best possible products or services. It is related to quality control, which focuses on the end result. Although these terms are sometimes used interchangeably, quality assurance focuses on enhancing and improving the process that is used to create the end result, rather than focusing on the result itself.
Among the parts of the process that are considered in QA are planning that has the objective of establish overall objectives, and position the organization with relation to its environment, design by which means to plan or construct an object or in our case a system, development or software development, production and service.
Good QA requires good social skills, communication skills, and unilateral thinking and acting on the QA person’s part. It also requires a company willingness to embrace people with such an approach. It also requires gathering and implementing semantics from the customer, not just heartless specifications. It requires the understanding of consumers’ needs and desires. In fact the ultimate goal is and should always be a happy customer.
To ensure a good final product, the company should apply international standards as CMMI®, ISO 9000 standards and so on and a variety of processes, different methods and techniques to achieve this goal.
Quality assurance is organized into goals, commitments, abilities, activities, measurements, and verifications. By applying good principles and techniques not just the client receive all the benefits but also the company that applies them. They will save expensive cost by finding issues earlier in the process and letting them to be solved.
In my experience here in Belatrix I have learned that quality assurance is not the same as quality control, and is not the same a tester than a quality assurance engineer, the second one is more compromised with the product and the process, seriously worrying for the product quality. I have also learned that “communication” is crucial to understand and assure a final product that will meet client’s expectations. It is also very important to learn and acquire new skills and have clear company’s goals in order to work having a defined objective.
It is a great feeling to have a good feedback from the client and knowing that you have being part of the final product.