Software crisis: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: Modifico: es:Crisis del software |
m Annullata la modifica di 62.177.28.254 (discussione), riportata alla versione precedente di Egidio24 Etichetta: Rollback |
||
(23 versioni intermedie di 19 utenti non mostrate) | |||
Riga 1:
{{S|informatica}}▼
==Descrizione==
▲Il '''software crisis''' è un termine usato nei primi giorni dell'[[Ingegneria del software]] per descrivere l'impatto della rapida crescita della potenza degli elaboratori e la complessità dei problemi che dovevano essere affrontati. Le parole chiave della software crisis erano '''complessità''', '''attese''' e '''cambiamento'''.
I requisiti, continuamente in conflitto tra loro, impedivano lo sviluppo del software. Per esempio, mentre gli utenti domandavano un largo numero di funzionalità, i
Il concetto di software crisis
▲I requisiti, continuamente in conflitto tra loro, impedivano lo sviluppo del software. Per esempio, mentre gli utenti domandavano un largo numero di funzionalità, i comittenti, generalmente, chiedevano di minimizzare i costi dello sviluppo ed i tempi.
Dijkstra affermava<ref>
▲Il concetto di software crisis era emerso alla fine del 1960. Un vecchio uso del termine era in ACM Turing Award Lecture, "The Humble Programmer" (EWD340), di [[Edsger Dijkstra]] del 1972 publicato in [[Communications of the ACM]].
{{cita pubblicazione |cognome=Dijkstra
Le cause della software crisis
▲Dijkstra affermava: "''The 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''" [http://www.cs.utexas.edu/users/EWD/ewd03xx/EWD340.PDF Edsger Dijkstra: The Humble Programmer (PDF, 473Kb)].
▲Le cause della software crisis era collegate alla complessità dei processi software ed alla relativa immaturità dell'ingegneria del software. La crisi si manifestava in diversi modi:
* Progetti oltre il budget
* Progetti oltre i limiti di tempo
* Software di scarsa qualità
* Software che spesso non rispettava i requisiti
* Progetti ingestibili e codice difficile da
La crisi del software condusse, quindi, alla nascita dell'Ingegneria del software ed ai primi modelli di sviluppo, come il [[modello a cascata]].
Per superare la crisi, infatti, si dovettero introdurre:
* [[Management]];
* Organizzazione, attraverso l'analisi e la progettazione;
* Teorie e Tecniche, tra cui la [[programmazione strutturata]] e la [[programmazione ad oggetti]];
* Strumenti, tra cui gli [[ambiente di sviluppo integrato|Integrated development environment]];
* Metodologie, tra cui il [[modello a cascata]] e la [[metodologia agile]].
== Note ==
[[Categoria:Storia dell'informatica]]▼
<references/>
▲[[Categoria:Storia dell'informatica]]
[[
|