SYONE - Open Source Lisbon Blog

Syone’s Definite Guide for an Outstanding Q.A. Approach

Written by Tiago Valador | 18/02/20 11:34

In every organisation, one of the most difficult things to manage is the approach made towards new techniques, methodologies and processes.

The idea that Agile might be one of the most effective software development methodologies is surely quite accurate, however, if credulous it might lead to wrong ideas.

Long story short, in my humble opinion, having a full-time tester in an Agile team is the best way to minimize bugs and errors in any given project and every team might see eye to eye when I say that a tester is a key-player in an Agile team.

 

Therefore, I decided to write this guide, in matter fact these set of questions, in order to aid anyone who is planning and estimating the testing effort. Surely this “guide” needs to be completed with more accurate information along the way, however, it can already be used as initial support.

Having said that, let’s jump right into it! 💪

Simply answer question by question and you will have a definite guide of how to reach an outstanding Quality Assurance Approach.

1. Value to users/business

  • What’s the purpose of the story?
  • What problem will it solve for the user, for us as a business?
  • What impact shall it bring to the client and client's clients?
  • How will we know the feature is successful once it is released?
  • What can we measure, in what timeframe?
  • Do we need any new analytics to get usage metrics in production?

2. Feature behaviour

  • What are the business rules? Get at least one happy path example for each rule, and ideally also one misbehaviour example.
  • Who will use this feature?
  • What persona, what particular job is a person doing?
  • How shall the application behave in specific realities and use cases?
  • What will users do before using this feature or application? Afterwards?
  • How will the transition be made after start using the feature / application?
  • What’s the worst thing that could happen when someone uses it? (exposes risks)
  • What is the best thing that can happen? (delighting the customer)
  • Is the story / feature / epic too big? Can we deliver a thin slice and get feedback
  • Watch out for scope creep and gold–plating!

3. Quality Attributes

  • Could this affect performance? How will we test for that?
  • Could this introduce security vulnerabilities? How will we test for that?
  • Could the story introduce any accessibility issues?
  • What quality attributes are important for this feature, for the context?
  • What is needed to be tested?

4. Risks

  • Are there new API endpoints or server commands? Will they follow current patterns?
  • Do we have all the expertise for this on our team? Should we get help from outside?
  • Is this behind a feature flag? Will automated tests run with the feature flag on as well as off?
  • Are mobile/web at risk of being affected?
  • Are there impacts to other parts of the system?
  • Do we need new tools to work with? If so, how much training is needed?
  • Is the business very specific and few functional documentation?

5. Testability

  • How will we test this?
  • What automated tests will it have – unit, integration, smoke?
  • Do we need a lot of exploratory testing?
  • Should we write a high-level exploratory testing charter for where to focus testing for this feature/epic?
  • Do we have the right data to test this?
  • Does it require updating existing tests, or adding new ones? If new ones, is there any learning curve for a new technology?
  • What are the other systems to integrate with? How will we test that?
  • How much retesting will be needed?
  • What tools shall we use to set up test cases, test suites and test phases?

Once you’ve answered all these questions and have the focus on estimates, then the planning process will definitely be more accurate. By the way these questions are useful for more legacy approaches, for instance waterfall, not only for Agile methodologies.

With that in mind, always remember that Quality should be the driver to every project, simply because at the end of the day, what clients are looking for is:

-> To improve their business! <-

 

Thanks for reading and I hope you liked it!

If you feel that you have what it takes to work with us, try our careers page. Or, If you want to get a quote from our team of specialists, get in touch here!