Basi di Dati e Sistemi Informativi

Slides:



Advertisements
Presentazioni simili
Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Advertisements

Corso di Fondamenti di Informatica
Architetture dei sistemi distribuiti Prof
Database MySql.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
(Appunti da Scott Mitchell, James Atkinsons - Active Server Pages 3.0 – ed. Apogeo) Le pagine ASP.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
Web Services.
Java Enterprise Edition (JEE)
Laboratorio di Progettazione Web Introduzione AA 2009/2010 Chiara Renso ISTI - CNR -
Connessione con MySQL.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
IN QUESTA PRESENTAZIONE…
OUTLINE Riprogettazione del database del portale Web della Facoltà di Ingegneria Sviluppo di una applicazione WEB DB : HOMEPAGE DOCENTI Architettura multilivello.
Java2 Esercitazioni del corso di Sistemi Informativi Marina Mongiello
Tecnologie di Sviluppo per il Web
Introduzione ai Web Services. E' un nuovo meccanismo RPC ottimizzato per l'uso in Internet Un qualunque Client su una generica piattaforma deve poter.
ING. CARLO MANFUCCI COMUNE DI GROSSETO
Internet e Web Dinamico
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Active Server Pages.
Linguaggi per il Web Laboratorio di Applicazioni Informatiche II mod. A.
1 Basi di dati e Web Prof. Stefano Paraboschi Prof. Barbara Pernici.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Architettura Three Tier
Architettura del World Wide Web
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
IL SISTEMA INFORMATICO e IL SISTEMA INFORMATIVO
IL SISTEMA INFORMATICO e IL SISTEMA INFORMATIVO
INFORMATICA E TECNOLOGIA DELLA COMUNICAZIONE IN RETE MODULO 2
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
1 Linux day /11/2003 ADA. Dai requisiti al progetto Come nasce il progetto di una piattaforma e-learning Open Source.
APPLICAZIONI WEB In questo corso impareremo a scrivere un'applicazione web (WA) Marco Barbato - Corso di Applicazioni Web – A.A
Modelli ed Applicazioni di Reti di Calcolatori L-S Anno Accademico Università degli Studi di Bologna Ing. Fabio Tarantino –
Elaborazione di Franco Grivet Chin
Architettura Java/J2EE
Ing. Enrico Lecchini BetaTre S.r.l.
Corso di Informatica per Giurisprudenza Lezione 7
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
Analisi (Analista) Progettazione (Progettista) Sviluppo o Traduzione (Sviluppatore) Documentazione.
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
Sistemi Informativi sul Web
Introduzione alla programmazione web
Common Gateway Interface. Dynamic HTML le risposte inviate al client sono (parzialmente o totalmente) create on-the-fly (al volo) dopo aver ricevuto il.
Basi di Dati e Sistemi Informativi
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.
Web Information Systems Prof
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
Creato da Riccardo Nuzzone
Architetture a componenti Java per la realizzazione di DSS distribuiti Giordano Vicoli - ENEA 28 Ottobre 2003.
Programmazione Web Presentazione del corso /2015.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Analisi dettagliata e design
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Protocolli e architetture per WIS. Cronologia di Internet ricerche sulla commutazione di pacchetto (Leonard Kleinrock) 1967 Nasce il progetto.
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
Relatore: Prof. Ing. Stefano SalsanoLaureando: Flaminio Antonucci.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
Servizi Internet Claudia Raibulet
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Eprogram informatica V anno.
PHP.  HTML (Hyper Text Markup Language)  CSS (Cascading Style Sheets)  Javascript (linguaggio di programmazione client)  PHP ( Hypertext Preprocessor.
Architetture software
Il mondo del web Includere Digital-mente – Corso livello 4 docente: prof.ssa MANUELA MARSILI.
Corso Web Developer Lezione 2 – HTML e ASP. I limiti delle pagine HTML Nella lezione precedente abbiamo visto che con HTML e JavaScript è possibile scrivere.
INTERNET E INTRANET Classe VA SIA. La Storia di INTERNET ’ – ARPANET 1969 – anno di nascita università Michigan - Wayne 1970 – – INTERNET.
Eprogram informatica V anno. Programmare in rete.
ASP – Active Server Pages - 1 -Giuseppe Tandoi ASP – Active Server Pages Tecnologia per lo sviluppo di pagine dinamiche.
Transcript della presentazione:

Basi di Dati e Sistemi Informativi Sistemi Informativi sul Web Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/

Web Information System L’accesso tipico ad una base di dati avviene mediante applicazioni integrate nel sistema informativo. Integrazione di SQL in linguaggi di programmazione ad alto livello. Integrazione di SQL in applicazioni/interfacce Web (Web Information System, WIS)

Web Information System I WIS presentano problematiche comuni ad i sistemi informativi tradizionali, ma anche delle peculiarita’: Eterogeneita’ dei dati (testo, dati binari, multimedia, etc). Asimmetria delle operazioni (ricerca/aggiornamento). Eterogeneita’ dei dispositivi d’accesso.

Web Information System Componenti di un WIS: Web-server (HTTP-based) DBMS (relazionale) Meta-tier di collegamento 2. Parametri MT 3. SQL Query 1. HTTP request Web-server DBMS 5. Pagina Web (dinamica) 4. Dati 6. HTTP response Browser (client)

Web Information System Ingredienti di un WIS: Il Word Wide Web (WWW) Applicazione fruibile su una rete Internet per lo scambio di ipertesti. Basata su un’architettura client-server. HTTP request Browser (client) HTTP response Web server

Web Information System Ingredienti di un WIS: HTML (Hypertext Markup Language) Linguaggio per la creazione di ipertesti multimediali distribuiti. Tecnica di rappresentazione markup, attraverso l’utilizzo di tag che definiscono le proprieta’ grafiche o strutturali del testo. Separazione del contenuto del testo dalla sua presentazione attraverso CSS.

Web Information System Ingredienti di un WIS: HTML (Hypertext Markup Language) Come si presenta un file HTML. <HTML> <HEAD> <TITLE> Titolo del documento </TITLE> </HEAD> <BODY> <P align=“center”> <B> Hello world! </B></P> <A href=“http://www.unibo.it”> Clicca qui per cambiare sito </A> </BODY> </HTML>

Web Information System Ingredienti di un WIS: HTTP (Hypertext Transfer Protocol) Protocollo per l’interazione client/server, basato su protocollo TCP (porta 80). Protocollo stateless, con 4 fasi. Comunicazione asimmetrica (pull-based) Comandi principali: HEAD, POST, GET, PUT, OPTIONS, etc

Web Information System Ingredienti di un WIS: DMBS (Database Management System) Sistema per la gestione dei dati. Non si richiedono caratteristiche specifiche per l’utilizzo sul Web, se non quelle (ovvie) di: (i) gestione della concorrenza, (ii) supporto multi-utente ed (iii) efficienza operazionale. Esempi: MySQL, PostgreSQL, DB2, etc

Web Information System Ingredienti di un WIS: MT (Middle-tier) Sistema di collegamento tra il Web-server ed il DBMS. OPERAZIONI: Riceve i parametri in ingresso dal Web-server. Interroga il DMBS ed estrae le informazioni di interesse (tramite SQL). Produce la pagina HTML con le info richieste.

Web Information System Ingredienti di un WIS: MT (Middle-tier) Sistema di collegamento tra il Web-server ed il DBMS. IN COSA CONSISTE un MT? Programma esterno CGI (Common Gateway Interface). Interprete di linguaggi di scripting server-side integrato nel Web-server. Application-server multi-livello.

Web Information System Ingredienti di un WIS: MT (Middle-tier) Sistema di collegamento tra il Web-server ed il DBMS. IN COSA CONSISTE un MT? Programma esterno CGI (Common Gateway Interface). Interprete di linguaggi di scripting server-side integrato nel Web-server. Application-server multi-livello.

Web Information System Common Gateway Interface (CGI) Si utilizza l’URL della richiesta HTTP per invocare un programma presente sul server (programma CGI), che viene eseguito (sul server) e calcola la pagina da restituire al client. http://www.cs.unibo.it/myscript.cgi?nome=marco &corso=db Nome del programma CGI, non della risorsa Parametri

Web Information System Common Gateway Interface (CGI) Il web-server si limita a: passare i parametri in input al programma CGI (es. myscript.cgi), ad a lanciare l’esecuzione dello stesso. Parametri HTTP request Pagina HTML myscript.cgi Browser (client) HTTP response DBMS Web server

Web Information System Common Gateway Interface (CGI) L’applicabilita’ dei CGI e’ limitata da: Prestazioni  ad ogni richiesta, un nuovo processo corrispondente al programma CGI deve essere mandato in esecuzione. Risorse  quando un CGI termina, le sue risorse sono deallocate e non e’ possibile riutilizzare strutture dati per richieste consecutive dello stesso tipo.

Web Information System Ingredienti di un WIS: MT (Middle-tier) Sistema di collegamento tra il Web-server ed il DBMS. IN COSA CONSISTE un MT? Programma esterno CGI (Common Gateway Interface). Interprete di linguaggi di scripting server-side integrato nel Web-server. Application-server multi-livello.

Web Information System Scripting Server-Side La risorsa richiesta dall’utente contiene (oltre a codice HTML) anche codice aggiuntivo scritto in un linguaggio di scripting-server-side. Il web-server include un interprete di tale linguaggio. Il codice viene eseguito (lato server) dal web-server. Il corrispondente codice HTML viene generato. Il codice HTML risultatante viene spedito indietro come risposta al client.

Web Information System Scripting Server-Side In questo caso, il Meta-Tier e’ incluso nel web-server, che funge anche da interprete dgli script server-side. META-TIER INTERPRETE HTTP request DBMS Browser (client) HTTP response Web server

Web Information System http://www.cs.unibo.it/data.php RISORSA RICHIESTA <html> <head> </head> <body> <p> <b> Data corrente: </b> <?php echo date("m.d.y"); ?> </p> </body> </html> <html> <head> </head> <body> <p> <b> Data corrente: </b> 11.21.12</p> </body> </html> SERVER-SIDE CLIENT-SIDE

Web Information System Scripting Server-Side Oltre a fungere da interprete degli script, il MT integrato nel web-server puo’ fornire l’ambiente di supporto per l’esecuzione degli script: Allocazione di risorse (es. memoria) Gestione della sessione Librerie/moduli per connessione a DBMS

Programma del Corso Linguaggi/Tecnologie di scripting server-side ASP.NET PHP Python + Django Ruby on Rails Java Server Pages (JSP) and Java Servlet Common Gateway Interface (CGI) …

Web Information System Ingredienti di un WIS: MT (Middle-tier) Sistema di collegamento tra il Web-server ed il DBMS. IN COSA CONSISTE un MT? Programma esterno CGI (Common Gateway Interface). Interprete di linguaggi di scripting server-side integrato nel Web-server. Application-server multi-livello.

Web Information System Application Server Un Application Server e’ una sistema dedicato all’esecuzione di componenti riusabili che possono venire sfruttati dagli script server-side per la costruzione dinamica del codice HTML. META-TIER INTERPRETE HTTP request Application Server DBMS Browser (client) HTTP response Web server

Web Information System Application Server Tramite Application Server e’ possibile realizzare sistemi distribuiti che si interfacciano con DBMS ed in grado di garantire proprieta’ quali: Tolleranza ai guasti Gestione delle transazioni Condivisione di risorse …. Esempio: Enterprise Java Beans (EJB) in J2EE

Web Information System L’avvento del Web ha stimolato la necessita’ di integrare sistemi informativi eterogenei, sviluppati in tempi diversi e con piattaforme differenti … Anagrafica (comune) Anagrafica studenti (universita) Fascicolo Sanitario Elettronico (regione) Fascicolo del contribuente (agenzia entrate) …

Web Information System L’avvento del Web ha stimolato la necessita’ di integrare sistemi informativi eterogenei, sviluppati in tempi diversi e con piattaforme differenti … DBMS DBMS DATI Oracle MySQL DBMS MicrosoftSQL

Web Information System Soluzione1: Integrazione/Migrazione dei DB esistenti. DBMS MIGRAZIONE MIGRAZIONE DBMS DBMS Oracle MySQL DBMS MicrosoftSQL

Web Information System Per queste necessita’ di integrazione, il W3C ha proposto l’utilizzo di Web Service: Def. di Web Service (W3C): Sistema per supportare le interazioni tra macchine in rete. Due componenti principali: Linguaggio per la definizione dei servizi offerti da un Web –Service  WSDL (Web Service Definition Language) Protocollo per lo scambio dei messaggi tra i servizi  SOAP (Simple Object Access Protocol)

Web Information System Una specifica WSDL e’ un documento XML che descrive: il servizio, le operazioni, i messaggi, ed i tipi dei dati necessari per l’operazione. <types> … definizione dei tipi utilizzati </types> PARTE ASTRATTA <message> … messaggio scambiato </message> <portType> … gruppo di operazioni</portType> <binding> … modalita’ scambio messaggi</binding> PARTE CONCRETA <service> … dove reperire il servizio</service>

Web Information System Il protocollo SOAP definisce la struttura (XML) dei messaggi che devono essere scambiati tra un mittente ed un destinatario, e gestisce l’invio dei messaggi. ENVELOPE HEADER Metadati relativi al messaggio BODY Contenuto del messaggio (es. nome del servizio da invocare + Eventuali parametri in input)

Web Information System Soluzione2: Utilizzo di Web-services … Web Service2 WSDL Web Service1 WSDL SOAP DBMS DBMS Oracle Web Service3 WSDL SOAP MySQL DBMS MicrosoftSQL