Modalità di realizzazione di un S.I.

SOMMARIO
 Basi teoriche per la progettazione
di un sistema informativo
 Struttura ed organizzazione
della progettazione
 Ciclo di vita di un sistema
informativo
CATEGORIE LOGICHE
UNIVERSALI
Individuano i meccanismi
mentali in base ai quali
sono definiti e rappresentati
i singoli elementi del sistema
(processi, dati)
e le loro interazioni
1
ASTRAZIONE
Operazione mentale in base alla
quale si trascurano caratteristiche
irrilevanti per la progettazione,
utilizzando i meccanismi di:
 classificazione
 aggregazione (scomposizione)
 generalizzazione (specializzazione)
CLASSIFICAZIONE
Meccanismo di astrazione
che consiste nel definire
classi di oggetti, ossia insiemi
di oggetti caratterizzati
da una proprietà comune
La relazione di appartenenza degli
oggetti alla classe è esprimibile come
IS-MEMBER-OF
2
ESEMPI DI CLASSIFICAZIONE
Arrigo Frisiani
Angelo Raffaele Meo
CORRENTISTA
CORRENTISTA
Marco Mezzalama
versamento
di contanti
versamento
di assegno
prelievo
OPERAZIONI
OPERAZIONI
DI
DI SPORTELLO
SPORTELLO
richiesta saldo
AGGREGAZIONE
Meccanismo di astrazione
in base al quale delle classi
di oggetti sono incluse
in un’altra classe
La relazione di appartenenza
che ne deriva è esprimibile come
IS-PART-OF
3
ESEMPI DI AGGREGAZIONE
Cognome
Nome
Identificazione
Operazioni di sportello
Operazioni non di sportello
Processi
Segnalazioni periodiche
Gestione conto corrente
GENERALIZZAZIONE
Meccanismo di astrazione
attraverso il quale
si costruiscono gerarchie di
caratteristiche tra gli oggetti
di due o più classi
La relazione di appartenenza
che ne deriva è esprimibile come
IS-A
4
ESEMPI DI GENERALIZZAZIONE
Persona fisica
Clienti
Persona giuridica
Consultazione
Operazioni su c/c
Movimentazione
MODELLAZIONE
Operazione mentale
mediante la quale si producono,
con opportuni linguaggi,
degli schemi del sistema
che descrivono gli oggetti,
individuati con l’astrazione,
che devono essere realizzati
Questi schemi sono detti
“modelli”
5
ESEMPI DI MODELLI
 Schema elettrico
 modello che descrive un circuito elettrico
 piuttosto lontano dall’aspetto fisico
dell’oggetto rappresentato
 Plastico di un edificio
 modello che ne descrive l’aspetto
esteriore e la sua collocazione
 piuttosto vicino all’aspetto fisico
dell’oggetto rappresentato
PROGETTAZIONE DI UN
SISTEMA INFORMATIVO (I)
È articolata e complessa in quanto:
 usa molteplici modelli, ciascuno
legato ad una specifica prospettiva
 le prospettive sono diversificate
a seconda dell’argomento
del modello (base di dati, processi)
6
PROGETTAZIONE DI UN
SISTEMA INFORMATIVO (II)
È articolata e complessa in quanto:
 le prospettive sono diversificate a
seconda del livello di modellazione
(requisiti utente, progetto
concettuale, implementazione)
 richiede di collegare e integrare
i diversi modelli
LIVELLO DEI REQUISITI
UTENTE
Descrive il contenuto del S.I. dal punto
di vista dell’utente per mezzo di:
 schemi informativi, che descrivono
struttura e contenuto dei dati
che il sistema deve elaborare
 schemi procedurali, che descrivono
le sequenze di attività che
compongono le elaborazioni
ed i dati coinvolti
7
LIVELLO DEL PROGETTO
CONCETTUALE
Descrive processi e base di dati
del S.I. prescindendo dai vincoli
implementativi, evidenziando
i rapporti logico-concettuali
tra di essi, in modo da fornire
una rappresentazione ricca
da un punto di vista semantico
e sintetica al tempo stesso
LIVELLO
DELL
’IMPLEMENTAZIONE (I)
DELL’IMPLEMENTAZIONE
È il livello del software eseguibile
e pertanto:
 la base di dati è specificata
per mezzo del DDL
di un opportuno DBMS
 i processi sono specificati da
programmi di elaborazione scritti
in un opportuno linguaggio
(per es. COBOL, C++)
8
LIVELLO
DELL
’IMPLEMENTAZIONE (II)
DELL’IMPLEMENTAZIONE
È il livello del software eseguibile
e pertanto:
 riflette lo specifico ambiente
in cui il S.I. è realizzato
(in particolare dal punto di vista
del sistema operativo)
SEGMENTI DI PROGETTAZIONE
ARGOMENTI
LIVELLI
DI
MODELMODELLAZIONE
Base
di dati
Processi
Requisiti utente
A
B
Progetto concettuale
C
D
Implementazione
E
F
9
CONTENUTO DEI SEGMENTI
DI PROGETTAZIONE
Argomento: base di dati
 Segmento A
