Scrum Vs Kanban

When it comes, to develop a software product or application, a project management or a development team, usually prefers the agile methodology of software development, over the traditional methods of development, such as waterfall approach.

The agile methodology, consists of different approaches, to implement agile model and carry out the development process. Scrum and Kanban are its two of the methodologies or frameworks, which are widely used, in implementing the agile model of software development. Scrum involves multiple short iteration, where each iteration, is used to execute some pre-specified tasks and features, maintained in the product backlog, whereas, Kanban works in the direction of bringing incremental and continuous improvement, by providing the flexibility of introducing the change management and maintenance process. Both the methodology, have the merits and de-merits, over each other.

Let's go through the differences between both the frameworks, so as to have their better understanding.

Sl.No. Scrum Kanban
1. A development framework, where the whole process, in the form of storyline, is divided into multiple checkpoints and iterations are carried out, to cover these one or more checkpoints. More than a development framework, it's an evolutionary change and maintenance process.
2. It does not introduces or implement any changes, during the process. Shows the ability to accommodate changes.
3. Roles and Responsibilities are being assigned to the members of the team. Kanban does not assigns, any sort of roles and responsibilities.
4. Cross-functional team is an essential characteristic of this framework. Cross-functional team is an optional requirement.
5. Team makes certain commitments, for a particular iteration, before its initiation. No commitment is made.
6. Items to be executed, is added in the product backlog. Here, items are added in the columns of the visual or kanban board, in the form of work-flows.
7. It has prioritized product backlog. Prioritization is optional.
8. It uses velocity, as a parameter, for planning and improving the next sprint. Generally, lead time, is being used as a metric for the planning and improvement purposes.
9. It comprises of three entities- Product owner, scrum master and the team, with the specified roles and responsibilities. It does not contain any scrum master, rather team with the existing roles, are responsible, to carry out the Kanban development.
10. The maximum size of the team may goes up to 9 members. There is no limitation on the size of the team. It may be increase, as per the need.
11. Scrum is a perspective process, involving established guidelines and procedure to follow. It's a less perspective methodology, rather it follows an adaptive process.
12. It's a time boxed iteration based framework, i.e. each iteration is of specific duration. Kanban does not focuses on the time boxed iteration, rather it emphasizes on on-demand planning.
13. Shows the inefficiency, in adding the new task or requirement, in an on-going iteration Depending upon the available capacity, new task or the requirement, may be added.
14. After each sprint or iteration, scrumboard needs to be reset. No resetting is required in it, as a Kanban board is persistent and is being used continuously.
15. It involves, daily stand-up or may be called daily meeting of very short duration, near about 10-15 minutes. This framework does not defines any such daily meetings.
16. It limits WIP (Work in Progress) in each iteration, indirectly. It limits WIP in the workflow state, directly.
17. It requires estimation. No estimation, may be needed in the Kanban. It's an optional requirements