Common Agile and Scrum Anti-patterns

Common Agile and Scrum Anti-patterns

Recently, I was reflecting on some common anti-patterns I've seen over the years to try to put together a common list. And since there aren't enough anti-pattern lists on the internet, I figured it was worth sharing. LOL. In any case, I hope you find value, help or insight into identifying these in your own organization.

What is an Anti-pattern?

In case you're not familiar, anti-patterns is a term used to describe behaviors that are thought to be helpful, but are actually getting in the way or causing problems. Common reasons for anti-patterns include a lack of understanding of Agile, Scrum, an Agile Mindset or the unwillingness to let go of old habits that worked in a hierarchical, waterfall environment. Often times, the person exhibiting the anti-pattern behavior doesn't realize it.

Leadership and Management

Manage by metrics

Expecting status reports or daily updates is a sure sign there is a lack of understanding of Agile and Scrum. Forcing the teams to provide waterfall type status and updates takes focus away from delivering customer value. Scrum Artifacts, information radiators and the Sprint Review is how management should stay informed. Metrics should be used by the Scrum Team to help them improve, not by leadership to manage the team.

Comparing teams

Trying to normalize things like Velocity in order to compare teams to determine which team is better or producing more. Not only will the number of Developers on the Scrum Team have an impact on their Velocity, but Scrum Teams use relative sizing for estimates and every team’s estimates are only relative to that team. Scrum is a framework and every team’s process that develops within that framework is different. Scrum is about delivering value not output. Story points have no relation to value and comparing velocity (or anything else) across teams makes no sense.

Telling the team how to do things

Leaders should focus on providing priorities, direction, giving feedback and servant leadership. They need to trust and empower teams and let them figure out the best way to accomplish their work.

People are not dedicated to one team

Splitting people across teams is not only not fair to them, it leads to a loss in productivity due to context switching. Reassigning people regularly or having people split across teams disrupts the team and makes it harder to become more predictable, which makes it harder to forecast sprints and releases.

Getting Developers to work on “side-projects”

The Scrum team has one focus, the Sprint Goal, and they are committed to doing their best to achieve it. The priority order of work should come from the Product Backlog and emerge during Sprint Planning. Working on anything outside the Sprint also makes it harder to become more predictable.

Trying to go around problems instead of solving them

Scrum makes your problems painfully obvious. In a long waterfall project, it was easier to avoid fixing problems and just work around them. This is not an option in a short, time-boxed Sprint. Leadership needs to help or empower teams to resolve existing problems that make delivering a done, usable increment every Sprint challenging or even impossible. DevOps issues is a great example of this.

Hijacking Scrum events

Scrum is not a methodology, but it does have a flow and events have a focus on inspecting and adapting. Attending events and disrupting or hijacking them for their own objectives, like getting a status update, is hindering the teams ability to deliver value to the customer.

Don’t understand what an Agile Mindset is

Thinking you are just swapping out one process for another is going to lead to challenges. Enterprise Agility requires a shift in thinking and a culture change. It will fundamentally change how you run and manage your organization.

Having Leads on scrum teams

Leads were normal for Waterfall project teams. The idea that many decisions had to go through the Lead was part of the process. In Scrums short time-boxed Sprint, having one person that has to review, check, confirm or decide for all Developers becomes a bottleneck. The team needs to collaborate and make decisions together. That’s not to say that leaders can’t emerge during the course of the Sprint and use their knowledge and experience to influence others.

Everyone needs to be invited to the Daily Scrum

People who don’t understand Scrum think the Daily Scrum is a status meeting so they tell the Scrum Master to invite everyone who has anything remotely related to the work in the product. Let the Developers use the Daily Scrum as they see fit to best achieve the Sprint Goal.

Project focus instead of Product focused

Moving from project to product focus will have a huge impact on the ability to deliver value through stable, product focused Scrum teams that are more predictable. Moving to funding product teams annually, over the never-ending project budget planning, will save time and money while allowing stable teams to focus on delivering value.

Creating a dual Scrum Master/Product Owner role

This is often the result of a lack of people or buy-in to moving to Agile and Scrum. This tends to lead to a “let’s try it out”. There is nothing wrong with experimenting to see if Scrum is right for you, but the Product Owner is responsible for maximizing the value of the Product and it’s a full-time job. Expecting someone to take on a dual role, will limit the Product Owner’s ability to do their job well and result in a less effective Scrum Team.

Thinks the Scrum Master is a Project Manager

Without an understanding of what Agile and Scrum are, some leaders look to Scrum Masters to provide status reports and updates, just like they always did. Scrum Masters need to take the opportunity to train and coach leadership and management about Agile, Scrum and the many hats of a Scrum Master.

Proxy Product Owner

Having a proxy who can’t make decisions will lead to delays. As the person responsible for maximizing value, the Product Owner is a key role on the Scrum team.

Product Owner

Using the Product Backlog for ideas

The Product Backlog is the single source of information needed to improve the product. Avoid using it as a repository for ideas or anything else not related to work needed to done by the Scrum Team.

Unavailable Product Owner

During the Sprint, the Product Owner needs to make sure they are available for the Developers. Developing complex products leads to learning and discovering new things, not to mention general questions about a feature being implemented. The Product Owner needs to make sure they are addressing the teams Sprint questions in a timely manner. 

No themes or Epics/Creates stories from a requirements document received from Stakeholders

Instead of working with stakeholders through product planning events, the Product Owner just asks them to deliver a requirements document like they used to. Then just copies and pastes the requirements into stories. At every level we should be planning with a focus on delivering value. Features should emerge through product planning and prioritization efforts and breaking down of big ideas and stories into smaller ones.

