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

image

tastiera (input)

image

uscita di risultati sulla carta della stampante (output)

image

programma che risolve il problema (funzione)

image

disco magnetico o archivio

image

nastro magnetico

image

video del terminale

image

percorso di comunicazione e flusso delle informazioni

image

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