little bits of cardboard - a kanban case study

19
Little bits of cardboard A study of a project using Kanban processes

Upload: rooosterboy

Post on 15-May-2015

2.414 views

Category:

Technology


1 download

DESCRIPTION

Case study of implementation and adaptation of Kanban processes onto a software development team.

TRANSCRIPT

Page 1: Little bits of cardboard - a Kanban case study

Little bits of cardboard

A study of a project using Kanban processes

Page 2: Little bits of cardboard - a Kanban case study

New infrastructure projectUnknown and rapidly emerging requirements. Architecture evolved as the project progressed.New clients for the product meant rapidly emerging

requirementsThe application had to be deployed ASAP to meet

contractual obligations

Details

Page 3: Little bits of cardboard - a Kanban case study

The project was at a standstill, cards were not moving across the board.

Large numbers of cards clogged the board and the team felt paralysed.

It was difficult to prioritise, as the backlog was so big and undefined

4 months of development work done with no production deployment of any code.

Problems

Page 4: Little bits of cardboard - a Kanban case study

The board before

Backlog

Story card

Story card

Story card Story card

Story card

Story card

Story card

Story card

Story card

Ready for Dev

Story card

Story card

Story card

Story card

Jim

Jim

Mel

Mel

Tom

In Dev

Story card

Story card

Story card

Story card

Story card

Story card

Ready for test

In test Signed off

Story card Story card

Blocked

Story card

Test failed

Story card

Story card

Story card

Story card

Story card

Story card

Story card

Story card

Story card

A story board can provide a lot of information about a team and how it is performing.

The team board had a lot of signals about were problems were occuring

Page 5: Little bits of cardboard - a Kanban case study

Problems

Backlog

Story card

Story card

Story card

Story card

Story card

Story card

Story card

Story card

Story card

Ready for Dev

Story card

Story card

Story card

Story card

Jim

Jim

Mel

Mel

Tom

In Dev

Story card

Story card

Story card

Story card

Story card

Story card

Ready for test

In test

Story card Story card

Blocked

Story card

Test failedLarge backlog column:

The backlog column contained upcoming stories for the entire project

Competing priorities meant the development effort wasn’t focused

Stand ups tended to focus on backlog items that hadn’t even made the “Ready for Dev” – (current sprint) column.

Time was spent estimating and planning on stories that never ended up getting prioritised

Page 6: Little bits of cardboard - a Kanban case study

Story card

Story card

Story card

Story card

Jim

Jim

Mel

Mel

Tom

In Dev

Problems

Team members were deployed across multiple cards, they found it frustrating and difficult to focus on getting things done.

Page 7: Little bits of cardboard - a Kanban case study

Problems

Story card

Story card

Story card

Blocked Story cards would land in the blocked column and often stay there for days

The reasons for this were varied, but there was a lack of ownership or urgency

Page 8: Little bits of cardboard - a Kanban case study

After a few different approaches were discussed, we trialled a Lean/Kanban approach/process

This helped us focus on our constraints and get back to getting things done.

What we did next

Page 9: Little bits of cardboard - a Kanban case study

Limit Work In ProgressOnly start a new task/item when last item was completeBalance demand against throughput The cards become signals (Kanban) to indicate when

something needs to happenCreates a pull system where an empty slot triggers a

demand for a card further up the supply chain.

What is Kanban

Story card This is Kanban

Page 10: Little bits of cardboard - a Kanban case study

We started by limiting WIP (Work in progress) on the swim lanes, including the “In analysis” and “ready for Dev” lanes

How we got there

Page 11: Little bits of cardboard - a Kanban case study

Limiting WIP

In Analysis2

Story card

Story cardStory card

Ready for Dev2

Story card

BenTom

In Dev2

Story card

Story card

Ready for test

2

In test2

Story card

Mel Jim

Ready for Sign off

3

Signed off

Story card

Story card

Parking lot

Story card Something to talk about tomorrow

Cards on the lanes limited to available pairs in the sprint. New cards are demand pulled into the lanes to reach capacity as cards

are completed and moved across. Developers only allowed to be on ONE card This ensured the cards coming through were really the “highest” priority Helped minimise discussion and pre-work on low priority cards

Story card

Page 12: Little bits of cardboard - a Kanban case study

Worked out what the bare minimum was to get our “first” production release out, even if it meant the application was feature poor.

This was what is termed a “MMF” or “Minimum marketable feature”

Allowed us to target incremental delivery rather than “big bang”

if nothing else, this helped prove the “Path to Production” getting early feedback on performance across all your environments in invaluable.

“Please, just let us release something!”

Page 13: Little bits of cardboard - a Kanban case study

Release token/card

In Analysis2

Story card

Story card Release Card

Story card

Ready for Dev2

Story card

BenTom

In Dev2

Story card

Ready for test

2

In test2

Story cardStory card

Mel Jim

Ready for Sign off

3

Signed off

Story card

Story card

Parking lot

Story card Something to talk about tomorrow

We introduced a “Release” token which followed the last of the cards in the MMF across the board.

This card behaved just as any other card did, occupying slots and requiring owners

Any card that followed the release card was not checked into the main trunk until after the release card was “signed off” – which meant deployed

We released when we had enough, not at the “end” of a sprint cycle.

Tom JT

Page 14: Little bits of cardboard - a Kanban case study

Reducing clutter/confusion

In Analysis2

Ready for Dev2

Story card

Story card

In Dev2

Story card Story card

Ready for test

2

In test2

Story card

Mel Jim

Ready for Sign off

3

Signed off Parking lot

Story card

Story card

Something to talk about tomorrow

Reduced the amount of clutter that was on the board by removing the backlog column Backlog items were removed and placed out of immediate sight

