Software crisis
Software crisis was a term used to describe the impact of rapid increases in computer power and the complexity of the problems which could be solved. Basically it refers to the difficulty of writing correct, understandable, and verifiable computer software. The roots of the software crisis are complexity, expectations, and change, which often lead to:
- Projects running over-budget.
- Projects running over-time.
- Software of low quality.
- Software that does not meet requirements.
- Projects that is unmanageable and difficult to maintain.
Various processes and methodologies have been developed over the last few decades to "tame" the software crisis, which have been applied to projects with varying degrees of success. However, it is widely agreed that there is No silver bullet. In general, software projects which are large, complicated, poorly-specified, and involve unfamiliar aspects, are still particularly vulnerable to large, unanticipated problems.