Examining How to Adopt Scrum

Scrum presumes it is effective to give all teams a simple preset, immutable framework that each team must follow until they figure out how to manifest it.

Scrum is designed for and requires cross-functional teams doing work that is plannable. If these conditions aren’t met it is presumed that manifesting Scrum’s rigid framework will achieve Agile in all situations if people are motivated.

An underlying believe is that teams can’t initially understand what they are supposed to do so must be given a predefined set of rules that must be implemented without change until the team understands what’s happening.

While this approach works when cross-functional teams can/should be created & work can be planned, it can causes resistance & abandonment of misunderstood practices when teams have challenges adopting the framework or attached to their roles.

Alternative
Have expert have 2 hr discussion w/ team&their management to see what alternative or additional practices would be useful. Use these to provide a set starting point and provide teams a guide on how to improve/change practices when they encounter challenges. While coaching still advisable, significantly less will be needed.

I invite people to discuss these alternatives.

Let’s stop trying to get leadership/management to ‘be’ Agile

I’m often hearing how Agile is failing because leadership and management won’t adopt Agile values & principles. I would much rather they just keep some basic agreements:

Let’s stop for a minute and ask ourselves, do we want them to ‘be’ Agile or to do the following:
1-create clarity on what the most important work to do is
2-define these as a sequence of small increments for which we can realize value. Have each of these increments include technology &any other groups needed to realize value
3-provide technology clear acceptance criteria on these items
4-provide guidance across business units as to which are most important based on cost of delay
5-allow technology to self-organize & pull the work to be done in the sequence of greatest importance when technology has capacity
6-have an agreement with technology on how to handle emergencies
7-provide feedback when needed

We have come up with the following agreements we call the guardrails:
* Focus on realizing value
* Collaborate with each other in order to maximize the realization of value
* Make all work visible
* Sustain or increase predictability.
* Keep the work within capacitythroughout the value stream
* Encourage everyone to strive for continuous improvement.


For more information on the guardrails, go here.

To see guardrails tailored for leadership and management, go here.

This blog is an excerpt from my upcoming book –Achieving Business Agility at All Scales

 

When It Is Visualization and Not Reorganization – Verticals feeding horizontals

In my earlier post I discussed the relationship between visualization and reorganization & discussed how orgs should not limit themselves to visualization but should reorganize after visualization as appropriate. But in some situations reorganization is often not a real possibility.

Consider when vertical applications drive horizontal support systems & at scale. In a financial company one might have verticals for – banking, credit cards, signature programs, loans. These feed horizontals such as – payment processing, transactions across accounts, client account setup and maintenance …

In a situation like this, splitting up the horizontals into trains to work with the verticals won’t necessarily work well – either when you run them as separate trains or as part of the vertical train. Running the horizontals as separate programs doesn’t solve the problem either as they are each pulled in multiple directions.

In these cases, it is often best to create visibility on the work to be done by using Minimum Business Increments as the guide for what to work on across the organization.

n is often not a real possibility. Consider when vertical applications drive horizontal support systems & at scale. In a financial company one might have verticals for – banking, credit cards, signature programs, loans. These feed horizontals such as – payment processing, transactions across accounts, client account setup and maintenance … In a situation like this, splitting up the horizontals into trains to work with the verticals won’t necessarily work well – either when you run them as separate trains or as part of the vertical train. Running the horizontals as separate programs doesn’t solve the problem either as they are each pulled in multiple directions. In these cases, it is often best to create visibility on the work to be done by using Minimum Business Increments as the guide for what to work on across the organization.


This blog is an excerpt from my upcoming book –Achieving Business Agility at All Scales

Rethinking ScrumBut &ScrumAnd

This is an excerpt from a chapter my new book Achieving Business Agility at Small to Mid-Scale.

Scrum.Org defines “ScrumBut” as meaning “that Scrum has exposed a dysfunction that is contributing to the problem, but is too hard to fix. A ScrumBut retains the problem while modifying Scrum to make it invisible so that the dysfunction is no longer a thorn in the side of the team.”

Continue reading “Rethinking ScrumBut &ScrumAnd”

The Relationship Between Visualization and Reorganization

This is an excerpt from a chapter of my new book Achieving Business Agility at Small to Medium Scale.

