LE FASI DI SVILUPPO DI UN PROGETTO SOFTWARE
per l'evoluzione di un prodotto software esiste una norma che si chiama ISO/IEC
durante un ciclo di vita del software ci sono 7 gruppi di processi suddivisi al contesto e ai processi specifici del software
i processi riferiti al contesto di sistema riguardano
i processi specifici del software sono
gli aspetti organizzativi per l'attivazione del progetto
il contratto
il progetto
gli aspetti di tipo tecnico
l'implementazione
il supporto
il riutilizzo del software
per lo sviluppo del software si esegue una metodologia cioè un organizzazione di lavoro, questo rassicura qualità e risparmio di risorse
la metodologia più diffusa è quella a cascata ogni fase è costituita da attività da svolgere, quindi la metodologia ti fornisce una struttura di attività da svolgere
le altre metodologie sono ad esempio quelle a spirale, quella prototipale e quella a rilasci incrementali
transizione
realizzazione
formazione
documentazione
testing
conoscenza degli obiettivi
la conoscenza degli obiettivi riguarda la conoscenza degli obiettivi cioè conoscere ciò che si vuole sviluppare
contemporaneamente c'è l'analisi preliminare cioè indagare e approfondire la situazione reale, questo permette di evitare errori durante lo sviluppo
durante il progetto ci sono vincoli da considerare come la sicurezza,la riservatezza, l'ergonomia e l'usibilità
infine l'intervista conoscitiva è importante perchè serve per aver una preparazione riguardo al progetto che si vuole eseguire
gli strumenti di questa tecnica sono oltre agli esperti in materia anche i questionari e le fonti di conoscenza
progettazione
analisi
la fase di analisi ha l'obiettivo di determinare e descrivere tutte le componenti del progetto, i tre aspetti fondamenti sono i dati, le funzioni e il flusso dei dati
le funzioni come i dati vengono individuati nella fase precedente, qui però nell'analisi le funzioni vengono scomposte e dettagliate fino a un livello di documentazione
documentare il flusso dei dati tra le funzioni significa abbinare, a ogni funzione, quali dati utilizza in input e quali dati produce in output
tutti i dati sono racchiusi nell'analisi ogni dato per essere riconosciuta dal sistema deve avere un nome,una descrizione, il formato, la dimensione e l'obbligarietà
il funzionigramma è la rappresentazione grafica delle funzioni
lo schema delle risorse di sistema serve a illustrare, con simboli grafici: gli archivi utilizzati dai diversi programmi e il flusso delle info, all'interno dell'elaborazione
tastiera (input)
uscita di risultati sulla carta della stampante (output)
programma che risolve il problema (funzione)
disco magnetico o archivio
nastro magnetico
video del terminale
percorso di comunicazione e flusso delle informazioni
trasmissione dati da collegamento in rete
per progettazione significa definire.progettare e descrivere dettagliatamente le caratteristiche del sistema informatico
i dati dettagliati nella fase di analisi si concretizzano in strutture di archivi, infatti bisogna creare un tracciato dei record o campi (cioè archivi specifici per i dati con più caratteristiche)
dalla fase di analisi si ricavano i moduli applicativi che devono soddisfare le funzioni del sistema, ogni modulo ha una descrizione grazie ai moduli si ottiene la procedura
con il formato report si intendono tutti gli output cartacei o PDF che i moduli software producono, il formato interfacce è la descrizione dell'immagine che compare sul video-utente
l'insieme degli aspetti riguardanti l'interazione uomo-macchina viene chiamato ergonomia informatica
esistono due sistemi
di comunicazione
i sistemi interagenti garantiscono un aggiornamento contestuale di tutti gli archivi ciò avviene tramite scambio di messaggi e avvisi
i sistemo cooperanti operano tramite lo scambio di messaggi, questi ultimi producono aggiornamenti indipendenti degli archivi
i controlli identificano delle specifiche che vanno applicate per garantire sicurezza (controllo delle password di accesso ai moduli software)
infine i sistemi hanno anche delle funzioni di salvataggio e ripristino come:
log
restore
backup
cioè trasferire i dati da
un dispositivo all'altro
si copiano su più archivi in luoghi diversi i lavori svolti fino a ora degli utente questo permette in caso di incendio di avere lo stesso archivi disponibili
con il log si memorizza in ordine cronologico gli aggiornamenti avvenuti
l'obiettivo della fase di transizione è quello di definire le modalità di passaggio dal sistema esistente al sistema del nuovo progetto (es. casa)
il piano di rilascio consiste nel pianificare attività,risorse e tempo per il progetto
se il progetto è complesso bisogna integrare corsi e manuale per la formazione degli utenti
infine il piano di migrazione dei dati consente di generare i dati di partenza del nuovo progetto e inoltre carica tutti i dati già esistenti nel nuovo progetto
la fase di realizzazione genera il prodotto del progetto, dato che è un progetto vi sono ancora presenti i moduli software e gli archivi
i programmi realizzati vanno poi provati i tre obiettivi principali sono
verificare la correttezza degli archivi di output
verificare le prestazioni
verificare la logica del programma
l'obiettivo della documentazione è fornire a tutti gli utenti del nuovo sistema il materiale documentativo da consultare
il prodotto quando è in documentazione ha di solito un manuale per l'utente dove ci sono scritte le diverse funzionalità
ha pure il manuale di linea che fornisce il significato dei campi previsti nell'interfaccia ed anche il manuale operativo che serve per spiegare come funziona il progetto
la fase di testing ha l'obiettivo di provare il prodotto finale e di sistemare i possibili bug o di soddisfare alcune richieste dell'utente che sta provando tale prodotto
esercizio
Se l’utente incaricato della fase di test trova soddisfazione nel sistema di prova, si passa alla fase finale di certificazione.
In questa fase è molto probabile il verificarsi di malfunzionamenti dovuta ad errori nella scrittura del codice (bug). In presenza di essi, il progettista dovrà agire subito per correggerli e riattivare il sistema di prova
La formazione si occupa di far conoscere e preparare tutti gli utenti al nuovo sistema.
Attraverso corsi di formazione che possono essere seguiti:
prima della fase di produzione del sistema (per gli utenti che operano immediatamente con il software)
quando il sistema è già in esercizio (in caso di arrivo di nuovi utenti)
Questa fase viene anche chiamata “di addestramento”.
Quest’ultima fase viene chiamata “esercizio”, “produzione” o fase di “rilascio” del progetto.
Gli obiettivi di questa fase sono:
attivare il progetto
presso gli utenti
controllare che i processi
producano i risultati corretti
verificare globalmente il sistema