Requisiti utente: viste di utente
(classi di dati)
 Segmento C
Progetto concettuale: entità, attributi,
relazioni (schema concettuale)
 Segmento E
Implementazione: DBMS,
schema logico-fisico
CONTENUTO DEI SEGMENTI
DI PROGETTAZIONE
Argomento: processi
 Segmento B
Requisiti utente: procedure aziendali
 Segmento D
Progetto concettuale:
struttura dettagliata dei processi
 Segmento F
Implementazione:
linguaggio, programmi
10
APPROCCIO PILOTATO
DAI DATI
A
Viste utente
C
D
Schema concettuale
Struttura dei processi
E
F
Schema logicologico-fisico
Programmi
APPROCCIO PILOTATO
DAI PROCESSI
A
B
Viste utente
Procedure aziendali
C
D
Schema concettuale
Struttura dei processi
E
F
Schema logicologico-fisico
Programmi
11
APPROCCI TIPICI ALLA
PROGETTAZIONE DI S.I.
TIPOLOGIA DI S.I.
Schedario
elettronico
Elaborazione di
transazioni
APPROCCIO TIPICO
• Pilotato dai dati
• Pilotato dai processi
(procedure complesse)
• Pilotato dai dati
(procedure semplici)
Reporting
• Pilotato dai dati
Supporto
operativo
• Pilotato dai processi
o misto
ITER PROGETTUALI
Modalità di realizzazione
di un sistema informativo:
 realizzazione ex novo
 realizzazione prototipale
 reingegnerizzazione dell’esistente
 personalizzazione di un pacchetto
dotato di modello concettuale
12
REALIZZAZIONE EX NOVO
Modellazione
requisiti
Modellazione
concettuale
Implementazione
NOTE:
 garantisce aderenza totale
alle esigenze dell’organizzazione
 costosa (persone, tempo)
e quindi poco frequente
REALIZZAZIONE PROTOTIPALE
Modellazione
requisiti
NOTE:
Modellazione
concettuale
Implementazione
prototipale
Implementazione
definitiva
 procede per edizioni (versioni)
successive
 si realizzano via via i diversi
sottosistemi
13
REINGEGNERIZZAZIONE
Sistema
implementato
Modellazione
concettuale
Modellazione
requisiti
NOTE:
 Si usa se non si hanno descrizioni
precise di quanto esiste
 Ricorre a programmi di “reverse
engineering” che estraggono gli
schemi dei dati e dei processi
dal sistema implementato
PERSONALIZZAZIONE
DI PACCHETTO
Requisiti
utente
Modellazione
concettuale
Implementazione
NOTA:
 I pacchetti possono consentire
operazioni di:
 parametrizzazione: base di dati e
processi sono adattati alle caratteristiche
dell’utente
 personalizzazione: l’utente
modifica il modello concettuale
14
DERIVAZIONE
È il procedimento attraverso
il quale lo schema di un modello
è ricavato dallo schema
di un altro modello
POSSIBILI DERIVAZIONI
PER UN S.I.
Se si associa un modello diverso
ad ogni segmento,
le possibili derivazioni sono:
 Orizzontali
dati → processi;
processi → dati
 Verticali
requisiti utente → progetto concettuale
progetto concettuale → implementazione
15
PROBLEMI
NELLA DERIVAZIONE (I)
Le derivazioni sono
trasformazioni parziali
dei modelli nel senso che
la validità del modello
di partenza non garantisce
quella del modello di arrivo
PROBLEMI
NELLA DERIVAZIONE (II)
I procedimenti di derivazione
vanno scelti in modo
da massimizzare l’input
informativo fornito dal modello
di partenza al modello derivato
16
INTEGRAZIONE
Coesione orizzontale del progetto
Richiede la coerenza
tra gli elementi ad un dato
livello di modellazione
Esempi:
 un processo può prevedere
l’elaborazione di un dato
non presente nella base di dati
 la base di dati può contenere
un dato che non è elaborato
da alcun processo
INTEGRAZIONE
Coesione verticale del progetto
Richiede la coerenza
tra requisiti utente e progetto
concettuale e tra progetto
concettuale e implementazione
Esempio:
 il progetto concettuale può essere stato
sviluppato in modo più o meno
indipendente dai requisiti utente,
per difetto o incompletezza di
definizione di questi ultimi
17
METODOLOGIA DI PROGETTO (I)
Deve precisare:
1. la sequenza secondo la quale
vanno percorsi i segmenti
di progettazione
2. i modelli da usare
per rappresentare dati e processi
ai vari livelli
METODOLOGIA DI PROGETTO (II)
Deve precisare:
3. i procedimenti di derivazione
e di integrazione da applicare
4. gli strumenti software
da utilizzare per le attività
dei punti 2 e 3
18
LINEE DI TENDENZA
NELLO SVILUPPO DEI S.I.
 Preferire l’integrazione e il riuso
di componenti alla realizzazione
ex novo
 Realizzare sistemi aperti
