SlideShare uma empresa Scribd logo
1 de 31
Rapid Product
Development
STOP GUESSING AND START DELIVERING!
Zach Beer
Polaris Solutions
Why this guy?
• Ten years working in Chicago-based start-ups
• I’ve held nearly every role in a development team
• Developer
• Tech lead / manager
• Architect
• Product owner
• Scrum master
Most of all, though: Because I’ve lived it and know it works.
Some quick disclaimers…
 We’re going to talk a lot about customers. Customers are people invested
in using your product. They could be internal or external.
 We’re going to assume you’re building on an existing product. If you’re
starting from scratch, a lot of the same ideas apply, but you’ll want to
tweak them somewhat.
 We’re going to talk about a process pattern that depends on a number of
other ideas. I’m not going to go into significant depth on any of those as
part of this presentation.
 While I encourage you to do so, you don’t have to do all of these things.
Each of them has value even outside of the larger pattern.
I’m happy to discuss any of these in greater depth after the presentation!
I believe we can serve our customers
better.
How did this happen?
 The product owner failed to understand the needs of the customer
 Few opportunities to learn from the customer
 Forced to take a stab in the dark
Manufacturing requires waterfall product
development.
What do you mean by “waterfall product
development”?
 All requirements determined up
front
 Little opportunity to respond to
changing information
 Only one opportunity at delivery
Why is waterfall product
development
problematic?
 Scopes constantly change
 No customer feedback until the
project is complete
 Sometimes the problem changes
during development
 Any mistakes aren’t caught until the
end
Customers can’t help us directly
Customers are great at…
 … pointing out pain points.
 … giving lists of things they think they need.
 … adapting to change.
Customers struggle with…
 … thinking in limited scopes.
 … prioritizing what’s most important.
 … being open to change.
We don’t know what to build either
 We crave positive feedback
 We don’t want to tell the customer “no”
 We think that we understand the customer better
than we do
 Manufacturing culture tells us we must build the
whole thing at once
I believe we can learn from our
customers’ actions.
Continuous feature improvement!
1
Determine the narrowest vertical
slice that can add value to the
customer.
2
Deliver this slice as soon as
possible, event if the feature isn’t
“complete”.
3
Learn as much as possible from
each delivery.
4
Repeat!
Choose the right slice to deliver
 How can I add value to the customer quickly?
 Is this where the users spend most of their time?
 How can I unblock other critical deliveries?
 This is a significant technical challenge, is there a way to prove its value?
For example, think about a user management system…
User management requirements
Before narrow vertical slices
 Add a page to our website which allows
administrators to view, add, and reset
passwords for existing users
After narrow vertical slices
 Add a page to our website which allows users
to view existing users
 Restrict access to the view users page to
administrators
 Add ability to add users to the existing view
users page
 Add ability to reset passwords to the view
users page
Develop critical
feedback loops
 A/B testing can inform
critical (or trivial!) choices
 Actively engage with users
about specific changes
 Tracking tools help you see
which features users are
engaging with
 Heat maps can show where
users are focused
 Observing recorded user
interactions can point out
pain points
Creating this way feels difficult…
 We’re culturally programmed toward the manufacturing model
 We’re praised for our “good ideas”
 We want our customers to be fully satisfied immediately
… but it’s actually easier!
 You have to know less to get started
 You learn details as you go along
 Smaller mistakes are much easier to recover from
 You can focus on the most important things
 Customers focus on progress
I believe this process will make
developers happier.
Development is easier with feature
branching
What is feature branching?
 Create a branch for each feature
 Only merge completed features
Why is it helpful?
 Developers can work in parallel
 Collaboration is easier, since
developers can share branches
 Branches can be tested before being
integrated
 Releases only contain completed
features
Automated testing gives developers
confidence in releases
 Create well-written unit tests
 Choose critical behavior-driven tests
 Manual test only the newest release items
Automated delivery makes reduces the
pain of releases
 Run automated tests on each build
 Automate deployment to test
environments
 Automate release approval
 Automate release deployment
