What Is Quality Assurance?

Scheduling Software

Why do we need QA and what is it?  QA stands for quality assurance.  Why do we need it? It can be summed up by a slightly modified famous Shakespeare phrase “To be (have) with a strong QA or NOT to be (have) with a strong QA?

Quality assurance is the maintenance of a desired level of quality in a product. Further, the better your quality assurance is, the more attention to detail you will pay throughout the development lifecycle of a product or service, like staff scheduling software.

When we are talking about a complex application, such as a complex shift scheduler, location confirmation application, or a supervisor app that confirms the accuracy of your schedule, we want to be able get feedback on the system stability and quality. This is to ensure that customers of your product enjoy using it, and also for you to keep up with your competition so that you can maintain your customer base.

What does feedback do? Well it can serve a few purposes and there are different types of feedback.  Positive feedback enforces your confidence that the product is well designed, while negative feedback can lead you to question or rethink some aspects of where you can improve.

If we consider a software system, let’s say employee scheduling software for example, and we have a scenario where negative feedback is provided by the QA team to the developers.  While we use the word “negative” to describe the feedback, the net result of this feedback leads to a “positive” outcome. How does this work? For example, if you have a programmer writing code, and they write 1,200 lines of code, you may be able to say that a lot has been accomplished. However, what is the quality of those 1,200 lines? Are they all necessary? Do they actually accomplish what the original request was? Will the application actually be good at helping users maintain their schedules?  Greater quantity certainly does not equate to greater quality. In this way, when a QA analyst provides “negative” feedback and slows down a developers progress, while that may have an impact on the short term production, the end result will be a much higher quality product.

Now, consider the same scenario but remove the QA team. A developer works on the product and develops it basically unchecked. They will have no interruptions and they will have no need to go back and properly test out their work. They might be more efficient in the short term because they will be able to write those 1,200 lines of code much more quickly. They will APPEAR to be more productive, as they have produced a greater quantity of work in a short period of time. However, over the long run, will they really be more efficient? The answer is no.

The product they will output is far more likely to have issues. In programming language, these are called “bugs.”  When a customer goes to use this staff scheduling application, they will likely have issues with it improperly tracking their information. There is a far greater chance that when this product gets released to the public, it will not fully achieve all of the desired goals. What ends up happening is that this leads to negative customer feedback, and leads developers to have to go back to work to fix their bugs. In a sense, your customer becomes your QA team by using the product, and pointing out the flaws. This is bad for business, as it gives people a bad impression of your organization and can make it very difficult to retain your existing customers, or get new ones. The QA team is a necessary component to ensure that the product the customer gets works, and works well.

Essentially, a QA analyst helps keep developers in check. By slowing down their progress in the short term, it helps them develop a much more efficient, higher quality end product. This leads to greater customer satisfaction and a better customer experience. It will also cut down on the level of support requests that might be needed, which reduces your need for a huge support staff. Good QA can have very positive overall influence on the rest of your businesses interests.  It is important not to overlook this when developing a product or service. If you do then your business will almost assuredly suffer. To be (have) with a strong QA or NOT to be (have) with a strong QA?  The answer to that question is most definitely to BE with strong QA.