Communication

Zero Inbox

Today I’m sitting at a huge indoor playground, my son is here for a birthday party. I brought my laptop with the intension to ”write something” 🙂 . Earlier this week, I saw the hashtag #ZeroInbox mentioned by one of the persons that I’m following on Twitter. It seemed like a big deal, that #ZeroInbox was reached (meaning no emails in your inbox). I have that all the time, so I started to wonder why that is important, and maybe if I should write something about how I achieve it.

”Zero

Introduction

First of all, I’ll set you into my context. I get about 50 – 100 emails every working day. Some of you may receive a lot more than that, some of you less, but I assume the amount I get is pretty average. Many of the emails I get, are from the fact that I participate in email-lists (for example alerts of status changes in a ticket system). Maybe 10 – 20 emails per day are coming from other persons.

What are the reasons to keep ”zero inbox”? For me they are:

  1. I don’t feel any stress that there are things in my inbox that are important, and that may need my urgent attention. Checking the inbox regularly prevents that from happening.
  2. Very seldom things get ”lost in the inbox”. I have a system to keep track of the things I need to do.
  3. I have a possibility to act immediately when something pops up. There is not ”a long list of unread mails that may contain even more urgent things” that are blocking me.
  4. Overall, ”zero inbox” gives me the feeling of control, to be on top of things. I’ve also written about this earlier.

Below I have listed the rules that I try to live by, to keep #ZeroInbox at all times.

1. Use your mobile phone

You must be able to read your working email on your mobile phone (or other device you have with you all the time). Otherwise, you can’t apply my rules. But I guess most of you already do that.

2. Don’t have any filters/macros

I don’t use any filters/macros (for example moving emails in the inbox from a certain sender to a sub-folder). Why not? Isn’t that a good was of keeping #ZeroInbox? First of all, filters/macros you can (or should) only use on emails you get from systems (or email-lists). Then you can create a rule looking at the sender and then move them to a sub-folder. That sub-folder will of course increase and hold ”X unread emails”. That to me is stressful (to have unread emails). What do I do then? When I see an email from a system in my inbox I do:

  1. Delete it immediately (which is 99% of the cases, it takes about 5 seconds per email to do)
  2. I act on it immediately (for example a ticket is completed I send off ”good job”-message to the developer that fixed it).

The down part of not keeping them in a sub-folder, is that you can’t go back and search for old items. That is slightly true, but I almost never find the need to go back, and if I have to, I can check in my deleted items folder (which I don’t empty too often, maybe twice a year).

3. Checking emails all the time

Some of you may disagree with me on this one, but I check my inbox all the time. It’s the only was to keep #ZeroInbox! If you sit in meetings all day, and fall behind (emails is piling up in your inbox) there is no way to get back to #ZeroInbox (or at least that will require a huge effort that you will feel resistance to do). What shall you do if you have meetings all day then? There is always some time before, and in between meetings, clean your inbox then. Maybe someone else is talking at the meeting and you are ”out of focus” for a while? Pick up your phone and clean your inbox.

4. Emails I have to act on (i.e the ones sent directly to me)

Do I delete all my emails? Of course not. I use a system with sub-folders to keep track of them. The folders are ”in the cloud” so I can reach them all the time from all my devices. Some of you may keep an email in the inbox as a ”signal” that this is something to act upon, or keep it marked as unread. I don’t do that. All the things I have to do I keep track of using on online kanban board, right now in Favro.

5. Deleting emails (i.e. CC or from systems/emails-lists)

This may sound frightening to you, but I delete most of the emails I get. This means probably over 90%. Some rules fot that:

  1. If I don’t feel the urge, or have the time, to do something about the email I received now, I will probably not have it later either (if I keep it).
  2. If I’m on CC on the email, I got it ”for your information”, I’m not driving the discussion and therefore I can delete it (to be honest I keep CC-emails in some cases, moving them directly to a sub-folder after reading them).
  3. System emails / email lists – Just by the subject I can decide if I should do something or delete directly (see the filter/macro rule).

Summary

There you go, my rules for achieving #ZeroInbox. Are they applicable for your situation? It should be if you receive less or the same amount of emails that I get every day. If you get more, or don’t have the possibility to continuously check emails, you probably have to think about something else. Until next time, enjoy!

