Concetti Fondamentali sulla
Programmazione

Concetti Fondamentali sulla
Programmazione

Fase di analisi

Fase di analisi

r

Serve a individuare le aspettative dell’utente finale inrelazione al prodotto da realizzare attraverso lacosiddetta analisi dei requisiti.Viene prodotto un documento dei requisiti che dovràessere validato dal cliente.Fase di analisi: aspetti funzionaliSono orientati a determinare l’area funzionale che il nuovo software deve supportare, le funzionalità che il software dovrà avere gli input e gli output del software.Fase di analisi: aspetti qualitativiSono orientati a determinare la configurazione dell’interfaccia utente, le aspettative relative ai tempi di risposta l’affidabilità del software.Fase di analisi: specifiche di programmaDocumento che sintetizza i problemi e le esigenze degliutenti in modo chiaro e univoco.Contiene le funzionalità che il software dovrà avere, leprestazioni, l’ambiente di utilizzo, le interfacce esterne(con utenti, altro software, hardware), gli eventualivincoli di progetto (tempi, risorse ecc.), i requisiti diqualità.

aspetti funzionali (studio degli impatti derivanti
dall’introduzione del nuovo software)

aspetti qualitativi (documentazione del programma, test da realizzare sul software)

aspetti economici (costi di sviluppo, durata di
quest’ultimo, risorse necessarie, risorse disponibili, stima dei possibili benefici)

Software life cycle

Software life cycle

r

Il ciclo di vita del software è l’insieme delle fasi che sisusseguono, dal momento in cui il software vieneconcepito, progettato, realizzato, fino alla sua messa inopera e manutenzione (quando non viene più utilizzatosi arriva anche alla sua dismissione)

Il modello più utilizzato è quello a cascata

Un progetto di sviluppo software segue sempre un modello di ciclo di vita

Modello a cascata

Modello a cascata

r

Il processo di sviluppo di un software è suddiviso inuna sequenza di fasi.Ogni fase deve essere terminata prima di passare aquella successiva (non si ritorna indietro) e l’output daessa generato andrà a costituire l’input della faseseguenteÈ possibile effettuare controlli di qualità sui singolirisultati parziali

Fase di pianificazione

(studio di fattibilità)

Fase di analisi

(definizione)

Fase di progettazione

Fase di implementazione

(programmazione)

Fase di collaudo e di installazione

Fase di manutenzione

Fase finale della programmazione

Fase finale della programmazione

r

In entrambi gli approcci si parte dalle specifiche diprogramma per realizzare il progetto logico e ilprogetto fisicoProgetto logicoVengono identificate le componenti (moduli) delsistema e le loro connessioni.Un modulo è una componente dedicata a svolgere unaspecifica funzione.Ogni modulo è costituito da un’interfaccia (la partevisibile dall’esterno) e dalla logica applicativa (la parte“interna” del modulo).Un software è, quindi, composto da vari moduli cheinteragiscono fra loro.Il prodotto del progetto logico è una descrizionedettagliata dei compiti che ogni modulo deve svolgere edel modo in cui i vari moduli comunicano fra di loro.Progetto fisicoÈ orientato a definire le caratteristiche dell’ambiente hardware in cui deve essere utilizzato il nuovo software.La struttura generale (numero moduli) del softwareI moduli di programma di cui si compone il softwareLa sequenza con la quale i singoli moduli di programma dovranno essere elaborati.La struttura logica dei dati dell’applicazione ovverocome i dati saranno mostrati all'utente.La struttura fisica dei dati ovvero come i dati sarannosalvati su un database.

aspetti funzionali (studio degli impatti derivanti
dall’introduzione del nuovo software)

aspetti economici (costi di sviluppo, durata di
quest’ultimo, risorse necessarie, risorse disponibili, stima dei possibili benefici)

aspetti qualitativi (documentazione del programma, test da realizzare sul software)

Fase di pianificazione

Fase di pianificazione

Si stabiliscono gli obiettivi del software da sviluppare

Viene prodotto un documento dei requisiti che dovrà essere validato dal cliente