CEN 4010 Intro to Software Engineering Professor Alex Roque

Slides:



Advertisements
Similar presentations
Kanban & Gunnison’s Visual Test Management Solution Presented to: Gunnison Date: 4/25/2013.
Advertisements

IENG 451 JIT. Production Physics Little’s Law Throughput = WIP/Cycle time For fixed capacity, cycle time and WIP or proportional – thus you can increase.
KFC Development Karl Scotland.
Paweł Słowikowski What can Agility do for YOU. Who am I Have been: Software tester Verification Project Manager Scrum Master Agile Coach Currently: Scrum.
ALTERNATIVE METHODOLOGY -KANBAN CMIS-570 Jacob Adams.
Kanban in Action City Grid Media Case Study Jason Lenny.
Dysfunction to Delivery Yes, You Kanban! Mike Duskis Software Quality Guy 10-4 Systems.
How (fr)agile we are metrics in an Agile world Gaetano Mazzanti Gama-Tech.
Defect Tracking Solution Nethzah Inc.. Defect tracking overview Defect Tracking Solution module of Nethzah CRM is designed for small, medium and large.
Kanban “Signboard”.
Modeling Kanban Scheduling in Systems of Systems Alexey Tregubov, Jo Ann Lane.
29 participants scored 100% on their quiz in November, and all Lean Practitioner Candidates scored at least 80%!!
Task Board Evolution Nayan Hajratwala Lean / Agile Coach Chikli Consulting LLC Saline, Michigan, USA 陳柏彰.
Theories of Agile, Fails of Security Daniel Liber CyberArk.
Agile Metrics It’s Not All That Complicated. © 2011 VersionOne 2 Welcome – About your Trainer, Katia Sullivan VersionOne Product Trainer and Agile Coach.
Introduction to Kanban Roni C.
We’ll cover:  1. What is a Kanban System and how does it apply to anything you want to do?  2. How to set up a Kanban System 2.
Evan Leybourn STARTING WITH VSM & KANBAN A practical workshop on value stream mapping & WIP Starting with Value Stream Mapping and Kanban by Evan Leybourn.
Lean Software Management: BBC Worldwide Case Study EECS811: IT Project Management Case Study Cody Mock February 8, 2016.
Kanban. What is Kanban Kanban means many things. Literally, Kanban is a Japanese word that means "visual card". At Toyota, Kanban is the term used for.
Kanban Advanced Software Engineering Dr Nuha El-Khalili.
IS and Kanban.
Created By:-
Agile Methodology. -Dhanashree Kumkar -Plus91 Technologies.
Managing Software Development Projects with Jira.
Joel Semeniuk Telerik SESSION CODE: DPR307 Steven Borg NW Cadence
Copyright © 2016 Curt Hill Kanban Software Development Paradigm The revenge of Toyota.
Project Workflow.
CEN 4010 Intro to Software Engineering Professor Alex Roque
Chapter 12 Lean Production. Chapter 12 Lean Production.
CEN 4010 Intro to Software Engineering Professor Alex Roque
Quick Intro to Kanban followed by a demo
Introduction to the Theory of Constraints (TOC) & Critical Chain Project Management (CCPM) Major Mark McNabb.
Stores management Traditional focus on efficient stock holding
IENG 451 / 452 Just In Time Processes: Cells, Stores, Kanban, Demand
Scrum and TargetProcess
Appendix B Agile Methodologies
Agile Training - Kanban
Agile Training – Agile Overview
Agile Scrum Management
Improving the Defect Life Cycle Management Process
A Brief Introduction to Lean Concepts for the Office
Delivering Value – Agile, Lean and Kanban David Joyce
Real Metrics for Real Decisions
Requirements and User Stories
Herbie – An Introduction to WiP Limits
Using Kanban Techniques to Control Incremental Development
CEN 4010 Intro to Software Engineering Professor Alex Roque
CEN 4010 Intro to Software Engineering Professor Alex Roque
Johanna Rothman Start Somewhere Chapter 17
Johanna Rothman Agile Team Measurements Chapter 12
Manufacturing Systems Basics
Johanna Rothman Report Your Project State Chapter 14
CEN 4021 Software Engineering II
Value Stream Mapping (VSM) Training
© University of Liverpool
Just In Time.
Reserved for Intro Picture
Gathering Systems Requirements
Introduction to Agile Blue Ocean Workshops.
2018 SMU Staff Performance Review Training
Automating Profitable Growth™
Teaching slides Chapter 13
Gathering Systems Requirements
Time Scheduling and Project management
What If Process is Your Problem?
09 | Kanban Steven Borg | Co-Founder & Strategist, Northwest Cadence
LEAN PRODUCTION BY Alfredo Moran Johnny Rojas January, 2006.
Scott VandenElzen Kanban Scott VandenElzen
Product Development & Planning
Presentation transcript:

