Scrum and Kanban can be considered as the two main Agile approaches. In a simplistic view, Scrum is often categorized as a product development framework and Kanban is preferred when you want to manage flow or maintenance activity.
At the beginning of Agile, there was a tendency to aim at “pure” Agile, following the Scrum rules by the book. Even if there might be still Scrum cargo cult implementations, many Agilists have realized that Agile is more about continuous improvement and value delivery in a specific context than staying stand-up in daily status meetings. In this article, Mark Haynes discusses the Scrumban approach that borrows tools from both Scrum and Lean Kanban.
Scrum and Kanban are not rivals. If your Scrum Sprints are getting bogged down or missing the mark, combining Scrum with Kanban might be the Agile answer. This article from Kert Peterson provides a comprehensive explanation of how Kanban can improve your Scrum process with Kanban Task Boards, Team Boards, and a better focus on customer needs.
If most of the open source projects for Scrum tools have ended being transformed in a limited offer that supports a main commercial product, this has not been the case for Kanban. The simplicity of the Kanban approach has allowed open source software developers to create and maintain Kanban tools based on various platforms.
Trello is a free on-line project management tool owned by Atlassian that provides a flexible and visual way to organize anything. This approach is naturally close to the visual boards used in the Scrum or Kanban approaches. As the tool as an open architecture, some extensions have been developed for a better implementation of Agile project management in Trello and provides additional features like Scrum burndown charts or the implementation of WIP limits.
In Kanban, the concept of work in progress (WIP) limit defines the maximum amount of work that can be performed by a team or that can exist in each active status of a workflow. In this article, Gerard Chiva explains why limiting WIP is an important decision for Agile teams.
In the context of software development, Kanban is an approach based on Lean that tries to limit waste and work in progress to the actual capacity of the software development team. The aim of Kanban is to create a context that balances capacity and demand through a value stream and promote visual project management.