As a former CTO, I used to work with co-located and remote teams, some of them were inhouse, some on different types of contracts. Obviously, I had to manage the product development process. I tried numerous tools for this.
In this article I’ll describe how I tried to use “agile” tools and why I basically think they are not “agile”.
First of all, when you have several teams working on one project/product, you start to understand that creating an environment that focuses teams on company goals is essential.
The basic thing I thought about such environments are that tasks and goals must be visible to teams.
If my teams were in the same building I would start with whiteboards and stickers, because it is a simple setup. The whole setup of a whiteboard takes about 15 minutes. After it is set up, you can gather all the necessary people around that board for the meeting, that makes it very practical. This whiteboard usually stay up to day.
Personally, my teams were in 3 different cities at the time, so I needed a virtual board that would help me with managing the teams.
So I started my journey into “agile” tools with the product Jira. It is a very popular product, so I blindly bought a licence pack. Let me explain how it worked out for me…
It’s been said that is has agile boards so it sounded like just what I needed!
I thought (I really did) that I could draw the “Agile Board” as closely similar to what we had on the wall… But in order to create a virtual board in Jira you have to learn a lot. Let me briefly explain. Jira has layered architecture.
- ISSUES LEVEL (list of issues, they can have different attributes and statuses)
- WORKFLOWS LEVEL (describes the order of statuses, it is called “transitions”)
- VISUALIZATION LEVEL (boards, that show you configured workflows or any other subset of the workflows)
The configuration process is not easy, usually you need to find an experienced individual who understands this layers.
Jira has a lot of restrictions. The product was built on top of a bug-tracking system that focused on statuses and transitions between those statuses. On the contrary we have really smart people, they usually understand the sequence of statuses, it hinders them!
I am feeling very confused when the system tells me what I should not do. Who would stop one from picking a new task in real life? JIRA?
In the end, with restrictions, permissions and other “useful” things we managed to create a view that would fit one team, but… in terms of collaboration — I got stuck with Jira again. I had to reconfigure my brain to think on an ISSUES level, so concluded that 2 boards are two views divided by a parameter (field) of an issue. Probably this process is fine when you have only 2 teams, but if you add more, it will lead to configuration difficulties. Instead of working with work processes I had to deeply learn jira’s conception — it just did not seem right because in this era where everyone simplifies things, not making them harder to understand.
I’d say that Jira does not visualize real flow of the work, it still is a bug tracker with boards build on top of that. But when we say “transparent” we mean passing context of work processes and not losing it.
So we switched from Jira to more visual instruments.
- creating a board with certain configuration requires a deep knowledge of Jira’s conception;
- due to board is a view on top of issues you can’t configurate it freely (columns inside columns, lanes inside lanes and so on);
- very good for storing issues rather than visualisation.
By that time I learned the Kanban-method (Kanban: Successful Evolutionary Change for Your Technology Business, Kanban from the Inside — books that cover theory).
Kanban coach on a training i attended advised me to try Leankit if i am interested in kanban tools. I discovered that it actually tries to solve flow visualization problem, and looks much more promising.
Good news, in Leankit (and other kanban-focused instruments) you can draw a board without configuring workflows.
As you can see on the screenshot above — you can freely create lanes and columns, and actually more lanes and columns inside other lanes and columns. The process is a bit tiresome, but much simpler than in Jira. You are not restricted in how your board can look like.
Apart from a good board visualization, it’d like to mention that kanban tools (Leankit as well) have useful analytics shipped with a product:
- cumulative flow diagram;
- lead times spectral chart;
- and many more that rely on cycle time data (dates when card moved between columns / lanes).
This especially helps if you are actually using kanban-method for a work process improvements.
We managed to create really big virtual board in Leankit that fitted every team, but after months of using it, it became obvious that it is only “technical level”. I mean all that stickers we had there are small pieces of bigger initiatives / goals. When we had a meeting or a conference call with managers, they did not see the big picture, an actual progress. They saw 100 cards with technical names spreads around.
My first thought on how to visualize the big picture was to create a separate board with higher level tasks. Just another board where cards represent projects or strategic goals, and i failed to do so in Leankit. That’s why:
- adding strategic level to the board as a lane on top of it would make it a mess, the board was already too complex to understand and maintain;
- i could not link the cards from other boards.
Actually, i could link cards, but that would require us to jump on another tariff option, which does not seem right to me due to the pricing policy. It looked like a basic feature and not a premium one. By that time Leankit was already quite expensive.
So higher level tasks moved to Trello and not only because i failed to create that layer in Leankit, but because the managers preferred Trello due to it’s UX (it looked and felt much better by their opinion). This was not the only reason to use Trello alongside Leankit, another reason — I was unable to collaborate with remote teams who was not a part of the company. I didn’t want to share the whole board with them, only small part, but I couldn’t do that in Leankit or I didn’t find the simplest way to do so.
Another sad part of Leankit i’ve discovered — it did not support Scrum reports and entities. I checked other kanban focused tools — and they did not support it either. Basically, Scrum from kanban tools perspective, is just a configuration of columns but entities like “Sprint Goal”, “Burndown chart” and “Velocity” are not presented. Probably that’s because kanban tools did not aim to support scrum teams, yet i had such teams and they struggled.
In the end — Leankit did not seem to me like the “agile tool” i was looking for, because we had to use Trello alongside, using 2 instruments created synchronization lag in statuses` updates. The good thing was at this point i fully understood how the “agile tool” of my dreams would look like, what features it will have, so i tried to describe it and was looking to find one.
- kanban tools provide flexible board`s constructor and various useful analytics;
- board is not divisible, can’t share part of a board with external teams;
- does not support Scrum reports / entities.
Agile tool of my dream
I came to the conclusion that the agile tool of my dream requires the following features
- Visual constructor of the virtual boards that does not restrict you in how boards look like
- Cards and boards can be connected
- Scrum and Kanban-method supported in terms of visualization and reports
- It allows us to include remote teams, that are not part of a company without using other tracking software.
- User Story Mapping
- Time Tracking and invoicing
Although, Kanban tools allow you to create different configurations of the virtual boards, they don’t provide you functionality to share a part of a process but I need to share a part of a process because I usually have remote teams which are not part of a company.
Let me explain. If I want to gather 3 teams on one board, it will look like this:
- teams as (swim)lanes;
- all inside one board, sharing same columns or have a complex configuration inside cells.
That could be easily done in kanban instruments but it won’t allow you to have separate boards for each team, because they are not separatable parts of the board.
Let’s say we can have as many boards as we want in one space, then it will look like this:
- each team has it’s own board;
- each team can easily modify their own board.
We can now place any of this boards on a separate (work)space. Think of it as board can live simultaneously on different workspaces, workspace just a container for them.
If we give out permissions to space, not to the board, then we can flexible share information with different teams, having them all in one instrument.
Let me show you another example, if I want to visualize the scrum process, i will build it with 2 blocks:
- left block (product backlog) is a single-column board;
- right block is the sprint board.
We can make hierarchy of any level with that approach
So managers will have their big picture boards (like Projects on schema above), in the same instrument as the technical teams. No need to waste time on synchronization.
- visual constructor does not restrict you how many boards can be inside one space;
- boards represent parts of a process, can be shared with different people / teams.
There are several instruments and techniques that I usually used with my teams. One of them is User Story Mapping. If you never heard of it, it’s very useful planning technique. This is usually done with stickers on a wall, but with remote teams we had to pay for online software. I believe this is a widely used technique, so an “agile instrument” has to have it in it’s features.
Another big part of task tracking software is the time tracking. If you have worked with remote teams and had to create invoices, you probably spent quite a time in excels or another instruments. But why people should log their spent time on tasks in external systems?
In search of a truly agile instrument
I found only one instrument that looked like it would fit my criterias, it was GetObeya.
The problem is it was not shipped by that time, only announced.
I was so excited by an idea of agile tool i described, so I started to build my own software instead of waiting for someone else to make it.
It’s been 4 years since we wrote the first line of the code.
If you are inspired by my thought process and want to know more about what I have built, you can try that approach.
Visual constructor allows you to put as many boards as you want in single space:
You are welcome to try it, briefly what features are supported right now:
Visual constructor that allow you to visualize any flow
- Boards can be placed in different spaces simultaneously
- Access per space, so you can share part of a process with external contractors
- Cards can be linked no matter on which board they are placed
- No restrictions on how to move cards around
Kanban specific features
- wip limits (per column, per lane, per cell)
- columns inside columns
- various charts (CFD, Spectral Chart, Control Chart, etc…)
Scrum specific features
- sprint reports
- burndown and velocity charts
User Story Mapping
- User story map cards can be connected with cards on the boards
- You can import existing USM from other systems
- Built in timer for simplified usage
- Timesheet reports
Try it now and leave us feedback ❤️