What is Quality Assurance?
Quality Assurance (QA) is the systematic and planned set of actions that guarantees that the products and the process conform to standards, requirements, and procedures. Processes encompass entire activities involved in designing, creating, improving and handling the software.
“That’s the dictionary definition. QA in real life are those instances when you recheck your door knob while getting out of your house, or make sure your little one has a clean diaper before stepping out or infact double check your stove top is still hot even though you switched off the main switch or for that matter pull your car doors to check after you’ve locked them etc ”
Why startups need to do QA?
Startups rely on the problem solving nature of their service/product in order to succeed. Your offering needs to solve a problem for the end-user over a long term. Satisfaction is the real benchmark. That is why Quality Assurance lends context to your service/product. Because regardless of how good the development is, the real world is filled with unpredictable variables which will affect the performance. QA ensures that your product is truly able to deliver the best in the context where it is targeted. 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. Andrea Corey, VP of QA dept. at Eloqua (Oracle), also advises startups to use some Agile methods for their QA process.
“Imagine yourself starting a job, getting hitched & basically starting a life just about few months back. Isn’t every buck an extra more special which you would like to spend on the most useful and important things ? Now that means you do much more research on anything you want to buy first online then maybe offline then again online before walking through the store and making the actual transaction. And once you have done that you feel more confident about what you have. Infact now you are ready to have those used by your spouse/friends/family anybody for that matter since it is already tested and verified by you. That’s exactly why QA is good for beginners. “
Benefits of QA
Confidence: Confidence in a product or service is the most crucial component for its longevity. When a product actually knows itself, is aware of its strengths and its weakness, it provides an honest experience for the end user and an honest testimony for the investor to refer to. Quality Assurance is the absolute process in order to make sure that whether it is a prototype or the final product, it is geared towards delivering the best of its ability. That’s what wins your startup the brownie points from the consumer and the investor.
Stability: As the saying goes “There is always one more bug to find.” No matter how meticulous you are, no matter how many redundancies you acquire, there will always be one small chink in the suit and that could be the reason for failure. Or it could be the reason for improvement. But the latter is possible only when you run the quality checks diligently. Only when you make sure that your product is a stable facility that satisfies the want/need with reliability and will continue to do so, that you switch to the fast lane of success.
Security: Whether it is collaborators or customers or investors, the question of security is a credible factor to make a decision about any startup and its product/service. Identifying loopholes will make you work on the bugs, iterate and re-iterate, bringing the end result closer to a stable and more reliable product. Also, for your customer, reliable product is the one which is secure and tested. Hence, security is also an important function of quality assurance and very much needed to kickstart your product in the market.
Reduced Costs: Costs are reduced because there is less wastage and re-working of faulty products as the product is checked at every stage
Team Motivation: It can help improve worker motivation as workers have more ownership and recognition for their work (see Herzberg). With all staff responsible for quality, this can help the firm gain marketing advantages arising from its consistent level of quality
Planned Releases: It Helps make Your Releases Trouble-Free & get stable version quickly ensuring the quality & control of deployment
“All in all, complete Bragging Rights that your decision and research has worked out really well; therefore any further transactions require your approval at home or outside.”
How Ziwo QA Works?
At Ziwo currently we are using a combination of automatic and manual Test techniques which is better than what we had earlier but we have a long way to go. The goal is to come up with fully functional stable test suite that can be easily triggered by anyone at any time. This will make our releases trouble free & get stable version quickly ensuring the Quality & Control of Deployment. We would also like to Align QA Process With the Development by
- Getting Involved in Deployment Process
- Solid Manual Test Suite
- Stable Automation Regression Suite for the Front End Functions
- Automation Backend / API Suite
Ziwo software currently includes 4 types of QA:
- Manual testing: It is carried out by QA team members who manually check the software’s correctness, user experience and report bugs.
- Performance Testing: This happens on two aspects
1.Ziwo agent and admin performance impact with bulk voice requests.
2.Performance impact while multiple users using the ziwo (Admin + Agent using Locustio scripts (This is open source python based module provide simulate bulk user behavior on ziwo)
- Performance Testing: This happens on two aspects
- API Testing : We have automated API test Suite that has been designed using open source tools with over 2000 test cases
- UI Automation Testing – Simulate the user flow which will act like real user via browser and will replicate the flow. Automation framework used is Protractor / Cucumber ( BDD ) It handles browser functionalities and user flow for complete regression testing.
QA Tools & Process
Do’s and Don’ts of QA
- QA & Dev teams should preferably be in different locations
- QA should challenge the development team throughout the process to optimise the product as much as possible
- The leg work includes, understanding thoroughly, how your users perceive the quality of an application from start to end, the entire experience.
- No waiting till the end and running a test with the hope for minimal number of bugs
- Avoid collecting a heaping number of bugs to solve at the end.
- Check the bugs of the current stage of the product development and solve them on hand.
- Top management must buy into what QA is doing
- QA manager must report to CEO/CTO or direct link