All the best,
Tomas from TheAgileist

Tachometer to find perfect flow

How do you obtain a ”perfect flow” of work tasks passing through your software development team? That question have been in my head for quite some time. I can start by admitting that I don’t have a solid answer to that question (yet). However, I have instead thought of a way to visualise if you are having ”perfect flow” or not. How? I’m thinking of a tachometer!

”Tachometer”

Tachometer to find perfect flow

First of all, this is just an idea that popped into my head (this is actually the first encounter with the ”outside world”, so please bear with me). The idea is however to use a tachometer to indicate ”perfect flow” on a kanban board for a development team. Just like a tachometer is indicating if you are using the sweet-spot of your engine at any given moment.

My little example is a kanban board with three columns:

  • Design – Given the value 1
  • Development – Given the value 2
  • Test – Given the value 3

The values are used to calculate the position of the needle in the tachometer. I will now give you three examples that hopefully explains it all!

Example 1 – ”Too early”

”Tachometer

In this example three tasks are in the ”Design”-column, giving a ”tachometer value” of:

1 + 1 + 1 = 3

Thus indicating that we are ”too early”, and that the later steps in the flow (”Development” and ”Test”) are not utilised. The analogy with a car would be to ”gear up” meaning that the team needs to take the ongoing tasks to the later steps of the process.

Example 2 – ”Too late”

”Tachometer

In this example three tasks are in the ”Test”-column, giving a ”tachometer value” of:

3 + 3 + 3 = 9

Thus indicating that we are ”too late”, and that the team soon will run out of things to do. The similarities with a car would be to ”gear down” and for the team to put focus on feeding in new tasks to the kanban board.

Example 3 – ”Perfect flow”

”Tachometer

In this example the three tasks are evenly spread between the columns, giving a ”tachometer value” of:

1 + 2 + 3 = 6

Thus indicating that we have a ”perfect flow”, and that the steps in the process are utilised in the best possible way!

Summary

I understand that the mathematical formula behind this idea must be improved if this should become a reality. There are also cases where a tachometer like this will not be useful, for example if the team has just started. Maybe this can act as a challenge to manufacturers out there of digital kanban tools to add a tachometer in their product!

All the best,
Tomas from TheAgileist

Switch

In an old episode of Seinfeld it’s discussed and concluded that ”the switch” can’t be made (in this case meaning to switch a girlfriend for her roommate). The book ”Switch” tells another story, about making changes that last. This book is written by two brothers named Chip and Dan Heath. The subtitle is ”How to Change Things When Change Is Hard” and was released 2010.

”Switch

”What looks like a people problem is often a situation problem” – Chip Heath & Dan Heath

Content

The book consists of 11 chapters, divided into three sections, and they are:

1. The Surprises About Change

DIRECT THE RIDER
2. Find the Bright Spots
3. Script the Critical Moves
4. Point to the Destination

MOTIVATE THE ELEPHANT
5. Find the Feeling
6. Shrink the Change
7. Grow Your People

SHAPE THE PATH
8. Tweak the Environment
9. Build Habits
10. Rally the Herd

11. Keep the Switch Going

The first chapter is describing change, and mentions that to change someone’s behaviour, you’ve got to change that person’s situation. Wisdom from psychology says that the brain has two independent systems at work all the time. First, it’s the emotional side (instinctive, makes you feel pain or pleasure). Second, it’s the rational side, also known as the reflective or conscious system. If you want to change things you have to appeal to both sides! To use the vocabulary of this book: You have to speak both to the Rider and the Elephant. One other advice about change is that you have to provide crystal-clear direction.

The ”magic formula for change” boils down to the following:

  • Direct the Rider – What can look like resistance is often lack of clarity (give crystal-clear direction).
  • Motivate the Elephant – What looks like laziness is often exhaustion. You have to engage the emotional side.
  • Shape the path – The situation (including the surrounding environment) is called ”the path”.

How to find the bright-spots? Use the following question: ”What’s working and how can we do more of it”. One other tip is to use destination postcards, they do double duty: The show the Rider where you are heading, and they show the Elephant why the journey is worthwhile. They can be incredibly inspiring!

When it comes to shaping the path two strategies are described:

  1. Tweaking the environment
  2. Building habits.

Recommendation

