A big challenge for any development organization managing technical debt, the pile of work created from past decisions in software development efforts.
Addressing technical debt often gets short shrift, because doing so rarely addresses an urgent business need and, especially for nonurgent cases, the ROI is unclear and thus perceived as deferrable. It’s a classic issue for anything involving maintenance, whether code or houses. But there are ways to measure and manage technical debt that will help you keep control of that technical debt.
How do the applications that you are developing today evolve into tomorrow’s legacy applications? You and the development team are sprinting and releasing application improvements on a regular release schedule, so it might be hard to imagine these applications dissolving to legacy status in the future. You might also be wondering what you can do today as you are developing the application to reduce the risk of it becoming a legacy application.
Applications don’t become legacy overnight, and they become that way because of two primary factors:
- As the application gets older, an organization may assign fewer people to maintain it , instead shifting people to more strategic projects.
- The amount of time the team dedicates to address technical improvements to the application may get smaller over time, given then focus on new activities.