Even positive change is difficult
 Old practices die hard
 Existing team members may need training
 Developers might complain about writing “more code”
 Introducing testing into legacy systems can be challenging
Eventually, teams never look back
The most common long term complaints I hear are:
 “This story feels too big, can we break it up?”
 “Who checked in a broken test? All our tests should pass.”
 “Why does the release take so long now? Five minutes is
forever!”
 “How soon can I push this to production?”
I believe we can serve our customers
better.
So if the car was a software feature…
#1 Determine the narrowest vertical
slice that can add value to the
customer
 We want to build toward a convertible top
 We identify that switching to a two door model is a requirement for
introducing a convertible top
 Theoretically, this could add value to the customer
 It would also give us customer feedback
#2 Deliver this slice as soon as
possible, event if the feature isn’t
“complete”
 Don’t develop the convertible mechanism, it’s expensive and it’s not
needed yet
 Find the simplest way to achieve the two door model
 Ensure the two door model works correctly before shipping
 Deliver the two door model to customers as soon as is practical
#3 Learn as much as possible from
each delivery.
 Only ship the two door model to a limited set of users
 Preferably select users who demonstrated interest
 Monitor these selected users carefully after delivery
 Compare these selected users to other existing users, are they more
satisfied?
 Gather real data about our test users compared to existing users
#4 Repeat!
 Presumably, our comparison didn’t go so well!
 Stop the development of the convertible, customers aren’t willing to
compromise on four vs two doors
 How much time/energy/effort did we save by shortcutting the process?
Get started on the next most valuable slice!
Thanks for listening!

Mais conteúdo relacionado

Mais procurados

Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable ProductBernard Leong
 
Usability Testing - Adding a New Level to Your Toolbox
Usability Testing - Adding a New Level to Your ToolboxUsability Testing - Adding a New Level to Your Toolbox
Usability Testing - Adding a New Level to Your ToolboxExcella
 
Paul Ellarby - Why do scrum?
Paul Ellarby - Why do scrum?Paul Ellarby - Why do scrum?
Paul Ellarby - Why do scrum?Paul Ellarby
 
How-to Build a Minimum Viable Product (MVP)
How-to Build a Minimum Viable Product (MVP)How-to Build a Minimum Viable Product (MVP)
How-to Build a Minimum Viable Product (MVP)Adriana Herrera
 
How Autodesk creates better digital experiences with UserTesting
How Autodesk creates better digital experiences with UserTestingHow Autodesk creates better digital experiences with UserTesting
How Autodesk creates better digital experiences with UserTestingUserTesting
 
Lean UX in an Agency Environment
Lean UX in an Agency EnvironmentLean UX in an Agency Environment
Lean UX in an Agency EnvironmentJef Bekes
 
Working as an agile Experience Designer
Working as an agile Experience DesignerWorking as an agile Experience Designer
Working as an agile Experience DesignerThoughtworks
 
Software Project Estimation Survival Guide
Software Project Estimation Survival GuideSoftware Project Estimation Survival Guide
Software Project Estimation Survival Guidemichaelcummings
 
Build A Minimum Viable Product PowerPoint Presentation Slides
Build A Minimum Viable Product PowerPoint Presentation Slides Build A Minimum Viable Product PowerPoint Presentation Slides
Build A Minimum Viable Product PowerPoint Presentation Slides SlideTeam
 
158 - Product Management for Enterprise-Grade platforms
158 - Product Management for Enterprise-Grade platforms 158 - Product Management for Enterprise-Grade platforms
158 - Product Management for Enterprise-Grade platforms ProductCamp Boston
 
Minimum Viable Product Examples
Minimum Viable Product ExamplesMinimum Viable Product Examples
Minimum Viable Product ExamplesPontus Bergmark
 
Think product workshop at J. Boye 14, awaken the Steve Jobs in you
Think product workshop at J. Boye 14, awaken the Steve Jobs in youThink product workshop at J. Boye 14, awaken the Steve Jobs in you
Think product workshop at J. Boye 14, awaken the Steve Jobs in youRoland Benedetti
 
