• Failure is Feedback
  • Posts
  • šŸ«±šŸ¾ā€šŸ«² Quality Experience: How to Introduce QA Practices to Your Organization

šŸ«±šŸ¾ā€šŸ«² Quality Experience: How to Introduce QA Practices to Your Organization

šŸ–„ļø Whether your tech stack is brand new or teetering with age, any time is a good time to introduce Quality Assurance practices within your organization.

What do I mean by QA practices? For this article, QA practices are defined by specific standards set within an organization that increases the product's efficiency, and quality and reduces communication confusion when bugs or defects are discovered during the development process.

Wait, why didnā€™t you say ā€œbest practicesā€? I avoid the word ā€œbestā€ because ā€œbestā€ could be applied to any type of practice that hasnā€™t been verified or fully vetted. Itā€™s a word thatā€™s easily applied but hard to prove. This idea comes from one of my favorite talks by Viktor Slavchev in his talk ā€œā€˜Worstā€™ Practices of Software Testingā€. This a recommended watch for anyone wanting to learn about the QA process.

Iā€™ll approach these practices in a more holistic sense. Creating processes that provide clarity and ease of use is more likely to be embraced by those within your organization.

Weā€™ll discuss:

  • Empathy

  • Documentation

  • Process

  • Mindset

šŸŒŠ Letā€™s dive in:

šŸ‘‚Empathy - ā€œI believe you.ā€

Creating a thriving QA culture needs to begin with empathy. Our users can be anyone from our clients to the developer building the feature. As unfortunate as it feels, when a developer says, ā€œItā€™s working on my machineā€ thatā€™s absolutely true! Their process and their environment shape their experience. This is true for the end user as well. When a report comes back with a user stating that something is broken, we can fully trust that their process and their environment is shaping their experience. Where communication breaks down is when we take both the process and the environment as truth. These are variables, not elements that canā€™t be changed. When any user comes to the QA and says, ā€œThis is what Iā€™m experiencingā€, continue the conversation by believing them. (And, devs, if a QA says that itā€™s broken on their machine, believe them.) Beginning conversations with empathy fosters conversations of openness and curiosity - which leads to solutions for all users working with the end product.

šŸ—ŗļø Documentation - ā€œThis is the way.ā€

Each tool a team embraces and process applied in the SDLS should have documentation around it. The documentation should include why the tool or process is chosen and how it should be used throughout the organization. Documentation should be clearly written, accessible to the appropriate teams, and organized for easy discovery. This also includes documentation that covers the application the engineering team is creating and how it should operate for anyone using it.

Yes, documentation can become stale. Giving teams the freedom and time to update their docs often helps keep them up-to-date and evergreen.

šŸ„¾ Process - ā€œThis is the how.ā€

Do your users have a way to report issues? Does everyone in your organization know how to report a bug if found? Creating defined processes for every type of user paves the way for clear communication when bugs are discovered. Who is the person responsible for triaging issues that come in? Do you have channels dedicated to bug reports and status updates? Included are some easy ways to report, triage, and find resolutions for bugs reported:

  • Create a system for end users to report bugs and make this system clear and available so they wonā€™t spend time hunting your site on how to make a report.

  • Within your organization, set up a form using Google Forms, ClickUp, Shortcut, or any tool that your team already uses. Again, this form should be easy to access when a bug is discovered.

  • Set up specific communication channels that are dedicated to bug reports. To avoid unnecessary noise, limit these bug reports to reports with higher severity levels.

  • Elect specific people in your organization to triage and troubleshoot bugs as they are reported. This can be anyone from the Support team, the Product Management team, or the QA team. Clearly defining who will do this helps keep ā€œtoo many cooks out of the kitchenā€ when a bug is reported

  • Define when status updates will be given on high severity bugs. This can be anywhere from 15 minutes to an hour. Lower severity bugs can have an increased time span since the issue may be more annoying than limiting functionality for the user

šŸ¤” Mindset

Taking a note from Ted Lasso, ā€œBe curious, not judgmental.ā€ When issues appear (in any software or process), itā€™s easy to start the blame game. Itā€™s much harder, but more helpful to start the problem-solving game. Begin by asking questions - what browser is the client using? What type of device is in use? Is there any event within the tool suite that could be disrupting the use of the application? So many variables can disrupt a userā€™s experience. Being curious will open far more paths than blaming a team within the organization.

Making these changes within your organization may feel nerve-wracking in the beginning. Choosing to change whatā€™s always been done will create an environment where users can speak freely when issues arise and team members can find and fix what prevents a smooth user experience for your clients.

What practices have you introduced to your organization that has increased efficiency and connectivity with your users? I would love to hear your thoughts.

Reply

or to participate.