Removed the blocked column, changed how “blocked cards were dealt with” Blocked cards had to find an owner, and therefore a swimlane, or

were deprioritised

Story card

Page 15: Little bits of cardboard - a Kanban case study

Adding buffers

In Analysis2

Ready for Dev2

Story card

Story card

In Dev2

Story card Story card

Ready for test

2

In test2

Story card

Mel Jim

Ready for Sign off

3

Signed off Parking lot

Story card

Story card

Something to talk about tomorrow

We got excited about removing lanes so; We removed the test failed lane and created a buffer zone above

“In Dev”. These cards were considered the highest priority in that lane.

Buffers added to other lanes as well, these helped create strong signals of constraints in the system that needed to be acted upon.

Story card

Page 16: Little bits of cardboard - a Kanban case study

Sprint cycle and release cycle were “uncoupled”Planning was done, as required, not by timetables Retained sprint cadence for “retros” and “demos”Team aggressively split cards to look for smallest item of

“business value”Having limited “fixed backlog” meant we could react very

quickly to changeRolled technical stories into stories that deliver business

value forced us to change course slowly and justify changes, also reduced Technical debt

What changed

Page 17: Little bits of cardboard - a Kanban case study

Delivering a constant stream of small but valuable stuff into production every week is VERY motivating.

Splitting stories can reveal just how little business value certain aspects of stories contain

We almost never get through everything that was “planned”We almost always ended up doing stories that weren’t

“planned”Just-in-time stories can enable the business to leave

decision of what’s important to the last possible moment.Trying to deliver everything to everyone can lead to

delivering nothing at all to anyone

What did we learn?

Page 18: Little bits of cardboard - a Kanban case study

Simplifies workflowReduces confusionEncourages small incremental releasesAccepts and encourages changeTeams with highly flexible backlogs (BAU, support) are ideal

candidates for KanbanAllows teams to focus on their constraints and support them Is motivating to developersForces prioritisation by limiting WIP Works well for new product development teams

Take home message

Page 19: Little bits of cardboard - a Kanban case study

Abu Dhabi Investment House Faithful & Gould Multi Development Aedas Foster and Partners Multiplex AJES Gammon Nishimatsu Arif and Bintoak GHD Global NRY Architect Atkins Grocon Ove Arup & Partners Australand Hassell Page Kirkland Partnership Bates Smart Hongkong Land Robert Bird & Partners Baulderstone Hornibrook Hsin Chong ROK Buchan Group HWO Architects Taisei Capita Symonds ING Real Estate The Cox Group Capitaland Itochu Turner & Townsend Clifton Coney Group Kajima Vietnam Land SSG Confluence Laing O'Rourke Wates Group Cyril Sweett Larsen and Toubro WDA Architects Davis Langdon & Seah Las Vegas Sands Woods Bagot Dragages Levett and Bailey Woolworths Dubai Sports City LTW WSP Group Dubai Metro Mainzeal WT Partnership Emirates Sunland MKM Commercial Holdings Airport Authority Hong Kong InterContinental Hotels Qantas Australia Pacific Airport Management Macquarie Bank Ritz Carlton Building Schools for the Future Mandarin Oriental Hotels Sydney Opera House Colonial First State Property McDonald’s Restaurants Taj Hotels Resorts and Palaces DFS Group Melco Hotels And Resorts Tradewinds Hotels and Resorts Hyatt International Ocean Park Corporation Venus Assets Al Habtoor Connell Wagner Nui Phao Mining Alcoa Earth Tech Engineering Mitsubishi Corporation Alinta Evans & Peck Mott Connell Babcock & Brown Global Offshore International OMV BHP Billiton Global Process Systems Parsons Brinckerhoff Bilfinger Berger Hitachi Penta Ocean Bluescope Steel Hyder Consulting Straits Hillgrove British Gas India Jindal Steel & Power Tanker Pacific Offshore Bulga Coal Maunsell Tiberon Minerals ChemOil McConnell Dowell Waterman-Gore CLP Engineering Meinhardt WorleyParsons Connell Mott MacDonald MinCraft Consulting Xstrata Coal Grocon GHD Global NRY Architect Atkins Grocon Ove Arup & Partners Australand Hassell Page Kirkland Partnership Bates Smart Hongkong Land Robert Bird & Partners Baulderstone Hornibrook Hsin Chong ROK Buchan Group HWO Architects Taisei Capita Symonds ING Real Estate The Cox Group Capitaland Itochu Turner & Townsend Clifton Coney Group Kajima Vietnam Land SSG Confluence Laing O'Rourke Wates Group Cyril Sweett Larsen and Toubro WDA Architects Davis Langdon & Seah Las Vegas Sands Woods Bagot Dragages Levett and Bailey Woolworths Dubai Sports City LTW WSP Group Dubai Metro Mainzeal WT Partnership Emirates Sunland MKM Commercial Holdings Airport Authority Hong Kong InterContinental Hotels Qantas Australia Pacific Airport Management Macquarie Bank Ritz Carlton Building Schools for the Future Mandarin Oriental Hotels Sydney Opera House Colonial First State Property McDonald’s Restaurants Aedas Foster and Partners Multiplex AJES Gammon Nishimatsu Arif and Bintoak GHD Global NRY Architect Atkins Grocon Ove Arup & Partners Australand Hassell Page Kirkland Partnership Bates Smart Hongkong Land Robert Bird & Partners Baulderstone Hornibrook Hsin Chong ROK Buchan Group HWO Architects Taisei Capita Symonds ING Real Estate The Cox Group Capitaland Itochu Turner & Townsend Clifton Coney

Thank you