CEN 4010 Intro to Software Engineering Professor Alex Roque Kanban CEN 4010 Intro to Software Engineering Professor Alex Roque

History Kanban is roughly translated to “signal card”. Introduced by Taiichi Ohno an industrial engineer in Toyota to standardize the flow of parts in the 1950s for Just in time (JIT) manufacturing. Ohno studied supermarkets and realized that they stock only what is expected to sell, and when a customer pulls an item they want to purchase it causes the store to restock. Toyota embraced a pull system where the pull comes from the demand and any items are accompanied by a Kanban card.

Kanban While Scrum is great tool for working with complex projects, it doesn’t have a strict method to deal with change requests. Kanban is tool for managing the flow of items through a system. It is a very visual system which allows its participants to visualize the flow of work. Often uses a Kanban board with different columns to represent the state of a work items (Cards) and swim lanes to show the “flow” lanes. Recommended reading: Kanban: Successful Evolutionary Change for your Technology Business. - David J. Anderson ISBN 978-0984521401 https://www.amazon.com/Kanban-Successful-Evolutionary-Technology- Business/dp/0984521402/ref=asap_bc?ie=UTF8

Principles of Kanban The foundation if Kanban is based on the following principles: Visualize your work: Kanban typically uses boards which allow you to move items from one state to another. This allows you to see your work changing from one state to another, and if there is a bottleneck, this easily visible. Limit your Work in Process (WIP): Kanban asks you to define what is the maximum work that the team can be engaged in without losing efficiency and asks the team to make sure no more work is being done once this limit it met. Measure Flow: Since the work is always being visualized, we focus on the “flow” of items in our system from start to finish. Improving the flow means that we improve on our delivery. Make process policies explicit: As a team identifies opportunities to improve itself, this knowledge is introduced into the Kanban board. For example, we can reestablish of WIP limit if our current value is not working. Use Models to recognize opportunities: Understand the models of theory of constraints and waster and flow.

Use Software Development In Software development, we visualize a work item as a “card”. These cards represent a piece of work to be done and is placed on a Kanban board. The card usually contains the following information: Task name/description Who it is assigned to A unique Id An estimate if applicable Deadline if any Other info as desired by the team

Kanban Board – Software development The card usually resides on a Kanban board, which contain the different “states” the work item has to travel through to be considered done. Also, the board will have a state to denote the Ready phase and a state to denote “Done” Example:

Kanban Board The development team should be concerned with moving backlog items from the “ready” column to the “done” column. All work being done by the team should be a card on the board. Remember it is important to visualize the work. Each column in the Kanban board needs to establish a WIP limit. A WIP limit is an aggreged upon number of work that the team can handle for that state. If the WIP limit is reached in a column (indicates a bottleneck), no more work should be pulled until a card is moved from that column. If the WIP limit must be broken for an urgent item, the team should still focus on resolving the bottleneck immediately.

Kanban Board An example of a Kanban board with WIP Limits:

