Every team member is responsible for a part of the development and my job is to ensure quality. If I guarantee quality at every single task, I will ensure quality at development and project itself.
These are for me the most important steps in quality assurance and the ones I follow.
When there are new tasks, I normally take time to look where each task will be involved in. These tasks could affect previous developments and I need to think of all possible scenarios to be able to discover edge cases. It’s like having a higher picture of the development.
Looking at the previous analysis, it’s time to think about the scenarios. Scenarios are different from each other and all of them are important to guarantee the development quality.
After analysing and thinking the scenarios, it’s time to think about test cases. There could be some test cases that I can re-use. Having a good and organised test case library is essential for time optimisation. Writing new cases is inevitable and they are the most important part of their own re-usability. They need to be written as less dependent as they can be (for a good re-usability) and as simple as possible, so that anyone can execute them.
This is the part of the process that takes less thought, it’s a step-by-step execution. It’s all about discipline and taking the scenario as it is. Looking back into the process, all the analysis were already made and here, it’s only about execution.
There is quality in every step of the development. Communicating with the team is also part of quality - identifying the scenarios where the requirements weren’t fulfilled and helping to troubleshoot problems with the development are also part of quality.
These are my steps to ensure quality at the projects I’m involved in! :)