src: uploads.toptal.io
A work on software engineering by Ivar Jacobson et al. describes software entropy as follows:
- The second law of thermodynamics, in principle, states that a closed system's disorder cannot be reduced, it can only remain unchanged or increase. A measure of this disorder is entropy. This law also seems plausible for software systems; as a system is modified, its disorder, or entropy, tends to increase. This is known as software entropy.
- Within software development, there are similar theories; see Lehman (1985), who suggested a number of laws, of which two were, basically, as follows:
- A computer program that is used will be modified
- When a program is modified, its complexity will increase, provided that one does not actively work against this.
Andrew Hunt and David Thomas use fixing broken windows as a metaphor for avoiding software entropy in software development.
The process of code refactoring can result in stepwise reductions in software entropy.
Software entropy is increased with accumulation of technical debt .
Video Software entropy
See also
- Feature creep
- Software bloat
- Software brittleness
- Software rot
- Fail-fast programming pattern to reduce software entropy
Maps Software entropy
References
- Definition of software entropy on Webopedia
Source of article : Wikipedia