WIP Limits WIP Limits are establish so that the team does not pull in more work into the system. In the following board, there are two items ready to pull into the In-Progress column.

WIP Limits However, the In-Progress column has an established WIP Limit of 3 and we already have 3 items in progress. Kanban dictates that you shouldn’t not pull any more work into the In- Progress column until can resolve the items that are in the column. Why? If we established the WIP Limit of 3, its because we determined that to be our capacity to work efficiently. Therefore have more than 3 items will cause a bottle neck for the entire board! NOT GOOD!

WIP LIMITS What should we do? We should not pull in any more work until we address the bottleneck. It’s a good practice for the team members to focus on the area that has hit the WIP limit, so that more work can be pulled in. So if a resource on the team is available, they should not pull in new work, they should help to complete one of the items in-progress. Focus on 1400

WIP Limits Now, we can pull in new work!!!

Kanban boards Examples

Kanban board examples

Flow Kanban focus on flow. So in theory, work started is not valuable unless its finished. Therefore Kanban emphasizes finishing work over start new work. This is why if we reach a WIP limit, team members should not focus on pulling new work but finishing the existing work.

Flow Part of establishing Kanban means the team will have to “Map the workflow” so for each work item to be considered finished it will have to travel through this workflow. To map the flow, we need to know: Where do tasks come from? How are they prioritized and assigned? What are the steps or states that an item will go through to be considered done? Analysis -> Design -> Develop -> Test -> Release?

Swim lanes Swim lanes are horizontal lanes typically used in Kanban when items flow through different paths. For example, have multiple teams working out the same board but the work items will flow though different paths with different columns (states)

Flow : Lead Time, Cycle Time If flow is important to us and we Kanban tells us to measure by what we get done, then how do we measure? Its important to under Lead time versus Cycle time. Suppose that a customer places a ticket what our book rating system has a bug and they place that ticket on Monday, May 3rd. After troubleshooting and verification, the support team send the ticket to product development on Wednesday May 5th and the developer starts to work on it. The developer finds the bug and releases a fix on Friday, May 7th. What is the lead time? What is the cycle time?

Flow: Lead Time, Cycle Time The Lead Time measures from when the work item was created (in this case by the customer) until it is delivered to whom created it. Since the ticket was placed on May 3rd and released on May 7th, the lead time is 5 days! The Cycle Time measures from when the work item was started to when the work item was delivered. Since the work was started on May 5th and released on May 7th, the cycle time is 3 days! So, Lead Time = 5 days, Cycle Time = 3 days.

Flow: Inspect and Adapt Our mission then must be to Inspect and Adapt. This means we review our existing policies and process and make changes that will reduce lead time and cycle time. If we shorten the cycle time, we also shorten the lead time. Minor changes in our policies can have dramatic results in our lead time. Example: Suppose we have to wait for customer to sign off on a timeframe to release to production and that process takes 2-3 days (people are busy). Let’s agree upfront on a set deployment window with the customer for all their projects so that no sign off is needed, just an automated notification. Lead time is now shortened by 2-3 days by a policy change.

Tracking Lead Time: Focus on Outliers Use a Spectral Analysis graph to focus on Outliers

Cumulative Flow Diagram The CFD is an area graph which shows the work flowing through the system in a given state. It shows how much work is in the system, when it arrives and when it departs.

Cumulative Flow Diagram Another CFD. What can we tell? The WIP rose to 30 during on 3/31 but was managed down to 21. There was a steady increase of work released. The backlog request slightly increased throughout the timeframe.

Throughput Through is the measure of the number of items that were delivered in a given time period. By delivered, we mean that each item “flowed” through our Kanban board. We usually capture metrics about our throughput in a given interval.

Benefits of Kanban Kanban delivers features faster by shortening cycle times. Kanban is responsive to disruptive changes. Kanban aims to reduce waste in the system. Kanban allows stakeholders to visualize the impediments and bottlenecks.