Directory Image
This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Privacy Policy.

Going Agile - Must Know 10 Tips for QA

Author: Pallavi Vasishta
by Pallavi Vasishta
Posted: Aug 30, 2016

Going Agile: A few things which come to mind when quality assurance (QA) moves to Agile team from traditional ways of development are:

  • How different it is to work with agile team?
  • What things I should remember for working in agile team?
  • Are there any tips to help me deliver quality product at agile pace?

Many more questions haunt the mind while there is a switch from traditional to Agile development methodology.

These are daunting questions that demand an answer.

An Agile team is a cross-functional group of people that has everything, and everyone, necessary to produce a working, tested increment of a product. So QA is a part of Agile team and must work conjointly with other team members including developers, designers and business analysts. In that sense, the Agile team is a self-organizing entity. The metaphorical "wall" between QA team and developers has no place in the Agile development process. Developers work with quality assurance analyst (QA) to capture negative test cases for features. And QA on the other hand, collaborates with developers to understand features from end-user perspectives and point out challenges in features beforehand. It is more than defining test cases and reporting bugs!

The quality assurance analyst (QA) is not merely a tester but he plays key roles to align team to deliver quality product in each process/iteration. He is a part of each sprint planning, sprint review and retrospective meeting. He defines the meaning of Done Work for the team. He analyses user stories and much more…

In an Agile team, the role of a QA is most challenging and mission-critical. It is not only the product owner who defines product, or it’s not only the scrum master who aligns team to deliver quality product. It is the QA who acts as a link between all roles and responsibilities for success of each sprint. This is how one can, as QA, easily adapt himself for Agile team and contribute to the maximum.

Following are 10 tips a QA must know while going the Agile way:

1. Focus on Risk-Based Testing – In an Agile environment, the goal is always to deliver the highest quality product with a preference to the shorter timescale. Therefore, an Agile QA must assess what features of the product are frequently changing; how they all fit together and prioritize test-cases and user stories which have the greatest risk of failure.

2. Understand Product Architecture – This means how various features are put together into a suite to result in an interactive product. This allows the Agile tester to assess the impact of sub-component failures as well as identify potential security risks. Having good understanding of product architecture, an Agile tester would be able to report integration and high security bugs to developers and help them fix the issues early on.

3. Understanding of Business Needs and Dimension – The Quality Assurance analyst (QA) must have an understanding of business needs so that he can with business analyst as proxy product owner help write acceptance test cases for product.

4. Participate in Estimating Stories – Estimates are used for effort estimation for marking done to a user story. Developers generally consider "happy path" scenario of the user story during estimation. Complex and negative scenarios generally get skipped from developers while estimating. In this case, the QAs are typically much better at it than developers as they focus on all scenarios. Negative and complex scenarios strike them very quickly so the QA must be a part of estimation process to help developers give most accurate (accurate word does not imply to estimates rather I’d say precise) estimates.

  1. Keep Vision and Goals Visible – The QA must make testing and product goals clear to the whole team and keep their motivation levels high as Scrum masters do. The QA must do what he can to help the team enjoy and contribute to the testing work, as developers may also contribute in test cases scenarios where the QA might not be able to mull over.
  2. Collaborate with Customers and Developers – The Agile manifesto focuses on "individuals and interactions over process and tools". The best means of collaboration is by face-to-face conversations. An Agile QA should interact with customers to know their feedbacks and developers should integrate priority feedback in each iteration/process to ensure that the team develops a product of value for customers and not only just a set of requirements for them.

7. Automate Regression Testing – "Automation is a critical component to maintain agility, and is a priority for the Agile team through accepted practices and a focus on continuous improvement." In Agile Process, each sprint is generally 2-4 weeks short span of time, within which the QA must test new features as well as do regression testing to ensure old features are intact after introduction of new features or change in old features. With each incremented interaction, this responsibility grows significantly, so automation for regression testing would greatly reduce the effort of QA.

  1. Participate in Daily Stand-Up Calls – An Agile QA should attend daily stand-ups to foster a collaborative team environment. Additionally, by presence in stand-ups, they’re able to stay up to date with sprint progress. If there is any blocker, they can bring this up during the stand-up meeting, therefore minimizing any risk of failure at the end.
  2. Participate in Sprint Retrospective Meetings – After a sprint is completed, a sprint retrospective meeting is held to discuss successes, failures and future improvements in sprint. Sprint retrospectives are the opportunities to identify weaknesses and assess them to find solutions for them. The QA should involve in these discussions to ensure any concerns they have are addressed before the start of the next sprint.
  3. Accept That it’s a Journey – The transition from traditional to Agile is a journey which can be smooth and successful only when the QA accepts this and is willing to dive into the heart of this journey!! It takes time to integrate the dynamics of Agile into their processes and the values and principles behind them to seep into their culture.

Agile QA Tester = Quality Assurance Tester Quality Assistance Tester

About the Author

Drutas is a product development suite for agile software development teams which enables product development teams capture, collaborate, plan and build great software products. For more information visit us at http://www.drutas.com

Rate this Article
Leave a Comment
Author Thumbnail
I Agree:
Comment 
Pictures
Author: Pallavi Vasishta

Pallavi Vasishta

Member since: Aug 30, 2016
Published articles: 1

Related Articles