An advantage of using Lean-Thinking behind both Scrum and Kanban is that both tend to ignore one or the other in their own manner. Scrum prescribes reorganization into cross-functional teams while LKU Kanban says reorganization is “orthogonal to Kanban” most likely because LKU Kanban is based more on theory of constraints which does not focus on reorganization.

Lean-thinking suggests using cross-functional teams in product development. But you should only do this you can see what is happening. This delay may be measured in hours or months.

You don’t need to reorganize when you use Kanban, but that doesn’t mean you shouldn’t when it’s appropriate. Don Reinertsen tells us “flow when you can, pull when you must.” Reorganization to achieve flow instead of needing kanbans is a tenet of Lean.

Lean suggests the use of ‘workcell’s (teams in product development). This enhances flow while enabling more innovation. Reorganization when guided by visualization & the theory of flow can be a very effective tool. It should not be ignored.

If you know Scrum or Kanban your next course should be in a course that covers what you don’t know

I’ve written recent posts about stoping the binary thinking & a Manifesto for Agile Learning. The key point of both is that breadth is more important than depth. If you’re an SM you may have the concepts of Scrum & Agile down, but may not have what you need regarding Kanban. If all you’ve done is Kanban, there are concepts in Scrum that are quite useful as well.

I co-founded Lean Kanban University w/David Anderson (I’m no longer affiliated). One reason I left the organization was what I perceived to be a tunnel-vision view. “Visualize, don’t reorganize” is limiting in my mind. Cross-functional teams have shown to increase innovation and reduce handoffs. I’ve always like Don Reinertsen’s statement “flow when you can pull when you must.” Flow is not just about using kanban &visibility.

This is why we’ve created Team Agility, a blend of the 2 and The Net Objectives Coaching Academy for Scrum Masters and Agile Team Coaches. It’s more about effectiveness using all of the methods available instead of mere certification.

Let me know if you’d like to learn more.

NOTE: i know many Scrum & Kanban trainers who teach both, I am referring to the orgs that promote only one.

Stop the binary thinking

At a conference years ago Don Reinertsen & I were watching from the back of the room together & sometimes making comments between us about the presentations. At one point it was clear that there was a pattern of “this or that.” Don made a funny observation “these folks have been around 1s & 0s too long.” I had had the same feeling so laughed at his eloquence.

We’re still doing that. We look at Scrum as a thing & Kanban as a thing. Scrum has the cross-functional team be sacrosanct & David Anderson says “visualization not reorganization.” There is power to both. Both are proxies to what we need to do.

Conway’s law tells us “”organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.” My corollary is that “When development groups change how their development staff are organized, their current application architecture will work against them.”

We have to recognize we’re in a very complex situation. Ultimately we need to have some simple guidance to help with decisions. The root of these are:

  1. make sure what you’re building has value
  2. look at time it takes from start to end (cycle time)
  3. shorten the time any part takes from start to completion
  4. attend to quality at each step

 

Comment added:

btw, if this looks like Lean to you that’s because it is. Lean, boileld down to its essence is:

  1. systems thinking
  2. just in time
  3. build quality in

The True Intention of Scrum

Scrum was inspired by the article “The New New Product Development Game” (’86). It introduced a new way to develop new products. The question essentially was “how do we get innovation from product development teams?” The emphasis was on speed & flexibility. Several characteristics of successful development included:

  • Teams work best when they work autonomously
  • Checkpoints are needed to prevent instability, ambiguity, & tension from turning into chaos.
  • Continuous learning is essential
  • Mistakes are both tolerated & anticipated
  • Management must adopt a management style that can promote the new process

The bottom line is to have teams working autonomously but with a set direction / challenge and oversight (but not micro-management). Management has a significant role to coordinate all aspects of the organization that is required for the product. The team must coordinate with other parts of the organization to achieve value.

Scrum is essentially a framework for doing & learning. The approach requires more of a management shift to create such an environment than it is a how a team is to work. The implications of this when adopting Scrum in most organizations is significant.

Why Learning How to Decompose Stories with Acceptance Test-Driven Development (ATDD) Is not Just Decomposition

I’ve been having a very interesting twittervation about how to start teams off with Scrum. I believe you best learn by doing. And that it’s more important to get teams actually starting Agile in the workshop than merely learning Scrum which will hopefully lead you to Agile.

So we “teach” Scrum with a 1-day emulation and discussion of it followed by 3 days of ATDD. This first day teaches the essence of Scrum but it illustrates how teams work – mostly their foibles. 🙂

