Software Crisis Article Index for
Software
Website Links For
Software
 

Information About

Software Crisis




Conflicting requirements have always hindered the software development process. For example, while users demand a large number of features, customers generally want to minimise the amount they must pay for the software and the time required for its development.

The notion of a software crisis emerged at the end of the 1960s . An early use of the term is in Edsger Dijkstra 's 1972 ACM Turing Award Lecture, "The Humble Programmer" (EWD340), published in the '' Communications Of The ACM ''. Dijkstra states:

:" major cause of the software crisis is that the machines have become several orders of magnitude more powerful! To put it quite bluntly: as long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computers, programming has become an equally gigantic problem." Edsger Dijkstra: The Humble Programmer (PDF, 473Kb)

The causes of the software crisis were linked to the overall complexity of the software process and the relative immaturity of software engineering as a profession. The crisis manifested itself in several ways:
  • Projects running over-budget.

  • Projects running over-time.

  • Software was of low quality.

  • Software often did not meet requirements.

  • Projects were unmanageable and code difficult to maintain.


The software crisis was addressed by the implementation of various Processes And Methodologies most notably Royce's Waterfall Model .