Analisi, rappresentazione e progettazione delle procedure
“PROCEDURA” secondo una prospettiva organizzativa/aziendale: un insieme di operazioni (o attività) per ottenere determinati scopi o svolgere determinate funzioni, e svolte secondo un insieme di norme, regole, prassi secondo una prospettiva informatica: insieme delle operazioni che svolge il sistema informatico per effettuare una determinata operazione
ESEMPI DI PROCEDURE AZIENDALI: Elaborazione di transazioni: Ad es.: prenotazione di una stanza d’albergo Procedure amministrative istituzionali: Ad es.: contabilità Supporto alle operazioni: Ad es.: carico/scarico magazzini
ALCUNE QUESTIONI DA CONSIDERARE PARLANDO DI PROCEDURE In un’organizzazione, a rigore solo le attività altamente strutturate possono essere identificate come “procedure” Anche le attività identificabili come procedure possono presentare varianti ed eccezioni che ne rendono difficile la rappresentazione completa “ex-ante” Esiste quindi una certa differenza tra “le attività che sono svolte nell’organizzazione” e “procedura descrivibile ai fini informatici” Un sistema informatico si basa infatti su procedure informatiche formalizzate, strutturate e prestabilite in anticipo anche riguardo a tutte le possibili eccezioni e varianti
Dall’analisi delle procedure aziendali (o dei processi/attività) alla formalizzazione delle procedure Analisi delle attività aziendali: Individuare gli “eventi” che caratterizzano una data attività/processo/procedura aziendale di interesse per il S.I. che si sta esaminando o progettando Ogni evento ha come effetto un cambiamento di stato nel sistema: innescando un’attività di elaborazione comportando una modifica o aggiornamento della base di dati
Formalizzazione delle procedure (di elaborazione) Dalla “logica” delle attività aziendali oggetto di analisi si costruiscono le procedure che permettono di aggiornare lo stato del sistema, innescare attività di elaborazione, modificare le basi di dati Si tratta quindi di formalizzare le attività considerate attraverso rappresentazioni procedurali che permettano di progettare le procedure informatiche corrispondenti durante l’esame delle procedure che si vogliono informatizzare, diventa possibile evidenziare le operazioni che verranno svolte dai calcolatori quelle che dovranno comunque essere svolte da operatori le modificazioni da introdurre al modo di operare esistente
Rappresentazione delle procedure Possibili vari schemi e rappresentazioni Approccio generale: top-down design Approccio per ridurre progressivamente la complessità dell’analisi Prevede una scomposizione dal “generale” (top) al “dettaglio” (down)
Schemi di rappresentazione Costituiscono al tempo stesso modalità di analisi (o descrizione) e di progettazione Sono stati introdotti vari schemi con diversa capacità rappresentativa. Alcuni esempi: Flow-chart Modelli IPO (e HIPO) DFD (Data Flow Diagam) Rappresentazioni delle alternative decisionali altri ancora (diagrammi dell’analisi operativa - Operational Analysis Diagram, ecc.)
Un esempio di schematizzazione gerarchica top-down: procedura di calcolo degli stipendi
Flow Chart Una delle modalità di rappresentazione più diffusa Descrive i collegamenti logici e i flussi informativi tra le diverse attività di un processo Evidenzia le “diramazioni alternative” che possono verificarsi all’interno di un dato processo Quando il processo/attività da modellizzare è troppo complesso, il flow chart può essere troppo complesso e deve venire scomposto in blocchi
IPO (Input, Output, Process) Rappresentazione di un’attività/procedura tramite i tre elementi chiave: Dati all’ingresso (input) Procedimenti/operazioni di elaborazione (process) Dati all’uscita o altri risultati – messaggi, ecc. (output) Permette di “risalire” dai dati di output agli input necessari passando attraverso i procedimenti di elaborazione
DFD (Data Flow Diagram) Evidenzia l’aspetto dei flussi informativi tra attività, archivi di dati, utenti/operatori Fasi di applicazione Diagramma di contesto: definisce le relazioni (flussi informativi) del processo in oggetto con “entità” o processi esterni DFD di primo livello: prima stesura in cui il processo è scomposto in sottoattività DFD a maggiore grado di dettaglio: ciascun sottoprocesso viene ulteriormente scomposto
Rappresentazione delle alternative decisionali Per definire le alternative che risultano da determinati eventi o situazioni, o le azioni che da questi devono derivare Tavole di decisione: collegano le azioni con le condizioni che devono verificarsi perché tali azioni vengano svolte Mettono in evidenza gli effetti delle diverse “decisioni dell’utente” (input) su ciò che il sistema deve elaborare (utile per procedure OL/RT) Alberi delle decisioni: Rappresentazione di tipo grafico