Pagina iniziale > I > Ingegneria Del Software

Ingegneria del software

L'ingegneria del software è una disciplina formata da un insieme di metodi, strumenti e tecniche utilizzati nello sviluppo di programmi per computer (software).

Questa disciplina trascende l'attività di programmazione, che è il pilastro fondamentale quando si crea un'applicazione. L'ingegnere del software è responsabile di tutta la gestione del progetto in modo che il progetto possa essere sviluppato entro un determinato tempo e budget.

L'ingegneria del software, quindi, comprende l'analisi preliminare della situazione, il disegno del progetto, lo sviluppo del software, i test necessari per confermare il suo corretto funzionamento e la realizzazione del sistema.

Si deve notare che il processo di sviluppo del software comporta quello che è noto come il ciclo di vita del software, che è composto da quattro fasi: concezione, elaborazione, costruzione e transizione.

La concezione definisce lo scopo del progetto e sviluppa il modello di business; l'elaborazione definisce il piano del progetto, dettaglia le caratteristiche e sostiene l'architettura; la costruzione è lo sviluppo del prodotto; e la transizione è il trasferimento del prodotto finito agli utenti.

Una volta completato questo ciclo, entra in gioco la manutenzione del software. Questa è una fase dell'ingegneria in cui i bug scoperti (spesso notati dagli stessi utenti) sono corretti e gli aggiornamenti sono incorporati per affrontare nuovi requisiti. Il processo di manutenzione incorpora anche nuovi sviluppi, per permettere al software di soddisfare un maggior numero di compiti.

Un campo direttamente collegato all'ingegneria del software è l'architettura dei sistemi, che consiste nel determinare e delineare la struttura generale del progetto, diagrammando il suo scheletro con un grado relativamente alto di specificità e indicando i diversi componenti che saranno necessari per portare avanti lo sviluppo, come applicazioni complementari e database. Questo è un punto fondamentale del processo, ed è spesso la chiave del successo di un prodotto software.

I progressi tecnologici e il loro impatto sulla vita sociale hanno inevitabilmente influenzato il processo di sviluppo del software per varie ragioni, come l'accesso indiscriminato degli utenti a certe informazioni che fino a un paio di decenni fa erano completamente ignari e incapaci di comprendere, dato che non possedevano il necessario grado di conoscenza tecnica. Un consumatore ben informato è un consumatore che non può essere truffato, poiché sa di cosa ha bisogno e ha la capacità di analizzare le diverse offerte sul mercato, confrontando le proposte e le prestazioni dei prodotti; invece, un consumatore poco informato è come un bambino capriccioso che piange, urla e scalcia senza sosta.

La prima di tutte le fasi del lavoro degli ingegneri del software è quella di studiare attentamente le caratteristiche che si ritiene siano necessarie per il programma da sviluppare, e questo è il punto in cui devono trovare un equilibrio (sempre più difficile da raggiungere) tra le eccessive richieste dei cattivi consumatori e le possibilità dell'azienda. Il tempo è denaro, e le aziende del mondo IT lo sanno molto bene.

Ogni funzione di un programma, ogni caratteristica che lo rende più comodo, più intelligente, più accessibile, si traduce in una certa quantità di tempo, che a sua volta porta gli stipendi di tutte le persone coinvolte nel suo sviluppo. Ma oltre al costo di produzione richiesto per fare ciascuno dei pezzi di un programma, l'ingegneria del software deve decidere quali di essi hanno senso, sono coerenti con il resto, e sono necessari per comunicare chiaramente l'essenza e gli obiettivi dell'applicazione.

Di Urba

Del linguaggio HTML :: Litania :: Leucociti :: Letale

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z