e adatti ad evoluzioni graduali
(globalizzazione dell’informazione)
 Prevedere la possibilità di
cooperazione tra S.I. diversi
(complessità delle organizzazioni)
CICLO DI VITA NELLO
SVILUPPO DI UN S.I.
Studio di fattibilità
fattibilità
Indagini di approfondimento
Analisi di sistema
Progetto di sistema
Implementazione
Gestione e revisione
19
STUDIO DI FATTIBILITÀ
FATTIBILITÀ
Costi
opportunità
à
Nuove opportunit
Vincoli
Confini
Responsabilità
à
Responsabilit
DIREZIONE
Obiettivi
Nuove esigenze
Problemi
Procedure esistenti
UTENTI
Rapporto sullo studio
fattibilità
à
di fattibilit
STUDIO DI FATTIBILIT
À
FATTIBILITÀ
FORNITORI
CONTENUTO DEL RAPPORTO SULLO
STUDIO DI FATTIBILIT
À (I)
FATTIBILITÀ
 Premesse: motivazioni del progetto,
collegamento con gli obiettivi
dell’organizzazione
 Descrizione della situazione
esistente ed identificazione
di eventuali problemi
20
CONTENUTO DEL RAPPORTO SULLO
STUDIO DI FATTIBILIT
À (II)
FATTIBILITÀ
 Requisiti del nuovo sistema
e dettagli sulle possibili opzioni
dal punto di vista tecnico,
organizzativo, economico
 Raccomandazioni finali
REQUISITI PER IL SUCCESSO
DI UN PROGETTO
 Affidabilità tecnologica
 Ragionevolezza nella
programmazione
 Validità economica
 Accettabilità per l’organizzazione
21
AFFIDABILIT
À TECNOLOGICA
AFFIDABILITÀ
Le soluzioni proposte
vanno esaminate dal punto
di vista dei problemi tecnologici
che possono presentare
Esempi:
 uso di tecnologie avanzate
tipo riconoscimento della voce
 desiderio di fornire supporto
a decisioni strategiche
RAGIONEVOLEZZA
NELLA PROGRAMMAZIONE
Comporta la verifica:
 della disponibilità od ottenibilità
delle competenze previste
 della plausibilità delle scadenze
obbligatorie o desiderabili
22
VALIDIT
À ECONOMICA
VALIDITÀ
Deve essere valutata in base
all’analisi di costi e benefici
 Costi:
 una tantum (per esempio staff,
calcolatori, addestramento)
 di funzionamento (fissi, variabili)
 Benefici:
 tangibili (per es. riduzione errori,
diminuzione dei tempi di risposta,
riduzione delle spese)
 intangibili (per es. migliore
immagine, migliori decisioni,
migliore spirito del personale)
ACCETTABILIT
À PER
ACCETTABILITÀ
L
’ORGANIZZAZIONE (I)
L’ORGANIZZAZIONE
Verifica della ragionevolezza
dell’impatto sull’organizzazione
in termini di:
 impatto sulle strutture aziendali
(reparti, divisioni, responsabili)
 capacità degli utenti di utilizzare
e trarre beneficio dal sistema
 impatto sull’ambiente
esterno (clienti)
23
ACCETTABILIT
À PER
ACCETTABILITÀ
L
’ORGANIZZAZIONE (II)
L’ORGANIZZAZIONE
Verifica della ragionevolezza
dell’impatto sull’organizzazione
in termini di:
 impatto sui dipendenti (diverse
condizioni di lavoro, timori
di licenziamento)
 compatibilità con eventuali
sistemi esistenti
CICLO DI VITA NELLO
SVILUPPO DI UN S.I.
Studio di fattibilità
fattibilità
Indagini di approfondimento
Analisi di sistema
Progetto di sistema
Implementazione
Gestione e revisione
24
GESTIONE E REVISIONE
Richiede:
 valutazione del sistema realizzato
 fa quello che doveva fare in termini
di obiettivi di direzione ed utenti
 realizza tali obiettivi in modo
soddisfacente
 individuazione di eventuali problemi
 definizione di eventuali modifiche
da apportare al sistema
STRUMENTI
PER LA PROGETTAZIONE (I)
 Data Flow Diagram (DFD)
usato per i processi
 Entità – Relazione (E-R)
usato per i dati
 Structured Analysis and Design
Technique (SADT)
usato per i processi
25
STRUMENTI
PER LA PROGETTAZIONE (II)
 Information Systems Analysis
of Changes (ISAC)
usato per processi e dati
 Hierarchical Input Process
Output (HIPO)
usato per i processi
UML
Unified Modelling Language (I)
Si tratta di un linguaggio
di modellazione che:
 è indipendente dal processo
 può essere usato a diversi livelli
del progetto
26
UML
Unified Modelling Language (II)
Si tratta di un linguaggio
di modellazione che:
 modella il S.I. da una prospettiva
object-oriented (consente cioè
di rappresentare classi, oggetti
che le compongono, stato
e comportamento di tali oggetti)
 è stato standardizzato
a livello internazionale
27