Ingegneria del software: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pontsort (discussione | contributi)
Nessun oggetto della modifica
m Annullate le modifiche di Pontsort (discussione), riportata alla versione precedente di Folto82
Etichetta: Rollback
Riga 17:
La [[programmazione (informatica)|programmazione]] consisteva soprattutto nel mettere insieme una sequenza di [[istruzione (informatica)|istruzioni]] di [[codice sorgente]] per realizzare compiti ben specifici.
 
Dal [[1965]] al [[1975]] si assiste allo [[Sviluppo software|sviluppo di software]] pensato per più utenti e per i sistemi in [[real-time|tempo reale]]. In questo periodo iniziano di conseguenza gli sviluppi di [[pacchetto (software)|pacchetti]] software, tuttavia si presentano anche numerosi problemi, come la gestione e la manutenzione del software.
 
Nel 1968 la conferenza [[NATO]] tenuta a [[Garmisch]], in [[Germania]], [http://homepages.cs.ncl.ac.uk/brian.randell/NATO/ rende chiaro il problema] rappresentato dall'incapacità di produrre nei tempi previsti software affidabile e rispondente ai requisiti.
A partire dal [[1972]] e fino al [[1988]] vengono introdotte nuove tecnologie, nascono i [[Sistema distribuito|sistemi distribuiti]] e si afferma la figura del [[amministratore di sistema|sistemista informatico]] esperto. Il costo dell'[[hardware]] si abbassa considerevolmente e di conseguenza la tecnologia informatica comincia a diffondersi rapidamente. Il livello qualitativo del software si eleva, tuttavia il suo sviluppo è ancora limitato a progetti scientifici e militari, e solo successivamente, dopo aver affrontato una lunga fase di [[collaudo]], il software viene introdotto nelle industrie. Organizzazioni come [[il Pentagono]] spingono fortemente lo studio di modelli che permettano di minimizzare la quantità di errori all'interno dei software.
 
Con l'introduzione delle tecnologie informatiche anche nel settore industriale e commerciale, a partire dal [[1988]], bacini di utenze non più tecniche sentono l'esigenza di informatizzare le proprie strutture. In questo periodo nasce la [[programmazione orientata agli oggetti]], si tende a controllare lo sviluppo del software, cercando di sviluppare prodotti di qualità, anche a causa della concorrenza affermatasi tra le [[software house|case di sviluppo]]. Si cerca di curare al massimo l'[[interfaccia grafica]] presentata all'utente, in quanto anche il tipo di utenza è cambiato. Da queste esigenze nasce l'incontro tra i [[requisiti]] dell'azienda cliente e le funzionalità che il programmatore deve realizzare.
 
Si sviluppa un concetto analogo alle ottimizzazioni da catena di montaggio nelle industrie del [[XX secolo]], che avevano similmente stravolto il modo di produrre apparecchiature meccaniche. Si cerca cioè di identificare i punti focali che devono governare la realizzazione di un buon prodotto software e soprattutto si cerca di definire formalmente cosa possa descrivere un ''buon'' prodotto software.
Riga 28:
==Descrizione==
=== Concetti base ===
L'ingegneria del software identifica una formalizzazione del processo di realizzazione e di manutenzione di un sistema informativo.
Per tale associazione con una idea quasi [[Biologia|biologica]] di vita si parla spesso di ''ciclo di vita'' di un software, concetto che ha assunto con il passare dei decenni un'importanza sempre più elevata, spostando l'idea di software come ''manufatto'' verso un'idea di prodotto industriale.
 
La necessità di creare una [[scienza]] che si occupi della realizzazione dei sistemi informativi nasce dalla necessità di sviluppare prodotti sempre più complessi ed evoluti che rispondano a esigenze di correttezza del processo realizzativo e di facile manutenzione.
Riga 63 ⟶ 64:
* [[Sviluppo software]]
* [[Ciclo di vita del software]]
* [[Design pattern|Schema progettuale]]
* [[Model-View-Controller|MVC]]
* [[Modello di sviluppo del software]]