Scrum and Kanban are both widely used methodologies in AGILE. Practitioners of both speak a lot on the positives of the respective methodologies and share success stories. People often try to evaluate the two and make a judgment about which one is better. In this article I have tried to discuss some visible differences between the two and help the readers in answering questions like – Is one of the two better than the other? Which project development methodology should they adopt?
Scrum – A complete shift: Scrum requires a complete shift from your traditional model to the Agile scrum model that you would be implementing in your project. It would require you to start with adopting all principles as prescribed by scrum practitioners. You can make changes to those based on your project needs but in order to be most effective and achieve quick delivery cycles, it is essential to start experimenting with the principles as laid down in scrum channels. Things are related to one another; and while designing these principles, these dependencies are considered.
Kanban – A gradual improvement: Kanban is not about making drastic changes in the project. The idea is to start from what you have, where you are and gradually making improvements to match to the project needs. In most projects the process of improvement never ends, every cycle the team identifies which activities could be improved upon to improve delivery quality and time required. The process is laid upon a dashboard. It begins with drawing a basic level map on the board and then detailing it further on the same dashboards. The redundancies and repetitions are identified and those are removed to improve the delivery cycle.
Scrum demands commitment: Scrum follows the concept of pig and chicken. And pig notifies commitment. It signifies how ‘pig’ gives his life to produce ham that is used in ‘burger’. Thus a lot of commitment is expected from the team members and only this commitment can lead the team to succeed in Scrum. The team has to adhere to the backlog, the sprint plan and to the best practices as identified in scrum projects. Traditional roles are omitted and the team has to work in order to follow Scrum roles. Thus it has to change its way of working and its task structure while working in scrum projects.
Kanban values existing processes, roles and tiles: Kanban however values existing processes and titles. This doesn’t instigate a feeling of fear amongst the team member (fear of their role and thus expertise getting obsolete). Also the team can design their tasks and method of working as how it suits it and the project. Thus team experiences a lot of flexibility.
Scrum – Focus on backlog: Backlog document is one of the most critical assets in a scrum project. It identifies different items as are pending in the project as different story points. These story points form the basis of sprint plans and thus sprint cycles. Adherence to sprint plans and the backlog is one of the most important unwritten rules when it comes to practicing agile.
Kanban – Focus on process dashboard: Kanban is drawing dashboard about where you are currently and making updates and changes to further improve the process and thus the project delivery. Here the dashboard plays a very important role since the team every now and then comes to it to look for improvement opportunities. Simplified process is drawn on the dashboard and it is further broken down into sub tasks. These tasks are studied on the dashboard to identify improvement areas.
Scrum – Scrum master is problem solver: Scrum master plays the role of problem solver. Basically it is his responsibility to remove blockers that are obstructing team’s or its members’ work and thus assist them in focusing on core product development activities. This role is very keen when it comes to a scrum project.
Kanban – Every team member is a leader: Kanban advocates making every team member a leader and instigating a feeling of responsibility amongst them all. This has resulted in producing better outputs within the team and has made team members cautious of their actions. Also when every member is driving some task or another, project execution and thus management becomes very easy.
Time-boxed iterations: Scrum prescribes time-boxed iterations. The team, before beginning the development process decides upon the sprint cycle, that they would follow and adhere to that sprint frequency. Kanban however advocates planning a different duration for individual iterations based upon the requirements.
Prescriptive: Scrum is more prescriptive than Kanban. Scrum also prescribes the roles that one should follow in the project. Kanban is however more flexible and changes can be done to it as per the team and project requirements.
It, thus, can be noticed that Scrum and Kanban both have their own advantages. There are some notable differences between the two but one can be called better than another. What one can say is that ‘in the context of my project, Scrum / Kanban is better than Kanban / Scrum’. It is essential to properly understand the context of your project and based upon the points as highlighted in this article, you should be able to decide the approach that most appropriately suits to your needs.