MVP & Prototype
MVP  & PrototypeMVP  & Prototype
MVP & PrototypeRoyas Amri
 

Mais procurados (19)

ExumaTech Dev Process
ExumaTech Dev ProcessExumaTech Dev Process
ExumaTech Dev Process
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable Product
 
GHA Lean UX presentation
GHA Lean UX presentationGHA Lean UX presentation
GHA Lean UX presentation
 
Usability Testing - Adding a New Level to Your Toolbox
Usability Testing - Adding a New Level to Your ToolboxUsability Testing - Adding a New Level to Your Toolbox
Usability Testing - Adding a New Level to Your Toolbox
 
Paul Ellarby - Why do scrum?
Paul Ellarby - Why do scrum?Paul Ellarby - Why do scrum?
Paul Ellarby - Why do scrum?
 
How-to Build a Minimum Viable Product (MVP)
How-to Build a Minimum Viable Product (MVP)How-to Build a Minimum Viable Product (MVP)
How-to Build a Minimum Viable Product (MVP)
 
How Autodesk creates better digital experiences with UserTesting
How Autodesk creates better digital experiences with UserTestingHow Autodesk creates better digital experiences with UserTesting
How Autodesk creates better digital experiences with UserTesting
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable Product
 
Startup Glossary - Exec I/O
Startup Glossary - Exec I/OStartup Glossary - Exec I/O
Startup Glossary - Exec I/O
 
Building an MVP
Building an MVPBuilding an MVP
Building an MVP
 
Lean UX in an Agency Environment
Lean UX in an Agency EnvironmentLean UX in an Agency Environment
Lean UX in an Agency Environment
 
Working as an agile Experience Designer
Working as an agile Experience DesignerWorking as an agile Experience Designer
Working as an agile Experience Designer
 
Software Project Estimation Survival Guide
Software Project Estimation Survival GuideSoftware Project Estimation Survival Guide
Software Project Estimation Survival Guide
 
Build A Minimum Viable Product PowerPoint Presentation Slides
Build A Minimum Viable Product PowerPoint Presentation Slides Build A Minimum Viable Product PowerPoint Presentation Slides
Build A Minimum Viable Product PowerPoint Presentation Slides
 
158 - Product Management for Enterprise-Grade platforms
158 - Product Management for Enterprise-Grade platforms 158 - Product Management for Enterprise-Grade platforms
158 - Product Management for Enterprise-Grade platforms
 
Lean UX Workshop
Lean UX WorkshopLean UX Workshop
Lean UX Workshop
 
Minimum Viable Product Examples
Minimum Viable Product ExamplesMinimum Viable Product Examples
Minimum Viable Product Examples
 
Think product workshop at J. Boye 14, awaken the Steve Jobs in you
Think product workshop at J. Boye 14, awaken the Steve Jobs in youThink product workshop at J. Boye 14, awaken the Steve Jobs in you
Think product workshop at J. Boye 14, awaken the Steve Jobs in you
 
MVP & Prototype
MVP  & PrototypeMVP  & Prototype
MVP & Prototype
 

Destaque

Accelerating Product Development FLOW: Kanban at Jaguar Land Rover
Accelerating Product Development FLOW: Kanban at Jaguar Land RoverAccelerating Product Development FLOW: Kanban at Jaguar Land Rover
Accelerating Product Development FLOW: Kanban at Jaguar Land RoverHamish McMinn
 
Behavior Driven Testing - A paradigm shift
Behavior Driven Testing - A paradigm shiftBehavior Driven Testing - A paradigm shift
Behavior Driven Testing - A paradigm shiftAspire Systems
 
Strategic Product Development and Cost Estimates for Automotive Industry
Strategic Product Development and Cost Estimates for Automotive IndustryStrategic Product Development and Cost Estimates for Automotive Industry
Strategic Product Development and Cost Estimates for Automotive IndustryVedant Borse
 
Driving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverDriving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverLeanKit
 
Stages Product Development BPM Suite - Better Processes in Practice
Stages Product Development BPM Suite - Better Processes in PracticeStages Product Development BPM Suite - Better Processes in Practice
Stages Product Development BPM Suite - Better Processes in Practiceehmeier
 
