When thinking about project delivery, it goes without saying that the quality assurance team has a big role to play in testing your software. However, to get the most benefit from your QA team, you need to think about how to ensure quality throughout the whole delivery process.
Correcting software issues later on in software delivery can have escalating costs, and there are graphs and charts in every project to illustrate this. So if you do all you can to avoid this, including involving your QA team throughout, you will have greater confidence in the software being delivered, as well as reduced costs.
There are four key elements of project delivery where you should involve your QA team the most, to help reduce issues and save time and money:
1. Requirements & Documentation
Every project comes with documentation to define scope. In some projects that may be in the form of physical documents (Requirement Specification, Technical Specifications, Functional Specifications etc.), or if working with a more agile process, all documentation may be found within tools like Jira.
One of the most effective ways to enable the QA team to add value is to involve them in the review of this documentation. Ultimately, acceptance testing is carried out against your documentation, and so having the QA team review and add acceptance criteria before the documentation is finalised is vital in avoiding difficult questions and changes after tasks have been completed.
Achieving this is quite simple.
Depending on the way you document your projects you should have your QA team review functional documentation before it is finalised or ensure a member of the QA team populates any tasks with acceptance criteria before final sign off of the scope.
If you implement this, you can enable your QA team to raise any questions about the understanding of the task, but more importantly, you can enable them to raise any concerns early on.
2. UX & Design
As with documentation, it is really important that your QA team is involved in reviewing UX and design work. In most cases (when delivering ecommerce websites and updates) design is required or provided whilst discovering the scope of the work.
If you are providing design to your ecommerce agency, then your agency should review this when reviewing the documentation or ticket requirements. If your agency is creating designs as part of your project, it is equally beneficial to have a member of the QA team involved to solidify understanding of a feature or update, and to raise any questions. The intention here is not to provide feedback on the look and feel, but to have another opportunity to consider the functionality being delivered and ensure the requirements, documentation and UX and design align correctly.
3. Testing throughout Development
At Ampersand, when delivering software using agile processes, we tend to deliver work in sprints. When delivering ecommerce projects, gone are the days of a waterfall method and only testing the software once it’s complete.
Testing during the project saves time and money (think back to the cost of defect resolution further along in projects).
Always include QA testing in each sprint, as you cannot conclude that an update or feature is complete until it has passed testing. To really see the benefit of testing throughout development, it is really useful to include the client for UAT (user acceptance testing) of each sprint too.
There are many benefits of this; testing work regularly is far more manageable for clients, the QA team and of course the development team. You reduce the time between development and defect resolution, which is beneficial in terms of cost of the project, but also in maintaining momentum and morale during development.
4. User Acceptance Testing & Support
Once a project is in UAT, your QA team (if they have been involved throughout project delivery) will have a huge amount of domain knowledge. This means that they can play a big role in supporting the UAT process. In particular, your QA team will be really well placed to assist with any training during handover to the client and will be able to provide testing instructions to support during user acceptance testing.
Additionally, throughout a project, the team will work closely with project management, and this becomes, even more, the case at this point. When defects or issues with software are being raised, your QA team will know very quickly whether or not an issue is valid and requires further investigation. An issue may be something that can be resolved by supporting the client with a configuration process, or checking the data in use is correct.
Additionally, they can quickly confirm whether or not the issue does fall within the scope of the task. Involving your QA team in triaging defects raised will prevent tasks from making it through to the development team that don’t need to.
Your QA Team Is Valuable
These are just a few areas of project delivery, but when thinking about or carrying out a task, it can often be of benefit to include QA in the discussion. The more that the QA team are involved, the more the team will learn about the wider project and deliverables. The result of this is a team that works to prevent bugs and unexpected behaviour from the start of a project and are capable of supporting all team members involved in project delivery.