much, for maintenance to solve the business problem, and an alternative solution must be found. The software has suddenly crashed to £0 value. Estdale defines "Maintenance Debt" as: the gap between the current implementation state of an application and the ideal, using only functionality of external components that is fully maintained and supported. This debt is often hidden or not recognized. An application’s overall maintainability is dependent on the continuing obtainability of components of all sorts from other suppliers, including: Development tools: source editing, configuration management, compilation and build Testing tools: test selection, execution/verification/reporting Platforms to execute the above: hardware, operating system and other services Production environment and any standby/Disaster Recovery facilities, including the source code language’s Run-Time Support Environment, and the wider ecosystem of job scheduling, file transfer, replicated storage, backup and archive, single sign-on, etc etc. Separately acquired packages, eg DBMS, graphics, comms, middleware Bought in source-code, object code libraries, and other invocable services Any requirements arising from other applications sharing the production environment or interworking with the application in question and of course The availability of relevant skills, in-house, or in the marketplace. The complete disappearance of a component could make the application un-rebuildable, or imminently unmaintainable. See also Application retirement Journal of Software Maintenance and Evolution: Research and Practice Long-term support Search-based software engineering Software archaeology Software maintainer Software development References Further reading External links Journal of Software Maintenance IEEE standards ISO/IEC standards