Archive for leadership

The intersection of the plan and reality (Kanban pt. 2)

Posted in Leadership, Time efficiency, Time management with tags , , , , , , , , on March 16, 2015 by danmarbes

In my last post, I shared some high level information about the way that my team is currently using the Kanban system for work management. In the nine months that we’ve been using this method, we’ve made a fair number of adaptations to make it work for us. In this post, I’ll cover the most significant tweaks we’ve made.

One of our biggest challenges is working in an environment where we are responsible for operations and support work, which by its very nature is unplanned, and project work. Our team has an on-call support rotation and many of the team members are called upon to perform support work outside of this cycle due to system access or product knowledge not shared by the entire team. As you might imagine, this can create conflicts between what we planned to do and what we actually have to do to keep the lights on.

The Kanban system offers a mechanic that helps us to identify these conflicts: the block. Whenever planned work cannot move forward, it is placed into a blocked state. This can occur for a number of reasons. We may be called away to deal with a system outage, we could be waiting on a vendor partner to provide information or another internal team to deliver a piece of the work or we could simply be waiting for an available change control window to promote the work to production. The reason for the block is ultimately less important than the process we implement to resolve these issues when they occur.

In my last post, I talked about the role of the board owner as the arbiter of priority and work sequencing. Another critical role that person plays on the board is the “icebreaker”. As mentioned in the last post, once a resource moves a work card from “to do” into “doing” they are accepting the accountability for completing that work, ideally in the estimated time frame. As such, they are initially responsible for resolving conflicts that are causing blocks. The expectation on our team is that resources will work to resolve these items until the team’s next daily stand-up meeting. If the issue cannot be resolved, then the board owner takes over the resolution of this conflict.

Structurally, we’ve modified our board to include lanes to accommodate our most frequent delays. Early on, we realized that we needed to account for our internal change control process which often adds 3-7 days from the time that something is completed and ready for promotion to production until it is actually released. To account for this we added a sub-lane under “doing” called “waiting for release”. Work cards can move here after being submitted to our change board and a date is added to the card indicating when this will move into production. Once approved and released, this card is moved to “done”. This way, we don’t tie up the WIP limits for our team with cards that aren’t really being worked on.

We also end up with items that are waiting on other internal teams or vendor partners. We decided that if these items are going to cause work to be blocked for more than one day, we needed a place to store them until these issues were resolved. We created another sub-lane under “doing” called “waiting on others” and now move cards to this lane if we reach an impasse or anticipate a significant delay with work completion. We make a point of reviewing these items every morning to keep ourselves disciplined and focused on our commitment to completing this work. Once items move to this lane, the ownership for escalation and issue resolution lies with the board owner. Once those conflicts are resolved, these cards will move back into an active state before any new work is pulled from the “ready” lane.

One thing that we reinforce is that simply because an individual resource’s WIP limit is two items doesn’t mean that he or she needs to have two work cards active at all times. We know that there are daily admin activities, email, support work and numerous other small issues that crop up throughout the day. We’ve set a guideline that any support work or other activities that won’t consume two hours of dedicated time are outside the scope of the board entirely as the administrative overhead of managing cards for these items just doesn’t make sense. On days where a resource is on-call or stuck in meetings all day it is not uncommon to see no cards in that individual’s lane and that’s OK. This is simply another data point that the board owner can use to estimate the real cycle time for work items.

Whew! Hopefully all of that makes sense. In next week’s post I’ll recap a great discussion I just had with a small business owner asking how to get started in designing a board that works for a particular situation and how to start using it.

Get more done by doing less! (Kanban pt. 1)

Posted in Leadership, Time management with tags , , , , , , , , on March 14, 2015 by danmarbes

About a year ago, after several years of leading top notch technical resources, I took a step back to think about what my team was doing and how effective it really was. Even though we consistently busy and felt that we were providing a lot of value for our business partners, I got a distinct sense that there were some real challenges preventing us from delivering our best. Specifically, the culture that we lived and worked in, combined with our team alignment, made for a chaotic work day. As I analyzed the issue I found several common themes:

1) Work took a lot longer to get done than it probably should have
2) Many projects and tasks got started but never seemed to reach the finish line
3) As a resource manager, I didn’t really have a clear idea what my team was working on
4) There was friction within the team tied to a lack of understanding around who was doing what
5) Team members were frustrated that they were often in the middle of conflicts about what work needed to be done “now”

