Software Quality Assurance
Build Quality Software Products From Conception Through Maintenance
Software Quality Assurance is one of the most misused terminologies in the IT industry. It is often used interchangeably with testing but here at AwesomeQA we look at these a bit differently.
Testing is about verification and validation, to ensure that the product is fit for purpose and does not pose unacceptable risks to the users and environment. It is therefore about detecting defects and removing them to reduce or eliminate risks. Testing therefore is part of development, although in the past, it used to happen after the actual coding was completed.
Quality Assurance is about building the right product. It is therefore about prevention and covers the whole spectrum of the delivery process, starting from conception through requirements, development, testing, release and production.
Some bigger organizations have separate department for quality assurance and this normally covers every aspect of the organization, from finance through IT to sales and customer service.
Majority of organizations view quality assurance in the context of software product and implicitly delegate the role of quality assurance to the test team. A lack of clear vision normally leads to the team performing only testing under the umbrella of quality assurance.
Our view is that the role of the QA or test team is to prevent and detect defects in software products so we create a process or culture that encourages the team to ensure quality at every stage of the software development. From inception through to production, the QA team has a role to play and there is a set of activities that we do to build quality at every stage.