ANALISI FUNZIONALE

L'analisi Funzionale è quella fase del processo di sviluppo del software, durante la quale vengono identificati e descritti i processi che compongono il sistema informativo analizzato; è l'attività attraverso la quale vengono ottenute le specifiche delle componenti software da realizzare nell'ambito del sistema informatico.


Più in generale, i passi logici da sviluppare nella realizzazione di un prodotto informatico sono:





Relativamente al primo punto, il "sistema informativo" di una organizzazione è l'insieme di tutte le procedure e di tutte le risorse coinvolte nel processo di scambio delle informazioni; mentre il sistema "informatico" è quella componente del sistema informativo supportata da strumenti automatici per il trattamento dell'informazione.


Relativamente al secondo punto, per valutare e proporre soluzioni informatiche, come per tutti i processi tecnici, si richiede un approccio di tipo ingegneristico. La scienza dei calcolatori, o informatica, deve esere applicata in funzione di obiettivi economici. Ogni cliente ha i suoi obiettivi economici peculiari. La soluzione migliore è tale in rapporto ad una specifica funzione obiettivo.
Per identificare una soluzione tecnica, bisogna capire quali elementi del sistema informativo automatizzare ed, eventualmente, quali elementi del sistema informatico esistente si debbono modificare. Determinare inoltre quale tecnologia utilizzare.
Stimare i benefici significa "misurare" la forza lavoro risparmiata, il vantaggio in termini di riduzione dei tempi di lavoro; miglioramento della produttività.
Stimare i benefici significa anche "valutare" il ritorno di immagine; motivazioni del personale, ecc.
Per valutare i costi, che nel caso della tesi si tratterà di tempo, si stimeranno i costi connessi alle risorse da acquisire; costi per lo sviluppo del software; costi per l'avviamento delle nuove procedure; costi per la formazione del personale; ecc.



Il terzo punto, progettazione del sistema informatico, si esplicita nel disegno dei dati, nel disegno delle funzioni, nel progetto dell'architettura del software, nella progettazione dei test.
In fase di realizzazione del sistema informatico, si progettano in dettaglio i moduli del software; si codifica; si integra il tutto eseguendo i test di sistema.





METODOLOGIA DI SVILUPPO (fonte: Barry Bohem 1978)



Se il gruppo di sviluppo è costituito da poche (fino a 5) persone, molto esperte, gli aspetti formali sono quasi inesistenti ed il modo di sviluppo viene detto "organico o non strutturato" (è il modo del dipartimento);

Se le procedure sono supportate da formalismi più o meno rigidi, gli aspetti organizzativi incidono sui costi di sviluppo, l'organizzazione è spesso di tipo gerarchico ed il modo di sviluppo viene catalogato come "semi-strutturato";

Se viene attuato un sistema formale di controllo del processo di sviluppo (controllo di qualità), l'organizzazione è spesso rigida e gerarchica, i costi di "strutturazione" incidono in misura notevole.