As software evolves to keep up with rapidly increasing customer expectations, the big challenge is: how will you continue to innovate, satisfy your customer needs, and be the first to market - all while focusing on high-quality deliverables? An Agile Quality practice can help you achieve all of these goals and ensure you remain competitive in the market by equipping your business with the ability to move and pivot quickly, adapting to changes and market trends.
What is Lean-Agile Quality delivery?
Traditional ways of working tend to be process heavy and require artifacts upfront, perfected prior to starting work. They also encourage silos, inefficient communication, delays in approval chains - the list goes on. As customer needs evolve rapidly, so must our ability to iterate. Either we've lost market share to a competitor who got there first, or worse, we’ve created a product that is no longer needed.
That’s why it’s important to bring a Lean-Agile approach to Delivery with a focus on Quality. This Lean-Agile Process and mindset allows teams to start working to understand what they are aiming to achieve from the get-go. Instead of providing prescriptive processes, a Lean-Agile team will introduce processes that are suited best for your situation. Depending on the approach you go with, success is measured based on proven checks and balances in place, and as time progresses, continue to tailor this approach to what works for the client’s organization. We understand different industries demand different approaches, and that’s a part of this journey we embark on.
Why should I care about Quality in Lean-Agile delivery?
Agile Quality is generally part of the problem Agile teams forget they’re solving for in planning and roadmap exercises. If you can get quality on the radar and work with your teams to build elegant software systems that include the ability to change and innovate quickly (aka agility), you will be positioned to outflank your competition in the market.
Your organization should also be concerned with rework. Why? Because rework equals cost and erodes team morale. Essentially, when you build something, you should be aware of how much money was spent to get it operational. Organizations that spend fewer resources on re-doing tasks have a significant operating/capital advantage over organizations that spend more. And from an Agile Quality perspective, we help organizations see that cost as a way of aligning on priorities among stakeholders and executives.
What problem is Lean-Agile trying to solve?
A common challenge in most organizations is keeping up with the demands of the market, which can include:
- Wanting to be first to market (FTM)
- Wanting to put out the right product the first time
- Wanting to ensure we have what the customer is looking for
When it comes to Quality, many organizations struggle with delivery as the application grows or succeeds in the market. While success is admirable, they now have a *shivers* “Legacy system” that needs to transform into enabling technology so that their products can be competitive in the market.
To further explain, let’s elaborate with an analogy. Say you want to install an HVAC system in your home. When the installation is complete, you’ll have a state of the art system that cools and warms the home up to 20 degrees. But what if it gets colder and you want that temperature to be 23 degrees? If your HVAC system was built the way we typically build software, you would then have to call out the HVAC service, uninstall the HVAC system and install an entirely new one that’s set to 23 degrees. Don’t worry though, since there’s less work to do, the team can give you a good price that’s only 73% the cost of the initial installation.
You probably think that doesn’t make sense. We agree with you! When we purchase an HVAC system and have it professionally installed, we expect it to come with a thermostat and temperature sensors that allow us to react to the changing weather (i.e., the market in this analogy). We’re striving to get away from how software is typically built and make elegant, adaptable software systems containing state-of-the-art features along with end-to-end delivery pipelines that know and report when ‘market competitive’ features are ready. This is what we’re building and solving with Agile Quality.
Continuous improvement in all ways of working
It’s incredibly important to continually inspect, adapt, and evolve processes. For example, we’ve recently started working more with Design Systems. This requires having phased delivery allowing for discovery to have its own period ahead of product development start. This pointed us in the direction of the Double Diamond:
The Double Diamond entails us working with you through the ideation, discovery, and identifying what we actually need to develop prior to bringing the whole team together. This allows for well thought out product journeys, user experiences, market analysis, and time/money savings overall. The alternative being, developing the product right away, realizing some journeys were perhaps not given thorough thought and require rework.
However, it all depends on what’s right for a particular engagement. Being ‘Agile’ means being able to adapt to the client’s needs and in the end, the needs of the actual customer. You want to ensure from the very beginning that what is being built is what the customer needs. That means building in checks and balances to validate throughout the journey, along with frequent feedback loops; rather than build it all and try it out in the end. The client needs to be ever-present throughout the journey using this approach to delivery, versus more traditional methodologies where they’re involved at the very beginning and presented with the final product.
Agile Quality as a part of a winning delivery pipeline
In traditional methods of building software, Quality was a defined part of the process that happened at the end. Quality practitioners were the gatekeepers who did most, if not all, of the validation before launch. While Agile ways of working have vastly improved overall product development, Quality is still generally omitted from the discussion. This leaves Quality and its team members out of the development process altogether while still requiring them to do all of the necessary validation before launch.
Agile Quality means bringing Quality into the Delivery team and leveraging the expertise of cross-functionality to fold quality into the application. It answers the question: “How do we launch this product, and still ‘get past quality gates’?”
The answer is that we test for Quality every day instead of a short period at the very end of the engagement. Agile Quality brings us to a place where our agile teams develop features as well as deliver/launch capabilities as a part of each sprint, using quality to accelerate the delivery pipeline. It’s done across three pillars:
- Quality - Building things that work with a bias for innovation; leveraging verification and validation methods to improve product viability.
- Agility - Building digital products with a bias for action; leveraging strategy to improve efficiency.
- Learning - Building a strong quality consulting community of practice with a bias for experimentation; leveraging metrics to improve efficacy.
This equips you with a basis for delivering Agile Quality throughout the product cycle with team members who are actively part of the team from the start of product ideation, through till the very end and in the next iteration of the product. Continuous improvement is accomplished by emphasizing learning for both quality practitioners, and the rest of the product team as well.
Who’s doing this in an excellent way?
Any company that has taken their end-to-end delivery pipeline to the point where they are at Continuous Delivery (CD) is doing Agile Quality well. Some examples include obvious juggernauts such as Google and Netflix, who are launching features multiple times per day.
Companies that can do this have built elegant software systems that allow their products to compete and remain competitive in the market. They see the goal not only the release, they see the ability to change as the goal, and deliver products that stress and compete in the market. In addition to those relative newcomers, some of the most well-known companies in the world listed under the Fortune 500 use an Agile mind-set to improve their processes. IBM, Cisco, Microsoft, AT&T to name a few — they all use an Agile approach.
The current pace of digital innovation has changed various industries, and in some cases, revolutionized them. Look at the way we bank or hail a cab today versus even 5 years ago, these innovations have been life-changing. The current landscape is driven by the ability to quickly pivot and this is where the Lean-Agile approach towards Delivery really (pardon the bad pun) delivers. At Rangle, our approach is all about being able to work more collaboratively with our clients in understanding their needs and allow them to release something sooner, get that product in the hands of the ultimate user, allowing them to get feedback faster - ultimately enabling them to achieve what they want to sooner than traditional ways of working would accomplish.