Applying Trello magic to Jira projects
Lately, I have been writing a lot about Release Management (e.g. a few of my previous articles- One, Two and Three). Today, I would like to share some thoughts on a different topic, namely “(the)balance between simplicity and complexity and how to combine them in order to interpret information in the most efficient way”. This article is based upon my recent experience working with a number of software engineering teams that were using Jira Software. I hope this will be interesting for you.
Disclaimer: All of the below statements are based purely on my own personal opinion. So, if you have another point of view and/or you would like to share your personal experience, I would appreciate your comments regarding this article.
All started with Agile
It is no secret that Agile has become a very popular approach over the last decade.
The main success factor was focused upon relatively small and frequent deliverables that helped to
- receive rapid feedback from the customers,
- build the right product by adjusting the priority and scope based on feedback and eliminate (the) delivery of useless features,
- increase panning quality and predictability by shortening the planning horizon.
Also, Agile and Lean brought many good techniques that are aimed at increasing quality and decreasing time to market (e.g. XP practices).
But in my opinion, the most important innovation has been in people engagement; namely:
- stakeholders have become much more involved in the development process,
- collaboration between clients/stakeholders and engineers became closer than ever before.
As a result, it empowered the creation of tools and practices to put them on the same page as the above two -very different groups of people who do not speak the same language by default.
I believe the breakthrough has been in 2 main areas:
1. Simplicity. Everything has to be as simple as possible. A prime example is the user story; where complicated and sleep-inducing requirements documents were replaced with human-readable requirements in a simple language: in the format of user interactions with the system.
2. Visualization. The visual channel has the widest bandwidth to our brain. I could not find the source but I remember reading that 65% of people are visual learners. I guess this was one reason why a lot of attention was paid to the concept of visual radiators. The most prominent examples are Scrum and Kanban boards plus a variety of different canvases that can help us to understand the information and take appropriate action.
Trello is a rock star!
Rock stars can easily be identified among other artists. A wide audience of people listen to their music over a long period of time. They are shining rolemodels for new generations and the lyrics from their songs are extensively and commonly quoted.
The same applies to Trello. Housewives and executives, alike, are using it to organize their own personal work and/or various projects at the same time. You can find a lot of examples of how the work can be organized (not always planned or scheduled) using Trello.
From my point of view, the key to Trello’s magic lies in its simplicity, amazing flexibility and an easy-to-ramp-up process so everyone can meet their needs almost instantaneously. It’s also highly visual.
Compared to Trello, Jira is a much more powerful tool. At the much-advanced levels of process maturity, sophisticated Jira functionality is a must in order to support the process. Trello in return presents far fewer limitations.
Do not get me wrong, Jira is easy to use when you get into it, but for a newbie it might be too complicated and confusing. At least that’s what I learned through various feedback when working with software development teams.
It would be great to combine Trello simplicity and Jira power at the same time!
Thus, it would be possible to exploit Trello simplicity at an early stage of adoption and gain the full power of Jira later on.
Let’s try to marry them
Agile Boards in Jira have one significant disadvantage compared to much simpler Trello Boards — columns may be assigned to workflow steps only. In Trello, we are flexible in defining columns just as we want, but unfortunately, we miss swimlanes in Trello.
What if we combine the advantages of both? Create a board, where we can show Jira issues and assign any custom or standard field to column and swimlane?
As a result, we get insane flexibility and simplicity, all at the same time.
Bear with me.
For sure such a possibility could be widely used by an Agile team. I will share some of the use cases:
- Story Points Estimation by using clustering (more details are here). The agile estimation board can be built by defining columns by Story Points field and assigning values according to the Fibonacci sequence (or any other grade you use). The particular user story can then be estimated by moving it between the columns and comparing it with already estimated stories which are in each column. This will help to refer to the already estimated ones and keep all the estimates consistent. This approach is quite simple yet very powerful.
2. Versions Planning. In order to plan versions’ scope in a visual way, we may define columns by Fix version. By simply moving the items from one column to another, we can define version scope and easily see what has already been planned for each version.
3. Story Mapping. We can complicate the previous use case a little. Let’s define columns as Epic (as “Epic Link” or “Parent”; a custom field in Jira) and versions as Swimlanes. As a result, we get a classic story map board (read more details here)
4. Classic Estimation with Agile taste. The visual power of Agile estimation techniques can be applied to classic estimation in ideal hours as well. Just create columns by Original Estimate field and assign clusters of estimates in hours
5. Agile Programs Planning (e.g SAFe PIs) can be easily created in case we create columns by sprint and swimlanes by Teams. In my example, I have labels to split the team’s but any other field could be used as well.
6. Freeride with Labels. Labels is a very flexible tool in Jira that can give us awesome flexibility and simplicity. The main disadvantage is that people need to remember the correct values and if somebody makes a mistake while typing a Label value, then a whole new item will be created and we end up in a mess.
Using the Trello-like board to manage Label values can help with that and remove all of the above-mentioned disadvantages.
For instance, we can create value/cost mapping canvas to better understand the tradeoff we are making during prioritization
Also, you can find a lot of articles about Trello usage that may be applied to Jira using this approach (e.g. one of them).
Where the Power is?
From my point of view, the great power is in combining simplified boards/canvases with extensive Jira functionality. So, Jira issues can start their journey from simplified canvas and end up on a standard Scrum/Kanban board for the engineering teams.
Such flexibility can enhance the strengths of visual learners and make simpler the organization of complex work as well as a large number of tasks.
Also, such functionality forces better integration of technical/engineering people, and non-technical/business people.
All of the screenshots above are taken from Canvas for Agile Teams & atScale App. You can find similar Apps on the marketplace that can also open such great possibilities for the developer/user.
I hope that this article has been interesting for you and that you’ll be able to apply these ideas yourself to improve your day-to-day work and make complicated things that little bit simpler.
Stay tuned, folks!
Annex 1. Not just Agile, other use cases
Such flexibility can help to organize the data in multiple use cases.
Please find some ideas below:
- Technical Backlog organization. Columns for version or sprint and swimlanes per component can help to visualize and plan the technical debt for each component and arrange and organize deliverables of them.
- Weekly Planning board. Columns for Due Date with current/next weekdays assigned can help you and your team plan the tasks for the upcoming week. Also, We can create swimlanes by assignee. According to the feedback from the field, this is a great fit for Non-engineering teams, such as those working in Marketing.
- Assignee board. Columns by Assigned and swimlanes by priority.
- Components board. Swimlanes by components will help to triage issues between components and arrange all of them in a visual manner much quicker when compared to a classic component assignment from the component selector.
Thinking of more use cases? Please leave a comment to this article. I greatly appreciate it.