Category Archives: Kanban & Lean

Posts related to Kanban and Lean methodology.

How Project Settings Work in Kerika (A Preview of Coming Attractions)

Here’s a teaser video of the new Kerika user interface, which we are getting close to releasing…

Among other things, we will consolidate and improve a bunch of project management features under a new “Project Settings” button.

Check it out:

Lean Government & Holacracy: the Video

Here’s an hour-long video of Michael DeAngelo‘s presentation on Lean Government & Holacracy in Washington State:

Highlights from his talk:

On the Office of the CIO

  • Roughly 4,000 IT professionals in Washington State.
  • About 80 agencies run their own IT teams.
  • Office of CIO sets strategy and provides oversight.
  • Transform government through technology and culture.
  • Created the small business hub: business.wa.gov
    • Run as a Scrum project, with 1-week Sprints.
    • Adopted customer-driven design.
    • Successful example of using Lean Startup methodology.
  • Driving the use of Software-as-a-Service (SaaS).
  • Practice and “open office” style.

On Lean Government

  • Started in Washington State with Governor Christine Gregoire.
  • All agencies are required to have a Lean focus.
  • Challenge: how to be an “employer of choice” for IT professionals, given stiff competition from Amazon, Microsoft, etc.
  • Several agencies have an active Agile/Scrum practice, but this is still in pockets within state government.
    • Office of the CIO
    • Department of Licensing
    • Department of Labor & Industries
  • Impediments to adopting Agile:
    • Having the right tools
    • Having the right sort of contracts
  • Agencies adopting Agile are largely implementing this in a software development context.
  • Developing the Agile QA Scorecard.
  • Developing Agile Procurement for more flexible contracts with vendors.

On Holacracy

  • Goal: empower employees to organize themselves.
  • There are no managers.
  • Washington State is first government anywhere to practice holacracy.
  • Washington State is also the first organization anywhere with a represented workforce (i.e. with employee unions) to practice holacracy.
  • Doing an A/B test of holacracy vs. hierarchical organization, in cooperation with Harvard Business School.
  • Hypothesis of A/B test: self-organizing teams will produce better employee outcomes.
  • Measure for a year and see what the results are.
  • Looking for three categories of metrics:
    • Are employees more engaged, with better retention?
    • Are there better customer outcomes, where “customers” are other agencies?
    • To what extent is an organization practicing holacracy more able to achieve larger organizational objectives
  • Instead of managers, there are roles that are assigned certain accountabilities.
  • Holacracy and Agile have things in common:
    • Bias towards action
    • Be iterative
    • Don’t make up all these demons that might show; see if they actually appear
  • Holacracy and Agile are different:
    • Holacracy isn’t about getting buy-in on your ideas from the team.
  • The Scrum roles, e.g. Product Owner, Scrum Master can be added as holacracy roles in a particular circle.

Quotes

“The reality is, a lot of the cloud providers can provide better security solutions than we can afford internally.”

“For us, cloud is actually one of the strategies for increasing security for the state.”

“The interesting question is, how do you do oversight and QA — really project management QA, not just traditional software QA — in an agile context?”

“One of the metrics for Agile QA: is the business engaged?” (Not just steering committees like before, but do we really have engaged product owners.)

“The contracts and procurement shop in state government practice what they call XP — Extreme Procurement”

“Washington is the only state to practice Agile Procurement and Agile Contracting”

“Downside of holacracy: everyone loves to tell me that I am not the boss of them”

“No government has ever practiced holacracy before.”

“Holacracy has never been practiced with a represented workforce before. (One with employee unions.)”

“I have been practicing holocracy for a few months, and I feel like I have a different set of lenses through which I look at work.”

“When I talk to people who are not practicing holacracy, I see evil spirits around them, like bureaucracy, office politics, inefficient meetings…”

“We develop these habits to compensate for the deficiencies of a hierarchical organization, instead of trying to change it, and this is after thousands of years of evolution.”

“The team has to want it: you need opt-in for holacracy to work.”

“Imagine trying to play soccer with a hierarchical organization, where the team is run by managers who are responsible for different sections of the field.”

“Because I am the manager, you need to always pass the ball to me. Ridiculous as that seems, that’s how hierarchical organizations work.”

“90% of my time is spent on crap that runs government work, and that’s because of the authority of my position.”

