Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Cornacchia Antonio
Furone Alessandro
Perduno Stefano
Quarta Lorenzo
Sommario
Obiettivi della
presentazione
Introduzione ai WIS
Cos un WIS
Architettura WIS
Caso di studio
Tecnologie Web
Definizione obiettivi
OBIETTI
VI
INTRODU
ZIONE
WISs are information system first and Web
system second
WIS development should use the same disciplined
principles
required to build successful non-Web
information system
Introduzione
INTRODU
ZIONE
Web
Information
System
- Il Web
INTRODU
ZIONE
- Il Web
Terminologia Web
INTRODU
ZIONE
Dati,
informazione
- Dati,
informazione
e
conoscenza
Dato
e conoscenza
INTRODU
ZIONE
Informazione
Linformazione linsieme di uno o pi dati, memorizzati, classificati,
organizzati, messi in relazione o interpretati nellambito di un contesto in
modo da avere un significato
Conoscenza
La conoscenza la consapevolezza e la comprensione di fatti, verit
o informazioni ottenuti attraverso l'esperienza o l'apprendimento
- Sistema
Il sistema
INTRODU
ZIONE
SISTEMA
Il funzionamento
- Sistema
del sistema
INTRODU
ZIONE
SISTEMA
Il funzionamento di un sistema si basa su un processo
di trasformazione di risorse acquisite dallambiente
esterno (ovvero risorse di input) volto a produrre
prodotti o servizi restituiti allambiente (output).
Ogni sistema in costante interazione con lambiente esterno. Non
possiamo considerare un sistema avulso dal suo contesto di
esistenza.
SISTEMA
E bene fare una precisazione esistono:
SISTEMI CHIUSI
SISTEMI APER
- Sistema
I sistemi chiusi
INTRODU
ZIONE
SISTEMA
SISTEMI CHIUSI
Per sistemi chiusi o meccanici intendiamo sistemi stabili, il cui
funzionamento indipendente dalle influenze esterne. Tutto si
basa sulla trasformazione interna per produrre prestazioni
efficienti. Le caratteristiche di un sistema meccanico sono
basate su una struttura verticale della gerarchia, compiti
parcellizzati, lavori molto formalizzati, organizzazione rigida.
- Sistema
I sistemi aperti
INTRODU
ZIONE
SISTEMA
SISTEMI APERTI
Per sistemi aperti o organici intendiamo sistemi il cui
funzionamento del sistema non solo dipende dallesterno, ma lo
stesso sistema deve prevedere comportamenti esterni ed adottare
strategie efficaci per governare gli effetti delle turbolenze
sullorganizzazione. Si parla di Learning organization. Queste
organizzazioni devono avere responsabilit decentrate ed operare
in modo flessibile per essere efficaci.
sistema
- Sistema IlInformativo
informativoINTRODU
ZIONE
Il sistema informativo
Il sistema informativo costituito dall'insieme delle informazioni
utilizzate, prodotte e trasformate da un'azienda durante l'esecuzione dei
processi aziendali, dalle modalit in cui esse sono gestite e dalle risorse,
sia umane, sia tecnologiche, coinvolte
Il sistema informativo
Si occupa di
Raccogliere i dati
Conservare i dati raccolti, archiviandoli
Elaborare i dati, trasformandoli in informazioni
Distribuire l'informazione agli organi aziendali utilizzatori
Cosa Informativo
sfrutta un sistema informativo
- Sistema
INTRODU
ZIONE
Il sistema informativo
Per fare questo il sistema informativo si pu avvalere di tecnologie informatiche:
la parte del sistema informativo aziendale che se ne avvale prende in nome di
SISTEMA INFORMATICO
Oggi, con il diffondersi delle tecnologie informatiche, il sistema informatico finisce
per rappresentare la quasi totalit del sistema informativo, ma, almeno a livello
concettuale, il sistema informativo non implica di per s l'uso dell'informatica; del
resto prima che fossero introdotte le tecnologie informatiche gi esistevano sistemi
informativi.
I diversi
tipi di sistema
- Sistema
Informativo
informativo
INTRODU
ZIONE
Il sistema informativo
Questi sistemi possono essere di tipo
Gestionale o transazionale: sistemi tradizionali, informatizzazione attivit
strutturate e ripetitive, in prevalenza di processi operativi e di controllo
Per lautomazione di ufficio: si sono diffusi con lavvento dei personal
computer per lo svolgimento di tutte le attivit di ufficio
Di comunicazione: per lo scambio tra comunicazioni informali tra gli operatori,
tipo la posta elettronica
Di gestione di flussi di lavoro: per il coordinamento di insiemi di persone
coinvolte in analoghi processi
I diversi
tipi di sistema
- Sistema
Informativo
informativo
INTRODU
ZIONE
Il sistema informativo
Questi sistemi possono essere di tipo
Statici: con obiettivo di rilevazione e organizzazione dei dati per fini
conoscitivi e di pianificazione
Di supporto alle decisioni: Realizzati per alti livelli delle aziende
Di tempo reale: sistemi in cui la variabile tempo e i vincoli di tempo sono
critici, controlli industriali, sistemi militari ecc.
Territoriali: sistemi in cui laspetto geografico fondamentale
WIS
WIS
WIS
Considerazioni
- Considerazioni
WIS
I sistemi informativi basati sul web (WIS) puntano ad utilizzare le nuove tecnologie
legate ad Internet per fornire un valido strumento per il reperimento, la gestione e
la distribuzione di informazioni anche su reti di larga scala. Inoltre sono una valida
risposta alla sempre pi crescente domanda odierna di valorizzazione
dellinformazione e degli strumenti per gestirla.
- Finalit WIS
Finalit WIS
WIS
WIS
vs
WebSites
- WIS vs WebSite
WIS
Esempio
ws
- WIS vs WebSite
WIS
Esempio
Una mappa geografica realizzata su un sito Web prima forniva solo link statici a
mappe di varie citt e zone o localit.
Esempio
wis
- WIS vs WebSite
WIS
- Motivazioni
Motivazioni
WIS
Motivazioni di utilizzo
Lutilizzo dei sistemi informativi web sta raccogliendo consensi per i seguenti benefici:
Interoperabilit in ambienti eterogenei: utilizzo su varie piattaforme hardware e
software.
Servizi Business attraverso il Web: ad es. unazienda rende disponibili i propri
cataloghi prodotti attraverso un Web service.
Libert di scelta: gli standard nel campo dei servizi e del Web hanno aperto un vasto
mercato di strumenti, prodotti e tecnologia tra loro interoperabili. Ci permette alle
organizzazioni di selezionare le configurazioni che meglio incontrano i requisiti
applicativi aziendali.
Supporto a vari tipi di client: esporre le applicazioni esistenti come servizi aumenta
la possibilit di raggiungere vari tipi di client, indipendentemente dal client.
Classificazione
- Classificazione
WIS
ARCHITET
TURA
DEI WIS
Modelli
architetture
- Modelli architetture
ARCHITETT
URA
Le architetture dei sistemi informatici si sono sviluppate ed evolute nel corso
degli anni passando da schemi centralizzati a modelli distribuiti. Si parla di
sistema informatico centralizzato quando i dati e le applicazioni risiedono in
unico nodo elaborativo. Invece si parla di sistema informatico distributivo
quando una delle seguenti condizioni verificata:
Le applicazioni fra loro cooperanti, risiedono su pi nodi elaborativi
(elaborazione distribuita);
- Livelli logici
Livelli logici
ARCHITETT
URA
- Livelli fisici
Livelli fisici
ARCHITETT
URA
Layer
applicativi
- Layer applicativi
ARCHITETT
URA
Relativamente alla seconda configurazione sono disponibili sei differenti
architetture, in base alla modalit di allocazione dei tre layer applicativi.
Nella configurazione a tre tier, a seconda delle possibili ripartizioni dei tre
layer applicativi si parla di configurazioni:
Fat client: se al livello utente si appoggia la logica applicativa e quella di
accesso ai dati.
Thin client: se al livello utente resta delegata la sola funzione di
presentazione, alleggerendo le funzionalit della stazione utente.
- Fat-Client
Fat-Client
ARCHITETT
URA
- Server Farm
Server Farm
ARCHITETT
URA
Nei moderni sistemi, i tier fisici possono essere realizzati anche come server
farm, ovvero come un insieme di elaboratori che condividono il carico
elaborativo, le applicazioni e, a seconda delle configurazioni, i dati.
Il vantaggio dellintroduzione quello di un minor costo di acquisto
dellhardware e nella maggiore affidabilit e scalabilit del sistema
(scalabilit viene intesa la capacit dellinfrastruttura di soddisfare richieste
crescenti da parte degli utenti con aggiornamenti adeguati).
Le server farm possono essere realizzate secondo due principi progettuali:
Cloning (clonazione) o Partitioning (partizionamento).
- Cloning
Cloning
ARCHITETT
URA
Cloning
Su ognuno dei nodi costituenti vengono installate le stesse applicazioni software
ed i medesimi dati. Le richieste sono poi instradate ai vari membri appartenenti
allinsieme dei cloni usando un sistema di load-balancing.
Un insieme di cloni dedicati allo svolgimento di un particolare servizio detto
RACS (reliable array of cloned services). I Racs si possono presentare in due
configurazioni: shared-nothing e shared-disk. Nella prima configurazione i dati
memorizzati sono replicati sui ogni clone e risiedono in un disco fisso e locale ad
ogni clone.
Questa configurazione risulta problematica per i servizi di write-intensive, mentre
presenta prestazioni migliore per applicazioni di tipo read-only.
- Partitioning
Partitioning
ARCHITETT
URA
Partitioning
In questa configurazione, spesso chiamata cluster, i cloni condividono
un server di memorizzazione che gestisce i dischi fissi. La tecnica del
partizionamento prevede la duplicazione dellhardware e del
software ma non dei dati, che vengono ripartiti tra i nodi. Il
partizionamento quindi completamente trasparente alle
applicazioni e le richieste vengono inviate alla partizione che
possiede i dati rilevanti.
- Sistemi n tier
Sistemi nTier
ARCHITETT
URA
Architetture
sistema
web
- Architetture sistema web
ARCHITETT
URA
Gli elementi essenziali di un moderno sistema Web sono:
Il Web server che si occupa della gestione delle richieste http
provenienti da Internet o dalla Intranet aziendale.
Lo Script engine, un processo che esegue script per la generazione
di pagine HTML dinamiche.
LApplication server, che assume il ruolo di middle tier ed
implementa la logica di business dellapplicaizone Web
Il DBMS server che si occupa della gestione dei dati.
I componenti di sicurezza: firewall e Intrusion Detection System
(IDS)
Architetture
sistema
web
- Architetture sistema web
ARCHITETT
URA
Il web server si occupa della presentazione delle informazioni verso i client
ed in particolare restituisce direttamente ai client che ne hanno fatto
richiesta pagine HTML statiche o oggetti statici, come ad esempio
immagini.
Lo Script engine un processo che genera una pagina dinamica
interagendo con lApplication server o con il DBMS server. Le pagine
dinamiche vengono poi restituite al web server che le inoltrer
successivamente allutente che ne ha fatto richiesta.
LApplication server ha il ruolo di middle tier, implementa la logica di
business dellapplicazione ed in alcuni casi svolge il ruolo di contenitore di
oggetti.
Architetture
sistema
web
- Architetture sistema web
ARCHITETT
URA
Il DBMS si occupa dellaccesso e della gestione dei dati aziendali.
Problema
di
progettazione
- Problema di
ARCHITETT
progettazione
URA
Possibili
soluzioni
1
- Possibili soluzioni
ARCHITETT
Configurazione
architetturale
URA
Vantaggi
Svantaggi
Possibili
soluzioni
2
- Possibili soluzioni
ARCHITETT
URA
Configurazione
architetturale
Vantaggi
Svantaggi
Pattern
architetturali
- Pattern architetturali
ARCHITETT
URA
Architetture thin vengono utilizzate principalmente se lapplicazione Web deve
essere accessibile attraverso Internet e vi uno scarso controllo sulla configurazione
dei client. Possono essere introdotte per ovviare ad alcuni vincoli restrittivi
addizionali sulle configurazioni dei browser o della rete.
Architetture fat sono utilizzate quando possibile assumere come nota una certa
configurazione del client e se si desidera un interfaccia utente sofisticata oppure si
vuole eseguire una parte significativa della logica applicativa sulla macchina client.
Eseguire la logica applicativa sul client pu migliorare lusabilit dellapplicazione
oppure le prestazioni del sistema. Le architetture fat possono essere impiegate
anche per effettuare il deployment di unapplicazione ad oggetti distribuiti di tipo
tradizionale.
TECNOLOG
WEB
- MVC
Mvc Pattern
TECNOLOGI
E
Model-View-Controller (MVC)
Pattern
Basandosi sul linguaggio di programmazione Smalltalk stato definito e
formalizzato il design pattern MVC che fornisce un modello per la
realizzazione di applicazioni interattive. Dato che le applicazioni Web
sono un particolare tipo di applicazioni interattive, il pattern MVC pu
essere applicato, ovviamente tenendo in conto le caratteristiche dei
sistemi e i vincoli imposti dai protocolli.
Composizione
Mvc
- Composizione MVC
TECNOLOGI
E
Il design pattern MVC composto da tre elementi:
Model: rappresenta lo stato e le operazioni disponibili
View: definisce il modo con il quale il modello deve essere presentato allutente
Controller: interpreta lazione dellutente e invoca le operazioni del Model
opportune
Composizioni
- Composizioni MVC
TECNOLOGI
E
Composizioni
- Composizioni MVC
TECNOLOGI
E
notifica Modelli
presenta
View
aggiorna
Client
invoca Controller
- MVC2
Mvc2
TECNOLOGI
E
Html
- HTML
HTML
TECNOLOGI
E
Ogni volta che incontra un tag di apertura (<nome-tag>) o un tag vuoto (<nometag/>) attiva la formattazione relativa
Stampa tutti i caratteri che incontra
Struttura
Html
- Struttura HTML
TECNOLOGI
E
<html>
<head>
<!--definizione propriet della pagina -- >
</head>
<body>
<!contenuto della pagina visualizzato dal Web Browser -- >
</body>
</html>
JavaScript
- Java Script
TECNOLOGI
E
JavaScript
Le pagine HTML possono essere arricchite con semplici script. Di solito questi
script sono utilizzati per controllare i dati inseriti allinterno della pagina.
JavaScript uno dei linguaggi disponibili a questo scopo. Ha una sintassi molto
simile al Java per sono presenti alcuni oggetti che permettono di interagire con
gli elementi di una pagina.
Il codice JavaScript integrato nella pagina HTML, delimitato dal tag <script>. Lo
script eseguito dal lato client e invocato per due motivi:
richiamato da un altro script
intercettato levento a cui lo script associato
Gestione
sessioni
- Gestione sessioni
TECNOLOGI
E
- Cookie
Cookie
TECNOLOGI
E
- Servlet
Servlet
TECNOLOGI
E
Servlet
Una Servlet una componente Java definita dalle specifiche J2EE che pu
essere eseguito da un Web Server Java-enabled. Le servlet sono state
concepite per realizzare in Java il middle tier che consente laccesso da parte
dei client ai servizi di back end ed implementa le regole di business. Inoltre
servono per la creazione di pagine dinamiche e altre funzionalit, tra cui:
Forward delle richieste ad altri server e gestione delle connessioni
Proxy per le applet
Personalizzazione o realizzazione di nuovi protocolli
- Servlet
Servlet
TECNOLOGI
E
Lesecuzione delle servlet pu avvenire allinterno del processo del Web Server
oppure allinterno di processi chiamati Servlet Engine o Servlet Container.
- JSP
JavaServerPages TECNOLOGI
E
- JSP
Jsp
TECNOLOGI
E
Una pagina JSP una pagina HTML che contiene parti aggiuntive per
lesecuzione della logica applicativa che genera il contenuto dinamico.
Come per le servlet al browser viene restituita una pagina HTML.
Nelle servlet per modificare unapplicazione Web bisogna modificare il
codice che la genera e quindi ricompilare il codice sorgente delle
servlet.
Le JSP sono state proposte proprio per risolvere questo problema. Una
JSP viene compilata in una servlet prima di essere utilizzata. In caso di
modifica, la pagina JSP viene ricompilata automaticamente al primo
accesso
- Vantaggi JSP
Vantaggi Jsp
TECNOLOGI
E
Jdbc
- JDBC
TECNOLOGI
E
JDBC
Web
Data base
Pro
Semplice
Portabili
A basso costo
Indipendente dalle interfacce
Ipermediale
Modelli dei dati
Linguaggi di interrogazione
Funzioni di amministrazione
Contro
Basato su file
Statico
Complessi
Proprietari
Navigazione e presentazione
assenti
- JDBC
Dbms
JDBS
TECNOLOGI
E
SICUREZZA
SICURE
ZZA
SICUREZ
ZA
La
- La sicurezza
Sicure
zza
SICUREZ
ZA
I requisiti
- La sicurezza
della sicurezzaSICUREZ
ZA
Sicure
requisiti da garantire
zza
DISPONIB
ILITA
AUTENTI
CITA
RISERVA
TEZZA
INTEGRIT
A
Sicurezza:
il requisito di disponibilit
- Requisito
di disponibilit
SICUREZ
ZA
Sicure
Requisito di Disponibilit
zza
Il sistema deve rendere disponibili a ciascun utente abilitato
le informazioni alle quali ha diritto di accedere nei tempi e
nei modi previsti
Requisiti legati alla disponibilit sono quelli di
Prestazioni
Robustezza
Sicurezza:
il requisito di integritSICUREZ
- Il requisito
di integrit
ZA
Sicure
Requisito di Integrit
zza
Il sistema deve impedire lalterazione diretta o indiretta
delle informazioni sia da parte di utenti e processi non
autorizzati, che a seguito di eventi accidentali
Sicurezza:
il requisito di riservatezza
- Il requisito
di
SICUREZ
riservatezza
ZA
Sicure
Requisito di Riservatezza
zza
Nessun utente deve poter ottenere o dedurre dal
sistema informazioni che non autorizzato a
conoscere
il requisito
- IlSicurezza:
requisito di autenticit
di autenticit
SICUREZ
ZA
Sicure
Requisito di Autenticit
zza
Le informazioni in transito e memorizzate
devono essere integre
Lautenticit impedisce che avvenga il ripudio
dellinvio di messaggi o di informazioni
Gliattacchi
attacchi
adWIS
un
- Gli
ad un
Furto
Dei dischi o di interi server: un attacco alla disponibilit
e alla riservatezza
Danneggiamento
Condotto contro apparecchiature e cavi di rete: un
attacco alla disponibilit ed alla integrit
SICUREZ
ZA
Livello interfaccia
ATTACCHI
Livello
applicazioneA
Livello dati
Livello main-frame
LIVELLO LOGICO
SICUREZ
ZA
Disturbo
Intrusione
alla
attaccoattacco
attacco
alla integrit
alladisponibilit
riservatezza
ed alla riservatezza
Vediamo
nel
dettaglio
Il server
nondunque
riesce modificati
ad
inviare
correttamente
le
Possono
I dati
possono
essere
essere
visualizzati
senza
alcuniautorizzazione
dati personali
informazioni
- Contromisure
Contromisure
SICUREZ
ZA
CONTROMISURE
preventivo o correttivo
informatico o organizzativo
a livello fisico o logico
- Contromisure
SICUREZ
ZA
CONTROMISURE INFORMA
A LIVELLO DI APPLICAZIONE
Le contromisure operanti a livello di applicazione sono particolari
funzioni inserite nelle applicazioni ai fini della sicurezza, e possono
essere utilizzate da esse solo quando effettivamente necessario.
A LIVELLO DI BASE
Le contromisure che operano a livello di DBMS, sistema operativo o
rete hanno carattere pi generale, rispetto a quelle di livello
applicativo, e indipendente dalla particolare applicazione eseguita.
autenticazioni
SICUREZ
ZA
PROTEZIONE
DALLE FALSE AUTENTICAZIONI
Imporre che a ciascun login-name sia associato una persona fisica.
Imporre che a ciascun login-name sia associata una password.
Disabilitare o eliminare i login-name non pi utilizzati per qualunque motivo.
Mantenere una lista degli utenti cancellati
- Protezione
SICUREZ
ZA
PROTEZIONE
DALLE FALSE AUTENTICAZIONI
Imporre agli utenti di cambiare periodicamente (eventualmente ad ogni
sessione) la password, impedendo il riuso di password utilizzate in precedenza.
Utilizzare tecniche avanzate di autenticazione (smartcard, riconoscimento
della retina, etc.).
Verificare che tutti i serventi della rete siano fra loro reciprocamente
autenticati.
- Protezione
SICUREZ
ZA
PROTEZIONE
1.
2.
3.
4.
5.
6.
7.
I sistemi di protezione
- Sistemi di protezione
SICUREZ
ZA
Rimozione di riservatezza
Obiettivo di questo servizio quello di permettere al destinatario di una informazione a
lui riservata di riportare in chiaro, cio in forma leggibile, l'informazione stessa.
Apposizione di Firma digitale
Obiettivo di questo servizio quello di generare, dato un documento e la chiave privata
di un soggetto che chiameremo firmatario, una sequenza di bit detta firma digitale che
provi in modo non ripudiabile il possesso del documento "firmato" da parte del soggetto
firmatario.
SISTEMI DI PROTEZI
I sistemi di protezione
- Sistemi di protezione
SICUREZ
ZA
Rimozione di riservatezza
Obiettivo di questo servizio quello di permettere al destinatario di una informazione a
lui riservata di riportare in chiaro, cio in forma leggibile, l'informazione stessa.
Timbratura
Apposizione di Firma digitale
Obiettivo di questo servizio quello di associare
modo
incontestabile
riferimento
generare, in
dato
un documento
e laun
chiave
privata
temporale
(data
edchiameremo
ora esatta) ad
un dato documento.
Affinch
questo
servizio
sia di
di un soggetto
che
firmatario,
una sequenza
di bit detta
firma
digitale
che
qualche
utilit non
essenziale
cheil venga
svolto
un soggetto
al di sopra
degli del
altrisoggetto
e da
provi in modo
ripudiabile
possesso
delda
documento
"firmato"
da parte
tutti
ritenuto autorevole e fidato. Questo soggetto, spesso indicato come terza parte
firmatario.
fidata, dovr naturalmente gestire autonomamente ed in modo sicuro un orologio di
sistema.
Verifica di firma digitale
Obiettivo di questo servizio quello di verificare lautenticit di una firma digitale,
rispetto al documento firmato ed al soggetto firmatario. In particolare, dato un
documento, un soggetto (o meglio la sua chiave pubblica) ed una firma, il servizio verifica
che quel soggetto (e non altri) abbia effettivamente apposto la firma sul quel documento
(e non su altri o sullo stesso modificato in qualche sua parte).
I servizi di notariato
- Servizi di Notariato
SICUREZ
ZA
Servizi di Notariato
I servizi di notariato sono offerti da una Autorit di certificazione che sia
riconosciuta come fidata ed autorevole da tutti gli utenti del sistema
informativo.
Come ogni altro utente, anche l'Autorit dispone di una coppia (privata,
pubblica) di chiavi asimmetriche.
I principali servizi di notariato offerti dall'Autorit sono:
la certificazione delle chiavi pubbliche
la gestione delle chiavi pubbliche sospese o revocate
la certificazione temporale, (timbratura)
- Autenticazione
Tecniche di autenticazione
SICUREZ
ZA
Tecniche avanzate di
Autenticazione
La autenticazione degli utenti generalmente basata su una combinazione di tre tipi
di elemento:
SICUREZ
ZA
- Caratteristiche
contromisure
Caratteristiche contromisure
SICUREZ
ZA
- Caratteristiche
contromisure
Caratteristiche contromisure
SICUREZ
ZA
PROGETTAZIONE
PROGETTA
ZIONE
FASE DI
PROGETTAZI
DI UN
WIS
ONE
- Progettazione WIS
PROGETTA
ZIONE
Progettazione di sistemi
informativi basati su Web
Spesso nella realizzazione di un sito web, la progettazione assume un
carattere non sistematico. Questapproccio tipico nei casi in cui si vuole
creare un sistema basato su web in tempistiche ridotte, ma pu
ovviamente essere pericoloso in quanto la costruzione del sito proceder
per aggiustamenti successivi sulla base di richieste degli utenti o dei
committenti non seguendo una sistematicit basata su un principio di
coerenza.
PROGETTA
ZIONE
Ovviamente tale approccio potrebbe andare bene per siti personali in cui le
informazioni e i servizi non vengono gestite da pi persone e non sono condivise in pi
applicazioni. I sistemi non pianificati e progettati in modo sistematico sono a rischio di
non disponibilit del sistema dovuto a interruzioni impreviste (crash), allimpossibilit
di manutenere il sito, allincapacit di soddisfare nuove esigenze o di gestire la crescita
(scalabilit). Errori tipici riguardo il contenuto che ne derivano sono i seguenti:
contenuto non appropriato,
pubblicato al momento sbagliato,
inaccurato,
inconsistente,
pubblicazione di informazioni confidenziali,
non aggiornato,
non autorizzato,
con errori,
errori di versioni.
- Progettazione WIS
PROGETTA
ZIONE
Ciclo
- Ciclo vita dei
WISdi vita dei WIS PROGETTA
ZIONE
Ciclo di vita dello sviluppo
di un sistema informativo
Come si desume dalla figura il ciclo di sviluppo ha carattere iterativo. Dopo una fase
iniziale, in cui viene effettuata la pianificazione del progetto, si prosegue con una serie
di fasi che potranno essere eseguite anche pi volte, fino a giungere alle fasi
conclusive del progetto, in cui il sistema realizzato viene installato.
PROGETTA
ZIONE
di vita
- Ciclo vitaCiclo
dei WIS
(immagine)
PROGETTA
ZIONE
Immagine
- Ciclo vita dei
WIS
ingrandita
PROGETTA
ZIONE
GliWIS
attori
- Ciclo vita dei
- Qualit
Qualit
PROGETTA
ZIONE
- Qualit
PROGETTA
ZIONE
- Qualit
PROGETTA
ZIONE
Usabilit: Indica la facilita per gli utenti nellutilizzare il sito (ad esempio,
linterpretazione dei bottoni).
Compatibilit e interoperabilit: Interazione tra diversi sistemi che vengono
utilizzati e integrati per fornire i servizi su web. La valutazione in termini di
costo dellintegrazione dei dati e dei servizi.
Sicurezza: Protezione delle informazioni riservate. Pu essere effettuata
una valutazione economica dei costi e dei rischi.
- Qualit
La valutazione della importanza della qualit non omogenea per tutti i gruppi
coinvolti nel progetto. Nella figura viene illustrata la rilevanza di alcune dimensioni
per gli utenti del sistema, gli sviluppatori, i gestori e i committenti. Le diverse
valutazioni consentono di evidenziare come sia opportuno che i gruppi che
partecipano alla progettazione e realizzazione del sistema siano rappresentativi di
tutte le categorie di soggetti, per evidenziare i requisiti posti da ciascuna di esse.
Caratteristica
Utente
Sviluppatore
Gestore
Committente
Funzionalit
Affidabilit
Usabilit
Efficienza
Manutenibilit
Alta
Media
Alta
Media
Bassa
Bassa
Media
Bassa
Media
Alta
Bassa
Alta
Media
Alta
Media
Media
Media
Media
Media
Media
Portabilit
Bassa
Alta
Alta
Media
Pianificazione
- Pianificazione
iniziale
iniziale
PROGETTA
ZIONE
Pianificazione iniziale
Allinizio del progetto essenziale definire correttamente gli obiettivi del lavoro da
svolgere e effettuare una pianificazione di massima del progetto.
Pianificazione
- Pianificazione
iniziale
iniziale
PROGETTA
ZIONE
Pianificazione iniziale
Nel corso dellanalisi dellazienda si rappresentano in forma diagrammatica i principali
concetti, tramite un diagramma delle classi UML (o un diagramma entit-relazione
ER) e i principali processi aziendali attuali (utilizzando diagrammi di attivit di alto
livello). Viene anche redatto un glossario, contenente lelenco dei termini e le loro
definizioni.
Viene poi redatto il documento di vision, tratto dallanalisi dei risultati dei passi
precedenti, che esprime il contesto e gli obiettivi dellintero progetto. Spesso tale
documento serve come base della decisione di finanziare il progetto e pertanto deve
anche contenere una valutazione comparativa delle possibili scelte realizzative.
Strutturazione
- Pianificazione
iniziale
documento
PROGETTA
ZIONE
- Esempio
PROGETTA
ZIONE
Introduzione
Lobiettivo del progetto `e quello di offrire ai clienti della ditta COMP i servizi di vendita
su canali alternativi a quelli tradizionali. In particolare in questo progetto si esamina
lofferta di servizi su internet, ma nello sviluppo del progetto si porr particolare
attenzione alla possibilit di offrire gli stessi servizi in futuro su altri canali (callcenter,
su smartphone) estendendo il presente progetto. Si proporr quindi unarchitettura
flessibile basata sullutilizzo di web-services.
Alternative possibili...
I referenti nel corso del progetto saranno lamministratore delegato della ditta COMP,
il responsabile dei sistemi informativi, e verr selezionato un gruppo di grandi clienti a
cui verranno presentate le caratteristiche del progetto.
- Esempio
PROGETTA
ZIONE
Background
Attualmente le vendite avvengono presso i punti di vendita. Tutti i punti di vendita sono
collegati al sistema informativo della ditta COMP su cui sono registrati i componenti
disponibili e le possibili configurazioni. E possibile effettuare i pagamenti degli ordini al
momento dellacquisto anche con carta di credito e su richiesta emettere fatture
- Esempio
Requisiti architetturaliPROGETTA
ZIONE
Requisiti architetturali
Il sistema dovr consentire di svolgere via web le attuali operazioni
di predisposizione degli ordini.
Dovr pertanto utilizzare i sistemi gi disponibili per le operazioni di
controllo dellordine, contabili e di magazzino (sistema di tipo web
delivery). Il sistema deve poter essere utilizzato su ogni tipo di
browser (thin client).
- Raccolta e analisi
PROGETTA
ZIONE
- Raccolta e analisi
PROGETTA
ZIONE
Strumenti
di progettazionePROGETTA
- Strumenti
di
progettazione
ZIONE
Oggi gli strumenti di progettazione dei WIS sono principalmente strumenti
basati su UML per la formalizzazione e l'analisi dei requisiti; e piattaforme
integrate come J2EE. Ed proprio la modellazione UML la pi adottata nella
specifica dei requisiti poich fornisce una rappresentazione universale dei
sistemi.
Di seguito faremo una rapida introduzione alle due principali notazioni utilizzate
in questo contesto: casi duso, diagramma delle classi.
Perch adottare queste modellazioni?
E essenziale ladozione di modelli per rappresentare in modo preciso i risultati
di ciascuna fase di progettazione e per garantire la tracciabilit tra i diversi
documenti di progetto.
Analisi
- Analisi dettagliata
dettagliata
PROGETTA
ZIONE
Analisi dettagliata
Nella fase di analisi dettagliata lobiettivo quello di separare gli elementi
relativi alla presentazione, tipici ad esempio della navigazione tra pagine,
da quelli relativi alla logica applicativa e ai dati necessari al sistema
informativo.
La fase di analisi dettagliata seguita dalle successive fasi di progettazione
dettagliata (design) in cui si definiscono tutti i componenti software del
sistema e le loro interazioni. Nelle fasi di analisi e design vengono utilizzati
ancora diagrammi delle classi UML, utilizzando anche altri stereotipi per
definire in modo completo tutte le parti del sistema e il loro
funzionamento.
- Obiettivi progettazione
Obiettivi di progettazione
PROGETTA
ZIONE
Ciclo
- Ciclo vita dei
WISdi vita dei WIS PROGETTA
ZIONE
Ciclo di vita dello sviluppo
di un sistema informativo
Implementazione PROGETTA
- Progettazione
dettagliata
ZIONE
Implementazione
Nella presente si discute la realizzazione del sistema a partire dal progetto dettagliato vista dei componenti - facendo riferimento alla piattaforma Java2 Enterprise Edition
(J2EE). In questo contesto andranno realizzati i seguenti componenti:
componenti web: pagine HTML (o affini), JSP;
risorse web: URL referenziabili;
Progettazione
- Progettazione
dettagliata
dei datiPROGETTA
ZIONE
Semantica
- Progettazione
dettagliata
e comunicazione
PROGETTA
ZIONE
CASO DI STUDIO
CASO DI
STUDIO
CASO DI
STUDIO
- Sistema informativo in
esame
CASO DI
STUDIO
Lo scopo di questa
parte di esemplificare
i concetti trattati
illustrando un esempio
di WIS. Si tratta di un
sistema informativo
nellambito della
Pubblica
Amministrazione.
Il sistema informativo
che descriveremo il
Portale Istruzione,
Formazione Lavoro della
regione Lombardia.
Perch
un
WIS?
- Perch un WIS?
CASO DI
STUDIO
Perch un Wis?
Il portale stato realizzato come tale in quanto sono presenti i seguenti requisiti:
Interoperabilit fra applicazioni eterogenee
Integrazione, per ambienti che contengono vari sistemi informativi, secondo la
logica degli Enterprise Information System (EIS) o Sistemi Informativi dImpresa
Integrazione tra fonti di dati eterogenee che devono rimanere autonome ma
accessibili e consultabili in modo uniforme
Supporto a diversi tipi di client, quali semplici browser o client leggeri, applicazioni
J2EE, fino ad arrivare a dispositivi wireless, PDA, e cos via
Livello di complessit, prestazioni e costi tale da motivare la complessit dello
sviluppo e della gestione di un WIS, per ottenere i vantaggi legati allinteroperabilit,
al supporto a client diversi e accesso a dati differenziati
- Architettura di
riferimento
Architettura di riferimento
CASO DI
STUDIO
Struttura
WIS
in
esame
- Struttura WIS
CASO DI
STUDIO
Men di
navigazione
rapida
News
Informazioni importanti
Approfondimenti
Servizi
WIS
- Servizi del WIS
CASO DI
STUDIO
- Portale
CASO DI
STUDIO
- Portale
Modello
dei
servizi
- Modello dei servizi
CASO DI
STUDIO
Modello dei servizi
Il portale nasce dallesigenza di integrare strutture operanti sul territorio nelle
seguenti tre aree tematiche:
Istruzione: servizi relativi al mondo delleducazione (scuole, politiche di supporto
economico, informazioni sul mondo della scuola e delluniversit)
Formazione: per la promozione di corsi di formazione professionale a diversi livelli.
Nello specifico troviamo: servizi per i giovani che hanno compiuto il percorso
scolastico, per favorire il loro ingresso nel mondo del lavoro; indicazioni per il
sistema della formazione, derivanti dallattivit di monitoraggio del mercato del
lavoro; servizi di programmazione di interventi formativi con il fine di qualificare e
motivare fasce di disoccupati di lunga durata
dei
servizi
lavoro
- Modello dei servizi
CASO DI
Modello
STUDIO
Lavoro: per la pubblicazione di domande e offerte di lavoro e per la
diffusione di strumenti informativi in grado si supportare lincontro
effettivo tra domanda e offerta di lavoro in ambito regionale.
Larea lavoro pu essere a sua volta suddivisa in cinque parti:
Servizi Amministrativi: mette in comunicazione le diverse realt amministrative legate al
mondo del lavoro in ambito provinciale e regionale
Borsa Lavoro: dove vengono erogati i servizi finalizzati a realizzare lincontro tra domanda
e offerta di lavoro
Suddivisione
area
lavoro
- Modello dei servizi
CASO DI
STUDIO
Formazione e Orientamento: arricchisce lofferta informativa rivolta ai
lavoratori permettendo loro di eseguire la ricerca guidata online di occasioni
formative e il feed-back delle occasioni formative corrispondenti al profilo
inserito.
Banche Dati: servizi di riferimento per il reperimento di informazioni delle
tematiche connesse al mondo del lavoro e della formazione
Servizi Informativi: si tratta di servizi tipo magazine-online, community e
campus lavoro, oltre ai servizi di e-mail, news, newsgroup rivolti a tutti gli attori
(cittadini, imprese, enti locali e nazionali) interessati a informazioni sul mercato
del lavoro, sullorientamento e sulle occasioni formative
Flussi
informativi
- Flussi informativi
CASO DI
STUDIO
Flussi informativi
Si schematizzano alcune situazioni che il portale affronta e i flussi informativi
interagenti:
Evento: il lavoratore pubblica il proprio Curriculum Vitae sul portale
Problemi: la pubblicazione deve essere anonima e contenere sufficienti informazioni per
permettere al Motore di Matching, componente specializzata del Motore di Ricerca, del
portale di trovare risultati soddisfacenti. Sar discrezione del cliente rendere pubblico il
proprio nominativo
Soluzioni Front-End: il portale supporta un formato standard del dato Curriculum Vitae e ne
permette la compilazioni online guidando lutente con una gamma di possibilit reperite da un
vocabolario interno di professioni e competenze
Soluzioni Back-End: la struttura del Curriculum Vitae deve scindere le informazioni anagrafiche
da quelle riguardanti le competenze professionali. I dati professionali legati al Curriculum Vitae
devono rendersi accessibili da Enti esterni mentre i dati esterni sono disponibili solo su
autorizzazione del proprietario in linea con la legge sulla Privacy
Flussi
informativi
- Flussi informativi
CASO DI
STUDIO
Evento: limpresa pubblica unofferta di lavoro sul portale
Problemi: la pubblicazione deve essere anonima e contenere sufficienti informazioni
per permettere alle procedure di ricerca di riscontro Domanda-Offerta di ottenere
risultati soddisfacenti
Soluzioni Front-End: il portale supporta un formato standard del dato Offerta di
lavoro e ne permette la compilazioni online guidando lutente con una gamma di
possibilit reperite da un vocabolario interno di professioni e competenze
Soluzioni Back-End: la struttura del Curriculum Vitae deve scindere le informazioni
anagrafiche da quelle riguardanti le competenze professionali. I dati professionali
legati al Curriculum Vitae devono rendersi accessibili da Enti esterni mentre i dati
esterni sono disponibili solo su autorizzazione del proprietario in linea con la legge
sulla Privacy
- Servizi
Servizi
CASO DI
STUDIO
Servizi
Si sottolinea che tutte le operazioni sono svolte previa registrazione al portale.
Questo permette sia il controllo degli accessi sia la profilazione utente per il
miglioramento dellusabilit del sito e ladattamento alle funzioni di matching.
Il portale mette a disposizione dei servizi per soddisfare le tre tipologie di utenza
ovvero chi necessit di un lavoro (lavoratore), chi offre un lavoro (impresa) e gli
Enti pubblici e privati.
Parliamo cos di:
Servizi allimpresa
Servizi ai lavoratori
Servizi ai Centri per lImpiego Provinciali e agli Enti Privati
Servizi
allimpresa
- Servizi allimpresa
CASO DI
STUDIO
Servizi allimpresa
Gestione offerte: limpresa deve poter inserire, modificare e cancellare unofferta di lavoro
(strutturata in tre sezioni: anagrafica, professionale e storica)
Status offerte: nel caso unofferta venga accettata da un lavoratore, limpresa deve poter
ottenere dal portale i dati identificativi del lavoratore in questione per contattarlo
Matching profili affini: il sistema esegue gli algoritmi di matching tra Curriculum e offerte,
producendo off-line le risposte precise relative allincrocio domanda/offerta e, in caso di
mancato matching, le alternative di lavoro considerate idonee e gli eventuali percorsi
formativi suggeriti al lavoratore per riqualificarsi in funzione dellandamento delle offerte
aziendali monitorate su un certo intervallo di temporale
Ricerca libera: oltre a ricerche basate sulle offerte di lavoro inserite, unimpresa deve poter
effettuare ricerche su tutte le banche dati sia del portale che quelle collegate ad esso.
Servizi
al
lavoratore
- Servizi al lavoratore
CASO DI
STUDIO
Servizi al lavoratore
Gestione Curriculum: Il lavoratore inserisce, modifica e cancella il proprio
curriculum Vitae che permette di definire il proprio profilo personale (il CV
suddiviso nelle tre componenti: anagrafica, professionale e storica)
Servizi
agli
enti
privati
- Servizi agli Enti Privati
CASO DI
STUDIO
Servizi ai Centri per lImpiego Provinciali e agli Enti Privati
Incrocio CV/Offerte: i CIP o lEnti privati possono effettuare un matching tra
gruppi di CV per ottenere le offerte che soddisfino le domande di lavoro. A
differenza delle altre due fasce di utenza possono effettuare ricerche multiple in
blocco
Incrocio Offerte/CV: i CIP o lEnti privati possono effettuare un matching tra un
gruppo di offerte per ottenere i CV che si avvicinino alle offerte di lavoro
Incrocio CV/Formazione: il portale permette ai CIP o agli lEnti privati di
ottenere da un gruppo di CV lelenco delle occasioni formative per ogni richiesta
di lavoro.
Architettura
del
portale
- Architettura del portale
CASO DI
STUDIO
Architettura dettagliata del portale Front-End
Costituisce linterfaccia visiva del portale definita in termini di pagine web fruibili
da un qualunque utente registrato. I servizi realizzati nel front-end sono servizi di
content-management e servizi di Community destinati a gestire i contenuti del
sito web e i vari protagonisti che afferiscono al portale con relative news e
magazine-online.
Inoltre vi la possibilit di immissione di aree ad accesso pubblico e privato per
rendere pi efficace e versatile il livello di comunicazione con la molteplicit dei
fruitori del portale.
di
memorizzazione
- Sottosistema di
CASO DI
Sottosistema
memorizzazione
STUDIO
Sottosistema di memorizzazione
Vi fanno riferimento le basi di dati contenenti le informazioni necessarie
allincontro domanda-offerta, le applicazioni di gestione di dati inserite e
lIndice Anagrafico. I servizi sono realizzati dai moduli del Motore di Ricerca, in
grado di gestire contenuti sia a livello globale sia a livello di macro-area
individuata.
Pagine adeguate e specifiche, realizzate con uno stile grafico chiaro,
permettono di usufruire di altre modalit di navigazione:
Una mappa chiara del sito
Una barra di ricerca
Un men contestuale
Un frame contente le informazioni contestuali allarea navigata
- Il Back-End
Il back-end
CASO DI
STUDIO
Indici
Anagrafici
- Indici anagrafici
CASO DI
STUDIO
Indici anagrafici
La possibilit da parte di un lavoratore di iscriversi ad un CIP sul territorio
nazionale porta a possibili duplicazioni o inconsistenza delle informazioni. Per
ovviare a questi problemi il portale prevede lIndice Anagrafico dei lavoratori che
permette di riconoscere e gestire eventuali duplicazioni. Lindice permette di:
Mettere a conoscenza tutti i CIP della posizione di un qualunque lavoratore
iscritto presso qualunque altro Centro della Regione
Propagare le modifiche riguardo lo stato occupazionale di un lavoratore su tutti
i sistemi provinciali della regione presso cui egli iscritto
Sottosistema
di
sicurezza
- Sottosistema di
CASO DI
sicurezza
STUDIO
Altre
considerazioni
- Altre considerazioni
CASO DI
STUDIO
Altre considerazioni
Il portale comprende anche funzioni che facilitano la fruibilit del sistema durante
ledizione dei contenuti: un sistema di basi di dati, interrogabile da parte degli
autori di contenuto, permette di avvalersi dellintero archivio di quanto gi
pubblicato o, comunque, di soddisfare richieste di ricerca di materiale
multimediale presente e immagazzinato nel sistema.
Il sistema di content-management si appoggia ad un core tecnologico in grado di
adottare tecnologie XML/XSL per la rappresentazione dei contenuti. Come
repository dei contenuti garantita la compatibilit con database relazionali e
XML. Il sistema inoltre gode di alta scalabilit e portabilit.
Fine
FINE
GRAZIE PER
LATTENZIONE