Software does not wear-out in the traditional sense of the term, but software does tend to deteriorate as it evolves, because:
1. Software suffers from exposure to hostile environments.
2. Defects are more likely to arise after software has been used often.
3. Multiple change requests introduce errors in component interactions.
4. Software spare parts become harder to order.