Quality Assurance for IT Companies: Who Needs It and Why?

To guarantee that our products are up to par, SimbirSoft's quality assurance specialists engage in activities to determine how they can improve company processes. In this article, we will explain why companies need QA departments and describe how we have created one of our own.

'85% of problems in the workplace are caused by problems in the system. Only 15% of the problems in the workplace are actually caused by issues pertaining to an individual.' Joseph Juran — quality architect, economist, management theorist, and author of the Quality Control Handbook.

What does QA do?

An IT company's quality assurance (QA) department controls workflow at each stage of the project lifecycle. It helps streamline all company processes to deliver the product on time with minimal costs, making sure it meets the business objectives and user expectations.

QA fosters and implements development standards, approves product quality criteria, and also develops and enforces metrics for assessing the quality of the company's work.

On top of that, QA:

  • regulates the interaction between company units and departments working on the project;
  • develops (together with functional units) and implements new processes;
  • develops and implements process monitoring and control tools;
  • tracks customer satisfaction levels;
  • conducts performance audits at all company levels, evaluating both production-related and supporting processes.

As we've already mentioned, QA is responsible even for processes not directly related to product development. For example, QA may collect, analyze, and monitor presale activities to gather data for process transformation decisions.

But do you really need a QA department?

If a company doesn't have a proper quality assurance system in place, it may run into the following problems:

  • Difficulty replicating processes within the company. You'll have to build the development process from scratch every time you start a new project. Meanwhile, QA sets up all the processes once and then adjusts and adapts them slightly to new projects. For example, SimbirSoft uses a task tracker and basic metrics, such as plan fact, task return rate, and Bugfix rate, for each project.
  • The cost of making a mistake goes up. Fixing an issue at the testing stage, when the product is ready, is more expensive than catching it during development. And it's even cheaper if you do it at the requirements setting stage. QA helps streamline processes on any project, ensuring a holistic approach to product quality and avoiding typical development errors prior to the app's release. Sometimes, it's not just profit that's on the line — it's also your reputation. For example, if a pharmaceutical company fails to test a new drug, there is a greater risk that it will endanger patients.

We know from experience that even a little deviation from standards and a lack of quality control can lead to unpleasant consequences on a project.

One day on December 31, we released an update for an online training app at the client's request. After a while, the app crashed due to a high server load. While we reacted quickly and got everything fixed in the end, the team still was on edge and had to work through the weekend.

To prevent this from happening again, we have refined our processes. For example, we now have a checklist to see if a product needs load testing.

We believe that QA is vital for any company regardless of size because any business needs to control processes, prevent errors, and timely identify and correct oversights.

Where to start?

We at SimbirSoft started putting our QA department together back in 2012. It hardly needs to be said that the market, requirements, and business processes were all slightly different at the time. But the steps we've listed below are basic and still relevant to this day. Feel free to use our checklist if you, too, want to set up a QA department. Just be sure to factor in the specifics of your business.

Step 1. Build a team of in-house specialists

QA employees must be immersed in internal processes and be aware of all the business intricacies and company goals. You can hire external specialists, but the bulk of the team should be "local."

The size of your QA team can be different depending on the scope of tasks at hand.

Step 2. Identify responsibilities and work field; develop and implement standards

Develop standards the QA team will use to evaluate the quality of the company's products and processes. You can draw on your own experience: take your best processes and practices as a benchmark. Also, use basic methodologies such as Agile, Waterfall, Kanban, ISTQB (universal testing program), etc. Just don't use everything — choose what suits your company best based on its goals and competencies. The company's core business processes, government requirements, if any, etc., can also be used as standards.

For instance, you may base your internal audit processes on the ISO 19011 standard "Guidelines for Auditing Management System." Adapt it to your company. For example, we use this standard for two purposes.

  • Primary. We optimized the standard to carry out parallel audits faster. We streamlined the interview process and data collection. We also automatically calculate quality metrics and the like.
  • Additional: hiring employees. We didn't change anything here as the standard processes suited us.

When the QA team knows what standards to use, consider it 50% ready.

Step 3. Track the company's performance through QA

You can also use ISO 19011 to conduct audits and asses their results — it is one of the most logical and easy-to-understand standards. Record all audit and incident results. This gives you statistics and allows you to notice recurring errors. The QA then analyzes the errors that keep reoccurring in different projects, identifies their causes, and offers solutions. Software Development Company

Expect to spend about a year building your QA department: this is enough time to put together a team, prepare documentation, and organize the main processes. Technically, creating a QA department is quick work — it's the psychological adaptation that takes the most time. Employees will need time to immerse themselves in quality assurance processes and shift from development to analytics.

Other departments, in turn, will need to get used to criticism from auditors and start trusting them, especially if the company has had no QA before. At SimbirSoft, we've managed to build such a trusting relationship between the teams that now, after many years of work, employees come to the QA department themselves to ask for unscheduled audits.

Top Software Development Company