Sistemi Informativi e Servizi in Rete prof. V. De Antonellis Dipartimento di Elettronica per l’Automazione Università di Brescia LOGIN:corsosisr PASSWORD: profdea
SISR-INTRO SISR-INTRO Chi siamo Prof. Valeria de Antonellis Ing. Devis Bianchini Dr. Michele Melchiori
SISR-INTRO SISR-INTRO Orario del Corso Lezioni Lunedi’ h AULA N6 Mercoledi’ h AULA N7 Esercitazioni Martedi’ h AULA Blab1 Giovedi’ h AULA Blab1
SISR-INTRO SISR-INTRO Obiettivi Fornire conoscenze di base su Tipologie di SI su Web Concetti strutturali e architetturali dei SI su Web Strumenti e metodi di modellazione nella progettazione di SI su Web
SISR-INTRO SISR-INTRO Contenuti – (1) Introduzione ai SI su Web Modelli per la progettazione di SI su Web Modello Dati Modello Ipertesto Modello Operazioni Metodologia di Progettazione di SI su Web
SISR-INTRO SISR-INTRO Contenuti – (2) Evoluzione dei SI (es. ERP, CRM, CRM analitici) Evoluzione Tecnologie (Architettura DBMS, Sistemi Distribuiti, SI su Web) Servizi e Architettura orientata a servizi Modello Servizi Progettazione Servizi su Web
SISR-INTRO SISR-INTRO Testi di riferimento S. Ceri, P. Fraternali, et al., Progettazione di Dati e Applicazioni per il Web, Mc Graw Hill, 2003 S. Ceri, P. Fraternali, et al., Designining Data-Intensive Web Applications,Morgan Kaufmann 2003
Modalità di esame Progetto in Lab solo per chi frequenta il corso Gruppi fino a 3 persone Presentazione in itinere con domande Valutazione progetto Tema d’esame appelli Esercizi Domande di teoria SISR-INTRO - 8 -
SISR-INTRO SISR-INTRO World Wide Web (WWW) Tecnologia BD anni 70 Tecnologia WWW (Tim Berners Lee, CERN – Ginevra 1990) BD e Web -BD: sviluppate soprattutto per la gestione di informazioni strutturate -Web: nato soprattutto per gestire informazioni testuali e multimediali (documenti, immagini, audio, video). In pratica e’ un sistema che gestisce documenti multimediali distribuiti
SISR-INTRO SISR-INTRO World Wide Web Basato sul concetto di ipertesto: documento con struttura non sequenziale, costituito da varie porzioni collegate per favorire la consultazione a seconda delle esigenze (no rigidita’ di una struttura sequenziale) Prefazione Cap. 1 Cap. 2 Cap. 3 par. 1.1 par. 1.2 par. 2.1 par. 2.2 par. 3.1 par. 3.2
SISR-INTRO SISR-INTRO Ipertesto link pagina
SISR-INTRO SISR-INTRO World Wide Web WWW: ipertesto multimediale che collega documenti di vario genere distribuiti su tutta la rete Internet Collegamenti tra documenti diversi prediposti da persone diverse in momenti diversi Collegamenti all’interno di un documento e tra documenti diversi sono analoghi Documenti non solo testuali ma anche multimediali (ipermedia) I documenti si trovano in generale su nodi diversi della rete
SISR-INTRO SISR-INTRO World Wide Web pagina link
SISR-INTRO SISR-INTRO Documenti su Web Testo G Testo X Testo W Nodo A Nodo C Nodo B Testo Y Immagine Z Testo K Testo U
SISR-INTRO SISR-INTRO Documenti su Web I documenti che costituiscono la struttura ipertestuale del Web sono scritti in linguaggio che permette la formattazione e la descrizione dei collegamenti, es. HTML (HyperText Markup Language) La creazione di documenti multimediali collegando tra loro documenti diversi si realizza mediante elementi di HTML che si chiamano ancore. Il riferimento all’elemento “puntato” da un’ancora e’ specificato come URL (Uniform Resource Locator): puo’ essere un elemento locale (e.g., pagina html) oppure una risorsa di un altro nodo della rete (es., tizio ; quest’ancora richiama con il protocollo HTTP il file tiziohome.html della directory utenti/tizio del server
SISR-INTRO SISR-INTRO Gestione documenti su Web Architettura client-server I documenti contenenti collegamenti ipertestuali sulla rete risiedono sui server I documenti possono essere visualizzati per mezzo di opportuni client chiamati browser Web (presentano testo formattato secondo i comandi HTML; il testo associato alle ancore è visualizzato in maniera enfatizzata e per accedervi occorre eseguire un clic con il mouse).
SISR-INTRO SISR-INTRO Protocollo HTTP I browser e i server comunicano attraverso il protocollo HTTP (HyperText Transfer Protocol) che realizza lo scambio di informazioni (utilizzando TCP a livello sottostante) nelle seguenti 4 fasi: apertura della connessione: il browser (client) contatta il server con l’indirizzo specificato nella URL verificando correttezza e disponibilità richiesta: il client invia un messaggio al server HTTP con la richiesta di un servizio, i dettagli delle risorsa ed eventuali parametri; risposta: il server comunica al client l’esito della richiesta e i risultati, in caso positivo, preceduti da informazioni sugli stessi chiusura della connessione: la connessione termina senza che il server tenga memoria alcuna delle operazioni svolte (si dice il protocollo HTTP è stateless, ovvero senza memoria)
SISR-INTRO SISR-INTRO World Wide Web in sintesi Client Server file HTML URL web server browser Internet il protocollo: HTTP
SISR-INTRO SISR-INTRO Il Web: una grande opportunità Il Web (e i browser) sono diventati un’interfaccia standard per l’utente finale Il protocollo è molto semplice e pubblico L’interfaccia è uniforme Il contenuto è molto ricco (in ampiezza e profondità) Sta diventando un’interfaccia standard per accedere a diversi servizi, per sistemi informativi e basi di dati di ogni tipo interoperabilità (ftp, mail, http,...) connettività cooperazione (di applicazioni)
SISR-INTRO SISR-INTRO Sistemi informativi su Web (WIS) Ci riferiamo al Web come strumento “produttivo”; il surfing è marginale Pubblicazione di dati e consultazione su Web: es. siti “catalogo” Necessità di approccio sistematico, sempre più importante al crescere delle dimensioni: l’uso di basi di dati può risultare conveniente (spesso poi la base di dati esiste già!) Transazioni su Web: non solo interrogazioni il sito può essere aggiornato attraverso il Web stesso il browser diventa un’interfaccia standard per sistemi informativi
SISR-INTRO SISR-INTRO WIS, nuove applicazioni Librerie digitali (accesso attraverso Internet e Web a molteplici sorgenti di informazioni multimediali distribuite e eterogenee) Teledidattica, telelavoro Servizi al cittadino (es., sportelli polifunzionali per erogazione di servizi della Pubblica Amministrazione, carta d’identità elettronica, carta sanitaria automatizzata,...) Servizi alle imprese (catalogo prodotti, catalogo aziende, accesso a banche dati esterne integrate attraverso Internet,...)
SISR-INTRO SISR-INTRO WIS, nuove applicazioni Commercio elettronico: se i cataloghi sono la principale applicazione dei siti di consultazione, è naturale pensare alla “vendita su web” (ma con funzionalità aggiuntive: commenti, discussioni, verifiche); sicurezza e affidabilità diventano essenziali CRM (Customer Relationship Management) Nota: alcune applicazioni possono essere su “Intranet” (attività interne all’azienda) o “Extranet” (attività B2B)
Classificazione dei siti web Per origine / destinazione della comunicazione B2E B2B G2B G2C C2C B2C Siti personali, comunità,... “E-government” Extranet Intranet (Enterprise Portals) Siti istituzionali, Portali, News, E-commerce,... C G B E “E-government” SISR-INTRO SISR-INTRO
SISR-INTRO SISR-INTRO Sistemi informativi su Web Complessità dei dati Complessità dei servizi Siti data-intensive Siti di presenza Siti orientati ai servizi WIS
SISR-INTRO SISR-INTRO Web e DB: un conflitto? le basi di dati sono ben strutturate e organizzate quanta struttura e organizzazione esiste nel Web? dipende sia dalla sorgente che dall’utente vi sono diversi livelli di granularità e struttura per i propri dati bisogna essere in grado di realizzare delle conversioni (da DB a HT e viceversa)
SISR-INTRO SISR-INTRO Due mondi? Le basi di dati possono essere interrogate in modo flessibile; gli ipertesti sono facili da accedere, ma non possono essere “interrogati” I siti Web sono spesso difficili da esplorare, usare e monitorare Le metodologie di progetto per basi di dati sono consolidate I siti Web sono complessi da progettare ed è difficile fare manutenzione
SISR-INTRO SISR-INTRO Progettazione Web, prospettive “Il Web è un sistema informativo”: eccessivo, perché l’intero Web non è certo sotto il controllo di un singolo soggetto (neanche di più soggetti coordinati fra loro) “Ogni pagina è diversa, potenzialmente autonoma, e la considero separatamente”: l’estremo opposto, ugualmente impraticabile se le pagine di interesse sono più di qualche unità e vanno mantenute aggiornate e coordinate Prospettiva equilibrata: “un sito è un sistema informativo e il Web è una federazione di siti fra loro autonomi”; ciascun sito è sotto la responsabilità di un soggetto (o un gruppo di soggetti)
SISR-INTRO SISR-INTRO Web-based information systems: il punto di vista dei database Data-Intensive Web Sites: grandi quantità di dati significatività della struttura ipertestuale
SISR-INTRO SISR-INTRO Problemi con siti Web (design) le informazioni sono male organizzate e difficili da trovare non è chiaro quali siano le informazioni disponibili la struttura di accesso è casuale e vi sono molti riferimenti pendenti lo stile della presentazione è eterogeneo
SISR-INTRO SISR-INTRO Problemi con siti Web (manutenzione) difficile aggiornare il contenuto (tipologia e valori) difficile cambiare la struttura definita inizialmente difficile cambiare i dettagli della presentazione
SISR-INTRO SISR-INTRO Caso1: pagine con la stessa struttura
SISR-INTRO SISR-INTRO Caso2: Stessi dati, diversa struttura ipertestuale
SISR-INTRO SISR-INTRO Caso3: Stessi dati e stessa struttura ipertestuale, diversa presentazione
SISR-INTRO SISR-INTRO “Indipendenza dei dati” negli ipertesti Dati “quali informazioni vengono offerte attraverso il sito e quali sono i dettagli concettuali e l’organizzazione logica” Ipertesto “come sono organizzati i dati in pagine e quali link navigazionali collegano le diverse pagine” Presentazione “l’aspetto di ogni informazione nelle pagine”
SISR-INTRO SISR-INTRO Modelli datiER e Relazionale, UML ipertesto? presentazioneHTML, XML Ciò che manca è un modello per gli ipertesti!
SISR-INTRO SISR-INTRO Metodologie per lo sviluppo di siti Web data-intensive Nei siti Web data-intensive vi sono (molte) pagine con una struttura simile (o identica) La metodologia WebML (Politecnico di Milano) parte da questa considerazione e propone un approccio basato su definizione di “schemi” tipo basi di dati