Scrum
|
Kanban
|
This concept was first introduced in 1986 in Harvard Business Review
article “New New Product Development Game” authors Hirotaka Takeuchi and
Ikujiro Nonaka described a new approach to do product development to increase
speed, flexibility based on their case studies from automotive manufacturing,
photocopier and printer industries.
In 1990s Ken Schwaber and Jeff Sutherland collaborated their
experiences and good practice to further develop Scrum concept.
|
Adopted from the way “supermarkets” were maintaining their inventory
in late 1940s, Japanese manufacturing giant Toyota made some process changes
in their manufacturing unit to bring tremendous Production efficiencies in
their manufacturing plant. Kanban (meaning sign-board) is an inventory
control system to control supply chain.
|
Seen as “holistic” development strategy, this Agile process framework
uses iterative and incremental
software development framework to manage and develop complex software and
products.
|
Eliminating/ minimizing process inefficiencies, Kanban uses visual aids (billboard/card) to
improve decision making and allowing better understanding of work to be done,
capacity available and overall workflow.
|
Scrum operates with following 6 principles:
- Empirical
process control: This principle promotes ideas of transparency, inspection and
adaptation.
- Self-organization: When team is self-organized, it results in shared ownership and innovation
and creates an environment that fosters growth.
- Collaboration:This principle focuses on 3 factors of collaborative work awareness,
articulation and appropriation.
- Value-based
prioritization: Concentrations on the business value right from the beginning of the
project
- Time-boxing:Helps in effectively manage project planning and execution.
- Iterative
development:Iterative and incremental development involving customers and
continuous feedback.
|
Kanban operates with following 4 core principles:
- Visualized
work:Making work visible to indicate the stage of the work and queues
along with any blockers or bottlenecks.
- Limit
Work in Progress/Smaller batches:Limiting the amount of work that can be taken in parallel, instead
dividing work in smaller batches and taking them to completion.
- Optimize
and Focus on Flow:Taking advantage of WIP limit, overall flow of the system can be optimized
and improved where possible future issues can be pre \-identified by analyzing
the flow.
- Continuous
improvement:Using relentless feedback loop to identify areas of improvement to
bring more efficiency and removing “waste”.
|
Scrum is -
- More prescriptive & structured
- Is Time-boxed, have development cadence,
iteration
- More organized and have roles such as Scrum
Master, PO and cross-functional team
- Team can plan better
- Best suited for development work
- Progress can be seen with the help of
Burn-down/Burn-up charts
- Mainly used at team level in SAFe framework,
by development teams
|
Kanban is –
- Less prescriptive/structured than scrum
- Not time-boxed, it is event driven
- Shared by entire team, no specific roles
- Estimation is optional, as this is event driven,
planning is not always possible
- Best suited for support and maintenance work.
- Progress can be measured using cumulative flow
or cycle time.
- Used at almost all the levels of SAFe
framework e.g. at Portfolio level to keep backlogs of Business/architectural
Epics, at Program level to maintain Features or tasks related to System’s
team and at Team level to maintain support related tasks/tickets)
|
Best suited when –
- Budgets are planned based on certain
functionality, release dates and resources
- Delivery roadmap is available and is clear
- Used by application development teams based on
release calendars / planned releases.
- Change in priority is less volatile
- Team size is (7-9) and may have dependencies with other teams
|
Best suited when –
- Budgets are generally planned on number of
change requests/tickets and resources
- No roadmap available, requests comes ad-hoc
- Generally used by application management/support
teams and are managed based on hot-fixes or continuous releases.
- Priority continuously changes
- Team size is small (less than 7) and less dependency on other teams
|
Advantages includes –
- As this is more process oriented, it improves transparency
- Establishes credibility with the client with
ceremonies like Sprint planning, demo etc.
- Advocates built in quality
- Used for product stability
- Over time, team reaches a sustainable velocity
- Gives flexibility to client to change
priorities and requirement as per dynamic market conditions/demands.
|
Advantages includes –
- Kanban offers flexibility
- Flow
and continuous delivery is the focus point
- Used to improve productivity and quality
- Improves efficiency (small, faster batches)
- As it gives emphasis on limiting WIP, team is
more focused
- Focuses on Reducing waste
|
No comments:
Post a Comment