Agile Methodology

Surefire Ways to Ensure Quality in Agile Projects

Max 10 min read

Surefire Ways to Ensure Quality in Agile Projects
Start Reading

Click the button to start reading

Surefire Ways to Ensure Quality in Agile Projects

The objective of any project is to successfully deliver a product within the given scope, budget, and timeline.

Quality is a central component as well. While working within these constraints, every project manager aims to meet, or even exceed, the client’s expectations.

To some, the agile method of project management looks like chaos, and spells out certain failure in this regard. Agile allows for continual pivoting and changing direction, even late in the game. And unlike waterfall, which methodically tests for quality right after development, agile has no designated quality management step.

But in fact, agile isn’t chaos at all.

When the method is closely followed, it enables a team to consistently deliver a top-notch product. Its system for creating user stories ensures accurate forecasting at the beginning of a project. And its ceremonies for review and reflection allow for constant improvement to the product and the team’s work patterns.

From planning, to process development, to review and reflection, let’s look at how to manage quality in agile, to ensure a team delivers excellence every single time.

Planning for an Agile Project

Planning for an Agile Project

The simple principle that “you get out what you put in” certainly applies to agile projects. Smart, thorough planning is central to quality control. Here are things to keep in mind.

Create User Stories With Requirements

At the beginning of a project, having every stakeholder contribute to the requirements clarifies the project’s final objective.

A central first step to this process is developing a clear idea of the product’s end user. The product manager’s market and customer research provides valuable insight here.

Next, with the end user in mind, all stakeholders collectively write out user stories. It’s not necessary for the stakeholder to have technical knowledge in order to do this. A completed user story clarifies the end user, the requirement, what “done” looks like, and receives a point estimate to indicate its level of complexity. Matching the final output to all this information makes it possible to conduct quality assurance when the story is complete.

At this beginning stage, it’s key to gather a thorough and detailed list of requirements. You want all stakeholders to explain the features they want to see in the product. This information allows the product owner to map out the project and make good estimates.

If, rather, the requirements are vague, or not provided at all, it creates gaps of uncertainty. This forces the product owner to schedule buffers, which can really throw off a timeline. As the duration of this buffer is unknown, and could end up taking much longer than estimated, the team may have to work long hours and produce sloppy work in order to catch up.

Compromise on Time or Cost

Clarifying expectations at the beginning of a project means making some tradeoffs.

The “good cheap fast” triangle popular with project management provides a great framework for evaluating trade-offs. With this triangle, you pick two qualities, knowing that you won’t receive the third. For example, something can be good and cheap, but it won’t be fast. Or, something will be fast and good, but it won’t be cheap. Or, it will be cheap and fast, but it won’t be good.

Compromise on Time or Cost

When a team decides to prioritize quality, then it must either compromise on time or cost. If you don’t decide at the beginning to either extend the timeline or increase the budget, it spells out problems later. As the triangle dictates, you can’t have all three.

MoSCoW Method

Use the MoSCoW Method

When a project has too many North Stars, or there’s simply a “let’s do this” mentality without much of a plan, the team flails and it creates dissension later on.

The MoSCoW Method of prioritization creates clarity around what a project sets out to do (and what it won’t do) from the very beginning. The method entails clarifying a project’s musts, shoulds, coulds and won’ts.

When all the stakeholders come together to discuss and establish these priorities, it allows a project to proceed fluidly. Rather than having to backtrack and sort through disagreements late in the game, the team is more likely to work diligently and deliver a quality product.

One thing to keep in mind with MoSCoW, however, is that the team shouldn’t be too fixated on the “musts” or “coulds.” The Agile Manifesto “welcomes changing requirements, even late in development.” This means that if it’s in the customer’s best interest to change course, the team does so.

Decompose User Stories

Quality control entails keeping batches of work small and manageable.

Rather than taking on an immense and complicated piece of work, agile is about completing a small task, then testing it, seeking feedback, and then planning more from there. Breaking work down allows for defects to be identified and fixed right away. If the task is too huge, then bugs aren’t noticed until much later, and at that point they may be too hard to fix.

When a project is particularly complex, determining how to break it down is a real challenge. Although user stories serve as a guide for iteration planning, many of them outline large tasks that would take several weeks to complete. And a single iteration usually lasts only two weeks.

