Do we need an independent test group for agile project? Some people said if the company uses agile they do not need testers anymore. Is it true?
Answer: Agile approach works well for small project (Four to ten people). Because the team is small it may not need to have an independent test group. Developers should be able to test their own software and verify the test results during the daily meeting. Developers must do the unit testing to ensure that their code is functioning correctly. As a team, it is possible to have developers test each others’ works, therefore it may not need to have test group. With Agile, developers are also testers. Companies usually have both small and large projects. For larger project, there is still a need to have an independent test group so company still need testers.
When a code is changed it is possible that defects could be introduced. Because the iterative development of Agile, the next release of code was built by modifying the previous one so regression testing is very important and must be conducted for each iteration to ensure that the newly added functionality will work correctly and that the previously released functionality still works as expected.
To ensure that software product meets the customer’s requirements it is important that sufficient testing is done and all scenarios are tested. It is recommended that the final software may need to go through an independent test group to make sure that everything works well before the project ends. In that case, an independent test group is still important.
There are a lot of “Hypes” about using Agile as it can replace other approaches. It is not correct. Agile is a good approach to build small software in a short time, software that does not have all requirements clearly defined. For larger projects that require more than ten or twenty people, it would be difficult to apply Agile approach. In that case, you may still need to follow other approaches. Another important factor is Agile requires developers and customers to communicate closely during the development process. If customers are busy and cannot participate in the project then you should not use Agile. Because you build software in a short iteration and rely on customers’ feedback to improve the features for the next iteration, customer’s involvement is critical.