How to choose the right development process for your company

If your company is in the IT industry, you probably heard about Scrum and Kanban as a go-to development process. Both follow Agile principles but they focus on different outcomes. Let’s learn how to choose the right development process and ask a set of simple questions that will help you you find out which one works best for you.

Scrum vs. Kanban

We assume that you have a basic understanding of both frameworks and won’t go into too many details about all the processes that happen in Scrum or Kanban, but we can highlight the parts that are important to answer our question.

Basically, in Scrum, the team makes small plans for the next 1-4 weeks on how to deliver and integrate the next working piece of a product. While planning, the team ensures that everyone has enough work to start by, but if the team can handle more work before the sprint ends, it will do so. As you can see, the focus of Scrum is resource efficiency or, simply put, that most work gets done.

On the other hand, Kanban is more focused on delivering things on time than the quantity of work done. It is more a set of principles than a full-blown development framework and therefore it is more flexible than Scrum.

In software development, it is popular to use the Kanban Board to visuals the work in progress. In its simplest form, the Kanban Board has three columns: Todo, In Progress, and Done. The team sets a cap on how many tasks can be “in progress”.

Let’s say that the team has 7 members with a set WIP cap (work in progress) of 6. That means that the team will do much less multi-tasking and will be able to deliver things on time. Also, the team will have one member ready to respond if a high priority task enters their to-do list. As you can see, Kanban gives priority to finishing the ongoing tasks as soon as possible rather than taking on new ones.

To solve our dilemma “Scrum or Kanban” we can ask ourselves these questions:

Do the tasks in our project have an “expiration date”?

Let’s say that your company has a dedicated team to fix bugs and let’s say that you have a contract with your clients to fix any bug within 3 weeks after they have reported it. In that case, Kanban is the best choice for your team. Your priority is to deliver fixes in time and avoid paying fines for violating the terms of the agreement.

Do we have time-critical tasks?

You can think of a hospital as an organization working in a Kanban framework. A hospital does not care much about treating as many patients as possible, it cares more about saving people’s lives. Putting it differently, it does not care about having every doctor do something; it cares more about treating patients in critical situations first. So, if your project demands to act upon sudden changes instantly, Kanban may be a good choice.

How important are the KPIs for our project?

Let’s say that your client would like to have a new product and that he knows how much money he is ready to spend and how long he can wait. In that case, Scrum has much more to offer in terms of KPI as it is a common practice to generate reports like the Burn Down Chart and Sprint Velocity Chart periodically. Those KPI will constantly change as the project progresses, but at least there is a good guess on how things are coming along. Scrum is an iterative development process and the client can always review the latest reports and decide to add or remove features to conform to their budget or deadline.

How ready is your company to accept change?

Another hurdle in implementing new ways of work is the willingness to change. If your company finds it difficult to let go of former job roles and responsibilities, it may be hard to accept Scrum as the new development framework.

Scrum can be very efficient once everyone is on the same page, but in the beginning, it can take getting used to. In contrast, Kanban is more loosely defined. It simply sais “Do whatever you want but follow these few principles” so it is possible to work with a Kanban Board without changing job descriptions within the company.

Scrumban to the rescue

Although Scrum and Kanban both follow the Agile principles, and both focus on eliminating waste in the development process, they have enough differences to make it worthwhile to analyze the needs of the project deeply before choosing one over the other. That is how Scrumban came to life. It is a hybrid taking practices from both frameworks.

You can think of it as Kanban with more structure. If you find yourself debating for too long over Scrum vs. Kanban, then Scrumban may be the right choice for you.

In the end, every project is different and there is “No silver bullet”. In your career, you will probably implement all the frameworks we discussed here. It is up to you to determine what frameworks fit your project needs and what is the best choice for your team. It is an important decision to make because the success of the project depends on it.