Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
How can agile help you in clearing the technical debt
1. How can Agile help you in clearing the
Technical Debt?
Manu PK
@manupk12
http://www.jyops.blogspot.in/
Scrum Bangalore Meetup Sept 14,2013
2. About Me
Associate Lead in Technology @ Schneider Electric
Author @ DZone and Blogger @
http://www.jyops.blogspot.com/http://www.jyops.blogspot.com/
Interested in knowing How great web applications
were built.
4. Defining Technical Debt
Technical Debt Metaphor - A term coined by Ward
Cunningham (1992) http://c2.com/cgi/wiki?WardExplainsDebtMetaphor
Technical debt metaphor referring to the eventual
consequences of poor software development
practices within a codebase - Wiki.practices within a codebase - Wiki.
Technical debt and Cost of Change
I got your point!!.
6. Technical Debt in Agile Context
From the Agile Principles http://agilemanifesto.org/principles.html
”Continuous attention to technical excellence and
good design enhances agility”
Working software over …Working software over …
Do Agile, but beware of being Fragile
7. Your Must Do Defense
Continuous Integration – Code Quality and Test
Reports
Tools to help ☺
Sonar
Static Analysis Tools
Good Programming practices and guidelines
8. Negotiating with Product Owner
Case Study:– Quote Reports
Use the opportunity of Change requests to clean up
the functionality.the functionality.
Technical Stories in Release planning.
Developers - As Software Professionals its our
responsibility to push for clean code.
9. Trying out new Stuff
Spike – A time boxed experiment of the Unknown
A daemon thread!
Strategies for Major technical revamps
Case Study :- Upgrading Tapestry, Spring and Hibernate
to latest versions
10. The dilemma : Ship it Fast Vs Ship it Clean!
Ok, Get it working first
Now, get back and fix it.
How much to Design? – Upfront Vs Evolving Design
More design => clear requirements.More design => clear requirements.
You know the correct design when you are done!
Re-Design is the only viable alternative!
11. Summary
Detect the evil within!
Use the agile practices to Pay of your debt
Use the tools for first defense.
Negotiate and get the PO on board.Negotiate and get the PO on board.
Use Spikes when you try new stuff.
Choose your design style
Make your code base cleaner than Inherited ☺
13. References
Martin Fowler Talk
Martin Fowler on Technical Debt
Agile Architecture Emerges -- or Does It
Using Spikes
Steve McConnell’s talk
http://www.ontechnicaldebt.com
Ward Explains Debt MetaphorWard Explains Debt Metaphor