As Agile continues to mature as a methodology – forged in the fires of real-world software development projects – a variety of Agile frameworks have emerged. Three of these – Lean, Kanban, and Scrum – are arguably the most popular framework examples in the industry. One of these “flavors” may work best for your team, depending on how it builds applications or the specific needs of a particular project.
So lets take a closer look at the top Agile frameworks to help your development organization make a decision on which one fits best. Good luck!
Project management pundit, Moira Alexander compared the three popular Agile frameworks for CIO Magazine. We’ll summarize her take on each of them, starting with Scrum, which is beginning to be used in other industries beyond the software development world. Scrum is highlighted by its predefined roles and processes – one example being that the project manager (or facilitator) is referred to as the Scrum Master.
Scrum’s major focus – essentially like Agile itself – is the faster delivery of high-quality software. Since project teams are largely expected to be self-organizing, the Scrum Master serves more as a facilitator compared to a traditional project manager. Sprints tend to be more formal, as is the framework itself, which makes it suitable for organizations used to the Waterfall, but wanting to explore a flavor of Agile.
The timeframes of sprints are also more formally defined; lasting anywhere from two to four weeks. Time spent on daily meetings is limited to 15 minutes. Changes to requirements within a sprint are discouraged.
The Lean Agile framework saw its genesis in the manufacturing industry as an attempt to minimize any wasted efforts on a project, while also offering a learning opportunity to the members of the project team. Lean strives for overall systemic improvements while preserving the integrity of the process.
In most cases, Lean demands an even more formalized process than Scrum, making it another Agile framework worthy of consideration for shops coming from more structured and organized methodologies. One exception is the lack of a specific timespan for each sprint. There is also additional flexibility regarding meetings and change requests – they happen when necessary.
A framework relying on visual workflows to explain and define the development process, Kanban also provides more flexibility than either Scrum or Lean. Developed in the supply chain world, many software development shops now make it part of how they write code. It focuses on completing the tasks within a project while always striving to improve the underlying processes.
Since Kanban teams are extremely self-organizing, a managerial role isn’t always necessary. There is also a high level of flexibility when it comes to project timelines, the scheduling of meetings, and change control. In short, whatever keeps the project moving forward and the process continuously improving is fair game.
This high-level view of the most popular Agile frameworks offers a measure of insight on which one would work best at your shop. Be sure to consider the history and experience level of your development team in addition to your goals for the future.
Stay tuned to the Betica Blog for additional insights and ideas from the evolving world of software development. Thanks for reading!