In short, while we got a lot of “stuff” done, we didn’t have a good system for organizing and managing that work. We took in work from multiple systems including our incident/problem management system, our project management system, our own list of items we wanted to do as well as walk-up requests (truly everyone’s favorite). We were operating in a “squeaky wheel gets the grease” mode and it just wasn’t efficient. Our level of engagement was declining and work kept pouring in.

If you work in or manage in a traditional IT shop, this probably sounds familiar. This is where we were in the second quarter of 2014 and I feared that our team was nearing implosion.

Thankfully, one of my peers had been exploring the Kanban system of work management and I decided to run a short-term trial to see how it would work for us. It ended up helping us turn the tide and in the nine months we’ve been using it, I feel it has revolutionized our practice.

Kanban is a a product of the Toyota lean movement originally (http://en.wikipedia.org/wiki/Kanban) and was developed to increase production line efficiency. It was subsequently adopted for development work (http://en.wikipedia.org/wiki/Kanban_(development)) and also for overall workflow management in knowledge work.

At its core, there are several key concepts. The two most important ones are:

1) Visualize the work
2) Limit work in progress (WIP)

All work in a Kanban system is listed on story cards which can be something as simple as an index card or a sticky note. One of the first things we needed to do as we got ready to make this transition was to centralize our project tasks, big support items and all of the information in people’s heads and on personal whiteboards, notebooks and stuck in desk drawers. Once done, it was all out in the open and that alone was a huge step forward. We then looked at every item and classified it by size, in our case how many working days it would take to complete. We decided that our maximum card size would be five days and that anything requiring more time to complete would need to be broken down into smaller tasks.

This was tough in some cases but the logic is that we want to reduce work to the small, manageable tasks that we know can be delivered in a finite time window. We don’t want things to drag on for weeks and weeks delaying any sense of accomplishment or progress. It also helped us eliminate waste in our process. Rather than saying “I’m working on this project for 40 hours this week” which is directionless statement that we have two tasks that require 3 working days to complete.

During the two weeks we took to get everything recorded, I stressed that priority did not matter. Whether the task on the card was part of a mission critical project or something that was a nice-to-have improvement, they were treated the same.

Once we had all the cards, we placed them onto a board. Again this can be something as simple as a wall. This board is divided into lanes which indicate what stage the work is currently in. A very simple model would include four lanes from left to right: “Backlog”, “To Do”, “Doing” and “Done”. For this example, I’ll use this design with one addition specific to a team environment, within the “doing” lane each resource has their own sub-lane.

 

Some quick definitions:

Backlog: Work that has been requested but not prioritized/sequenced or approved to start.

To Do: Work that is approved to start and has been reviewed to make sure that it is actually ready to start, is well defined and has the appropriate size recorded.

Doing: Work that is in progress.

Done: Work that has been completed according to the specifications in the card.

 

Once all of the work was written down and placed into the backlog on the board, it was time to start getting it done. Here’s where we implemented a change to resolve on of our major pain points. In a Kanban system, all of the work sequencing (or prioritization if you prefer that term) is done by the board manager. In our case, this is my role as the team lead. When resources are ready to start work, they simply grab the top item in the “To Do” lane and move it into their “Doing” lane. Any conflicts in priority among tasks is handled between the stakeholders and me without involving the resources. We want our technical experts focused on doing work, not stuck in meetings and battling politics and planning issues.

Here’s where the magic starts to happen.

We enforce a strict WIP (work in progress) limit on each resource which is generally two items. This means a resource cannot be working on more than two items at once. Why? Because multi-tasking is horribly inefficient and plenty of studies have shown that the time it takes to switch between tasks and get back on track is significant. Also, once a resource has moved cards into their “doing” lane up to their WIP limit, they are committed to finishing those cards before grabbing more. I’m sure we all know someone who has started five or more “projects” around the house but completed none so the bathroom doesn’t have tile and the bedroom needs paint and so on. By committing to a smaller number of items, we actually turn out a better product faster. Our decision to limit card size to five working days also helps ensure that work is constantly moving through the system. This helps drive a real sense of accomplishment when resources move those cards to “done”. I feel the ability to feel productive is really at the core of engagement,and I’ve witnessed a cycle of productivity driving engagement driving productivity.

Over the next few weeks, I’ll detail more about we implemented the system, the tool we used, the process for dealing with unexpected/unplanned/rush work, how this allowed us to get rid of our regular weekly team meeting and how we continue to evolve this to meet our needs. Additionally, we’re just beginning to explore how this model works in a multi-team deployment so I’ll share those experiences as they happen.