SlideShare ist ein Scribd-Unternehmen logo
1 von 67

Practical Agile:
What’s Working for Stanford, Blacklight, and Hydra
Naomi Dushay
Stanford University
Management Might Start Here …
Stanford had …
40 projects
10ish “project managers”
8½ developers

Throughput
Transparency
Accurate Planning
Sustainable
(Some of our) Goals
Improving Productivity …
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)
Problem: Competing Priorities
Solution: Iteration
Planning
Backlog Now
One Month’s Goals
That was …
• 40 17 projects
• 10ish “project managers”
• 8½ developers
You MightTry …
• Extreme Display:
• All “Active” Projects
• Priorities
• Currently In Progress
• Refuse More Than Two Simultaneous Projects
Problem: Lack of Focus
Feature
Feature
Feature Feature
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Solution: Focused Iterations
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Feature
Now
Backlog
Solution: SMART Goals
• Specific
• Measurable
• Achievable
• Realistic
• Timely
AgileTask Board
Backlog On Deck In Progress Done
You MightTry …
• Task Board
• “Public” View of Your Recent Work
Problem: Too Many Meetings
Solution: Developer Happiness Hours
Solution: DeadWeek
You MightTry …
• Block Out Times In Your Calendar
• Multi-Hour “Meetings” With Colleagues
• Suggest to Management
• They Have Non-Meeting Work Too!
Problem: Sharing Knowledge Locally
I wonder if
someone
can help
Eh, I’ll just
figure it out
Workspaces
Co-location
Open Sight Lines
 More People Per Room
 Less Wall Space for Whiteboards, Task Boards …
Easy Reconfiguration
Solution: Open Sight Lines
Hey Willy:
Have a sec? Jessie, can
you look
at this?
Solution: Non-Developers, too
Lynn, is this
what you
meant? This design is
tough to
implement; can
we revisit?
You MightTry …
 Demolish Cube Walls
 Temporary Co-Location
 Large shared office
 Conference Room
 Study Room
 Coffee Shop
 Lunch with Coworkers, Product Owners …
Flex Room
Pair Programming
Problem: Lack ofVisible Progress
Solution: Short Iterations
1 week or
2 weeks or
1 month or …
Short is:
Solution: Good Communication
• Regular Meetings
• Email List
• Wikis
• Tracking System (e.g. JIRA)
Solution: Planned Work is Public
Solution: Progress is Public
You May Need (JIRA) Foo
Versioning
Components
Workflow
Problem: Scrum Unrealistic
We have too many
simultaneous
projects
I can’t dedicate 5
developers to a
single project, even
short term
Solution: Take Pieces of Agile
• Short Iterations of Narrow Focus
• Communication Across Roles
• Co-Location
• Pair Programming
• Transparency
• …
Experiment!
• Scrum
• Short, Focused Iteration
• (2?) – 7 People
• Temporary Co-Location
• Task Board
• Pair Programming
• Daily Stand Ups
Problem: No LocalTDD
I’ve been
meaning to
do it…
Solution: Requirement of OSS
No Code
Without Passing
Tests!
OK
Open Source Software
True Group Ownership
Good Communication
Rotating Roles
Bigger (release manager for pieces)
Smaller (meeting moderator, notetaker)
Problem: Distributed Developers
(Eddie Shin)
Solution: Realtime Contact
Weekly Check-Ins
As Needed
Face to Face!
Problem: Developer Distrust
Their stuff is
always buggy
… if I
had time
I could do
this faster
myself …
I hate his
code
Solution: Good Development Practices
Automated tests
Continuous Integration
 Automatic Notifications
Code Coverage Data
Transparency
Documentation Coverage Data
Solution: No CodeWithoutTests
Solution: Test CoverageTransparency
Solution: AutomatedTest Runs
Solution: Test ResultTransparency
Solution: Auto Change
Notification
Solution: ChangeTransparency
Solution: Public, Shared Code
Solution: DocTransparency
Bonus Slides
Problem: Unhappy “Customers”
I didn’t realize
it would look
like this
This isn’t
what I asked
for
I
implemented
the spec
Solution: Collaborative Design
Solution: Behavior Driven Dev
When I am on the search results page
Then id 867 should be before 567
And if I select “title” from the search pulldown
Then id 567 should be before 867
It should …
Problem: Need StableTest Data
Tests keep failing
because the data
keeps changing
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 certain
arguments, and I know what it returns and it isn’t
the method I’m testing right now
Problem: Endless Discussion
No, this
other
way
Is this
approach
okay w folks?
I think you
should do it
this way
Solution: Working CodeWins
I’m going to
do this
Suggestion
Suggestion
EstimatingWork is HARD
Larger Estimates are Less Accurate
Make it Relative, Not Absolute
Fibonacci?
Hours / Days / Weeks / Months?
New 80 / 20 Rule …
80% of the Work Happens in the Last
20% of Elapsed Time for the Project
(Tom Cramer)

Weitere ähnliche Inhalte

Ähnlich wie practical agile knowledge working methods

User Centered Execution for Mobile UX Designers
User Centered Execution for Mobile UX DesignersUser Centered Execution for Mobile UX Designers
User Centered Execution for Mobile UX DesignersSteven Hoober
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomMatthias Luebken
 