The other three days are on ATDD. Each day isi split by 1/2 day discussing it & then an hour with each team doing it. What we’re really teaching is – collaboration, test-first, feature slicing, and how to use minimum business increments. These directly address the issues we’ve seen most teams have- unclear requirements, stories too large, POs not appreciating the impact of interruptions and a lack of focus on finishing.

The test-first is mostly about discovery & specification but it also informs design (the 1st mantra of design patterns is designing from behavior).

The result is that once a team gets moving they can keep moving. But a course that prepares you for movement may not ever get you started.

Why We Need to Inspect and Adapt How We Do Scrum Training

Inspect (Where we are)

Years ago Ken Schwaber observed that only about 25% of organizations got what they wanted from their teams adopting Scrum. I would guess that number hasn’t changed much since then.

Back then we didn’t have the understanding of Lean principles or Kanban. We didin’t know about ATDD or GWT. Our tools were horrible. So why hasn’t improvement happened? I would suggest it’s because “Inspect & Adapt”, a key tenet of Scrum, has not been applied to how it is taught.

The symptoms of bad Scrum now are essentially what they were back then:

  • running Scrum as mini-waterfalls
  • developers & testers not working well together
  • unclear requirements
  • too many interruptions & too much work

I know certified Scrum trainers are concerned about this as much as myself. But when I ask them what’s the cause I get virtually the same list of answers:

  • management hasn’t bought in
  • people aren’t doing Scrum right
  • people aren’t being Agile

While this may be true, the question is why? A clue to that may be seen by asking yourself “where is the responsibility being placed in those answers?”

Taking Responsibility

I have heard “Scrum is like chess. You either play it as its rules state, or you don’t. Scrum & chess does not fail or succeed. They are either played, or not.” The Scrum Guide tells us that – “When the values of commitment, courage, focus, openness & respect are embodied & lived by the Scrum Team, the Scrum pillars of transparency, inspection, &adaptation come to life & build trust for everyone. The Scrum Team members learn &explore those values as they work with the Scrum roles, events, & artifacts.” Unfortunately, most teams I know new to Agile do not work in an environment where those values are encouraged, let alone manifested.

The opening line of the Agile Manifesto states–“We are uncovering better ways of developing software by doing it &helping others do it.” The “helping others do it” means you have to come from their needs & their way of learning. This is your responsibility. It doesn’t mean just giving them a chess board, pieces & a quick overview of the rules & say “learn.”

While new Scrum teams have the responsibility in what they do, trainers have the responsibility to prepare the teams. This means trainers must adapt their methods.

Adapt

Virtually all initial Scrum workshops focus on the roles of Scrum. The lack of whole team training is a core problem. The presumption that teams will figure out how to work together is not based on evidence. Instead, the focus needs to be on the actual work the team needs to do. Ironically, because Scrum is so simple, it can be taught in a day with the extra time available focusing on the work itself.

After initial Scrum training, most teams are facing even more pressure since they’ve just been trained. The challenges mentioned in pt 1 of this post should actually be expected. This often leads to them modifying the rules of Scrum without understanding how this can be done effectively. This, of course, leads to Scrumbut. Many people continue the shift of responsibility by calling them “Scrumbuts.”

The truth in Jerry Sternin’s observation “It’s easier to act your way into a new way of thinking, than think your way into a new way of acting” must be recognized. Scrum should be taught by teaching the entire team to work together in the process of creating features & breaking them down into stories while establishing how the entire team works together.

A New Approach

A new approach must recognize the following:

  • not all teams have the same challenges
  • many teams want to be told what to do

as well as provide the following:

  • a curriculum adjusted for the team(s) involved
  • teams must actually do some Agile in their initial workshop
  • Scrum Masters and Product Owners must be trained with the teams so all roles can learn how to collaborate with each other
  • SMs should be provided a flipped classroom style learning over time so they can learn “on-the-job” & stay ahead of their team so as to be able to guide/mentor them
  • a scorecard that provides clarity on the team’s effectiveness & how they can improve should be provided
  • some Lean-thinking, principles and practices (e.g., a little Kanban) since they can help teams adjust Scrum as needed

This can be delivered for about the same cost as sending teams to a CSM class if we focus more on the work & less on the framework. Using a combination of the latest training techniques (back of the room training, flipped classroom) also makes it more effective.

Doing this in initial training also avoids the resistance may teams have to adopting Scrum because they mostly see new meetings instead of actually helping them.