How a Project Manager can Ensure Quality During the Development Process
As everyone in the software development world knows, QA is often over looked and under appreciated. Ironically, QA is also one of the things that can have the biggest impact on whether a project is successful or not. Let’s take a look at what can go into this process to ensure that your projects are bug free and up to your standards.
Why is QA so important?
Today, it doesn’t matter what kind of devices your software is destined for. Users expect a bug-free experience regardless of their device and its age, and if your team fails to deliver a program that meets your customers’ expectations, then you have a problem.
Failure to ensure a quality bug-detection process can lead to consequences resulting from frustrated customers. One we have already mentioned in a previous blog involves the reputation of your company and could impact any future projects you release.
Another problem connected with your company’s reputation comes from user reviews. While these usually do not go viral, they potentially can, resulting in a social media nightmare for your PR department.
Unfortunately, user reviews have a tendency to pinpoint weak applications. If your application or software has a low satisfaction rating, for example 1.5 stars out of 5, this will probably be trouble for your bottom line.
Potential customers tend to check reviews before downloading software, and of course, applications with weaker ratings tend to get passed over for those with stronger ratings or better reviews. Eventually, the customers that end up passing on your software starts to affect your bottom line, which is a situation that is good for no one.
What can a Project Manager do to ensure successful QA procedures?
A Project Manager (PM) has the ability to ensure that the entire development process, including QA, goes smoothly and that the software is bug-free by the time it reaches a customer’s device.
Even though PMs usually do their best to prevent errors from being passed on to the customer, time and budget constraints often forces them to bring software to market before it’s ready.
Let’s take a look at what a PM should include as a part of the QA process in order to ensure quality software:
Scripted Testing: Put the software through it’s expected paces before it reaches the customer to ensure that intended paths are working smoothly and that the software functions correctly in certain situations.
Functional Testing: This should be conducted for every change that occurs from the developers’ side. If done during the development process, it should help reduce the number of errors that will be caught during regression testing.
UX Testing: PMs should have someone from outside the development team test the application and see how it handles. If something doesn’t seem right to the tester, it probably won’t feel right for the customers either.
Load Testing: Be sure that the software can handle a flood of users at once.
Security Testing: If the program uses personal data or involves transactions, it’s imperative that the PM conducts security testing. Failure to do so can put customers as well as your own company at risk.
Regression Testing: Make sure the entire program ‘flows’ and that there are no errors before the software goes out to the masses.
More specifically, for application testing, PMs should include the following in their QA processes:
Device Testing: While automated testing can detect a majority of errors, devices have different limitations and button configurations, which can affect the usability of the application. Testing on real devices can discover these problems before your users discover that your app is not entirely compatible with a specific device.
Carrier and Network Testing: PMs should be confident that their application can function on each network and with each carrier’s limitations before releasing it.
Notifications and other Interruptions: An app is only good if it functions the entire time that it is active. If a customer is using the application and someone calls, resulting in the app crashing, it will be frustrating for the user, resulting in a potential bad review from that customer.
Offline Testing: The PM should see how the app behaves when the phone is offline. In addition, they should test how the app behaves if a connection is lost during usage.
Installation and Low Level Testing: This should be a part of every basic QA process, because if the app cannot function in these situations, it could result in a healthy number of upset customers.
The entire process from start to finish…
A quality PM manages the entire development process, and this includes QA. It doesn’t necessarily mean that the entire process must be completed in-house, because a good PM will know their team’s weaknesses and find a way to get it done regardless.
In order for the entire development process to go smoothly, the PM must set and clearly dictate the requirements, control the scope and pace of the project and be able to prioritize the needs of the project to the needs of the client or future customers.
In addition, a PM should be able to set clear expectations for both developers and testers and enforce QA discipline. After all, the development process is a team effort, and if the app fails, it makes the entire team look bad.