practical agile: what’s working for stanford, blacklight, and hydra naomi dushay stanford...

67
Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Upload: albert-holt

Post on 17-Dec-2015

223 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Practical Agile:What’s Working for Stanford, Blacklight, and Hydra

Naomi DushayStanford University

Page 2: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Management Might Start Here …

Page 3: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Stanford had …

40 projects

10ish “project managers”

8½ developers

Page 4: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

ThroughputTransparencyAccurate PlanningSustainable

(Some of our) Goals

Page 5: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Improving Productivity …

Developer Happiness

Page 6: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Max 2 Projects/Developer

Who Project 1 Project 2

Naomi Dushay SW – Course Reserves SW – Images

Jessie Keck SW – Course Reserves Hydra-Head

Willy Mene Puppetize Lyberservices DOR publish service

Michael Klein Argo - something (Shark Dirigible)

Page 7: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Competing Priorities

1 111

1 1 1

Page 8: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Iteration Planning

Backlog Now

1 111

11

Page 9: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

One Month’s Goals

Page 10: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

That was …

• 40 17 projects• 10ish “project managers”• 8½ developers

Page 11: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

You Might Try …

• Extreme Display:• All “Active” Projects• Priorities• Currently In Progress

• Refuse More Than Two Simultaneous Projects

Page 12: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Lack of Focus

Feature

Feature

Feature Feature

Feature

Feature

Feature

Feature

Feature

Feature

Feature

Page 13: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Focused Iterations

Feature

Feature

Feature

Feature

Feature

Feature

Feature

Feature

Feature

Feature

Feature

NowBacklog

Page 14: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: SMART Goals

• Specific• Measurable• Achievable• Realistic• Timely

Page 15: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 16: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Agile Task BoardBacklog On Deck In Progress Done

Page 17: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 18: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 19: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

You Might Try …

• Task Board• “Public” View of Your Recent Work

Page 20: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Too Many Meetings

Page 21: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Developer Happiness Hours

Page 22: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Dead Week

Page 23: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

You Might Try …

• Block Out Times In Your Calendar• Multi-Hour “Meetings” With Colleagues

• Suggest to Management• They Have Non-Meeting Work Too!

Page 24: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Sharing Knowledge Locally

I wonder if someone can help

Eh, I’ll just figure it out

Page 25: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Workspaces

Co-locationOpen Sight Lines

More People Per Room Less Wall Space for Whiteboards, Task Boards …

Easy Reconfiguration

Page 26: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 27: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 28: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Open Sight Lines

Hey Willy: Have a sec? Jessie, can

you look at this?

Page 29: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Non-Developers, too

Lynn, is this what you meant? This design is

tough to implement; can

we revisit?

Page 30: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

You Might Try …

Demolish Cube Walls

Temporary Co-Location Large shared office Conference Room Study Room Coffee Shop

Lunch with Coworkers, Product Owners …

Page 31: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Flex Room

Page 32: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Pair Programming

Page 33: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Lack of Visible Progress

Page 34: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Short Iterations

1 week or

2 weeks or

1 month or …

Short is:

Page 35: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Good Communication

• Regular Meetings• Email List• Wikis• Tracking System (e.g. JIRA)

Page 36: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Planned Work is Public

Page 37: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Progress is Public

Page 38: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

You May Need (JIRA) Foo

VersioningComponentsWorkflow

Page 39: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Scrum Unrealistic

We have too many simultaneous

projects

I can’t dedicate 5 developers to a

single project, even short term

Page 40: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Take Pieces of Agile

• Short Iterations of Narrow Focus• Communication Across Roles• Co-Location• Pair Programming• Transparency• …

Page 41: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Experiment!• Scrum• Short, Focused Iteration• (2?) – 7 People• Temporary Co-Location• Task Board• Pair Programming• Daily Stand Ups

Page 42: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: No Local TDD

I’ve been meaning to

do it…

Page 43: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Requirement of OSS

No Code Without Passing Tests!

OK

Page 44: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Open Source Software

True Group OwnershipGood CommunicationRotating Roles

Bigger (release manager for pieces)Smaller (meeting moderator, notetaker)

Page 45: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Distributed Developers

(Eddie Shin)

Page 46: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Realtime Contact

Weekly Check-Ins

As Needed

Face to Face!

Page 47: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Developer Distrust

Their stuff is always buggy

… if I had time

I could do this faster myself …

I hate his code

Page 48: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Good Development Practices

Automated testsContinuous Integration

Automatic Notifications

Code Coverage DataTransparencyDocumentation Coverage Data

Page 49: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: No Code Without Tests

Page 50: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Test Coverage Transparency

Page 51: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Automated Test Runs

Page 52: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Test Result Transparency

Page 53: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University
Page 54: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Auto Change Notification

Page 55: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Change Transparency

Page 56: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Public, Shared Code

Page 57: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Doc Transparency

Page 58: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Bonus Slides

Page 59: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Unhappy “Customers”

I didn’t realize it would look

like this

This isn’t what I asked

for

I implemented

the spec

Page 60: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Collaborative Design

Page 61: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Behavior Driven Dev

When I am on the search results pageThen id 867 should be before 567And if I select “title” from the search pulldownThen id 567 should be before 867

It should …

Page 62: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Need Stable Test Data

Tests keep failing because the data keeps changing

Page 63: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Mocks, Stubs, Fixtures

Fixtures: data for tests

Mocks: I don’t need an actual object, just a placeholder with a little bit of the information

Stubs: I know I’m gonna call a method with certainarguments, and I know what it returns and it isn’tthe method I’m testing right now

Page 64: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Problem: Endless Discussion

No, this other way

Is this approach

okay w folks?

I think you should do it

this way

Page 65: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Solution: Working Code Wins

I’m going to do this

Suggestion

Suggestion

Page 66: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

Estimating Work is HARD

Larger Estimates are Less Accurate

Make it Relative, Not Absolute

Fibonacci?

Hours / Days / Weeks / Months?

Page 67: Practical Agile: What’s Working for Stanford, Blacklight, and Hydra Naomi Dushay Stanford University

New 80 / 20 Rule …

80% of the Work Happens in the Last 20% of Elapsed Time for the Project

(Tom Cramer)