usinglean!xpto!superchargeyour agiledelivery! · at18! agilepractices’...
TRANSCRIPT
AT18 Agile Practices Thursday, November 7th, 2019 3:30 PM
Using Lean XP to Supercharge Your Agile Delivery
Presented by:
Jim Collins and Amanda Palovcsik
CUNA Mutual Group
Brought to you by:
888-‐-‐-‐268-‐-‐-‐8770 ·∙·∙ 904-‐-‐-‐278-‐-‐-‐0524 -‐ [email protected] https://agiledevopseast.techwell.com/
Jim CollinsJim Collins is a certified SAFe Scaled Agilist, Professional ScrumMaster, and Project Management Professional. A Navy veteran, Jim has more than thirty years of experience in the defense, gaming (lottery), and financial industries. Jim has spent the last twenty years in various management roles in IT, with the last few years as a manager of digital transformation. Most recently, Jim successfully moved his teams from traditional Scrum to a lean version of Extreme Programming, using an approach championed by Pivotal software. He is not the guy who wrote Good to Great, although they do share the same name.
Amanda PalovcsikJim Collins is a certified SAFe Scaled Agilist, Professional ScrumMaster, and Project Management Professional. A Navy veteran, Jim has more than thirty years of experience in the defense, gaming (lottery), and financial industries. Jim has spent the last twenty years in various management roles in IT, with the last few years as a manager of digital transformation. Most recently, Jim successfully moved his teams from traditional Scrum to a lean version of Extreme Programming, using an approach championed by Pivotal software. He is not the guy who wrote Good to Great, although they do share the same name.
9/20/2019
1
Supercharge your Agile Delivery with Lean XPJim Collins
Senior IT ManagerCUNA Mutual Group
2
30+ years experience in IT –U.S. Navy, Submarine Force–Raytheon (Defense Contractor)
–GTech (Lottery/Gaming Systems)
–Great Lakes Higher Ed (Student Loans)
–CUNA Mutual Group (Insurance)
https://www.linkedin.com/in/jimcollins223/https://agiledevopseast.techwell.com/speakers/jim-collins
Manager, Portfolio Manager, Scrum Master, Project Manager, Security Analyst, Application Developer, Operations Analyst,
Trainer, Field Engineer, Electronic Technician
Jim Collins, PMP, PSM, SA
About me…
9/20/2019
2
3
Why did we do this? We were motivated.
• Modernize a white labeled web application with a large active customer base– Roughly 600 customers– 7500+ unique configurations for those customers– Nearly $3 billion dollars of loan applications requested via this channel in 2018
• Technical limitations– 99.999 availability required– Initially developed in 1998, contains lots of tech debt
• Key business drivers– Need to be able to deliver features quickly to keep pace with our competitors– Need to increase quality. Several failed releases due to system fragility– Need to support all customers while we modernize– Our window was closing. This market opportunity would not exist 3 years from now.
4
The team culture
The people/culture are, by far, the most important part of making this successful
You need people, who may be skeptical, but are willing try
9/20/2019
3
5
Lean XPNot quite Six Sigma Lean, not quite Extreme Programming (XP)
6
The process (i.e., our agenda)
• Lean XP structure
• Automate everything
• Test Driven Development (TDD)
• Pairing at all levels
• Just in time development
• Feature toggles
• User centered design
• Embrace rework
• Eliminate waste
• Recap - putting it all together
9/20/2019
4
7
The structure
Is it Kanban? Is it scrum? Does it matter?
• Scrum ceremonies, and Kanban backlog management – One week sprints – Daily standup – Weekly demo– Weekly planning/refinement meeting
• DO NOT point stories• Stories are taken from features and made the right size for the sprint• Feature roadmaps guide priority
– Weekly retro• Pick two or three action items to fix at a time (action item WIP limits)• DO NOT try to fix all your retro items at once
8
One week sprints?!?!?! Are you kidding me???
• Before trying one week sprints...– 100% of team members were skeptical– 100% of team members thought it would not work– 100% of team members recommended against it
• After a few months…– Most team members wanted to go back to two week sprints
• After several months…– Roughly 80% of team members preferred one week sprints
9/20/2019
5
9
High level plans drive development
• Feature Roadmap–Very high level features–Plan for 2.5 years –Developed with business
• Feature Kanban–Minimum Viable Product–Short term plan – 6 months–Developed with business
Feature
Customer Implementation
Tech Debt
Project
7/1/2019 12/31/202110/1/2019 1/1/2020 4/1/2020 7/1/2020 10/1/2020 1/1/2021 4/1/2021 7/1/2021 10/1/2021
Customer Implementation
Feature
Feature
Customer Implementation
Feature
Feature
Customer Implementation
Tech Debt
Tech Debt
7/1/2021Platform Go/No Go
Tech Debt
Tech Debt
Tech Debt
Tech Debt
Tech Debt
Customer Implementation
Feature
Tech Debt
Tech Debt
Tech Debt
Tech Debt
10
Automate everything
System setup
Builds
Deployments
Testing
Monitoring
Scaling
• Reduces error rates
• Provides confidence to deploy frequently
• Supports increased auditing
• Saves time
• Increases quality
9/20/2019
6
11
Test Driven Development (TDD)
Just because code compiles doesn’t mean it works
• All code is tested each time you build/deploy
• Only build what you need
• Mocking reduces external dependencies
• Immediate feedback to developers of breaking changes
• The tests document the expected functionality
12
Pairing for everyone, not just developers
• Two roles– Product owners
• One business PO and one technical PO
– Developers• App Developers/Dev Ops • Business Analysts• User Experience (UX) Designers • Testers
• Traditional pairing is our top option for learning and onboarding
Pairing saves time because people don’t get stuck on problems as often
9/20/2019
7
13
Just in Time (JIT) development
• From Lean Six Sigma
• Based on Just In Time manufacturing– Opposite of Just in Case
• Wait to develop until you know WHAT to develop
• Testing and learning means that plans change, often
• Develop only what you need, when you need it (i.e., eliminate waste)
14
Feature toggles
• Risk mitigation
• Essential for speed
• Turn off features when…–They have issues–Nobody is using them–Prior to implementation
9/20/2019
8
15
Minimum Viable Feature/Product (MVF/MVP)
• Deliver value early
• Incrementally improve
• Know what the end state will look like, but…
• Refine it over time
“Perfection is the enemy of progress.”-Some professor from Yale, not sure where he got it from
16
User Centered Design (UCD)
• Develop a MVP
• Release to market
• Get end user feedback
• Update app based on feedback
• Repeat
9/20/2019
9
17
Embrace rework
The Porta Potty has NO business valueIt’s only for the dev team, and will no longer be needed once the project is done
It’s still important enough to be done over and over
Link if no internet connection.
18
Eliminate waste
• Types of waste–Defects–Over-Production–Waiting–Non-Utilized Talent–Transportation– Inventory–Motion–Extra-Processing
9/20/2019
10
19
The Results How things went for my teams
20
The journey
The Plan
9/20/2019
11
21
Results
“Simplicity is the key”
400% Reduction in VSTS Projects(116 to 28 Projects)
100% Increase in Test Coverage (29% to 58%)
330% Reduction in Total Lines of Code(96720 to 29279 Lines)
300% Reduction of build time(3 to 1 minutes)
TDD provides confidence to deploy code iteratively and quickly.
100% increase in test coverage in CARLA API(28.92 -> 58.49%)
1500% increase in test cases in CARLA UI (19 -> 279 Units Tests)
“The most powerful tool we have as developers is automation”
New environments can be built in hours not weeksNew applications are deployed in minutesnot days
22
What the team thought
9/20/2019
12
23
Putting it all togetherHow to implement Lean XP for your teams
24
Lets get it started
A journey of 1000 miles begins with a single step.- Lao-Tzu
9/20/2019
13
25
Always be agile
You’ll know you’re doing agile right when all your teams do it differently. If this is not the case, then your teams need to
spend more time inspecting and adapting.
Don’t waterfall your agile change. The idea is to get a little better every day.
Don’t let perfection stand in the way of progress
26
Don’t give up!
“Everyone has a plan, until they get punched in the face.” – Mike Tyson
The Mike Tyson quote teaches us two things:1. Anyone on your team can have valuable input. Listen to all you team members2. You’re going to need a plan B. You may also need plans C thru Z, as well
You’re going to get “punched in the face”. Then what will you do? – Stay the course – Its going to be hard– People are going to push back– Make as much change as you can at any given time. Baby steps.– Its been a year so far, and we’re still not where we eventually want to be. We’re getting there.
9/20/2019
14
27
Final thoughts
• Make a big splash to start, but then take baby steps. Don’t try to do everything at once.
• If you can, get help from people who’ve done this before
• Don’t be afraid to try
• Don’t be afraid to fail
• Pivot, when necessary
• Every team will go at their own pace
• This is not the right approach for all teams
28
&