Understanding the Relationship between Lean, Agile, and DevOps: Jon's Slides
Understanding the Relationship between Lean, Agile, and DevOps: Jon's SlidesUnderstanding the Relationship between Lean, Agile, and DevOps: Jon's Slides
Understanding the Relationship between Lean, Agile, and DevOps: Jon's SlidesLeanKit
 
Going Beyond WIP Limits for Ever-Higher Organizational Performance
Going Beyond WIP Limits for Ever-Higher Organizational PerformanceGoing Beyond WIP Limits for Ever-Higher Organizational Performance
Going Beyond WIP Limits for Ever-Higher Organizational PerformanceLeanKit
 
BMW
BMWBMW
BMWA B
 

Destaque (10)

Accelerating Product Development FLOW: Kanban at Jaguar Land Rover
Accelerating Product Development FLOW: Kanban at Jaguar Land RoverAccelerating Product Development FLOW: Kanban at Jaguar Land Rover
Accelerating Product Development FLOW: Kanban at Jaguar Land Rover
 
Behavior Driven Testing - A paradigm shift
Behavior Driven Testing - A paradigm shiftBehavior Driven Testing - A paradigm shift
Behavior Driven Testing - A paradigm shift
 
Strategic Product Development and Cost Estimates for Automotive Industry
Strategic Product Development and Cost Estimates for Automotive IndustryStrategic Product Development and Cost Estimates for Automotive Industry
Strategic Product Development and Cost Estimates for Automotive Industry
 
Driving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverDriving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land Rover
 
Stages Product Development BPM Suite - Better Processes in Practice
Stages Product Development BPM Suite - Better Processes in PracticeStages Product Development BPM Suite - Better Processes in Practice
Stages Product Development BPM Suite - Better Processes in Practice
 
Understanding the Relationship between Lean, Agile, and DevOps: Jon's Slides
Understanding the Relationship between Lean, Agile, and DevOps: Jon's SlidesUnderstanding the Relationship between Lean, Agile, and DevOps: Jon's Slides
Understanding the Relationship between Lean, Agile, and DevOps: Jon's Slides
 
General Motors New Product and Process Innovation
General Motors New Product and Process InnovationGeneral Motors New Product and Process Innovation
General Motors New Product and Process Innovation
 
PRESENTATION ON BMW
PRESENTATION ON BMWPRESENTATION ON BMW
PRESENTATION ON BMW
 
Going Beyond WIP Limits for Ever-Higher Organizational Performance
Going Beyond WIP Limits for Ever-Higher Organizational PerformanceGoing Beyond WIP Limits for Ever-Higher Organizational Performance
Going Beyond WIP Limits for Ever-Higher Organizational Performance
 
BMW
BMWBMW
BMW
 

Semelhante a Rapid Product Development

The User Experience Brief
The User Experience BriefThe User Experience Brief
The User Experience BriefJohn Yesko
 
Agile product development
Agile product developmentAgile product development
Agile product developmentBrenn Hill
 
Agile + Lean Product Management
Agile + Lean Product ManagementAgile + Lean Product Management
Agile + Lean Product ManagementBreanna Hughes
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practicesuxpin
 
The principles of agile development
The principles of agile developmentThe principles of agile development
The principles of agile developmentRajat Samal
 
Build the Right Product with Lean UX
Build the Right Product with Lean UXBuild the Right Product with Lean UX
Build the Right Product with Lean UXMike Long
 
Agile Course Presentation
Agile Course PresentationAgile Course Presentation
Agile Course PresentationSoumya De
 
David Cancel, Building a Customer Driven Product Team, BoS USA 2016
David Cancel, Building a Customer Driven Product Team, BoS USA 2016David Cancel, Building a Customer Driven Product Team, BoS USA 2016
David Cancel, Building a Customer Driven Product Team, BoS USA 2016Business of Software Conference
 
How to Build a Customer-Driven Product Team
How to Build a Customer-Driven Product TeamHow to Build a Customer-Driven Product Team
How to Build a Customer-Driven Product TeamDrift
 