I can recommend this book, it presents a simple formula for making change. The challenge is of course to tailor and implement it for your specific needs. I have not tried out this yet.

All the best,
 Tomas from TheAgileist

Famban

What is Famban? That is my own abbreviation of Family + Kanban! In other words, our attempt to visualise and keep track of all activities within our family. Can’t an ordinary kanban board solve that need? Of course, but we have made some additions that we find useful. It’s also quite fun to come up with a new name for something, I admit  🙂 .

”Famban

Famban in Favro

Setup

We use a collection in Favro with three boards:

  • Ongoing week (with one column for each day in the week – Monday to Sunday)
  • Next week (same setup as above)
  • Further ahead (with two columns; Coming – To keep track of things that are 2-4 weeks ahead & Later – to store stuff even further away).

Why have a bi-weekly schedule? It seems to fit our needs best. You could have a one week rolling schedule or four weeks instead, depending on your needs.  

We use color coding (called Tags in Favro) to visualise different types:

  • Recurring activities (Green) – Used for all recurring family activities, for example ice hockey school on Sundays for my son.
  • Activities (Blue) – To cover all “one off”-activities.
  • Travel (Red, not shown in picture above) – To keep track of an “activity” that spans more than one day.
  • Food (Purple, not shown in picture above) – We had an idea to keep recipes in here to also plan our dinners. To have 10-15 of our favourites to be able to spread them out during the two weeks and have some variation. We had not really succeeded in this though.

Operations

The operations of Famban is easy! Since Favro has a very good web interface for computers, together with apps for iOS and Android we can reach it everywhere all the time. This is the number one benefit of having a digital board like this!

It’s mainly me that maintains the Famban board. Every time an activity comes up, it’s added to one of the boards (ongoing week, next or further ahead).

Once a week, usually on Sunday, the next week is discussed and planned in more detail. Basically I then make “next week” the “current week” by switching places on the two boards (a simple drag and drop operation in Favro). I also change the week numbering (week 47, week 48 etc.). A trick here is to have double of all recurring activities, so you don’t need to copy them between the weeks.

Famban on fridge

”Famban

Our first attempt of Famban, was to put it up on the fridge. That is the most “central spot” in our home, here it’s seen multiple times per day by all family members. I made a physical version of the Famban board using several papers that I taped together. One problem was that it couldn’t be wider than the door of the fridge, and at the same time have the needed seven columns (one for each day in the week) and to be able to fit standard size stickies.  Therefore the “To-do” and “Done” sections were placed “below” the board.

This incarnation of Famban worked well at home, and we had daily morning meetings in front of it. The problem came when not at home, not being able to see it. Often the question came up during the day while at work, my wife called me and asked “Do we have something on Tuesday evening, or can I make arrangements with my friend X?”. That question was not possible to answer, it had to be handled later when at home again, that was inflexible so after a while this Famban board was not used.

Improvements

Here are some improvements that I have thought of, but not yet implemented:

  • When the kids get older and probably get even more recurring activities an improvement would be to add swim-lanes, one for each family member. That is supported in Favro.
  • To get the food planning up and running, adding nice pictures to the recipes would probably help!
  • We have lost the visibility by having the Famban put up on the fridge. That could be fixed by mounting a tablet device on the fridge, showing the Famban board 🙂

Summary

Famban is visualisation and family planning combined! I hope you liked this blog post, and that it inspires you to try something similar! As always, reach out to me if you have something to share!

All the best,
 Tomas from TheAgileist

Feedback Loops 2.0

Earlier on in this blog I have written about feedback loops. Time has come to revisit that topic, and also to talk a bit more how we do it right now.  

Introduction

One of the six Kanban core practices is “implement feedback loops”. Short loops gives the possibility for fast feedback. Our feedback loops are mainly implemented as a set of meetings with different cadence.

”Feedback

Purpose

The purposes of the meetings with different cadences are the following:

  • Improve quality – By giving early feedback on work, errors can be found and corrected when they are “small”, and not later when they become “disasters” (i.e., found in production by customers).
  • Reduce context switching  – By giving feedback fast, the context is still “active” and no context switching is needed (that takes time and reduces the overall productivity).
  • Implement feedback loops – As mentioned earlier, it’s one of the six core practices in Kanban.

Meetings with daily cadence

Daily standup

