This Article 
 Bibliographic References 
 Add to: 
Rescuing Code
September/October 2007 (vol. 24 no. 5)
pp. 26-27
The term "heat death" comes from the second law of thermodynamics: entropy within a closed system increases over time without bound until the system collapses. In software, the entropy we experience most is in the design, and project heat death occurs when the design rots to the point where starting over is cheaper than continuing. If we focus on learning how to improve the design and combine this attitude with simple design heuristics, common sense, and experience, we can make our overly constrained designs more flexible. We call this refactoring—improving the design of existing code so we can stave off heat death, perhaps indefinitely.
Index Terms:
design, cost of change, maintenance, rescuing code, trade-off, entropy, heat death, refactoring, improving design, improvement
J.B. Rainsberger, "Rescuing Code," IEEE Software, vol. 24, no. 5, pp. 26-27, Sept.-Oct. 2007, doi:10.1109/MS.2007.143
Usage of this product signifies your acceptance of the Terms of Use.