Agile - Kanban

Kanban is another common Agile project management framework which is used to implement in DevOps software developments. It is the most popular project management and workflow management method often used in Agile software development and other knowledge work domains.

It originated from Toyota's production system, which aimed to optimize manufacturing processes by minimizing waste and ensuring smooth workflow. In the context of Agile, Kanban is used to visualize work, limit work in progress (WIP), and manage and improve the flow of work.

Work items that represented visually on a Kanban board, is allowing all the team members to see the state of every piece of work at any time.


Kanban Board is a brilliant visual tool that represents an overview of the current work flow and simplifies the work among the Team. It's also a key element in the Kanban method, which helps to optimize and continuously improve any business process.

Key principles and practices of Kanban in Agile include:

  1. Visualization
  2. Work in Progress (WIP) Limits
  3. Flow
  4. Pull System
  5. Continuous Improvement
  6. Explicit Policies
  7. Customer Focus
1. Visualization: Usually consisting of columns that represent different stages of work process. Kanban Teams write all of their projects and work items onto cards, each card could encapsulate one user story. The cards are moving through these columns from left to right as per their progress which help teammates and stakeholders, a quickly understanding of what the team is working on.

2. Work in Progress (WIP) Limits: Manage the limits of cards that can be in one column at any given time. WIP limits are set for each stage to avoid bottlenecks and improve efficiency. It give you an early warning sign that you committed to too much work.

For example, you may decide that you should not be working on more than two things at once. So once you have more than two items in a column, you can stop accepting new ones and focus all your efforts on getting at least one item from this overgrown column done first. Limiting WIP helps to keep in check the number of unfinished things you have on your plate, before accepting new ones.

3. Flow: The primary goal of Kanban is to optimize the flow of work. Teams aim to reduce lead times, increase throughput and deliver value more consistently. Monitoring the flow helps identify problems and areas for improvement.

4. Pull System: Work is pulled through the system by team members as they have the capacity to take on new tasks. This pull system ensures that work is not forced onto team members but is rather drawn based on their availability.

5. Continuous Improvement: Kanban encourages a culture of continuous improvement of the work through (CI/CD). CI (Continuous Integration) is the process of automatically building and testing code incrementally throughout the day and CD (Continuous Delivery) is the process of releasing work to customers frequently. The CI/CD pipeline is essential for DevOps Teams to ship the software faster with high quality.
Kanban and Continuous Improvement complement each other as both focus on the just-in-time Policy. Kanban Teams regularly reflect on their process, identify bottlenecks, and make adjustments to improve efficiency and effectiveness.

6. Explicit Policies: Kanban Teams establish clear and explicit policies that define how work items are prioritized, when they can be pulled into a column and when they can be considered done. These policies provide clarity and consistency.

7. Customer Focus: Kanban emphasizes delivering value to the customer. Teams prioritize work based on customer needs and feedback, ensuring that they are delivering the most valuable features and improvements.


Scrum vs Kanban: 
Kanban and scrum share some of the same concepts but have very different approaches. They should not be confused with one another. 
                     
     









Kanban Tools:
Following is a list of some Kanban Tools.



Benefits: 
  1. Efficiency & Flexibility
  2. Increased productivity
  3. Reduced waste
  4. Lower costs
  5. Assigning tasks
  6. Collaboration
  7. Eliminates overburdening
  8. Greater flexibility within your supply chain
  9. Reduced procurement costs
  10. Team bonding
  11. Versatility
Certifications:

Following are some certifications for Kanban:
  1. Team Kanban Practitioner (TKP)
  2. Accredited Kanban Trainer (AKT)
  3. Kanban Coaching Professional (KCP)
  4. Kanban Management Professional (KMP)
Conclusion: Kanban is known for its flexibility and adaptability. It can be introduced incrementally in existing processes and doesn't require a complete overhaul of existing practices. This makes it a popular choice for teams looking to improve their workflows and implement Agile principles gradually. Additionally, Kanban is not limited to software development and can be applied to various domains and industries where work can be visualized and managed in a flow-based manner.





Comments

Popular posts from this blog

Cloud Data Storage

Agile Methodology With Waterfall Model

CLOUD COMPUTING