One guideline for decomposing user stories is the acronym INVEST. This means the task must be independent, negotiable, valuable, estimable, small, and testable. When a task fulfills all of these criteria, it’s small enough to be performed with the due attention it needs.

Planning poker is a second method for estimating the complexity of tasks. In this activity, a team collectively assigns points to user stories, to help determine how many user stories to take on during one iteration. A team seeks to maintain a steady pace of work by completing the same number of story points from iteration to iteration.

Creating a backlog of decomposed user stories, all with points assigned to them, takes some time. Planning iterations can take up to 10% of a team’s overall production time. But doing this planning is central to quality control. It prevents overwork and allows the team to work at a continuous pace.

In sum, quality management in agile projects is first and foremost about having a good plan. A project is poised for success when it has good processes and systems in place, and has received input from all stakeholders.

Developing and Evaluating Processes

Developing and Evaluating Processes

Nobody is perfect, including software developers. Every developer creates bugs or defects from time to time. Quality management entails having systems for identifying defects, and procedures to ensure defects are decreased or rooted out entirely. Here are three ways to do this.

1. Refine the Definition of Done

After a long day of completing code for a user story, it’s tempting to check the task off as “done” and move onto the next thing. However, at this point the code may still be full of defects, as it hasn’t gone through any testing.

In order to ensure quality, a team creates criteria for what it means for a user story to be code complete. This may include identifying and clarifying technical debt in the product backlog, and implementing processes for testing and reviewing increment before its release.

A thorough definition of done sometimes entails having a “done checklist.”

2. Identify Patterns in Defects

Reducing defects is part and parcel ensuring quality. In order to do this, it’s helpful for a team to categorize the types of defects it encounters.

One type of defect in software development is a build defect. This occurs during the development process. Another is a release defect. This defect has passed the user acceptance testing (UAT) and made it to market.

After a team has worked on several sprints together, it’s able to look at all its defects collectively and identify patterns. From there, it can create a plan to reduce them.

For example, high incidence of build defects indicates the team needs to focus on improving the development process. A pattern of release defects indicates a need to improve its UAT.

A sprint retrospective is the ideal time for a team to discuss any patterns in defects, and work to collaboratively improve processes and systems.

3. Onboard New Team Members

When a new team member is hired, it instigates the “norming storming” cycle, which spells out lag in product development.

A proper onboarding system shortens this cycle, and ensures the new member contributes meaningfully to the product development right away. Effective onboarding entails education about company culture and assigning the new hire a mentor and someone to go to for support.

When someone comes onto the project mid-way, he or she can be brought up to speed by watching videos of sprint review meetings. These communicate the increment that was previously developed, the impediments discussed and client feedback, all which give the new hire a good understanding of where the project is currently at.

In sum, processes are like the glue that holds a team together and gives it the structure to successfully bring a project over the finish line. Regardless of the talent and skill level of a team, quality isn’t assured without good processes.

When systemic defects or impediments are identified, the processes can be updated accordingly.

Review and Reflection

Review and Reflection

The agile methodology incorporates constant check-ups, communication and reflection. The Agile Manifesto says that “business people and developers must work together daily throughout the project.” At the daily stand up, the team assesses how the iteration is proceeding, and identifies both progress and impediments.

The scrum framework, particularly, allows for reflection periods in order to evaluate work and identify ways to improve processes. Let’s look at how to make the most of these in order to ensure a quality deliverable.

Hold Sprint Retrospectives

In scrum, the team gathers for a sprint retrospective at the completion of a sprint. During this ceremony, it analyzes how everyone worked together, and how the team was (or wasn’t) supported by the organization.

The goal of the retrospective is to identify impediments and specific ways to improve the process for the next sprint. The sprint retrospective is the ceremony most scrum teams skip. However, consistently practicing this ceremony helps a team handle defects and improve quality.

A retrospective allows a team to address systemic issues and defects as they occur, and prevents a scenario where a team needs to dedicate an entire sprint to fixing all the defects in the previous weeks’ work.

Dig During Retrospectives

An effective retrospective doesn’t simply identify problems and impediments. It also seeks to uncover root causes. When an impediment is identified, it’s helpful if a scrum team asks a series of “why” questions.