“As a manager I don’t have a passion for a lot of things, but other people might, so I want to give them the authority to take them on.”

“Healthy habits in a dysfunctional system become unhealthy habits in a functional system.”

“In holacracy, you quickly learn what makes for a valid objection.”

“The type of people who would not respond well to holacracy are managers that derive their self-worth on span of control.”

“There’s a category of employees who have no interest in being self-directed: they just want to be told what to do.”

Signalling priority in Kanban and Scrum Boards

Kerika makes it very easy for everyone within a distributed team to always have the same clear understanding of what’s most important, within any part of a project’s workflow.

With a Task Board or Scrum Board, simply drag cards up or down to show their relative importance: stuff that is on top of a column is more important than stuff that’s at the bottom.

This is a super-simple way of signaling priorities: it removes all ambiguity within a distributed team, because only one card can be at the very top of a column — i.e. only one item can be “highest priority” — and only one item can be in the second position within a column — i.e. only one item can be “next highest priority” — and so forth.

A great side benefit of this method is that it keeps managers honest: it is no longer possible for a point-haired boss to claim that a bunch of things are all “top priority”.

Pointy-hair boss
Pointy-hair boss

How “Sort by Status” works

When working with Task Boards and Scrum Boards, you get a variety of options for quickly sorting a column of cards:

Sort options
Sort options

Sort by Date is easy enough to understand, but what about sort by status?

Sort by Status organizes the cards in a column as follow:

  • Critical
  • Is blocked
  • Needs rework
  • Needs review
  • In progress
  • Normal
  • On hold

This sort order reflects the normal priorities of most projects: the most important stuff would ideally show up at the top of the column to get dealt with first.

How to undo a “Cut” operation

Cutting and pasting cards from one Task Board to another, or from a Task Board to a Scrum Board for that matter, is easy and simple with Kerika: just select the card, and then click on the “Cut” button that appears at the top of the column:

Cut button
Cut button

You can cut several contiguous cards within the same column by shift-selecting them, and then clicking on the Cut button.

And, you can also access the Cut operation by using the right-click mouse menu:

Right-click menu
Right-click menu

Cutting-and-pasting is effectively a move operation: it moves the card intact, along with its details, tags, attachments and chat, from one place to another.

You can cut and paste within the same board, of course, but this is pointless since it is much easier to drag cards from one column to another.

Cutting and pasting cards from one board to another is much more useful, and it doesn’t matter if the source is a Task Board or Scrum Board, and the destination is a board of different type — or even if the destination is a Template.

But what should you do if you click on the Cut by mistake? Well, that’s easy to undo: just click on the cut cards — which will appear slightly greyed-out — and the cut operation will be cancelled!

Finding the next unread update in a long column

When working with a crowded Task Board or Scrum Board, you want to be sure that you haven’t missed any updates on cards that are out of view: for example, updates that are out of the scroll area because a particular column of cards is very crowded.

Kerika makes sure you don’t miss anything, and it does this will a handy little button in the form of a downward pointing caret that appears at the top of every column where there is at least one card that needs your attention:

Finding all the changed items in a long column
Finding all the changed items in a long column

Clicking on this button will help you quickly find the next updated card in the column, and then the next, and so on.

The color of this caret (button) depends upon what sort of updates are present in a column:

  • If the column contains any overdue cards, the button is red, to alert you to the overdue problem. (We figured this is the most important information we could show you, particularly if the overdue card is out of sight.)
  • If the column contains any new cards, the button is blue. Unless, of course, the column also contains overdue cards, in which case the overdue condition is considered more critical than the fact that you have new cards, and so we show the red button.
  • If the column simply contains updated cards, and nothing that is new or overdue, the button shows in orange.

Regardless of the color, the button works the same way: clicking on it will help you find the next card of interest within that column, and then the next, and so on. The column will automatically scroll as necessary to show you updates that would normally be out of sight.

And when you have caught up on all the updates, the button goes away automatically. Neat, huh?

Kerika @ Kerika: How we use our own product

We are often asked how the Kerika team itself uses Kerika, and we freely share this through demos we have done in person for potential customers and at various events. For those who we haven’t met in person, here’s a blog post instead..

1. Kerika runs on Kerika.

Pretty much everything we do, from the smallest, tangential effort to our main product development is done using the Kerika software.

(It shouldn’t surprise you to hear that, given that we are a distributed team ourselves — spread out between Seattle and India.)

