Laveenaramchandani
6 min readFeb 12, 2021

--

🎵 Quality is in the air 🎶

Quality of a product is vital whether it is software development or any product. The question is how to bring quality within a team?

IT is evolving and as a team, we tend to be busy delivering and it’s easy to miss out on quality, but this is a no-brainer. The more we bring quality into the team, the more positive outcomes come our way.

We need to think and plan how to go ahead with initiating and maintaining quality in teams. It is a great value add, helps customer retention, and gives a great brand reputation. As testers, we tend to be quite curious and quite motivated to bring in new testing skills and strategies but get pushed back due to project requirements and priorities. It is a completely normal scenario, at least you already sewed a seed in everyone’s head and one day you can work towards it. In this blog, Suman Bala, Quality Advocate Lead and myself , Laveena Ramchandani, Senior test consultant will share useful experiences and tips on how you can lead quality as part of your teams.

A goal without a plan is just a wish! Let’s identify tasks we need to do, to create quality in our teams. “Quality is not an act, it is a habit.”-Aristotle

How to bring quality in your teams? 🤝

Testers are no longer gatekeepers instead, everyone in the team should be accountable for quality. This means quality is the “shared” responsibility of everyone in the team. We talk about “shift left” but I think we need to shift left, right, everywhere to ensure quality is built-in. Quality is understood as central to the process from the start, not an afterthought in product development.

By: Dan Ashby

Digital transformations are one of the hardest transformations. You need to stimulate every team member’s mind towards quality and advocate for “Quality as a culture!” Collaboration and visibility will help you in building quality. Building a quality vision and having buy-in from everyone is a tough task but not impossible. Have a conversation with your product owners, business analysts, developers, and testers right from the start. Even if it takes longer to deliver a feature but it’s the right thing to do, do it!

Everyone should be on the same boat, and everyone should understand the product as it’s meant to be as per the client’s vision, otherwise, you get one of these;

Another scenario would be, what may seem ok for you, may not be ok for others. Therefore bring it to the table and have a healthy discussion to avoid any assumptions and ambiguities.

How to maintain it? 🤔

Software cannot be manufactured in the same sense as a physical artifact like an automobile. Therefore, quality is not constant and cannot be measured, there is always room for improvements and enhancements. These attributes can always be looked into when developing and testing software.

If a product already exists, you can argue that quality is already there. While it may be hard to measure some of these factors directly, most software developers would agree that monitoring these factors in a systematic manner can help produce high quality software.

The above attributes can help bring further quality to a product. We cannot improve what we cannot measure but we can look further into how we can improve quality together. An example here could be flaky automated tests. How can we bring more confidence into the team by improving the quality of automated test, quality of code? Can we use a new tool or look into the testability of a particular feature? Availability of more environments to test on? Improve the usability of the software?

Benefits 🌟

Quality comes with a cost but it’s an investment in the future. You can’t deliver high-quality products cheap and fast. You have to choose two factors from Good, fast and cheap. These factors could be dependent on time to market, cost, and efficiency.

  • Good and cheap: Will take time to deliver 💰
  • Good and fast: More expensive 🚀
  • Fast and cheap: Not the best quality 🏃🏽‍♀️
  • Good, fast and cheap: You’re dreaming!🌠

The cost of quality includes the costs incurred by all quality-related activities pursued by the development team plus any support and maintenance costs that can be demonstrably related to lack of quality. Therefore,

Cost of quality = cost of good quality + cost of poor quality

The bitterness of poor quality remains long after the experience of using your product. By investing in the quality you will have paramount user experience, customer loyalty, and improved product efficiency.

Quality ⧣Testing! 🚫

How often have you heard: “Our quality is poor, we need more testing (or testers).” This makes me really sad. Many people think of software testing when they think of Quality, but testing is a subset of quality. Quality helps prevent the issues where testing is inspection and feedback. Testing is a subset of quality. Focus on lower costs often leads to lower quality. Focus on higher quality always leads to lower costs. So, if you build quality in your process from the start, your product will have fewer bugs, your regression/exploratory testing cycle will be quick; in short, you’re saving cost to re-work and time to market will be fast! 😀

Become Quality Advocates 👩🏽‍💼👨🏼‍💼

Everyone can be a Quality Advocate but needs a bridge between dev and testers.

Suman shared with me that there are teams that perform workshops to help drive quality successfully. It also brings more awareness and clarity within the team.

Now what are these workshops about?

As a team we agree to what our role is and how it provides/adds value to the product.

This is just an example, but if as a team we all try to incorporate a workshop and engage with each team member as to what from their skill set can help add value and also understand everyone else’s roles too. In a way as mentioned before we are creating a bridge between knowledge gaps and reducing risks. After a workshop you can collect details as to what everyone’s responsibilities together. This Leads to positive maintainability of not just the product but the team as well.

Conclusion 🔚

This brings us to conclude our first 2021 collaborative blog. Why is quality important in software development? It is important, as software engineering means to produce high-quality products by following software quality metrics and attributes. Quality is never enough and there is always room for improvement.

Furthermore being quality advocates won’t only improve the quality of the products but also the team. A Team can then feel more confident about the product as it will be more reliable and robust resulting in improved customer satisfaction. You get one shot at it, and if the quality of what we are delivering doesn’t create and keep those individuals happy, then we have lost them- Aaron Haehn. Understand what quality is, convey it, and enjoy the positive results.

--

--

Laveenaramchandani

I am a vibrant, motivated and committed individual, whose main aim towards the IT industry is to apply myself and dedicate my energy to becoming the best hire.