Let’s say a team launches a messaging service, and within minutes it crashes. An immediate explanation would attribute the failure to poor testing.

A good retrospective goes deeper, however. It asks why there wasn’t good testing: Is it because the team didn’t understand how to write tests? Or there wasn’t enough time? The root cause of the failure may have to do with training, staffing, or time management issues.

When a team asks “why” questions, it’s able to take steps to resolve root causes, not simply surface problems. This sort of digging ensures quality in the final deliverable, and it prevents the same snafus from happening over and over again.

Listen to Feedback at the Sprint Review

Listen to Feedback at the Sprint Review

At the end of a sprint, the team meets for a sprint review. They look over what it has accomplished and any completed product, called increment, is shipped to the end user for feedback.

Listening to this feedback is central to the agile process. It allows a team to evaluate its work up to that point, and determine if it needs to pivot in order to create a quality deliverable.

In this respect, agile differs markedly from waterfall. Waterfall plans its objective goal from the very beginning, but agile allows for flexibility. Oftentimes, this flexibility is the necessary ingredient to delivering a quality final product that the end user likes and enjoys using.

Run a Hardening Sprint

At times, an agile team may have a build-up of defects and technical debt in the product backlog. A hardening sprint is helpful for cleaning up messes and clearing up bottlenecks.

It’s good to be transparent in the product backlog about technical debt. This lets the stakeholders understand what is going on, and makes it clear if the hardening sprint is necessary.

The hardening sprint is generally used as a last resort, but it is a helpful process for continually maintaining high quality.

In sum, reflecting is central to quality management in agile. By continually taking the time to reflect, and improve processes, and listen to feedback, a team ensures that it’s on track to producing high quality product.

Conclusion

Quality management is built into agile planning, iterations, and reflection. Following the agile method ensures that the team builds good products and the client is satisfied.

When the team creates a thorough plan and communicates with all stakeholders daily, this directs everyone toward a similar goal. Through regular reflection, the team is able to improve processes, fix defects and adjust a product to suit the client’s needs.

In a project where the final deliverable is liable to change, the agile method really is superior to waterfall. It prevents a scenario where defects have built up until it’s impossible to go back and fix every little thing. Unlike waterfall, the agile team also consistently solicits feedback from the client, in order to ensure a usable product.

Committing to the agile process is part and parcel to quality management. When a team stays on course, it’s sure to crank out a superb product over and over again.

Table of Contents

Manage Your Remote
Team With Teamly. Get your 100% FREE account today.

Get Teamly FREE

PC and Mac compatible

image

Teamly is everywhere you need it to be. Desktop download or web browser or IOS/Android app. Take your pick.

Get Teamly for FREE by
clicking below.

No credit card required. Completely free
Get Teamly For FREE

PC and Mac compatible

  • imageChat with your team in real-time
  • imageCreate tasks and workflows with ease
  • imageScreen cam video recording, audio messages and more
  • imageTrack and monitor employee time worked
Teamly puts everything in one place, so you can start and finish projects quickly and efficiently.

Keep Reading

Open Communication at Work

Teamwork

Open Communication At Work – Why We Need It And How To Improve It

Open Communication At Work – Why We Need It And How To Improve ItCommunication is really at the center of the workplace. It guides our relationships with our colleagues, the work that we do and ultimately molds our careers. While communication in the workplace might be inevitable, a difference remains between good, open communication and …

Read More

Max 7 min read

Book Summaries

Lessons from “The Hard Thing About Hard Things” by Ben Horowitz – Chapter 8

Lessons from “The Hard Thing About Hard Things” by Ben Horowitz – Chapter 8In Chapter 8, Horowitz pulls back the curtain on some of the toughest decisions business leaders face, from balancing creativity with accountability to deciding when it’s time to sell a company. This chapter is a masterclass in navigating the complex, often paradoxical …

Read More

Max 7 min read

project management software for mac

Project Management

Top 10 Project Management Software for Mac in 2023

Top 10 Project Management Software for Mac in 2023Apple is known for being the hardware option where design meets functionality. Mac users often find themselves at a crossroads when it comes to selecting the right software. The challenge? Finding project management tools that are compatible with macOS and offer the features and experience Mac users …

Read More

Max 14 min read

Get Teamly for FREE Enter your email and create your account today!

You must enter a valid email address