This article has been written for those who wants to learn and know what is QA and where and when it should be implemented and why it is required. There are not any prerequisites like programming language knowledge required in this phase. So let’s start discussing the Basics of QA.
Note : This article is written based on web world, however You can use it for any product’s Quality Assurance process.
What is QA ?
QA is a task which is performed to ensure scalability, integrity, functional performance of the developed solution for achieving Best Quality of it at the end. Here again, question what is a Quality of Developed Solution? What are the criteria? Let’s Discuss it as follow.
Basics Of QA :
The main aim of Quality Assurance is to ensure easiness of Product(Web Application/Android or IOS Application/ Software/Product etc) accessible and understandable to end-user. At the end, Motto of Product should be achieved by its end user very easily and hassle-free. There is wide area for QA criteria and Product quality. We are dividing these criteria into two phases.
Considering End Users:
- The product should have proper UI, which motivates the user to access software.
- It should use fewer resources as much as possible.
- If it requires internet connectivity then it should also work properly on the low-speed internet as much as possible.
- It should be responsive as much as possible.
- It should also make system resources free once it has been close.
- It should execute in a correct flow.
- It should execute only those functions and scripts which are required. Remove all extra scripts and functions which are not required.
- No matter bigger application is more complex in terms of programming, however, also ensure that it should not increase unnecessary complexity. This can lead to unnecessary resource occupy during execution of software or developed solution.
- Please remember that resource what you have to develop it, the user may not have that all resources to execute a solution developed by you. So try to make a solution which can be run properly using fewer solutions.
- Also, ensure that the solution should run properly on almost all environments as much as possible. It should backward as well as forward compatible. As now a day operating system and all other applications as frequently upgrade to scale their performance.
How to Implement these Criteria?
To implement these criteria we need to understand SDLC (Software Development Life Cycle) First. And after that, we need to understand STLC (Software Testing Life Cycle).
SDLC (Software Development Life Cycle ) :
SDLC is the process which used while creating the software which will include design, development and Quality Assurance (QA-Testing) processes. The motto of the SDLC is to achieve the highest quality software with the best customer satisfaction. SDLC stands for complete the software within the time limit with the best performance. SDLC divides the different major task in a small part. So it will make the build process very easy and more effective.
SDLC Includes the Following Phases :
- Requirement Analysis
- System Design
For more detail on SDLC click here.
STLC(Software Testing Life Cycle) :
STLC is the process which will be used to ensure the quality of the software. There is no fixed standard STLC in the world.
STLC Includes the Following Phases :
- Requirement Review
- Design Review
- Test Planing
- Test Case Design
- Test Environment Setup Process
- Test Execution
- Test Reporting