Include how when creating User Stories

The Developers decide the best way to implement the work. That doesn’t mean the Product Owner can’t discuss it with the team, they just shouldn’t tell them how to do it by putting the how in the story.

Component based stories

It’s hard to measure the value to the user when the story is not user focused. It also creates dependencies and makes it more challenging to order the Product Backlog. In a cross-functional team, what were component stories become the sub-tasks of the user story and emerge during sprint planning as the team determines how to accomplish the work of a user focused story.

Missing acceptance criteria in stories

Acceptance criteria is a key part of story that focuses on the functionality of the story. It also helps guide those developing and testing the story. Without acceptance criteria, how will you know if the work is complete?

No Sprint Goal

The Sprint Goal is the single objective for the Sprint and provides guidance and focus for the team not only during Sprint Planning when they are selecting PBIs, but during the Sprint when they are working towards achieving the goal.

Not breaking down stories into small increments

A User story is one piece of functionality that provides clear business value. Breaking down stories into small increments makes it more likely the work can be completed in the Sprint as apposed to getting most of a larger story done and having to carry it over to the next Sprint. This means faster feedback loops. This can and should happen in refinement, but the Product Owner should be thinking about the smallest feature they can implement.

Scrum Master

Not a change agent

The Scrum Master is accountable for leading and helping the Scrum Team and the organization in adopting Scrum and establishing Scrum Theory and practices. This may include challenging the status quo and coaching people in understanding why we do the things we do in Scrum.

Does work for the team

By doing work for the team, the Scrum Master becomes an impediment to the team self-managing. The Scrum Master serves the team. Resist the challenge to do the work of the team, instead take advantage of the opportunity to Mentor and Coach them.

Avoids conflict instead of resolving it

In the complex domain, healthy team conflict should be expected. But when conflict crosses the line it needs to be addressed, potentially in the Retrospective or one on one as appropriate.

Uses the same Retrospective format every Sprint

Finding ways to improve can be a challenge for some teams. Mixing up the Retro may help draw out ideas and conversation. We should also be reviewing the Definition of Done and Team Agreement from time to time.

Running meetings instead of facilitating

Scrum Masters should be facilitating meetings, not running them. Facilitate to help the team reach their goals and take advantage of coaching or mentoring opportunities as they present themselves.

Acting like a Project Manager

Scrum Masters wear many hats, Project Manager is not one of them. If you’re taking meeting minutes and sending out status reports, stop! Let the transparency of your artifacts, information radiators and the Sprint review provide information about your Product and the team’s work. As stated in the Agile Manifesto, face to face communication is also a great way communicate.

Cancels the retro

The Scrum Master is accountable for team effectiveness. This includes facilitating Retro’s to identify ways to eliminate waste and improve delivering value faster.

Developers

Sizing by relating story points to hours

One of the more difficult transitions is moving from absolute estimation to relative sizing estimation. It takes time and focus. Don’t worry about trying to be exact. You can become more predictable using relative sizing estimation and it’s easier and geared toward teams.

No time for improvement

Sometimes due to pressure from management teams feel like they don’t have time for improvements. It is a necessary part of Scrum and should not be overlooked.

Using Daily Scrum for status reporting

Reporting a status to the Scrum Master is how many Daily Scrums start on new teams. The Daily Scrum is for the Developers. Use it in whatever way helps you best achieve the Sprint Goal through discussion, planning and adapting.

Making stuff work for the Sprint Review when it’s not done

If it’s not done, it’s not done. Don’t waste time making something work temporarily for the Sprint Review.

Hiding technical debt

We should be addressing technical debt. Not being transparent about technical debt is just going to come back to bite you. We need to be open with the Product Owner and Stakeholders about technical debt since resolving it at some point, means delivering less value.

Using something other than the product increment for the Sprint Review

The Agile Manifesto says we measure progress through working software (or product). The Scrum Guide says we should produce a done, usable increment at the end of every Sprint. Nix the Powerpoint slides and screenshots. Show your working product in the Sprint Review. Otherwise, you are losing transparency and may not adapt appropriately.

 

 

"...The idea that many decisions had to go through the Lead was part of the process...." That's a very old way of leading a team. Practically no one does it anymore. I've learned from managing teams with and without Leads, that they are very much needed, but not as a sole decision maker. Same as Product Managers do not make product decisions within the teams alone, but rather lead the process of Product Development.

Like
Reply

Wonderful insights. But let’s be pragmatic now.....I hear that word all the time. 😀

Like
Reply

To view or add a comment, sign in

More articles by Eric Bobo

  • Why We Forecast in Scrum Instead of Commit

    The Challenge A common misunderstanding leaders and managers have when moving from Waterfall to Scrum is that the team…

  • Planning in Scrum - Part II - Challenges

    In my previous article, Planning in Scrum – Part I, I provided an overview of planning in Scrum and how Scrum’s three…

    1 Comment
  • Planning in Scrum - Part I

    There is a common myth that we don’t plan in Scrum. That couldn’t be farther from the truth.

    2 Comments
  • Why Don’t We Inspect & Adapt (Distributed) Scrum Teams?

    In my last article, Don’t Get Stuck in the Wagile Zone, I talked about the challenges that organization’s face when…

  • Don't Get Stuck in the Wagile Zone

    The world is moving to Agile, and Scrum is leading the way. While some companies have successfully transformed their…

    4 Comments

Others also viewed

Explore content categories