[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at Wizeline
[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline
[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at WizelineDevDay.org
 
Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)Ron Lazaro
 
Applying lean ux in designing enterprise software from ground up
Applying lean ux in designing enterprise software from ground upApplying lean ux in designing enterprise software from ground up
Applying lean ux in designing enterprise software from ground upKok Chiann
 
How to Foster Engagement and Understanding Using Agile
How to Foster Engagement and Understanding Using AgileHow to Foster Engagement and Understanding Using Agile
How to Foster Engagement and Understanding Using AgileSalesforce Admins
 
Good agile / Bad agile: Proving the value of Agile to a skeptical organization
Good agile / Bad agile: Proving the value of Agile to a skeptical organizationGood agile / Bad agile: Proving the value of Agile to a skeptical organization
Good agile / Bad agile: Proving the value of Agile to a skeptical organizationAlan Albert
 
Agile+Course+Presentation.pdf
Agile+Course+Presentation.pdfAgile+Course+Presentation.pdf
Agile+Course+Presentation.pdfChandan Kumar
 
(PROJEKTURA) lean startup
(PROJEKTURA) lean startup(PROJEKTURA) lean startup
(PROJEKTURA) lean startupRatko Mutavdzic
 
Highest quality code in your SaaS project. Why should you care about it as a ...
Highest quality code in your SaaS project. Why should you care about it as a ...Highest quality code in your SaaS project. Why should you care about it as a ...
Highest quality code in your SaaS project. Why should you care about it as a ...The Codest
 
How to Think like a Product Manager
How to Think like a Product ManagerHow to Think like a Product Manager
How to Think like a Product ManagerBenjamin Quam
 
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Agile Software Community of India
 
Scaling Product Development at a
Scaling Product Development at a Scaling Product Development at a
Scaling Product Development at a James Birchler
 

Semelhante a Rapid Product Development (20)

The User Experience Brief
The User Experience BriefThe User Experience Brief
The User Experience Brief
 
Agile product development
Agile product developmentAgile product development
Agile product development
 
Agile + Lean Product Management
Agile + Lean Product ManagementAgile + Lean Product Management
Agile + Lean Product Management
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practices
 
The principles of agile development
The principles of agile developmentThe principles of agile development
The principles of agile development
 
Build the Right Product with Lean UX
Build the Right Product with Lean UXBuild the Right Product with Lean UX
Build the Right Product with Lean UX
 
Agile Course Presentation
Agile Course PresentationAgile Course Presentation
Agile Course Presentation
 
David Cancel, Building a Customer Driven Product Team, BoS USA 2016
David Cancel, Building a Customer Driven Product Team, BoS USA 2016David Cancel, Building a Customer Driven Product Team, BoS USA 2016
David Cancel, Building a Customer Driven Product Team, BoS USA 2016
 
How to Build a Customer-Driven Product Team
How to Build a Customer-Driven Product TeamHow to Build a Customer-Driven Product Team
How to Build a Customer-Driven Product Team
 
[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at Wizeline
[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline
[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at Wizeline
 
Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)
 
Applying lean ux in designing enterprise software from ground up
Applying lean ux in designing enterprise software from ground upApplying lean ux in designing enterprise software from ground up
Applying lean ux in designing enterprise software from ground up
 
How to Foster Engagement and Understanding Using Agile
How to Foster Engagement and Understanding Using AgileHow to Foster Engagement and Understanding Using Agile
How to Foster Engagement and Understanding Using Agile
 
Good agile / Bad agile: Proving the value of Agile to a skeptical organization
Good agile / Bad agile: Proving the value of Agile to a skeptical organizationGood agile / Bad agile: Proving the value of Agile to a skeptical organization
Good agile / Bad agile: Proving the value of Agile to a skeptical organization
 
Agile+Course+Presentation.pdf
Agile+Course+Presentation.pdfAgile+Course+Presentation.pdf
Agile+Course+Presentation.pdf
 
(PROJEKTURA) lean startup
(PROJEKTURA) lean startup(PROJEKTURA) lean startup
(PROJEKTURA) lean startup
 
Highest quality code in your SaaS project. Why should you care about it as a ...
Highest quality code in your SaaS project. Why should you care about it as a ...Highest quality code in your SaaS project. Why should you care about it as a ...
Highest quality code in your SaaS project. Why should you care about it as a ...
 
How to Think like a Product Manager
How to Think like a Product ManagerHow to Think like a Product Manager
How to Think like a Product Manager
 
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
 
Scaling Product Development at a
Scaling Product Development at a Scaling Product Development at a
Scaling Product Development at a
 

Último

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Último (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

Rapid Product Development

  • 1. Rapid Product Development STOP GUESSING AND START DELIVERING! Zach Beer Polaris Solutions
  • 2. Why this guy? • Ten years working in Chicago-based start-ups • I’ve held nearly every role in a development team • Developer • Tech lead / manager • Architect • Product owner • Scrum master Most of all, though: Because I’ve lived it and know it works.
  • 3. Some quick disclaimers…  We’re going to talk a lot about customers. Customers are people invested in using your product. They could be internal or external.  We’re going to assume you’re building on an existing product. If you’re starting from scratch, a lot of the same ideas apply, but you’ll want to tweak them somewhat.  We’re going to talk about a process pattern that depends on a number of other ideas. I’m not going to go into significant depth on any of those as part of this presentation.  While I encourage you to do so, you don’t have to do all of these things. Each of them has value even outside of the larger pattern. I’m happy to discuss any of these in greater depth after the presentation!
  • 4. I believe we can serve our customers better.
  • 5.
  • 6. How did this happen?  The product owner failed to understand the needs of the customer  Few opportunities to learn from the customer  Forced to take a stab in the dark Manufacturing requires waterfall product development.
  • 7. What do you mean by “waterfall product development”?  All requirements determined up front  Little opportunity to respond to changing information  Only one opportunity at delivery
  • 8. Why is waterfall product development problematic?  Scopes constantly change  No customer feedback until the project is complete  Sometimes the problem changes during development  Any mistakes aren’t caught until the end
  • 9. Customers can’t help us directly Customers are great at…  … pointing out pain points.  … giving lists of things they think they need.  … adapting to change. Customers struggle with…  … thinking in limited scopes.  … prioritizing what’s most important.  … being open to change.
  • 10. We don’t know what to build either  We crave positive feedback  We don’t want to tell the customer “no”  We think that we understand the customer better than we do  Manufacturing culture tells us we must build the whole thing at once
  • 11. I believe we can learn from our customers’ actions.
  • 12. Continuous feature improvement! 1 Determine the narrowest vertical slice that can add value to the customer. 2 Deliver this slice as soon as possible, event if the feature isn’t “complete”. 3 Learn as much as possible from each delivery. 4 Repeat!
  • 13. Choose the right slice to deliver  How can I add value to the customer quickly?  Is this where the users spend most of their time?  How can I unblock other critical deliveries?  This is a significant technical challenge, is there a way to prove its value? For example, think about a user management system…
  • 14. User management requirements Before narrow vertical slices  Add a page to our website which allows administrators to view, add, and reset passwords for existing users After narrow vertical slices  Add a page to our website which allows users to view existing users  Restrict access to the view users page to administrators  Add ability to add users to the existing view users page  Add ability to reset passwords to the view users page
  • 15. Develop critical feedback loops  A/B testing can inform critical (or trivial!) choices  Actively engage with users about specific changes  Tracking tools help you see which features users are engaging with  Heat maps can show where users are focused  Observing recorded user interactions can point out pain points
  • 16. Creating this way feels difficult…  We’re culturally programmed toward the manufacturing model  We’re praised for our “good ideas”  We want our customers to be fully satisfied immediately
  • 17. … but it’s actually easier!  You have to know less to get started  You learn details as you go along  Smaller mistakes are much easier to recover from  You can focus on the most important things  Customers focus on progress
  • 18. I believe this process will make developers happier.
  • 19. Development is easier with feature branching What is feature branching?  Create a branch for each feature  Only merge completed features Why is it helpful?  Developers can work in parallel  Collaboration is easier, since developers can share branches  Branches can be tested before being integrated  Releases only contain completed features
  • 20. Automated testing gives developers confidence in releases  Create well-written unit tests  Choose critical behavior-driven tests  Manual test only the newest release items
  • 21. Automated delivery makes reduces the pain of releases  Run automated tests on each build  Automate deployment to test environments  Automate release approval  Automate release deployment
  • 22. Even positive change is difficult  Old practices die hard  Existing team members may need training  Developers might complain about writing “more code”  Introducing testing into legacy systems can be challenging
  • 23. Eventually, teams never look back The most common long term complaints I hear are:  “This story feels too big, can we break it up?”  “Who checked in a broken test? All our tests should pass.”  “Why does the release take so long now? Five minutes is forever!”  “How soon can I push this to production?”
  • 24. I believe we can serve our customers better.
  • 25.
  • 26. So if the car was a software feature…
  • 27. #1 Determine the narrowest vertical slice that can add value to the customer  We want to build toward a convertible top  We identify that switching to a two door model is a requirement for introducing a convertible top  Theoretically, this could add value to the customer  It would also give us customer feedback
  • 28. #2 Deliver this slice as soon as possible, event if the feature isn’t “complete”  Don’t develop the convertible mechanism, it’s expensive and it’s not needed yet  Find the simplest way to achieve the two door model  Ensure the two door model works correctly before shipping  Deliver the two door model to customers as soon as is practical
  • 29. #3 Learn as much as possible from each delivery.  Only ship the two door model to a limited set of users  Preferably select users who demonstrated interest  Monitor these selected users carefully after delivery  Compare these selected users to other existing users, are they more satisfied?  Gather real data about our test users compared to existing users
  • 30. #4 Repeat!  Presumably, our comparison didn’t go so well!  Stop the development of the convertible, customers aren’t willing to compromise on four vs two doors  How much time/energy/effort did we save by shortcutting the process? Get started on the next most valuable slice!

Notas do Editor

  1. Nissan Murano CrossCabriolet, released in late 2010 In May of 2012, of the 29.5M cars registered in California, only 107 were Murano CrossCabs. http://www.edmunds.com/industry-center/analysis/drive-by-numbers-who-buys-the-nissan-murano-crosscabriolet.html http://www.autoblog.com/photos/dumbest-cars-all-time/#slide-3870821
  2. http://www.niagarafallslive.com/images/american_falls_2012.jpg
  3. http://www.niagarafallslive.com/images/HorseshoefromSkylon.jpg
  4. Feedback forums are rampant with complaints and wild solutions without understanding of the challenges involved. Apple and Google both roll out interface-changing platforms and people adapt quickly. If these companies asked for feedback, they’d be skewered. http://www.magic-emoji.com/emoji/images/1113_emoji_iphone_angry_face.png
  5. http://www.magic-emoji.com/emoji/images/1102_emoji_iphone_confused_face.png
  6. Things to mention: Google Analytics or similar for tracking page usage Button placement example of A/B testing Sometimes outcomes are easy to track, sometimes they aren’t (purchasing, for example) You don’t know the crazy things your users are trying until you watch them! https://monetizepros.com/encyclopedia/heat-map/
  7. http://www.magic-emoji.com/emoji/images/1116_emoji_iphone_persevering_face.png
  8. http://www.magic-emoji.com/emoji/images/1081_emoji_iphone_grinning_face.png
  9. http://www.magic-emoji.com/emoji/images/1100_emoji_iphone_face_with_cold_sweat.png
  10. http://www.magic-emoji.com/emoji/images/1090_emoji_iphone_winking_face.png
  11. Nissan Murano CrossCabriolet, released in late 2010 In May of 2012, of the 29.5M cars registered in California, only 107 were Murano CrossCabs. http://www.edmunds.com/industry-center/analysis/drive-by-numbers-who-buys-the-nissan-murano-crosscabriolet.html http://www.autoblog.com/photos/dumbest-cars-all-time/#slide-3870821