2. No email, limited phone calls

In fact, we gave up using internal email back in Dec 2013. (Email sucks, and Kerika is the smarter alternative to spam.)

Because our team is spread out over 10,000 miles, we do occasional phone calls, using Skype or Google Hangouts, to discuss product strategy, but we don’t have daily phone calls as a matter of routine.

We have a phone call only when there is something substantial to discuss, never to catch up on routine status. In other words, all our phone conferences are about interesting topics, like “What do you think about this idea…?” or “I met a customer today who brought up this problem…”; never about “Where are you with Task X?”.

Kerika keeps us in perfect sync across these 10,000 miles on all matters of routine status and project management, so our phone calls are all strategic in nature.

3.  Scrum for Product Development

We work with a 2-week Sprint Cycle for the most part, although we have occasionally deviated from this — never with great results, so sticking to the cycle is usually a good idea!

We capture all of our product ideas and feature requests in one large Scrum Board, which we call, simply, Product Planning.

This board organizes our ideas into various buckets, like Valuable for Enterprises and Valuable for Individuals:

Product Planning buckets
Product Planning buckets

You might notice that the Backlog column is relatively small: only 54 items. That’s because not everything in the other buckets is ready to go into the Backlog, either because a feature isn’t well defined enough, or it isn’t considered important enough to deal with in the short-term.

(We have a lot of ideas that sit and gestate for months, even years!)

It’s also worth noting that the Trash contains 62 items: this means we reject as many ideas as we pursue!

4. A Shared Backlog

As ideas for various features get prioritized — and, more importantly, defined clearly enough to be analyzed in detail by our developers — they get moved to the Backlog.

This backlog is shared by all the individual product development Scrum Boards:

Product Planning process
Product Planning process

(And, by the way, the screenshot above is from a Kerika Whiteboard that we use to map out our product planning process.)

Each Sprint is organized as a separate Scrum Board, pulling items from the common Backlog.

As items get done (or not, as the case may be), the Backlog slowly shrinks over time.

But, as ideas for new features gets firmed up on the Product Planning board, this keeps feeding more stuff into the Backlog. So, the net result is that our Backlog has remained the same size for years: about 50-60 items.

We have been doing this for a while now, and are currently wrapping up Sprint 55, with each Sprint taking at least 2 weeks, and several taking 1 month to complete.

Here’s an example of one of our Scrum Boards:

Scrum Board
Scrum Board

5. Kerika’s Smart Notifications

So, if we are a distributed team that doesn’t use email, and not that much phone either, how do we keep up with what’s happening? The answer is: Kerika’s smart notifications help each of us easily keep track of changes taking place across literally hundreds of cards each day.

Here’s an example:

Smart notifications
Smart notifications

At a glance we can tell that this card has

  • Moved
  • Has a new due date
  • Has new attachments
  • Has new (unread) chat messages
  • And, unfortunately, needs rework 🙁

These smart notifications replace dumb email with a much more efficient mechanism for keeping everyone on the same page.

6. The Development Process

If we open up one of these cards, we can get a glimpse of the Kerika development process. Let’s start with the chat thread on this card:

Example of new chat
Example of new chat

This chat shows a typical interaction between a junior developer and a technical lead: after writing the code for a particular feature, the developer has passed it on to the tech lead for code review.

The code review itself is attached to the card, as an attachment:

Adding code review to a card
Adding code review to a card

For each feature we develop, our engineers create a small work plan that outlines their design thinking.

This design/work plan is a critical artifact for good software development: it ensures that people can review the work more easily and effectively, and it also provides a reference for the future — if ever a bug is found in this particular feature, we can go back to the work plan to see where the design flaw may have originated.

The code review is typically very short, and attached (in this case) as a Google Doc:

Example of code review
Example of code review

 

7. Card History

Each card in Kerika keeps track of its own history, which makes it easy for a distributed team to keep track of everything that happened. Frequently, a number of changes may have taken place on a single card during a workday, and someone who is 10,000 miles away is also about 13 hours away in terms of timezones, so the history feature is useful for understanding all the changes that took place when you weren’t looking.

History of the work
History of the work

 

So, that’s a typical card, on a typical board. And, in a typical 2-week Sprint Cycle, our development team handles 175-200 cards!

We love Kerika, not just because we have built it, but because it makes our distributed team so very effective!