The purpose is to enforce all six Kanban core practices. The team captain conducts a daily standup in front of the kanban board, with all team members present. Other stakeholders can listen in. Focus is to get tasks to flow through the process, and taking care of and removing impediments (bottlenecks that are preventing the flow).

Bug Triage

We believe that over time more brains makes better decisions than just one! To prioritize between bugs is an activity known as “bug triage” in the software industry. All new bugs entered in the ticket system shall pass this meeting for decision. Fix or not? If fix, when – current release, upcoming or future? Is the bug valid, if not close.

The bugmaster (yes that’s the name!) conducts the meeting and goes through the list of bugs currently in the state “Dispatch”. Afterwards the ticket system is updated with all the decisions made on the meeting.

Meetings with weekly cadence

Status, Planning & Prioritization

The purpose is to follow up on already made commitments, but also to be agile and be able to act fast on changes from customers or in the market.

This weekly meeting has the following agenda:

  1. Action points from last meeting.
  2. Discuss the overall planning, currently we are using “The Circles”.
  3. Discuss and prioritize activities in “The Volcano”.
  4. Any adjustments needed in time, cost or scope? We work in teams, but team members can move between them to where they are needed the most for the time being. If we can, we cut the scope for a release (we work in priority order, starting with the things that are promised to customers so it is possible). A last outcome is to postpone the release (change the release date).
  5. Any other business. Sometimes we use “The Shooting Target” to focus when we get closer to a release for a product.

The Head of Project Management is conducting this weekly meeting together with other stakeholders and the captains from the teams. A written protocol is produced and made available after each meeting.

System architect group

The purpose of this meeting is to secure that we have an architecture for our products that is sustainable and can live a long time. General topics around the architecture is discussed (security, scalability, redundancy etc.), as well as all tickets marked “Sysarch” in the ticket system. The Head of Development leads this weekly meeting together with all system architects.

Demos

The purpose is for developers to show their work on regular basis and to get early feedback on it (before it is “too late to change”). The demo is conducted on Friday afternoons together with “fika” (Swedish phenomena – like an extended coffee break) in the control room.

Meetings with monthly/quarterly cadence

Release planning

The purpose is to produce a prioritized scope (specified on high level) together with a time plan (release date) for the coming release of a product. Stakeholders meet in one or several meetings to discuss:

  • Targets – What do we aim for with this specific release? The targets must be meaningful and understandable to ALL! They shall also be helpful in the daily work. “Shall I do A or B?”, the targets shall guide the decision.
  • Scope – What shall be included in the release.

Ad hoc/when needed meetings

Team planning

The captain calls the team for a planning meeting anytime needed. Usually this is done when the team starts to work with a new thing (fetched from “The Volcano”).

Kaizen meeting

The purpose is to secure that we improve the teams and the process a little step every day (continuous improvements). Before we had this meeting regularly (bi-weekly), but we sort of lost momentum. Now the meeting is called upon when needed (something in the team or process needs to be improved). We use a channel on Slack to bring up the topic with two possible outcomes:

  1. The topic is discussed and solved on the channel directly
  2. The topic is extensive and a meeting is needed (or some smaller topics are collected before a meeting is called).

The Agile Coach and the captains together with other persons with interest in the topic(s) perform the meeting. The outcome is documented on the Slack channel.

Summary

There you go, these are the meetings we conduct to implement feedback loops. We also have some other channels for feedback, but I save them for another blog post. What type of feedback loops does your organization have? Don’t hesitate to contact me if you have any questions!

All the best,
 Tomas from TheAgileist

The Circles – Products´ lifecycle visualization

Before the Summer I introduced the “Circle of Life” to my teams, a way to visualize the whole lifecycle for products. How did that go?

Background and introduction

The first (and most obvious) comment was that they didn’t understand and wanted me to explain more. This type of visualization is quite rare, I have not seen or heard about it anywhere else in the Agile community. Teams are used to work with boards (Scrum and Kanban) for their short-term work. This is a visualization that is much more long-term and therefore questioned. After that I have explained more, some saw the benefits and others didn’t (someone even thought it was a complete waste of whiteboard space…).

However, one person thought it was good but needed a representation of time, a timeline if you like. I remembered an old idea, the “Product radar” with circles. The circle closest to the middle represents “now” and circles further out from the middle represents “later”. I combined the two visualizations on top of each other and The Circles was born!

