Death by Technical Debt: Lessons Learned to Get you Unbuired
-
Upload
technologyassociationoregon -
Category
Technology
-
view
231 -
download
2
description
Transcript of Death by Technical Debt: Lessons Learned to Get you Unbuired
![Page 1: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/1.jpg)
Death by technical debt:lessons learned to get unburied
QA & Developer Joint Forum Event
![Page 2: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/2.jpg)
SERIES SPONSORS
![Page 3: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/3.jpg)
JAMES SHOREConsultant, AuthorThe Art of Agile@jamesshore
![Page 4: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/4.jpg)
1800GOAGILEby Becky James
Debt Counseling
![Page 5: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/5.jpg)
#surelytheremustbeoneanswer
![Page 6: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/6.jpg)
#managersbringconstraints, #debtfreewithoutmanagers
![Page 7: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/7.jpg)
#oldnews, #boldstatement#noteamcohesion
#itsalltheirfault
![Page 8: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/8.jpg)
#unempowered, #overthewallthinking#lacksownership, #actualquotes
I shouldn't have to spend any of
my resource pool on technical
debt that the Development
teams introduced.
Surely, we don’t need that much
time to fully test the
feature – let’s cut that
estimate in half.
What do you mean my
feedback is too late…I just got pulled into the
project yesterday.
Product Owner Developer QA Engineer
![Page 9: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/9.jpg)
#completetransformation, #declaredbankruptcy
![Page 10: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/10.jpg)
#empowered, #teamsownsdecisions
![Page 11: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/11.jpg)
#selforganizingteams, #nobystanders#deliberatedecisions, #ownership
I own quality and I own
keeping our technical debt under control.
I own quality and I own
keeping our technical debt under control.
Product Owner Developer QA Engineer
I own quality and I own
keeping our technical debt under control.
![Page 12: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/12.jpg)
#theybringdonuts
![Page 13: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/13.jpg)
Technical DebtDeath by Technical Debt:
Lessons Learned to get you Unburied
Product Owner Point of View
Todd Whitaker, Product Owner
Tripwire, Inc.
![Page 14: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/14.jpg)
What is technical debt?
14
• Technical work that should have been completed, but for whatever reason was not and thus it is being “carried” in the product/codebase.
• Analogies:
![Page 15: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/15.jpg)
Technical Debt – This PO’s POV
If you are a product owner you should care about technical debt.
If you work with a product owner, you need to help him/her know why they should care.
15
![Page 16: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/16.jpg)
How does it happen?
• “Startup mode”• Time to market pressure• Inexperience• A natural side-affect of an imperfect median
16
![Page 17: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/17.jpg)
Technical Debt – Points to consider
• +1 for not incurring it in the first place• If it is being incurred, make it visible!• In reality it happens and should be tracked
– Tracking too much becomes ineffective
• Developers are usually the most aware• Others are impacted in many ways:
– Dev teams, Support, Prof Services, etc. and customers!
17
![Page 18: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/18.jpg)
Motivating your PO• Make the PO aware of tangible effects and
benefits of addressing• Help him/her understand and quantify ROI
– Performance (speed/throughput)– Improved dev team velocity– Faster time to market– More features in the release– Increased sales– Benefit to Prof. Services and System Engineers (sales)
• Be willing to let go if you cannot justify it.
18
assign $
![Page 19: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/19.jpg)
Questions?
19
![Page 20: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/20.jpg)
ADP Dealer ServicesADP Dealer ServicesTechnical Debt Technical Debt DiscussionDiscussion
November 2013November 2013
![Page 21: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/21.jpg)
21
ADP Dealer ServicesADP Dealer Services
FOCUS
![Page 22: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/22.jpg)
22
ADP Dealer ServicesADP Dealer Services
PRODUCTS
LEAD MANAGER
CRM
DESKING
CREDIT
COMPLIANCE
F&I
MENU
STOCKING
MERCHANDISING
![Page 23: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/23.jpg)
23
ADP Dealer ServicesADP Dealer Services
PEOPLE
37 SPRINT TEAMS250+ ASSOCIATES
![Page 24: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/24.jpg)
24
ADP Dealer ServicesADP Dealer Services
PROCESS
![Page 25: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/25.jpg)
25
ADP Dealer ServicesADP Dealer Services
OUR TECH DEBT STORY…
![Page 26: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/26.jpg)
26
ADP Dealer ServicesADP Dealer Services
FIRST, THE OLD…
My Top 5 Favorites
![Page 27: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/27.jpg)
27
ADP Dealer ServicesADP Dealer Services
1.Our application tips over every Saturday
2.We need to plan a hot fix after every release
3.We are scared to change ‘X’
4.Slow Releases
5.We Had to Roll Back the Release Because of xyz.dll
![Page 28: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/28.jpg)
28
ADP Dealer ServicesADP Dealer Services
1.Our application tips over every Saturday
2.We need to plan a hot fix after every release
3.We are scared to change ‘X’
4.We Can’t Release That for Another 10 Days
5.We Had to Roll Back the Release Because of xyz.dll
![Page 29: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/29.jpg)
29
ADP Dealer ServicesADP Dealer Services
1.Our application tips over every Saturday
2.We need to plan a hot fix after every release
3.We are scared to change ‘X’
4.We Can’t Release That for Another 10 Days
5.We Had to Roll Back the Release Because of xyz.dll
![Page 30: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/30.jpg)
30
ADP Dealer ServicesADP Dealer Services
1.Our application tips over every Saturday
2.We need to plan a hot fix after every release
3.We are scared to change ‘X’
4.We Can’t Release That for Another 10 Days
5.We Had to Roll Back the Release Because of xyz.dll
![Page 31: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/31.jpg)
31
ADP Dealer ServicesADP Dealer Services
1.Our application tips over every Saturday
2.We need to plan a hot fix after every release
3.We are scared to change ‘X’
4.We Can’t Release That for Another 10 Days
5.We Had to Roll Back the Release Because of xyz.dll
![Page 32: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/32.jpg)
32
ADP Dealer ServicesADP Dealer Services
Now the New…
![Page 33: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/33.jpg)
33
Culture ChangeCulture Change
![Page 34: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/34.jpg)
34
EndEnd
![Page 35: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/35.jpg)
© 2012 Portland General Electric. All rights reserved.
Technical Debt Management
TAO Panel Discussion
Date: November 7, 2013Presenter: Mark Menger
![Page 36: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/36.jpg)
3611/13/13
15 application delivery teams1 large scale project teamExperience ranging from months to
decades
People, …
![Page 37: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/37.jpg)
3711/13/13
ScrumKanbanWaterfall
…Process, …
![Page 38: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/38.jpg)
3811/13/13
.Net & T-SQLJava / WebSphereDatapowerDataStageOracle Forms & PL/SQLAnd others
…and Technology …
![Page 39: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/39.jpg)
3911/13/13
Unacknowledged technical debtUnmanaged technical debtVendor technical debtKnowledge debt
Technical Debt Challenges
![Page 40: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/40.jpg)
4011/13/13
Unplanned and planned workCommitted workCone of uncertainty
The importance of language
![Page 41: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/41.jpg)
4111/13/13
Introduce the concept at all levelsCommon term used by IT senior
managementDon’t create more technical debtScrumMaster / Product Owner
partnershipOccasional topic at business
sponsor groups
First steps out of the pit
![Page 42: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/42.jpg)
4211/13/13
Improve fluency with the concept Informally capture technical debt
backlogsExpand upon success of SM/PO
partnershipDocument project end technical
debtAdditional process measures (e.g.
code coverage)
Next steps out of the pit
![Page 43: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/43.jpg)
Tech DebtThe NWEA Product Engineering Perspective
![Page 44: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/44.jpg)
Recommendations
1. Change the language• “Technical Debt” is “Business Debt”
1. Create owner and advocate for technical debt
2. Make the cost transparent (Get your CFO’s partnership!)
3. Create both initiatives and pre-allocated capacity
4. Invest in good design early• Good design early beats Great design late
1. Be proactive
![Page 45: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/45.jpg)
NWEA
• Mission - “Partnering to Help All Kids Learn”• $100 Million Revenue• 500+ Employees• Serve 7+ Million kids World Wide• 42+ Million Assessments per year • 100+ Engineers• Based in Portland
![Page 46: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/46.jpg)
Our Challenge
• Scaling Web Applications• High Capacity, High Transaction Volume• High Concurrency• > 1,000 moving to > 100,000 Concurrent Users
• Moving from Product to Platform• Moving from Single Product to Suite• Wrong Architecture• Both Hardware and Software• Built for one purpose, deployed for a different one
![Page 47: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/47.jpg)
Technical Debt Definition
• “A confusing combination of black magic, voodoo, and artifacts generated in the daily activities of Software Developers, Technical Architects, System Engineers and Operations of Technology Platforms, which is not readily apparent to, or valued by, customers and business partners.” • The Evil Twin of product “Features”• The “Buzz-Kill” of Product Managers customer focus groups
and initiative funding meetings• The “Hard Sell”
![Page 48: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/48.jpg)
Examples
• The Obvious• Hardware and OS Infrastructure EOL• Legacy or EOL Software Frameworks• De-supported Software and Hardware Platforms
• The Non-Obvious• Short-Cut and/or Wrong Architecture and Design Decisions• Lowest Bid Technology Acquisition (a.k.a the cheapest route is the
most expensive long term solution)• The Prototype gone wild (a.k.a “Fast is Good”)• The “Tent City” – Bad Urban Planning in Technology Architecture
![Page 49: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/49.jpg)
Strategies to Manage Technical Debt
1. Create an Initiative
2. Hide Capacity
3. Pass it to your Successor
![Page 50: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/50.jpg)
Create an Initiative
• The Good• Full Organization Sign-up and Support• Focus• Resources • Targets
• The Bad• Need strong executive sponsor• Usually driven by pain not typical positive drivers• Seen as “Necessary Evil”• Must compete with customer facing, revenue generating, projects
![Page 51: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/51.jpg)
Hide Capacity
• The Good• No negotiation required• Give engineers license to do this work• Self Protection• Less likely to be caught “out”
• The Bad• Tough to keep in the priority work• Needs internal governance and oversight• Requires discipline
![Page 52: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/52.jpg)
Pass it to your Successor
• The Good• No management required• No architecture and design required• No negotiation required
• The Bad• Can’t predict the timing of “The Crisis Point”• Your tenure has limited time horizon• Your infrastructure will fail (i.e. What color is your parachute?)
![Page 53: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/53.jpg)
Recommendations
1. Change the language• “Technical Debt” is “Business Debt”
1. Create owner and advocate for technical debt
2. Make the cost transparent (Get your CFO’s partnership!)
3. Create both initiatives and pre-allocated capacity
4. Invest in good design early• Good design early beats Great design late
1. Be proactive
![Page 54: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/54.jpg)
Q&A
![Page 55: Death by Technical Debt: Lessons Learned to Get you Unbuired](https://reader033.fdocuments.net/reader033/viewer/2022052908/559452531a28abd34f8b4683/html5/thumbnails/55.jpg)
SERIES SPONSORS