Are Agile Projects Doomed to Half-Baked Design?
Are Agile Projects Doomed to Half-Baked Design?Are Agile Projects Doomed to Half-Baked Design?
Are Agile Projects Doomed to Half-Baked Design?theinfonaut
 
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...azheglov
 
Agile and Design Thinking at IBM
Agile and Design Thinking at IBMAgile and Design Thinking at IBM
Agile and Design Thinking at IBMuxpin
 
Design Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDesign Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDaniel Mendez
 
Comcast XFINITY Home: An Agile Case Study
Comcast XFINITY Home: An Agile Case Study Comcast XFINITY Home: An Agile Case Study
Comcast XFINITY Home: An Agile Case Study TechWell
 
How to Solve any Problems?
How to Solve any Problems?How to Solve any Problems?
How to Solve any Problems?Rangga Wiseno
 
Design Thinking for Adoption - Devintersections-Fall2016.pptx
Design Thinking for Adoption - Devintersections-Fall2016.pptxDesign Thinking for Adoption - Devintersections-Fall2016.pptx
Design Thinking for Adoption - Devintersections-Fall2016.pptxMichelle Caldwell, PSM, SSGB
 
7 steps to master problem solving
7 steps to master problem solving7 steps to master problem solving
7 steps to master problem solvingYuri Kaminski
 
Open Source Thinking Tools in Digital Product Design- VIBE WIRE
Open Source Thinking Tools in Digital Product Design- VIBE WIRE Open Source Thinking Tools in Digital Product Design- VIBE WIRE
Open Source Thinking Tools in Digital Product Design- VIBE WIRE Mike Biggs GAICD
 
Test Driven Design by Jonas Auken
Test Driven Design by Jonas AukenTest Driven Design by Jonas Auken
Test Driven Design by Jonas Aukenagilencr
 
Mural: Build Experiences Not Features
Mural: Build Experiences Not FeaturesMural: Build Experiences Not Features
Mural: Build Experiences Not FeaturesJohn Murray
 
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Lviv Startup Club
 
Execute for Every Screen
Execute for Every ScreenExecute for Every Screen
Execute for Every ScreenSteven Hoober
 
SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017Marlon Pierce
 

Ähnlich wie practical agile knowledge working methods (20)

User Centered Execution for Mobile UX Designers
User Centered Execution for Mobile UX DesignersUser Centered Execution for Mobile UX Designers
User Centered Execution for Mobile UX Designers
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one room
 
Are Agile Projects Doomed to Half-Baked Design?
Are Agile Projects Doomed to Half-Baked Design?Are Agile Projects Doomed to Half-Baked Design?
Are Agile Projects Doomed to Half-Baked Design?
 
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...
Lean Kanban Central Europe 2014: Beyond VSM: Understanding and Mapping Your P...
 
Introduction to Design Thinking Workshop
Introduction to Design Thinking WorkshopIntroduction to Design Thinking Workshop
Introduction to Design Thinking Workshop
 
Methodology - Design Sprint
Methodology - Design SprintMethodology - Design Sprint
Methodology - Design Sprint
 
Agile and Design Thinking at IBM
Agile and Design Thinking at IBMAgile and Design Thinking at IBM
Agile and Design Thinking at IBM
 
Design Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDesign Thinking for Requirements Engineering
Design Thinking for Requirements Engineering
 
Comcast XFINITY Home: An Agile Case Study
Comcast XFINITY Home: An Agile Case Study Comcast XFINITY Home: An Agile Case Study
Comcast XFINITY Home: An Agile Case Study
 
How to Solve any Problems?
How to Solve any Problems?How to Solve any Problems?
How to Solve any Problems?
 
Design Thinking for Adoption - Devintersections-Fall2016.pptx
Design Thinking for Adoption - Devintersections-Fall2016.pptxDesign Thinking for Adoption - Devintersections-Fall2016.pptx
Design Thinking for Adoption - Devintersections-Fall2016.pptx
 
7 steps to master problem solving
7 steps to master problem solving7 steps to master problem solving
7 steps to master problem solving
 
Open Source Thinking Tools in Digital Product Design- VIBE WIRE
Open Source Thinking Tools in Digital Product Design- VIBE WIRE Open Source Thinking Tools in Digital Product Design- VIBE WIRE
Open Source Thinking Tools in Digital Product Design- VIBE WIRE
 
Test Driven Design by Jonas Auken
Test Driven Design by Jonas AukenTest Driven Design by Jonas Auken
Test Driven Design by Jonas Auken
 
Mural: Build Experiences Not Features
Mural: Build Experiences Not FeaturesMural: Build Experiences Not Features
Mural: Build Experiences Not Features
 
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
 
Adopting innovation
Adopting innovationAdopting innovation
Adopting innovation
 
Design thinking & agile
Design thinking & agileDesign thinking & agile
Design thinking & agile
 
Execute for Every Screen
Execute for Every ScreenExecute for Every Screen
Execute for Every Screen
 
SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017
 

Kürzlich hochgeladen

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Kürzlich hochgeladen (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

practical agile knowledge working methods