Tuesday, January 8, 2019

Visual Management for Software Development and IT

Use the Most Powerful Supercomputer on the Planet

The most powerful supercomputer on the planet is right behind your eyes: the human visual cortex. Visual management uses it to help teams think about the work, prioritize the work, improve the work, diagnose issues, communicate across teams, expose problems, eliminate waste, and inform management.

Visual management forms an “exo-brain” that forges team-wide understanding. It provides a forum for experimentation and data collection. It removes blame and focuses defect resolution on the visible articulation of the work, rather than “who did what”.

How can your team take advantage of this power?

Getting Started

Software development, and IT projects in general, are complicated, multi-layered and many-faceted. Effective visual management captures and exposes, all the demands for the team’s time – implicit and explicit.

Step One: Brainstorm “What Do We Do?”

Get the team together and brainstorm a complete “dump” of every kind of work, or thing, that anyone on the team does. At any, and every, level of abstraction. [Use the typical large-room/sticky-note method]

For example:

  • Technical, Operational, Leadership
  • Everything on our plate now
  • All the types of work on our plate
  • Maintenance, Defects
  • Administration, Bureaucratic demands
  • Improvements, Experiments
  • Learning/Research
  • Communication, Meetings, Corporate Events
  • Training
  • Accounting/HR demands
  • On the horizon/next quarter, looming crises
  • Things we've done before
  • What we're worried about
  • Random fires to put out
  • Off the books
  • Things we hate to do
  • “This will only take a minute” 

Step Two: Brainstorm “How do we do it?”

Teams often start thinking of this during the first session. Go with the flow and encourage continual surfacing of thought.

The types and categories change - you want to shift to thinking about the "process" and "method" beyond the actual work artifacts.

For example:

  • Milestones
  • Decisions
  • Best practices
  • Gates (go/no-go)
  • Approvals/Reviews/Meetings
  • Checklists (things to do)
  • “Meta” tasks
  • Upstream complications
  • Downstream expectations
  • Professional behaviors
  • Sister team dependencies
  • Tribal knowledge
  • “Pre-work” and “Post work”
  • Previous known tasks, “must do’s”
  • Beginning, middle, end
  • 3rd party dependencies
  • Warnings and boundaries
  • Stops and aborts
  • Engineering Principles
  • Patterns and templates

Step Three: Organize your thoughts

As a team, look at all the ideas and thoughts that have been generated.
Look for patterns, groups, similarities, and cluster those.

For example:
  • Categories
  • Class/subclass
  • Class/attribute
  • Precedence
  • Simultaneity
  • Special cases
  • Defects
  • Research
  • “Executive focus”
  • Run the business

The result

You will find there is a lot more going on that you realized. 

Step Four: Build your “first pass” visual management system

As a team, based on everyone’s thinking about the information now seen, lay out your display.
What happens to the work (all work, any work) from “beginning” to “end”?

For Example:

  • Swimlanes, zones – stage/state columns
  • Separate areas, boxes, connectors, transitions
  • Milestones/checklists
  • Experiments in progress
  • Backlogs and queues
  • Policies and practices

Let the team be creative! Use all the walls in the team room. Take over a conference room! Use Painter’s tape, sheets of paper, stickers, sticky notes, string, glitter . . .

Step Five: Review the Result

Challenge the team with the following questions:
  • If I had to “mark” all the work I do, does this capture it all?
  • For each work item/element we have, can I see each activity that item goes through? What happens next?
  • What is missing? What “should be” missing (wastes we can get rid of)
  • Where is improvement needed?
  • Where do we need to explore the work more thoroughly?

Step Six: Rinse and Repeat the following question every day

Can I tell “at a glance”:

What is the most important thing for the team to finish today?

If you can’t tell, then improving the VMS so that you can, is your most important thing.

Going forward

Expect to completely rebuild the entire display multiple times as the team begins to think more deeply about their work.

Continue to improve the display while you do the work.

Ninth iteration: What is the most important thing for the team to finish, today?

Use the Supercomputer!

As the team works, let anyone and everyone continue to improve and enhance the display. Good (useful) ideas will persist, non-useful ideas will evaporate.

These were all elements added by kaizen from empowered team members.

You should expect to be able to SEE all the work of the team


Your Visual Management System is meant to make work visible:

  • Make it possible to see all of the team’s work in one place (“everything” they spend time on)
  • Make visible the steps/states the work goes through, how to get from one to the next
  • Make explicit your standard way of working – all policies, assumptions, tribal knowledge, escalation criteria, blocking criteria, . . . 
  • Identify all categories and types of work, classes of service, upstream, downstream . . .
  • Insure “all work in progress” – off-the-books, admin, maintenance, . . . is visible
  • Make it “easy” to see what state the work is in . . . and what comes next
  • Make it “easy” to see how “close” it is to finishing (what is left to do)
  • Make it easy to capture anything that comes in outside of the team’s normal intake process
  • Make visible your continuous improvement experiments
  • Make it “easy” to discuss what is most important
  • Include all process activities or ceremonies that use team time
  • Make it easy to see the things you are doing that are NOT value-adding

 Additional Guidance: This is a Living Artifact

  • Sometimes the “most important thing” is to improve/change/enhance the VMS so you can tell “at a glance” what is the most important thing
  • Everyone/anyone can suggest/make improvements to the display
  • The team will learn/adjust the most effective level of abstraction for the display
  • The team will learn/adjust how and how often to update the display (immediately? Twice a day?)
  • Display can have multiple levels of abstraction shown simultaneously - the more information the better
  • Usefulness and communication are more important than “purity”
  • Include any work artifacts the team wants to think about

No comments:

Post a Comment