”The

The Circles

The metaphor I was looking for are the tree rings seen when sawing off a tree trunk. They surely represents time! In the following paragraphs I will introduce the concepts and functionality of The Circles.

Post-its usage and colors

Try to use the same color on the post-its to group ”product families” together. Put up intended releases, with version number and intended release date, on smaller orange post-its on your products (I cut them to that size with a scissors).

Phases

We have a number of products in the example above going through different phases. Some products are ”young” and in the early phase of their lifecycle, while others are ”old” and phasing the end of their life. The way you work with them is really different depending on which phase in the lifecycle they are.

We have divided The Circles into three different phases:

  1. Build-up – Your product is brand new and you have started to build it up. You add feature by feature to make it compelling to your customers out there.
  2. Serving – Your product is so ready that you can start to make money on it, you have your first customer! You continue to add functionality to attract more customers to make even more money. You want your product to be in this phase as long as possible!
  3. Retirement / termination – For some reason it’s time to retire your product. You take it off the market, minimize the maintenance, and migrate over customers to other (new) product(s).

Movement and timespan

How does the products move within The Circles? We have set up the following rules:

1st Customer – When the product have the first customer, it moves into the ”serving”-phase.

End of Sales – When we stop selling the product, it moves into the ”retirement”-phase.

Products with releases that are planned in the ongoing quarter are placed in the “inner circle”. Things for the next quarter are placed in the “middle circle”. Product releases for the next half year are placed in the “outer circle”. This way we can visualize all product releases for a full running year! You can of course alter the timespan to suit your needs.  

Example

This is the current version of The Circles we have visualized inside our “control room”. As you can see (with sharp eyes) we have also added team avatars (magnets) to high-light which team that is working with which product/release.  

”The

Summary

No-one is questioning The Circles anymore! To discuss and update it is a natural and appreciated thing we do on our weekly planning & prioritization-meeting. Would you like to try The Circles? I would love to hear more about your implementation and don’t hesitate to contact me if you have any questions!

All the best,
 Tomas from TheAgileist

Control Room 2.0

I have previously written about the “Control room” we are using. That blog post became quite popular, so I thought I should do an update showing what we have in the room today (all in the name of kaizen – I hope you don’t forget to do your continuous improvements?).

””Favorite

Team Kanban boards

The yellow circles shows some of the Kanban boards for our teams (not all are visible in the picture). They are pretty standard, except for one that is mirrored! You can read the story about why right here.

Shooting Target

Next up is our “shooting target” shown in the red circle. Here you can read more about that. Currently we use the “shooting target” to focus the work at the end of a product release. We put the release date in the middle “to aim for”, and then everybody sees what has to be done.

TV

In the middle of the room and in the blue circle we have our TV. This 4K TV shows status from our automated tests and bug tracking system. Here we can always see the current situation. Basically green means ”good” and normal, and everything else is deviances that we need to act upon. A desktop is connected to the TV to be able to show demos and support other discussions.

Circle of Life

In the grey circle our products lifecycle visualization is shown. Read more about it here. The “Circle of Life” started out very challenged (what is this really needed for?) but then the understanding of it, and thereby importance, has grown!

The work you do on your products differs a lot depending on which phases they are in. Now this is visualized. There might even be more changes to come, watch out for upcoming blog posts on that!

The Volcano

The Volcano shown in the green circle is our oldest visualization (apart from the team Kanban boards). It is the successor of The Arrow.  

Initially we had one swim lane per product within the volcano. That didn’t quite work out since a story (represented by a sticky) could in our case span several products. Now we have two swim lanes showing origin/ownership. Features are driven by product management, and foundation/platform are driven by the system architects group.

Summary

In total we have eight whiteboards in the room (not all of them are shown in the picture). Also present in the room is a sofa (for coziness), chairs and and a small table. Meetings in the ”control room” tends to be more informal than in a ordinary meeting room.

If I compare the “control room” now with the previous blog post (posted in May 2015), all visualizations have changed (apart from the Kanban boards)! That feels very comforting to know that we are able to add new stuff as we learn more, but also to fine-tune the existing things. What does your ”control room” look like?

All the best,
 Tomas from TheAgileist