In modern society we’re always on the lookout for new ways to eliminate waste and improve productivity. In our personal lives, and especially in day-to-day business, productivity improvements are seen as the holy grail, to be strived for and achieved each and every day.
We’re regularly inundated with new tips, ideas, concepts, software and strategies. But which way do we turn? How do we sort the good from the bad? Today I’m going to show you a way that’s as simple as its name is short, one which will help you increase productivity with a minimum of effort — it’s called Kanban.
What is Kanban?
Kanban is a technique created, by Taiichi Ohno, at Toyota in the 1940s when Toyota wanted to improve productivity and bring about a JIT (just-in-time) production system. Toyota observed that supermarkets were successfully managing a just-in-time approach to inventory, maintaining just enough stock on hand at any given time to supply customer demand. They saw that doing so allowed supermarkets to avoid being overstocked with inventory, which customers may never purchase, avoiding having excessive amounts of waste and lost revenue. Toyota applied the concept successfully to their production lines, so that just the required amount of parts were on hand at any one time, to meet the demands of the production factories.
The concept was so successful that, over the following decades, it was adopted by other companies, adapted to other industries, and changed the way business is now done across the globe. Perhaps you’ve heard of two terms: Lean Manufacturing and Lean Startups? Both of these concepts grew out of Kanban, and they’ve taken the business world by storm. Kanban might seem like a strange methodology to use in software development, as software is quite a creative and collaborative endeavor, whereas industries such as automotive and supermarkets are more straight-forward and repetitive in nature. But applying Kanban to software development has the advantage of being able to quickly identify development bottlenecks. In software development, it’s not uncommon to have a situation where business analysts can design and developers can implement features faster than testers can test them.
As a result bottlenecks build up, leading to software not being able to be shipped as quickly as desired. Let’s have a look at Kanban in action in software development.
The Kanban Board
The image above shows a typical Kanban board. On the board are 5 sections: pending, analysis, development, testand deployment. Most of the sections contain a number of cards, but no more than the number above each section. What this means is that no more cards can be added to each section, at any one time, than the number listed for that section. Each section is regulated by its respective number, so everybody involved in the project can see how cards are flowing through the system. If one or more sections are suffering from bottlenecks, it’s easy to identify them and apply more resources to rectify the situation. As well as being really simple, it’s also really cheap. You can implement it in an hour if you want; all you need is a white board, or section of a wall, and a stack of Post-It™ notes. You literally need nothing more.
Perhaps you’re familiar with the approach, or one quite like it. I enjoyed the benefits it brings on my last development project back in Australia. Every morning we had a stand-up; everyone from the project manager to testers were involved. Everyone could see the board and know exactly where the project was at, and what, if anything, was holding up delivery. But perhaps we were fortunate as everyone on the team was in the same building. What if you’re development team is composed of remote developers or remote teams? What if you have developers spread out across a series of offices, what do you do then? You could put a webcam in front of the board, but is that really practical? I’d suggest not. So in response to this need, a number of electronic Kanban boards have sprung up; one of the best and most thorough of them is Kanbanize.
If you’re not familiar with Kanbanize, it’s one of the leading electronic Kanban implementations. Using it, you get all of the power of Kanban, along with the benefits of remote connectivity.
Have a look at the screenshot above. There you see a standard Kanban board with four sections, Requested,Development, Testing and Done. Slightly more sophisticated than the earlier screenshot, each section has a card limit and cards can be moved across each section as necessary. What’s more, each card has an id, time in progress, user gravatar, comment history, along with a range of other features not possible in a standard Post-It Note™ style implementation. Whilst sticking closely to the core methodology, more modern features can be integrated, expanding on the original concept for a networked world.
Here’s another great thing about Kanbanize, we’ve recently partnered up with them. That’s right, via this integration the visual, annotated, screenshots you’re used to creating with Usersnap can now be attached to Kanbanize cards.
We’re excited about how much closer it will bring designers, developers and project managers. To get started all you need is a Kanbanize account, in addition to your Usersnap account. We prepared a short guide about what to do from there.
Through this integration, we’re confident your feedback loop will be even easier. If you’d like to know more about the integration, contact us today and let’s talk.
Image courtesy From Stone to Agile
This article was brought to you by Usersnap – a visual bug tracking and screenshot tool for every web project.
Get the process right with requirements engineering!
As we presented you some awesome chat tools (Slack, Hipchat and Hall) in our last blog post, we want to focus on the web development process itself. You probably heard and read a lot about all kind of different processes and how to do it right. We can’t show you the “perfect web development process”,…
Productivity tips for web developers: How to manage project communication with Slack, and Hipchat!
As mentioned in our last week’s blog post about productivity tips for a better time management, improving the productivity in web development is quite challenging. A lot of web developers are often wondering about their team communication and how to get them on the next level. On the one hand there are a lot of…