TECNOLOGIE PER I SISTEMI INFORMATIVI INTRODUZIONE Prof. Fabio A. Schreiber Prof. Letizia Tanca Dipartimento di Elettronica e Informazione Politecnico di Milano PROGRAMMA DEL CORSO (1) ARGOMENTI CHE SARANNO TRATTATI NEL CORSO DELLE LEZIONI E DELLE ESERCITAZIONI, NON NECESSARIAMENTE NELL ORDINE QUI DESCRITTO Il contesto tecnologico dei moderni Sistemi Informativi Architetture per la gestione dei dati distribuiti I problemi di integrazione di sistemi eterogenei eterogeneità di modello eterogeneità semantica Data Warehouse Analisi dei dati e Data Mining Gestione dell informazione non strutturata sistemi di Information retrieval analisi automatica dei testi F. A. Schreiber - L. Tanca 1 INTRODUZIONE 1
PROGRAMMA DEL CORSO (2) Gestione dell informazione semistrutturata metamodelli wrapper e mediatori motori di ricerca I problemi legati alla mobilità e alla dipendenza dal contesto Sistemi Informativi embedded Basi di dati in memoria centrale Basi di dati in tempo reale Rappresentazione del tempo nei Sistemi Informativi ORE DI LEZIONE: 47 ORE DI ESERCITAZIONE: 16 ORE DI LAVORO INDIVIDUALE SUL PROGETTO: CIRCA 80 F. A. Schreiber - L. Tanca 2 INTRODUZIONE SITO DEL CORSO: MODALITA D ESAME http://www.elet.polimi.it/upload/schreibe/tecnologie/index.html SUL SITO DEL CORSO SONO DISPONIBILI IL PROGRAMMA LA BIBLIOGRAFIA I LUCIDI USATI A LEZIONE ALCUNI ESERCIZI La consultazione di questo materiale costituisce condizione necessaria, ma non sufficiente, al superamento dell esame, essendo indispensabile l approfondimento individuale sulla bibliografia suggerita F. A. Schreiber - L. Tanca 3 INTRODUZIONE 2
LA FORMAZIONE UNIVERSITARIA NEL CAMPO DELL INGEGNERIA DEI SISTEMI INFORMATIVI CORSO DI STUDI IN INGEGNERIA INFORMATICA PROGETTAZIONE DI APPLICAZIONI DI COMPLESSITA MEDIO/BASSA GESTIONE DELLA TECNOLOGIA E DELLE APPLICAZIONI CORSO DI STUDI IN INGEGNERIA GESTIONALE PROGETTAZIONE DELL ORGANIZZAZIONE E DELLE APPLICAZIONI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA PROGETTAZIONE DI APPLICAZIONI DI COMPLESSITA ELEVATA MASTER DI PRIMO E DI SECONDO LIVELLO APPROFONDIMENTI SPECIALISTICI DOTTORATI DI RICERCA PROGETTAZIONE DELL INNOVAZIONE F. A. Schreiber - L. Tanca 4 INTRODUZIONE QUADRO GENERALE DI UN SISTEMA INFORMATIVO IMPRESA ASPETTI STRUTTURALI E ORGANIZZATIVI ASPETTI FUNZIONALI E DI PIANIFICAZIONE PROCEDURE DATI ASPETTI GIURIDICI E DEONTOLOGICI RELAZIONI UMANE SISTEMA INFORMATIVO SISTEMA INFORMATIVO IMPIANTO IMPIANTO INFORMATICO INFORMATICO SISTEMA INFORMATIVO AUTOMATIZZATO ARCHITETTURE DEI SISTEMI DI ELABORAZIONE SISTEMI OPERATIVI SISTEMI DI GESTIONE DI BASI DI DATI INGEGNERIA DEL SOFTWARE METODOLOGIE E TECNOLOGIE INFORMATICHE F. A. Schreiber - L. Tanca 5 INTRODUZIONE 3
SISTEMI INFORMATIVI COMPLESSI F. A. Schreiber - L. Tanca 6 INTRODUZIONE SVILUPPO (PREI)STORICO DELLE TECNOLOGIE DI SUPPORTO Nos Agilulfus 1 in nostra potestate statuemus ut tibi agrum fertilissi. detur pro 40 tall. ARGILLA (EBLA XXIV SEC. A.C.) PAPIRO (EGITTO XII SEC. A.C.) PERGAMENA (EUROPA XII SEC.) ARCHIVI CARTACEI (XVII SEC.) SCHEDE PERFORATE (ANNI 40) SUPPORTI MAGNETICI (ANNI 60) SUPPORTI OTTICI (ANNI 80) F. A. Schreiber - L. Tanca 7 INTRODUZIONE 4
SISTEMI INFORMATIVI E TECNOLOGIE DEI DATI FILE SYSTEM QUERY ANSWERING SYSTEM TRATTAMENTO DEL LINGUAGGIO NATURALE INFORMATION RETRIEVAL DATA BASE SYSTEM MANAGEMENT INFORMATION STATISTICA, SYSTEM RICERCA OPERATIVA DECISION SUPPORT SYSTEM EXPERT SYSTEM LOGICA MATEMATICA F. A. Schreiber - L. Tanca 8 INTRODUZIONE SVILUPPO DELLE ARCHITETTURE DI SISTEMA MOLTI UTENTI PER MACCHINA UN SOLO UTENTE PER MACCHINA MOLTE MACCHINE PER CIASCUN UTENTE ELEVATA STRUMENTI E SERVIZI INFORMATIVI DISTRIBUZIONE WS / SERVER PC + RETE 1950 1965 1980 1990 2000 TIME SHARING RJE BASSA BATCH BASSA PERSONALIZZAZIONE ELEVATA Da: Cherniack, Franklin, Zdonik F. A. Schreiber - L. Tanca 9 INTRODUZIONE 5
ARCHITETTURA DI UN MODERNO SISTEMA INFORMATIVO SERVER RETE LOCALE RETI DIGITALI A LARGA BANDA FRONT END RETI ANALOGICHE RESTO RETE INTERNA FIREWALL A BANDA STRETTA DEL MONDO RETI RADIO RETE LOCALE SERVER F. A. Schreiber - L. Tanca 10 INTRODUZIONE LE TECNOLOGIE DI GESTIONE DELL INFORMAZIONE DATA WAREHOUSE SUPPORTO ALLE DECISIONI DATA MINING ANALISI DEI S.I. INTEGRAZIONE DEI DATI GESTIONE DI DATI DISTRIBUITI ED ETEROGENEI BASI DI DATI REAL-TIME MAIN MEMORY TEMPORALI INFORMAZIONE NON STRUTTURATA SEMISTRUTTURATA E MULTIMEDIALE SISTEMI INFORMATIVI SU WEB SISTEMI EMBEDDED COMPONENTI MOBILI E DIPENDENTI DAL CONTESTO SISTEMI DI INFORMATION RETRIEVAL F. A. Schreiber - L. Tanca 11 INTRODUZIONE 6
IL NUOVO CONTESTO TECNOLOGICO (1) SISTEMI DISTRIBUITI SU RETE FACILITA' DI ACCESSO, INTEROPERABILITA SISTEMI MULTIPROCESSORE PARALLELI SCALABILITA' DELLE PRESTAZIONI F. A. Schreiber - L. Tanca 12 INTRODUZIONE IL NUOVO CONTESTO TECNOLOGICO (2) NUOVE TECNOLOGIE PER LA GESTIONE DEI DATI BASI DI DATI DISTRIBUITE OMOGENEE DATA WAREHOUSE SISTEMI INTERCONNESSI DA INTERNET WORLD-WIDE-WEB: LA MIGLIOR INTERFACCIA PER ACCEDERE FACILMENTE ALLE INFORMAZIONI SISTEMI ETEROGENEI INTERCONNESSI INCLUSIONE DI COMPONENTI MOBILI F. A. Schreiber - L. Tanca 13 INTRODUZIONE 7
IL NUOVO CONTESTO TECNOLOGICO (3) LA DIFFUSIONE MASSICCIA DI INTERNET HA INFLUENZATO I SISTEMI INFORMATIVI IN DUE MODI RICERCA DI INFORMAZIONI NON PIU SU UNA SINGOLA BANCA DI DATI, MA IN TUTTI I SITI DELLA RETE UTILIZZO DELL ARCHITETTURA INTERNET/WWW ANCHE PER LA REALIZZAZIONE DI SISTEMI INFORMATIVI INTRA/INTER-AZIENDALI AZIENDALI INTRANET + EXTRANET = INTERNET NECESSITA DI INTEGRAZIONE TRA LE TECNOLOGIE WEB E LE TECNOLOGIE TRADIZIONALI OLTP F. A. Schreiber - L. Tanca 14 INTRODUZIONE IL NUOVO CONTESTO TECNOLOGICO (4) ARCHITETTURA A TRE LIVELLI (three( tiers) PRESENTAZIONE BROWSER (Netscape Navigator, Internet Explorer, ecc.) CLIENT FUNZIONALE FUNZIONI APPLICATIVE E DI GESTIONE DI RETE WEB SERVER DATI DBMS O SIMILE BACK END F. A. Schreiber - L. Tanca 15 INTRODUZIONE 8
IL NUOVO CONTESTO TECNOLOGICO (5) INTRANET ESTENDONO AL SISTEMA INFORMATIVO AZIENDALE LE CARATTERISTICHE DI SEMPLICITA E IMMEDIATEZZA DELLA TECNOLOGIA WEB DEVONO INTEGRARE IN MODO EFFICACE LE TECNOLOGIE DEI DBMS, DEI WFMS E DEI SISTEMI OLTP E OLAP TRADIZIONALI DEVONO GARANTIRE LA SICUREZZA DELL ACCESSO NEI CONFRONTI DEL MONDO ESTERNO MEDIANTE FIREWALL F. A. Schreiber - L. Tanca 16 INTRODUZIONE IL NUOVO CONTESTO TECNOLOGICO (7) INTRODUZIONE DI DISPOSITIVI MOBILI VARIABILITA DEI DISPOSITIVI E DELLA LORO POTENZA (carte intelligenti, telefoni cellulari, elaboratori palmari, ) VARIABILITA DELL AMBIENTE OPERATIVO (proprietario, intranet/internet, ) VISIONE SPAZIO/TEMPORALE ACCURATA E COERENTE DELLO STATO E DELLA QUALITA DEL SERVIZIO (QoS) MULTICANALITA F. A. Schreiber - L. Tanca 17 INTRODUZIONE 9
IL NUOVO CONTESTO APPLICATIVO (1) IMPIEGHI COMMERCIALI DI INTERNET <1990 1992 1993 1994 1995 1996 1997 1998 1999 >2000 e-mail, FILE TRANSFER MARKETING SUPPORTO ALLE DECISIONI GROUPWARE TRANSAZIONI COMMERCIALI E FINANZIARIE WORKFLOW, BUSINESS TO BUSINESS MULTIMEDIA COMMERCIO VIRTUALE F. A. Schreiber - L. Tanca 18 INTRODUZIONE IL NUOVO CONTESTO APPLICATIVO (2) UN ESEMPIO: IL COMMERCIO ELETTRONICO COMPLESSITA DELLE APPLICAZIONI SITI ORIENTATI AI SERVIZI (hotmail) SITI DI PRESENZA COMMERCIO ELETTRONICO SISTEMI INFORMATIVI BASATI SU WEB SITI DI CATALOGO WORKFLOW DESIGN PROGETTO DI IPERTESTI COMPLESSITA DEI DATI F. A. Schreiber - L. Tanca 19 INTRODUZIONE 10
IL NUOVO CONTESTO APPLICATIVO (3) UN NUMERO MOLTO ALTO DI GRANDI SORGENTI DI DATI DATI GENERALMENTE MOLTO VARIABILI E VOLATILI (ES. WEB) SORGENTI DI DATI ALTAMENTE ETEROGENEE DIFFERENTI LIVELLI DI STRUTTURAZIONE DEI DATI. BASI DI DATI BASATE SU DIVERSI MODELLI (RELAZIONALE, OGGETTI ) DATI SEMISTRUTTURATI (XML, HTML, ALTRI FORMATI DI MARCATURA ) DATI COMPLETAMENTE NON STRUTTURATI (TESTI, IMMAGINI ETC ) DIFFERENTI TERMINOLOGIE E DIFFERENTI CONTESTI F. A. Schreiber - L. Tanca 20 INTRODUZIONE IL NUOVO CONTESTO APPLICATIVO (4) LA DIPENDENZA DAL CONTESTO ABILITA DI UN SISTEMA INFORMATICO DI RICONOSCERE UNA SITUAZIONE AMBIENTALE E ADATTARSI AD ESSA IN MODO DA ESSERE APPLICATIVAMENTE UTILE POSIZIONE TEMPO AMBITO DI INTERESSE PARAMETRI SOCIALI LIVELLO DI RUMORE AMBIENTALE VINCOLI DI PRIVATEZZA F. A. Schreiber - L. Tanca 21 INTRODUZIONE 11
I PROBLEMI UNIFICANTI LA DISTRIBUZIONE E IL CONTESTO SPAZIO- TEMPORALE DELLE FONTI DI DATI DEI SERVER DEGLI UTENTI L ETEROGENEITA DEI DATI FORMATI SEMANTICA LA SCARSA STRUTTURAZIONE DEI DATI E DELLE INFORMAZIONI F. A. Schreiber - L. Tanca 22 INTRODUZIONE LE TECNICHE COMUNI COLLEGAMENTO TRA WEB E BASI DI DATI COLLEGAMENTO TRA WORKFLOW E BASI DI DATI METODI STATISTICI DI ANALISI DEI DATI DATA MINING RICERCA SU WEB E IN BANCHE DI DATI F. A. Schreiber - L. Tanca 23 INTRODUZIONE 12
UNA POSSIBILE SOLUZIONE INTEGRAZIONE DEI DATI COMBINA DATI PROVENIENTI DA SORGENTI DIFFERENTI FORNISCE ALL UTENTE UNA VISIONE UNIFICATA NON DEVE PIU INDIVIDUARE LE SORGENTI DATI RILEVANTI PER UNA DETERMINATA INTERROGAZIONE NON DEVE PIU INTERAGIRE CON OGNI SORGENTE SINGOLARMENTE I RISULTATI DELLE SIGOLE ESTRAZIONI VENGONO COMBINATI IN UNA RISPOSTA UNICA F. A. Schreiber - L. Tanca 24 INTRODUZIONE COME INTEGRARE I DATI INTEGRAZIONE DI SCHEMI E FILTRAGGIO DEI DATI (OFF-LINE) SORGENTI SPARSE INTEGRAZIONE DI SCHEMI SCHEMA INTEGRATO INTERROGAZIONE DISTRIBUITA INTERROGAZIONE CENTRALIZZATA RISPOSTE SINGOLE INTEGRAZIONE DI RISPOSTE RISPOSTA FINALE WRAPPER E MEDIATORI (ON-LINE) F. A. Schreiber - L. Tanca 25 INTRODUZIONE 13
INTEGRAZIONE DELLE APPLICAZIONI MIDDLEWARE ENTERPRISE APPLICATION INTEGRATION (EAI) WEB SERVICES F. A. Schreiber - L. Tanca 26 INTRODUZIONE INTEGRAZIONE DELLE APPLICAZIONI MIDDLEWARE METTE A DISPOSIZIONE DEL PROGRAMMATORE FUNZIONALITA CHE ALTRIMENTI DOVREBBERO ESSERE CREATE OGNI VOLTA EX NOVO PER CREARE QUESTE ASTRAZIONI DI PROGRAMMAZIONE E NECESSARIA UNA GROSSA INFRASTRUTTURA SOFTWARE SISTEMI BASATI SU RPC (chiamate a procedure remote) TP MONITOR OBJECT BROKER SISTEMI BASATI SU MESSAGGI (asincroni) F. A. Schreiber - L. Tanca 27 INTRODUZIONE 14
INTEGRAZIONE DELLE APPLICAZIONI ENTERPRISE APPLICATION INTEGRATION (EAI) ESTENDE IL CONCETTO DI MIDDLEWARE DA CREAZIONE DI NUOVE LOGICHE APPLICATIVE A INTEGRAZIONE DI APPLICAZIONI COMPLESSE UTILE IN AMBIENTI ALTAMENTE ETEROGENEI DOVE I MECCANISMI DI PIU BASSO LIVELLO ANDREBBERO ADATTATI PER CIASCUN SISTEMA UTILIZZA PER LO PIU COMUNICAZIONI ASINCRONE MESSAGE BROKERS PARADIGMA PUBLISH/SUBSCRIBE SISTEMI DI WORKFLOW MANAGEMENT F. A. Schreiber - L. Tanca 28 INTRODUZIONE INTEGRAZIONE DELLE APPLICAZIONI SERVIZI WEB (WEB SERVICES) SONO UN MODO DI ESPORRE LE FUNZIONALITA DI UN SISTEMA INFORMATIVO RENDENDOLE DISPONIBILI ATTRAVERSO TECNOLOGIE WEB STANDARD APPLICAZIONE SOFTWARE IDENTIFICATA DA UN URI LE INTERFACCE E I COLLEGAMENTI POSSONO ESSERE DEFINITI, DESCRITTI, E SCOPERTI MEDIANTE COMPONENTI XML SUPPORTA INTERAZIONI DIRETTE CON ALTRI AGENTI TRAMITE MESSAGGI XML SCAMBIATI VIA PROTOCOLLI INTERNET F. A. Schreiber - L. Tanca 29 INTRODUZIONE 15
INTEGRAZIONE DELLE APPLICAZIONI SERVIZI WEB SERVIZIO E UNA PROCEDURA, METODO O OGGETTO CON UN ITERFACCIA STABILE E PUBBLICA CHE PUO ESSERE INVOCATA DAI CLIENT SERVIZIO WEB E UN APPLICAZIONE SOFTWARE CON UN INTERFACCIA STABILE E PUBBLICA SERVIZIO WEB NON E E UN INSIEME DI PAGINE WEB F. A. Schreiber - L. Tanca 30 INTRODUZIONE ARCHITETTURA DI SERVIZI WEB AZIENDA A (FORNITORE) SERVIZIO WEB INTERFACCIA DEL SERVIZIO WEB ACCESSO AL SISTEMA INTERNO ARCHITETTURA ARCHITETTURA INTERNA INTERNA MIDDLEWARE AZIENDA D (CLIENTE) CLIENTE ARCHITETTURA ARCHITETTURA ESTERNA ESTERNA SERVIZIO WEB SERVIZIO WEB SERVIZIO WEB AZIENDA C (FORNITORE) SERVIZIO INTERNO SERVIZIO INTERNO SERVIZIO WEB SERVIZIO WEB AZIENDA B (FORNITORE) Da: Alonso, Casati, Kuno, Machiraju F. A. Schreiber - L. Tanca 31 INTRODUZIONE 16
ARCHITETTURA DI SERVIZI WEB I SERVIZI WEB SONO UTILIZZATI COME WRAPPER SOFISTICATI IN UNO STRATO (TIER) AL DI SOPRA DEI CONVENZIONALI SERVIZI MIDDLEWARE L ARCHITETTURA INTERNA DEFINISCE I COLLEGAMENTI CON I SISTEMI INFORMATIVI LOCALI L ARCHITETTURA ESTERNA DEFINISCE COME I SERVIZI WEB RIESCANO A RICONOSCERSI E AD INTERAGIRE TRA LORO RICHIEDE A DIVERSE ORGANIZZAZIONI DI INTERAGIRE VIA INTERNET SPESSO NON ESISTE UN CONTROLLO CENTRALIZZATO SI BASA SU DEFINIZIONE DI STANDARD F. A. Schreiber - L. Tanca 32 INTRODUZIONE INFRASTRUTTURA PER SERVIZI WEB PER IMPLEMENTARE UN INSIEME DI SERVIZI WEB SONO NECESSARI UNA SINTASSI COMUNE PER LA SPECIFICA FORNITA DAGLI STANDARD XML UN MECCANISMO CHE PERMETTA L INTERAZIONE TRA I DIVERSI SITI UN FORMATO COMUNE PER I DATI UNA CONVENZIONE CHE DEFINISCA LA FORMA DI INTERAZIONE ASINCRONA (MESSAGGI) SINCRONA (RPC) UN MECCANISMO CHE MAPPI I MESSAGGI SUL PROTOCOLLO DI TRASPORTO (TCP/IP, HTTP, SMTP) SIMPLE OBJECT ACCESS PROTOCOL (SOAP) F. A. Schreiber - L. Tanca 33 INTRODUZIONE 17
INFRASTRUTTURA PER SERVIZI WEB UNA DESCRIZIONE STANDARDIZZATA DEI SERVIZI E DELLE LORO INTERFACCE WEB SERVICES DESCRIPTION LANGUAGE (WSDL) COMPILATO IN UN OPPORTUNO LINGUAGGIO DI PROGRAMMAZIONE, GENERA GLI STUB E GLI SCHELETRI PER RENDERE TRASPARENTI LE CHIAMATE AI SERVIZI UN SERVIZIO DI NAMING E DI GESTIONE DEL DIRETTORIO MODO STANDARD DI PUBBLICARE E LOCALIZZARE I SERVIZI UNIVERSAL DESCRIPTION DISCOVERY and INTEGRATION (UDDI) F. A. Schreiber - L. Tanca 34 INTRODUZIONE INFRASTRUTTURA PER SERVIZI WEB WDSL DEL FORNITORE RICHIEDENTE COMPILATORE WDSL LATO CLIENT COMPILATORE WDSL LATO PROVIDER FORNITORE OGGETTO APPLICATIVO (CLIENT) STUB OGGETTO APPLICATIVO (PROVIDER) SCHELETRO SOAP MIDDLEWARE MESSAGGI SOAP SOAP MIDDLEWARE MESSAGGI SOAP RICERCA SERVIZIO MESSAGGI SOAP PUBBLICAZIONE SERVIZIO SOAP MIDDLEWARE DESCRIZIONE DEL SERVIZIO Da: Alonso, Casati, Kuno, Machiraju UDDI REGISTRY F. A. Schreiber - L. Tanca 35 INTRODUZIONE 18