FOMO of QA Teams in fast pace agile development

 So finally your company have decided for going agile, you are working as QA engineer in same or different projects for significant amount of time, you know this product well but suddenly everyone is talking about cross functional teams or no QA in agile teams. Now you are in a situation you were never before , you started thinking about moving to some other team or job change. You fear, how you will survive in fast paced development where requirement is changing every few days & you need to test this code base with same quality, this is totally opposite to legacy waterfall system where you got code & get plenty of time to test it. Moreover you & other teammates started questioning QA role in agile team ? No one likes change and you are no exception to it, so yo start fearing, felt insecure & hating agile. 

In actual you no need to worry, QA is essential part of Scrum teams, ideally scrum teams are cross functional teams where one person can code , test & deploy,  this leads to ambiguity among QA persons that they no more required in this lifecycle.

Although its not entirely true , teams still need QA to validate working product. There is no such divide in Agile as Developer or QA , all engineers works as team , as Agile is all about working collaboratively with people who have different mind set & skills.  But working paradigm changes for QA in agile environment. Now QA can not wait till working product is delivered to them & they run their tests on it, they have to be proactive & start their work as sprint starts. QA automation can help tackling this issue, so in agile teams, QA have to develop more capability & start adopting new automation tools & framework as per their requirement. These test automation tools will make testing more efficient, repeatable & easier to track.

Integrate these automation tools with build management system like Jenkins for continuous delivery & continuous testing. Testing in agile teams is done in parallel to development so automation is critical. Someone rightly said "only permanent thing is change" and this applies to QA practices as well , so when requirements are changing rapidly we have to change testing practices and methodologies. Development team write their own unit test and integration tests but even with 100% code coverage , they don't always cover all scenarios. So QA test, validate & automate these tests , integrate it with development pipeline and automatically execute with no manual intervention                                                                                                                                               
Agile Manifesto reads for Agile Software Development which includes for QA  as  well. We can read Agile manifesto for QA as 

Individual and Interactions over Process and tools 

Agile manifesto states that team & team communication should be strong. Agile teams should be open to discussion & speak up. Team collaboration is main intent. so QA  people should blend well other team members and should work for producing high quality software.

Working software over comprehensive documentation 

When we work in agile our focus remain on producing result rather than documenting results. We need a agreed upon viable product at end of sprint which is read to deploy. QA do not put their energy in writing manual test cases & executing them rather they wrote executable scripts to test what is been delivered so these scripts can be executed later unattended, defects logged & tracked. So instead of hundreds of manual test cases we wrote few automation test scripts. 

Customer collaboration over contract negotiation

Collaboration is main intent of agile. QA should always think like customer & often see himself/herself in customer shoes. Understanding customer & his requirements enable QA to write efficient scripts & use correct test data.

Responding to change over following a plan  

There is no test plan as it use to be in legacy waterfall model. Since requirement     is changing continuously it does not make sense to put effort & energy for making a plan which will never kick off. Rather QA put efforts in automation so when something change in future they just change those scripts & other unaffected scripts will work flawlessly. 

Summary 

Agile development is centered towards team & QA is an essential part of team so QA in agile is evolving with new ways to test ,  automate test scripts and collaborate with team members. 

Comments

Popular posts from this blog

ISTQB Mocktest 1

Cloud Byte 2 - Common AWS Services for Cloud Practitioner Certification (CCP)

Equivalence Class Partitioning