Basi di dati - Basi di dati e Web

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Basi di dati - Basi di dati e Web"

Transcript

1 - e Web Sistemi informativi su Web e Web Il Web è nato come interfaccia di accesso a informazioni distribuite su più siti, ma specificamente predisposte pagine HTML Il Web è divenuto una piattaforma generale per sistemi informativi, accessibili mediante un browser Web Information Systems (WIS) e Web -2 Sistemi informativi su Web Sistemi informativi su Web I WIS presentano problematiche comuni ai sistemi informativi tradizionali capacità di supportare attività di varia natura capacità di gestire i relativi dati volumi di dati significativi, spesso contenuti in parte in DBMS I WIS presentano caratteristiche specifiche gestione di informazioni di tipo multimediale (immagini, audio, testo) strutturazione dei dati meno rigorosa e meno definita a priori grande flessibilità nella consultazione, ma non nell aggiornamento modalità di scambio delle informazioni con la fonte presso cui sono mantenute (DBMS o file) diverse da quelle tradizionali e Web -3 e Web -4 Tipologie di applicazioni WIS Pubblicazione e consultazione su Web comunicazione unilaterale Transazioni su Web comunicazione bidirezionale Nuove applicazioni Pubblicazione e consultazione su Web Informazioni a disposizione degli utenti sotto forma di pagine HTML siti catalogo Al crescere delle dimensioni aggiornamento delle pagine difficile (in una pagina HTML sono presenti sia dati, sia informazioni su navigazione e presentazione) sono presenti ridondanze di informazione e Web -5 e Web -6 1

2 - e Web Pubblicazione e consultazione su Web Transazioni su Web La gestione di siti Web catalogo richiede un approccio sistematico l uso di basi di dati può risultare conveniente le pagine possono essere costruite in modo automatico si eliminano le ridondanze spesso la base di dati esiste già Esecuzione di applicazioni di qualsiasi tipo, con pieno accesso alla base di dati il browser diventa un interfaccia standard per sistemi informativi Si manifestano esigenze tipiche delle basi di dati identificazione e sicurezza affidabilità e gestione delle transazioni e Web -7 e Web -8 Nuove applicazioni Commercio elettronico vendita di prodotti, prevalentemente a privati vendita per corrispondenza estensione con funzionalità aggiuntive: commenti, discussioni (esempio: recensioni di libri da parte dei clienti) Gruppi di discussione Supporto al lavoro cooperativo (workflow, business to business) Data warehousing su Web (data farming) e Web -9 Complessità dei dati alta bassa Classificazione dei siti Web Siti catalogo Siti descrittivi bassa WIS Siti fornitori di servizi alta Complessità delle applicazioni e Web 10 - Classificazione dei siti Web Siti descrittivi contengono poche pagine (10-100), prevalentemente dedicate al marketing semplici da gestire con editor HTML Siti fornitori di servizi sono dedicati ad un servizio specifico (esempi: motore di ricerca, ) poche pagine, DB anche molto grande complessità nelle applicazioni che garantiscono il servizio e Web 11 - Classificazione dei siti Web Siti catalogo rendono disponibile molta informazione hanno una struttura ipertestuale complessa problemi di manutenzione dei dati e dell ipertesto WIS permetto l accesso a molta informazione forniscono servizi interattivi di tipo complesso (esempio: commercio elettronico) complessità significativa in entrambe le dimensioni e Web 12-2

3 - e Web e Web Le basi di dati sono ben strutturate e organizzate possono essere interrogate in modo flessibile sono progettate con metodi consolidati I siti Web non sempre hanno una struttura ben definita forniscono un accesso semplificato grazie agli ipertesti, ma non possono essere interrogati sono difficili da progettare e mantenere è possibile utilizzare le conoscenze acquisite? e Web -13 Problemi dei siti Web Problemi di progettazione informazione organizzata male e difficile da trovare non è chiaro quale informazione è disponibile struttura d accesso casuale e riferimenti a pagine non esistenti stile della presentazione eterogeneo e Web -14 Problemi dei siti Web Problemi di manutenzione difficoltà di aggiornamento del contenuto difficoltà di variazione della struttura iniziale difficoltà di variazione dei dettagli di presentazione Progettazione di siti Web Siti Web centrati sui dati (data-intensive) obiettivo primario è la pubblicazione di quantità significative di informazioni è importante la struttura dell ipertesto Modello per ipertesti, che descrive la struttura delle pagine e la modalità secondo cui sono correlate e Web -15 e Web -16 Aspetti di progettazione Contenuto informativo (dati) schema e istanze, come nelle basi di dati Struttura ipertestuale organizzazione del contenuto informativo in pagine modalità di correlazione delle pagine struttura ipertestuale descritta da schema dell ipertesto, che fa riferimento alla base di dati Presentazione aspetti grafici e disposizione del contenuto e dei link all interno delle pagine e Web -17 Livelli di indipendenza Dal contenuto informativo stessi dati, diversa struttura ipertestuale del sito Dalla struttura ipertestuale stessa struttura dell ipertesto (e stesso contenuto informativo), aspetto grafico delle pagine diverso e Web -18 3

4 - e Web Progettazione di siti Web data-intensive Progettazione concettuale della base dati Progettazione logica della base di dati Analisi dei requisiti Progettazione concettuale dell ipertesto Progettazione logica dell ipertesto Progettazione della presentazione Fasi di progettazione di un sito Web Analisi dei requisiti: come per i sistemi informativi tradizionali, con attenzione particolare alle caratteristiche del Web Progettazione concettuale e logica della base di dati: definisce l organizzazione del dominio in modo indipendente dalla realizzazione lo schema concettuale (ER) è il punto di partenza per la progettazione dell ipertesto Generazione del sito e Web -19 e Web -20 Fasi di progettazione di un sito Web Fasi di progettazione di un sito Web Progettazione concettuale dell ipertesto: a partire da requisiti e schema concettuale della base di dati, definisce le caratteristiche concettuali dell ipertesto (nodi e percorsi di navigazione) produce lo schema concettuale dell ipertesto Progettazione logica dell ipertesto: definisce l organizzazione dell ipertesto in termini di pagine e link produce lo schema logico dell ipertesto Progettazione della presentazione: definisce il layout di pagina e lo stile di presentazione per ciascuno degli schemi di pagina definiti nella progettazione logica Generazione del sito: individua la corrispondenza tra dati nella base di dati e struttura logica dell ipertesto le modalità e gli strumenti da utilizzare per la costruzione del sito e Web -21 e Web -22 Attività principali per la progettazione concettuale di un ipertesto Selezione delle entità che corrispondono a nodi dell ipertesto ogni entità descrive un oggetto del mondo reale e può essere caratterizzata da attributi Selezione dei percorsi di navigazione tra entità i percorsi possono essere orientati, perché la navigazione è caratterizzata da punto di partenza e di arrivo Attività principali per la progettazione concettuale di un ipertesto Definizione della struttura di accesso all ipertesto aggregazione delle entità in una gerarchia di concetti astratti da presentare all utente per la navigazione e Web -23 e Web -24 4

5 - e Web Modello concettuale di un ipertesto Macro entità Costrutti principali macro entità relazioni orientate nodi unione nodi di aggregazione link di aggregazione A A1 min:max An E` un nodo che corrisponde ad una classe di oggetti del dominio applicativo Dispone di attributi semplici complessi Ad ogni attributo è associata una cardinalità e Web -25 e Web -26 Nodo unione Relazione orientata U min:max min:max min:max Corrisponde all unione di più nodi, eventualmente eterogenei Utilizzato per modellare tipi corrispondenti all unione di più macro entità diverse Descrive come navigare in un ipertesto da un nodo sorgente ad un nodo destinazione Cardinalità: descrive il numero di istanze del nodo destinazione associate alla sorgente Caso particolare: relazione simmetrica, in cui la navigazione è possibile in entrambe le direzioni e Web -27 e Web -28 Nodo di aggregazione Link di aggregazione Permette di modellare la struttura di accesso dell ipertesto Descrive un aggregazione o classificazione di macro entità può corrispondere ad una gerarchia di generalizzazione oppure ad una organizzazione dell informazione nell ipertesto Permette di modellare la struttura di accesso dell ipertesto Collega un nodo di aggregazione con un nodo ipertestuale o un altro nodo di aggregazione e Web -29 e Web -30 5

6 - e Web Progettazione concettuale di un ipertesto Lo schema concettuale dell ipertesto è derivato dallo schema ER Passi di progettazione progettazione delle macro entità progettazione dei nodi unione progettazione delle relazioni dirette progettazione delle aggregazioni Progettazione delle macro entità Una macro entità può essere derivata da un entità ER, se rappresenta oggetti rilevanti ed indipendenti nell ipertesto una vista su un gruppo di entità e relazioni ER (può originare attributi multivalore) e Web -31 e Web -32 Progettazione delle macro entità Matricola Studente Matricola Esame Data Studente Voto Corso Codice 1:N Esame Voto Data Codice Progettazione dei nodi unione I nodi unione modellano tipi che corrispondono all unione di macro entità diverse sono derivati da gerarchie di generalizzazione modellano navigazioni che riguardano macro entità diverse e Web -33 e Web -34 Progettazione dei nodi unione Personale Tecnico Docente Progettazione delle relazioni orientate Normalmente derivate da relazioni ER Descrivono navigazioni tra macro entità tra macro entità e nodi unione Tecnico U Docente e Web -35 e Web -36 6

7 - e Web Progettazione delle relazioni orientate Professore Professore Rettore (0,1) (1,1) Università (1,1) (1,N) Dipendente Rettore 1:1 1:1 1:N Dipendente Università e Web -37 Progettazione delle aggregazioni Le aggregazioni: corrispondono a gerarchie di generalizzazione possono essere introdotte per organizzare meglio l informazione nell ipertesto Aggregazione parziale: predicato che seleziona solo un sottoinsieme delle istanze del nodo destinazione mediante un etichetta e Web -38 Progettazione delle aggregazioni Progettazione delle aggregazioni Personale Tecnico Docente Università Didattica Dipartimenti Personale Studenti Corsi Professori Tecnico Docente e Web -39 e Web -40 Progettazione logica dell ipertesto Obiettivo: progettazione della struttura dell ipertesto che sarà presentata dal browser Questa fase descrive come le pagine sono organizzate nel sito web definizione delle informazioni rilevanti in una pagina (testo, immagine,...) definizione dell organizzazione delle informazioni (pagina piatta, lista, lista nidificata) si ignorano gli aspetti di realizzazione fisica delle pagina e Web -41 Progettazione logica dell ipertesto Gli ipertesti sono grafi di pagine occorre esplicitare la struttura logica a partire dal modello concettuale dell ipertesto Il modello logico è basato sulla definizione di schemi di pagina ogni schema di pagina è un tipo, che descrive la struttura di pagine omogenee del sito un istanza di uno schema di pagina è una pagina web e Web -42 7

8 - e Web Schema di pagina Corrisponde allo schema di una relazione nel modello relazionale descrizione delle caratteristiche comuni di un insieme di pagine E` caratterizzata da nome identificatore (la URL) insieme di attributi Schema di pagina Schema di pagina Schema di pagina singolare Lo schema di pagina può descrivere la struttura di un insieme di pagine una sola pagina (non vi sono altre pagine con la stessa struttura): pagina singolare e Web -43 e Web -44 Attributo Attributo Gli attributi possono essere semplici (testo, immagine, altri tipi multimediali) complessi: attributi multivalore, che rappresentano liste ordinate di oggetti I link sono attributi semplici, rappresentati da coppie (ancora, riferimento) l ancora è un testo o immagine il riferimento è la URL della pagina destinazione; può essere specificato un offset A A Ancora Riferimento Lista A1 An Attributo testo Attributo immagine Lista Attributo link e Web -45 e Web -46 Tipo unione eterogenea Form Form U A1 Submit Corrisponde in modo naturale al nodo unione del modello concettuale e Web -47 I formsono utilizzati per eseguire programmi sul server e generano automaticamente nuove pagine web Sono modellati come una lista virtuale di righe, i cui attributi sono i campi del form un link alla pagina con il risultato e Web -48 8

9 - e Web Progettazione logica dell ipertesto Trasforma lo schema concettuale dell ipertesto nel corrispondente schema logico macro entità e aggregazioni corrispondono a schemi di pagina relazioni orientate corrispondono a link Passi della progettazione trasformazione delle macro entità trasformazione delle relazioni orientate trasformazione delle aggregazioni ristrutturazione dello schema e Web -49 Trasformazione delle macro entità Alternative 1.Ogni istanza della macro entità corrisponde ad una pagina si definisce uno schema di pagina con gli stessi attributi della macro entità gli attributi multivalore corrispondono a liste 2.Tutte le istanze della macro entità corrispondono ad un unica pagina si definisce uno schema di pagina singolare, contenente una lista di elementi con gli stessi attributi della macro entità e Web -50 Trasformazione delle macro entità Trasformazione delle macro entità PagPersona PagListaPersone Persona Foto Foto Persona Telefono ListaPersone Telefono e Web -51 e Web -52 Trasformazione delle relazioni orientate Le relazioni orientate corrispondono a link tra schemi di pagina le relazioni simmetriche sono suddivise in due relazioni asimmetriche si aggiunge un nuovo attributo allo schema di pagina sorgente se la cardinalità max è 1, l attributo è un link se la cardinalità max è N, l attributo è una lista di link 1:1 Persona Foto Indirizzo Trasformazione delle relazioni orientate Abitazione Alloggio Città Foto PagPersona Foto Indirizzo LinkAlloggio PagAlloggio Indirizzo Città Foto e Web -53 e Web -54 9

10 - e Web Trasformazione delle aggregazioni Un nodo di aggregazione è trasformato in uno schema di pagina singolare Un link corrisponde ad un attributo link nella pagina di partenza se il nodo di arrivo è uno schema di pagina singolare, si definisce un unico link con valore costante per il riferimento se il nodo di arrivo è uno schema di pagina o un nodo unione, si definisce una lista di link verso istanze dello schema di pagina; è possibile specificare predicati di selezione e Web -55 Corsi Trasformazione delle aggregazione PagUniv Università Dipartimenti ListaDip LinkDip Corsi LinkCorsi PagListaCorsi PagDip e Web -56 Ristrutturazione dello schema Il risultato della progettazione logica è uno schema scheletro, in cui l informazione può non essere organizzata in modo ottimale La ristrutturazione permette di riorganizzare schemi e percorsi, senza modificare lo schema concettuale di partenza divisione in più schemi di pagina degli schemi troppo densi introduzione di liste a più livelli, per ridurre la lunghezza di liste troppo lunghe introduzione di form, per facilitare la ricerca in liste lunghe e Web -57 Esempio Si vuole progettare un sito Web che permetta di consultare le informazioni seguenti (memorizzate all interno della base di dati aziendale). L azienda dispone di numerose sedi, per cui sono noti l indirizzo e la città in cui si trovano. Ogni sede è organizzata in dipartimenti. Ogni dipartimento è caratterizzato dal nome e dal numero di telefono. Un dipartimento può far parte di una sola sede. e Web -58 Esempio Ad ogni dipartimento afferiscono, a partire da una certa data, i dipendenti dell azienda. Per ogni dipartimento, inoltre, un dipendente ha la mansione di direttore. Ogni dipendente è caratterizzato da matricola interna, cognome, nome, età, stipendio. I dipendenti partecipano a progetti, che sono caratterizzati da nome, budget e data di consegna. Ogni dipendente può partecipare a più progetti; per ogni progetto, sono note la data di inizio ed, eventualmente, di fine dell assegnamento. Esempio Il sito Web avrà: Una home-page, con link verso le pagine che descrivono le sedi e verso altre due pagine che contengono link verso (1) tutti i progetti e (2) tutti i dipendenti. Una pagina per ogni sede, con elenco dei dipartimenti, ognuno con un link verso il rispettivo direttore e un link verso una pagina con l elenco dei dipendenti. e Web -59 e Web

11 - e Web Esempio Progettazione concettuale della base di dati Una pagina per ogni progetto, con anche una lista di link ai dipendenti partecipanti. Una pagina per ogni dipendente, con le informazioni personali e link verso la sede e i progetti a cui partecipa. Matricola Direttore (0,1) (1,1) (0,1) (1,N) Dipendente Dipartimento Appartenenza Stipendio (0,N) Data (1,1) Inizio Data Fine (0,1) Partecipazione In Data (1,N) (1,N) Inizio Progetto Sede Budget e Web -61 e Web -62 Età Data Consegna Città Telefono Indirizzo Progettazione logica della base di dati Sede (Città, Indirizzo) Dipartimento (, Città, Telefono, MatrDirettore) Dipendente (Matricola,,, DataNascita, Stipendio, Dip*, Città*, DataInizio*) Progetto (, Budget, DataConsegna) Partecipazione (Prog, Matricola, DataInizio, DataFine*) Progettazione concettuale dell ipertesto Il sito Web avrà:... Una pagina per ogni sede, con elenco dei dipartimenti, ognuno con un link verso... Una pagina per ogni progetto, con anche una lista di link ai dipendenti partecipanti. Una pagina per ogni dipendente, con le informazioni personali e link verso la sede e i progetti a cui partecipa. e Web -63 e Web -64 Progettazione delle macro entità Progetto Budget Data Consegna Dipendente Stipendio Sede 1:N Dip Città Indirizzo Telefono e Web -65 Progettazione delle relazioni orientate Il sito Web avrà:... Una pagina per ogni sede, con elenco dei dipartimenti, ognuno con un link verso il rispettivo direttore e un link verso una pagina con l elenco dei dipendenti. Una pagina per ogni progetto, con anche una lista di link ai dipendenti partecipanti. Una pagina per ogni dipendente, con le informazioni personali e link verso la sede e i progetti a cui partecipa. e Web

12 - e Web Progettazione delle relazioni orientate Progettazione delle aggregazioni Partecipazione Progetto 1:N Sede Budget Appartenenza Data 1:N Consegna 0:1 1:N Dip Direttore Dipendente 0:N 0:1 1:1 Stipendio Città Indirizzo Telefono Il sito Web avrà: Una home-page, con link verso le pagine che descrivono le sedi e verso altre due pagine che contengono link verso (1) tutti i progetti e (2) tutti i dipendenti e Web -67 e Web -68 Attività Progettazione delle aggregazioni Azienda Personale Stipendio Partecipazione Progetto 1:N Città Sede Indirizzo Budget Appartenenza Data 1:N Consegna 0:1 1:N Dip Telefono Direttore Dipendente 0:N 0:1 1:1 e Web -69 PagProgetto Budget DataCons Definizione degli schemi di pagina PagDipend Stipendio PagSede Città Indirizzo ListaDipart Telefono e Web -70 PagProgetto Budget DataCons ListaDipend LinkDip Definizione delle relazioni PagDipend Stipendio Dipartim Sede Linksede ListaProgetti LinkPrg DataIniz PagDipInDip ListaDipend LinkDip PagSede Città Indirizzo ListaDipart Telefono Direttore LinkDir Dipendenti LinkDipe Definizione delle aggregazioni PagAzienda ListaSedi Città LinkSede Progetti LinkProg Dipendenti LinkDipe PagListaProg ListaProgetti LinkProg PagListaDipe ListaDipend LinkDipe a PagSede a PagProgetto a PagDipend e Web -71 e Web

13 - e Web Progettazione della presentazione Un aspetto grafico gradevole è spesso la preoccupazione principale di chi vuole creare un sito Web Caratteristiche degli strumenti per la progettazione: possibilità di prototipazione rapida per definire una struttura base per tutte le pagine del sito possibilità di raffinare i dettagli di presentazione di singole pagine possibilità di definire le caratteristiche delle pagine per mezzo di pagine HTML esempio (template) e Web -73 Elementi fondamentali Stile dell attributo: specifica come un attributo (della base di dati) deve essere visualizzato nella pagina. Stile della pagina: descrive le scelte di presentazione per uno schema di pagina specifico. Stile del sito: descrive le scelte di presentazione comuni a tutto il sito. e Web -74 Stile dell attributo Esempio Composto di due parti, tra le quali viene inserito il valore dell attributo durante la generazione formato del prefisso formato del suffisso Permette di definire anche modalità complesse di presentazione Si consideri l attributo cognome di uno schema di pagina : [<FONT COLOR = red ><B>][</B></FONT>] prefisso Risultato durante la generazione: suffisso <FONT COLOR = red ><B>Rossi</B></FONT> e Web -75 e Web -76 Stile della pagina Esempio Contiene la definizione dello stile di attributo per tutti gli attributi della pagina una sezione di header una sezione di footer Header e footer specificano le caratteristiche grafiche della pagina (esempio: colore del background, banners, ) e Web -77 HEADER: [<html> <title><titolo pagina></title> <body background=./figure/sfondo1.gif > <hr> <table>] : [<tr><td><em>] [</em></td></tr>] : [<tr><td><em>] [</em></td></tr>] ListaTel:[<ul>] [/ul] FOOTER: [</table> <hr> Per informazioni rivolgersi al <a href= Webmaster</a> </body> </html>] e Web

14 - e Web Stile del sito Utilizzato nella fase iniziale di progettazione Definisce gli aspetti comuni dello stile di tutte le pagine colore del background font e suo colore formato standard per ogni tipo di attributo (testo, immagine, link, lista, ) e Web -79 Esempio HEADER: [<html> <title><titolo pagina></title> <body background=./figure/sfondo1.gif > <hr>] TEXT: [<font color= blue >] [</font>] IMAGE: [] [] LINK: [<I>] [</I>] LIST: [<table>] [</table>] LIST-TUPLE: [<tr>] [</tr>] LIST-TUPLE-ELEM: [<td>] [</td>] FOOTER: [<hr> Per informazioni rivolgersi al <a href= Webmaster</a> </body> </html>] e Web - 80 Uso di pagine esempio Sono prototipi di pagine HTML non contengono dati reali contengono parametri che indicano la posizione dei dati sono modificabili con qualsiasi editor HTML e visualizzabili da qualsiasi browser Esempi: pagina template per lo schema di pagina X, per l attributo contiene $ pagina template per il sito, contiene parametri corrispondenti ai tipi ammessi ($Text,$Link) e Web -81 Passi della progettazione della presentazione 1. Definizione di uno o più stili di sito 2. Generazione (automatica) dello stile di pagina per tutti gli schemi di pagina 3. (Eventuale) personalizzazione dello stile per gli schemi di pagina header e footer personalizzati stile diverso per alcuni attributi e Web -82 Generazione del sito Web Informazioni per la generazione del sito Opera a partire da: schema logico dell ipertesto schema logico della base di dati stili di presentazione delle pagine Occorre definire la corrispondenza tra attributi dello schema ipertestuale e attributi dello schema della base di dati URL di partenza del sito ( radice ) Stile di presentazione del sito Base di dati dove sono memorizzati i dati da pubblicare e modalità di connessione (normalmente JDBC/ODBC) e Web -83 e Web

15 - e Web Informazioni per la generazione delle pagine Definizione della corrispondenza tra DB e pagine Web elenco delle tabelle (o viste) necessarie corrispondenza tra attributi di pagina e attributi dello schema della base di dati Meccanismo di generazione di una URL locale per ogni pagina generata valore costante (esempio: result.html) valore parametrico, basato sul valore di un attributo della base di dati (esempio: URL(<Matricola>)) e Web -85 Esempio di direttiva per generatore P è il nome dello schema di pagina R 1, R 2,... sono le tabelle o viste utilizzate (in join tra loro) S elenca gli attributi di pagina, il loro tipo e la corrispondenza con attributi della base di dati DEFINE-PAGE P AS S USING R 1, R 2,... e Web -86 Esempio di direttiva per generatore Tabelle: Persona (CodFiscale,,, Comune) Telefono (Numero, CodFiscale) Schema di pagina: PagPersonaTO ListaTel Telefono Esempio di direttiva per generatore DEFINE-PAGE PagPersonaTO AS URL(<CodFiscale>); : TEXT <>; : TEXT <>; ListaTel:LIST-OF(<Numero>); USING Telefono, PersonaTO: (SELECT * FROM Persona WHERE Comune= Torino ) e Web -87 e Web -88 Esempio di direttiva per generatore Tabelle: Persona (CodFiscale,,, Comune) Telefono (Numero, CodFiscale) Schema di pagina: PagListaTO ListaAbitantiTO ToPers PagPersonaTO ListaTel Telefono Esempio di direttiva per generatore DEFINE-PAGE PagListaTO AS URL( AbitTO.html ); ListaAbitantiTO: LIST-OF(ToPers: LINK-TO PagPersonaTO ( <>; URL(<CodFiscale>))); USING PersonaTO: (SELECT * FROM Persona WHERE Comune= Torino ) e Web -89 e Web

16 - e Web Interconnessione tra basi di dati e siti web L approccio standard è basato sul protocollo CGI presenta limiti per le funzionalità che può offrire e per le prestazioni Soluzioni alternative, che sostituiscono CGI con funzionalità supplementari offerte dal server dal client Accesso a basi di dati mediante CGI Il protocollo CGI (Common Gateway Interface) permette di eseguire programmi tramite un server Web I programmi possono essere scritti in qualsiasi linguaggio di alto livello (C, C++, ) linguaggi di scripting (Perl, Tcl, ) o linguaggi di comandi (shell) del sistema operativo E` possibile specificare parametri di esecuzione per il programma e Web -91 e Web -92 Accesso a basi di dati mediante CGI Accesso alla base di dati Funzionamento 1. Il server riceve una richiesta, riconosce che la risorsa indicata dalla URL è un programma con cui deve comunicare tramite CGI e lancia il programma 2. Il programma CGI è eseguito, accede alla base di dati (in modo tradizionale) e restituisce i dati al server 3. Il server inoltra i dati al browser Il programma CGI deve 1. Aprire la connessione con la base di dati. 2. Eseguire l interrogazione (o modifica). 3. Memorizzare il risultato in variabili locali (una riga) o leggerlo mediante cursore (N righe). 4. Generare la pagina Web contenente il risultato e scriverla sullo standard output. e Web -93 e Web -94 Accesso a basi dati mediante CGI La pagina PagListaTO è sostituita con un form, che permette la ricerca di persone di Torino sulla base del codice fiscale La richiesta di conoscere i dati relativi al codice fiscale BCC LNA 35C41 L219K produce la URL LNA+35C41+L219K Accesso a basi dati mediante CGI main (char CodFisc[]) { char [20], [20], Telefono[15]; /* cursore per ottenere i numeri di telefono */ $ declare cursor X for select Numero from Telefono where Codfisc = :CodFisc; $ open connection to ComuneDB /* info sulla persona in tabella Persona*/ $ select, into :, : from Persona where CodFisc = :CodFisc; e Web - 95 e Web

17 - e Web Accesso a basi dati mediante CGI if (sqlcode==0) { printf( <html>\n<body>\n ); printf( <H3> Codice Fiscale %s, CodFisc, </H3>\n ); printf( <table>\n ); printf( <tr><td><em></em>: </td><td>%s,, </td></tr>\n ); printf( <tr><td><em></em>: </td><td>%s,, </td></tr>\n ); } else errore(); Accesso a basi dati mediante CGI /*elenco numeri di telefono in tabella Telefono*/ $ open X; if (sqlcode == 0) { printf( <tr><td>numeri di telefono: </td><td></td></tr>\n ; while (sqlcode == 0) { $ fetch X into :Telefono; if (sqlcode == 0) printf( <tr><td></td><td>%s, Telefono, </td></tr>\n ); else if (sqlcode < 0) errore(); } /* end while */ } /* end if*/ e Web - 97 e Web - 98 Accesso a basi dati mediante CGI /* chiusura cursore e connessione */ $ close X $ close connection printf( </table>\n</body>\n</html> )); } Strumenti di sviluppo Facilitano la costruzione di pagine Web a partire dal contenuto della base di dati generazione dinamica di pagine HTML La generazione avviene a partire da una o più interrogazioni SQL organizzazione di pagina predefinita (template HTML), in cui sono definiti parametri, che sono valorizzati con il risultato delle istruzioni SQL Non occorre più scrivere il programma CGI e Web - 99 e Web -100 Definizione di template HTML Il programma gestore dei template è sostituito al programma cgi Esempio di invocazione: CodFisc=BCC+LNA+35C41+L219K Rispetto all esempio precedente, si supponga che l elenco dei numeri di telefono sia sostituito con un link ad una nuova pagina con i numeri di telefono e Web -101 Definizione di template HTML <html> <! tmplsql connect database ComuneDB> <! tmplsql query select, into $2, $3 from Persona where CodFisc = $CodFisc > <body> <H3> Codice Fiscale $CodFisc </H3> <table> <tr><td><em></em> :</td><td> $3</td></tr> <tr><td><em></em> :</td><td> $2</td></tr> <tr><td><a href=/cgi-bin/tmplsql/perstel?$codfisc> Numeri di telefono</a></td> </table> </body> </html> e Web

18 - e Web Limiti del protocollo CGI Limiti del protocollo CGI Il protocollo HTTP è senza memoria è difficile gestire applicazioni che richiedono operazioni multiple sulla base di dati Il programma CGI è un processo, per cui devono essere allocate risorse di calcolo se occorrono risorse notevoli, l allocazione può essere lenta richieste diverse allo stesso programma causano allocazioni diverse Ogni esecuzione del programma CGI, richiede una nuova connessione con il DBMS sovraccarico del DBMS I file HTML sono generati dinamicamente è difficile realizzare un servizio di ricerca di informazioni sul sito, perché i dati devono essere estratti dalla base di dati e Web -103 e Web -104 Alternative a CGI Soluzioni basate sul server il client è un browser standard il server gestisce l interazione con la base di dati Soluzioni basate sul client estendono il client, per incorporare alcune delle funzionalità del server e Web -105 Soluzioni basate sul server Materializzazione delle pagine HTML (approccio push) le pagine HTML del sito sono generate periodicamente a partire dalla base di dati adeguata se i dati hanno una dinamicità limitata Vantaggi eliminazione dei problemi di prestazioni portabilità del sito in ambienti diversi Svantaggi obsolescenza dei dati del sito e Web -106 Soluzioni basate sul server Estensione delle funzionalità del server HTTP server API (application programming interface), che permettono al server di interrogare direttamente la base di dati il server HTTP diviene il client del DBMS Vantaggi riduzione delle operazioni di inizializzazione miglioramento delle prestazioni Svantaggi mancanza di standardizzazione scarsa portabilità e Web -107 Soluzioni basate sul server CGI leggere (thin CGI) programmi CGI molto semplici, che si limitano a passare la richiesta ad un server CGI, processo sempre attivo che si interfaccia con il DBMS Vantaggi i processi thin CGI sono piccoli, il server è sempre attivo miglioramento delle prestazioni e Web

19 - e Web Soluzioni basate sul client Eliminazione della mediazione del server nell interazione tra client e DBMS estensioni del browser: moduli software eseguiti dal browser come librerie dinamiche (linguaggi Java, Active-X, ) helper esterni: programmi esterni attivati dal browser, che cede loro il controllo browser proprietari: browser specializzati nell accesso alle basi di dati Soluzioni adatte a contesti noti e predefiniti, quali le intranet e Web

Sistemi Informativi e WWW

Sistemi Informativi e WWW Premesse Sistemi Informativi e WWW WWW: introduce un nuovo paradigma di diffusione (per i fornitori) e acquisizione (per gli utilizzatori) delle informazioni, con facilità d uso, flessibilità ed economicità

Dettagli

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea Università degli studi Roma Tre Dipartimento di informatica ed automazione Tesi di laurea Reingegnerizzazione ed estensione di uno strumento per la generazione di siti Web Relatore Prof. P.Atzeni Università

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

Progettazione concettuale

Progettazione concettuale Progettazione concettuale Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi

Dettagli

Protocolli e architetture per WIS

Protocolli e architetture per WIS Protocolli e architetture per WIS Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di informazioni e servizi Le architetture moderne dei WIS

Dettagli

Progettazione logica relazionale (1/2)

Progettazione logica relazionale (1/2) Progettazione di basi di dati (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore Eliminazione degli attributi

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO Modulo 1: IL LINGUAGGIO HTML Formato degli oggetti utilizzati nel Web Elementi del linguaggio HTML: tag, e attributi

Dettagli

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

Cultura Tecnologica di Progetto

Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - DATABASE - A.A. 2003-2004 2004 DataBase DB e DataBase Management System DBMS - I database sono archivi che costituiscono

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

BASI DI DATI - : I modelli di database

BASI DI DATI - : I modelli di database BASI DI DATI - : I modelli di database DAL 1960 ci si e' orientati verso 3 direzioni: 1 MODELLO GERARCHICO Se i dati si presentano naturalmente in una struttura ad albero (ES. File System) Limiti: rigidità

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke Capitoli 8 e 9 Applicazioni tradizionali Applicazioni Internet SQL embedded SQL nel codice applicativo I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio ospite (ad esempio

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Lezione 8. Motori di Ricerca

Lezione 8. Motori di Ricerca Lezione 8 Motori di Ricerca Basi di dati Un campo prevalente dell applicazione informatica è quello costituito dall archiviazione e dalla gestione dei dati (basi di dati). Sistema Informativo. Un sistema

Dettagli

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Roccatello Ing. Eduard L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Agenda Presentazione docente Definizione calendario Questionario pre corso

Dettagli

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino Progettazione logica Progettazione logica Richiede di scegliere il modello dei dati!modello relazionale Obiettivo: definizione di uno schema logico relazionale corrispondente allo schema ER di partenza

Dettagli

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle

Dettagli

Data Base. Prof. Filippo TROTTA

Data Base. Prof. Filippo TROTTA Data Base Definizione di DataBase Un Database può essere definito come un insieme di informazioni strettamente correlate, memorizzate su un supporto di memoria di massa, costituenti un tutt uno, che possono

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

PIANO DI LAVORO. a.s. 2014 / 2015

PIANO DI LAVORO. a.s. 2014 / 2015 PIANO DI LAVORO a.s. 2014 / 2015 Materia: INFORMATICA Classe: quinta A Data di presentazione: 7/10/2014 DOCENTI FIRMA Cerri Marta Bergamasco Alessandra Posta elettronica: itisleon@tin.it - Url: www.itdavinci.it

Dettagli

Una metodologia di progettazione di applicazioni web centrate sui dati

Una metodologia di progettazione di applicazioni web centrate sui dati Una metodologia di progettazione di applicazioni web centrate sui dati A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si

Dettagli

PIANO DI LAVORO EFFETTIVAMENTE SVOLTO IN RELAZIONE ALLA PROGRAMMAZIONE DISCIPLINARE

PIANO DI LAVORO EFFETTIVAMENTE SVOLTO IN RELAZIONE ALLA PROGRAMMAZIONE DISCIPLINARE Istituto di Istruzione Secondaria Superiore ETTORE MAJORANA 24068 SERIATE (BG) Via Partigiani 1 -Tel. 035-297612 - Fax 035-301672 e-mail: majorana@ettoremajorana.gov.it - sito internet: www.ettoremajorana.gov.it

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com Web Intelligence Argomenti Cap.4 Utilizzo dei Prompt gerarchici Cap.5 Formattazioni Cap.6 i Template Cap.7 le Tabelle e le Cross Table Cap.8 Modalità di Visualizzazione (Html,Pdf,altro) Cap.9 Creare Formule

Dettagli

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf Il sistema IBM DB2 Sistemi Informativi T Versione elettronica: L01.1.IntroduzioneDB2.pdf IBM DB2 Il DBMS relazionale IBM DB2 è il prodotto di punta dell IBM per la gestione di basi di dati relazionali

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Progettazione di un DB....in breve

Progettazione di un DB....in breve Progettazione di un DB...in breve Cosa significa progettare un DB Definirne struttura,caratteristiche e contenuto. Per farlo è opportuno seguire delle metodologie che permettono di ottenere prodotti di

Dettagli

I.T.C. Mario Pagano Napoli

I.T.C. Mario Pagano Napoli I.T.C. Mario Pagano Napoli Programmazione classe 3C Anno 04/05 Insegnante:Prof.ssa Anna Salvatore SETTORE: Economico INDIRIZZO: Amministrazione, Finanza e Marketing DISCIPLINA DI RIFERIMENTO: INFORMATICA

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

Pianificazione del data warehouse

Pianificazione del data warehouse Pianificazione del data warehouse Dalla pianificazione emergono due principali aree d interesse: area commerciale focalizzata sulle agenzie di vendita e area marketing concentrata sulle vendite dei prodotti.

Dettagli

PERCORSO FORMATIVO DI INFORMATICA

PERCORSO FORMATIVO DI INFORMATICA Anno Scolastico 2015/16 PERCORSO FORMATIVO DI INFORMATICA CLASSE VB INFORMATICA Docenti: D Antico Maria Samantha Civardi Mauro Ore settimanali: 6 Ore annuali (previste in data 07/05/2016) : 196 FINALITA'

Dettagli

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche

Dettagli

Fasi del progetto ( 1 )

Fasi del progetto ( 1 ) Progetto 2004-2005 2005 Esercitazione delle lezioni 2, 3 e 4. 1 Fasi del progetto ( 1 ) Analisi dettagliata delle specifiche fornite dal committente. Questa fase è fondamentale per capire a fondo quali

Dettagli

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia Prova scritta del corso di Basi di dati attive 17 Dicembre 1999 Si desidera automatizzare la gestione dei banchetti organizzati da un agenzia di pubbliche relazioni. Le specifiche del sistema informativo,

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

Sistema di Gestione di Basi di Dati DataBase Management System DBMS

Sistema di Gestione di Basi di Dati DataBase Management System DBMS Base di dati (accezione generica) collezione di dati, utilizzati per rappresentare le informazioni di interesse per una o più applicazioni di una organizzazione (accezione specifica) collezione di dati

Dettagli

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer Tecnologie per il Web Il web: architettura e tecnologie principali Una analisi delle principali tecnologie per il web Tecnologie di base http, ssl, browser, server, firewall e proxy Tecnologie lato client

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda)

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Il candidato realizzi inoltre il sito Internet del centro che deve permettere, tra

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Progetto Finale: Progettazione di un database e di una applicazione

Progetto Finale: Progettazione di un database e di una applicazione Progetto Finale: Progettazione di un database e di una applicazione Roberto Basili Corso di Basi Di Dati a.a. 2002-2003 Norme Generali Il progetto fa parte della valutazione gobale del corso e la data

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Facoltà di Farmacia - Corso di Informatica

Facoltà di Farmacia - Corso di Informatica Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito

Dettagli

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012 + Sviluppo Applicazioni Mobile Lezione 12 JDBC + Cosa vediamo nella lezione di oggi Oggi analizzeremo insieme una specifica tecnologia Java per l accesso e la manipolazione di basi di dati relazionali

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 PROGETTAZIONE DI UNA BASE DI DATI Raccolta e Analisi dei requisiti Progettazione concettuale Schema concettuale Progettazione logica

Dettagli

Esame Basi di Dati. 21 Gennaio 2013

Esame Basi di Dati. 21 Gennaio 2013 Esame Basi di Dati 21 Gennaio 2013 Matricola Prog. (Sì/No) Cognome Nome Istruzioni I voti verranno resi disponibili su AlmaEsami. Chi vorrà rifiutare il voto dovrà comunicarlo tassativamente 5 giorni dalla

Dettagli

LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE

LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE Quattro parti: Gestione dati Client-Server Logica + interfaccia Logica + interfaccia Business rules Sistema di comunicazione Logica applicativa DBMS:

Dettagli

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE I DATABASE o basi di dati possono essere definiti come una collezione di dati gestita dai DBMS. Tali basi di dati devono possedere determinati requisiti, definiti come specifiche, necessarie per il processo

Dettagli

LA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture

LA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture L approccio tradizionale: uso di un linguaggio PLSQL 1.1

Dettagli

Sistemi Informativi e Servizi in Rete

Sistemi Informativi e Servizi in Rete Sistemi Informativi e Servizi in Rete prof. V. De Antonellis Dipartimento di Ingegneria dell'informazione Università di Brescia valeria.deantonellis@ing.unibs.it Materiale del corso Sito web: www.ing.unibs.it/~deantone/

Dettagli

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2014/2015 Classe: 5^A inf Prof.ssa C. Lami Prof. S. Calugi Materia: INFORMATICA GENERALE, APPLICAZIONI TECNICO SCIENTIFICHE

Dettagli

Progetto di Basi di Dati e Multimidia Laboratorio Struttura dell applicazione web

Progetto di Basi di Dati e Multimidia Laboratorio Struttura dell applicazione web Progetto di Basi di Dati e Multimidia Labtorio Struttura dell applicazione web 1 Introduzione La progettazione è stata sviluppata basandosi sul modello MVC-2 Server Centric. I moduli creati si possono

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

Dettagli

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

Dettagli

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO ER PER LA PROGETTAZIONE

Dettagli

Basi di dati. Basi di dati = database. Basi di dati

Basi di dati. Basi di dati = database. Basi di dati Basi di dati Da leggere: Cap. 6 Sawyer, Williams (testo A) Basi di dati = database Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi -> oggi anche

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

APPENDICE. Procedure in SQL (1)

APPENDICE. Procedure in SQL (1) APPENDICE Procedure in SQL Transazioni in SQL Embedded SQL Remote Procedure Call Appendice 1 Procedure in SQL (1) Standard SQL2 permette di definire procedure, associate a singoli comandi SQL, memorizzate

Dettagli

PROGRAMMA DI INFORMATICA CLASSE quinta ANNO SCOLASTICO 2012/2013

PROGRAMMA DI INFORMATICA CLASSE quinta ANNO SCOLASTICO 2012/2013 PROGRAMMA DI INFORMATICA CLASSE quinta ANNO SCOLASTICO 2012/2013 Modulo A: Basi di dati e linguaggio SQL La produzione del software; Il controllo do qualità; La metodologia; Modellazione dei dati; Il modello

Dettagli

Corso Creare Siti WEB

Corso Creare Siti WEB Corso Creare Siti WEB INTERNET e IL WEB Funzionamento Servizi di base HTML CMS JOOMLA Installazione Aspetto Grafico Template Contenuto Articoli Immagini Menu Estensioni Sito di esempio: Associazione LaMiassociazione

Dettagli

EyesDGTV. Your digital terrestrial television. Soluzioni Informatiche

EyesDGTV. Your digital terrestrial television. Soluzioni Informatiche EyesDGTV Your digital terrestrial television Soluzioni Informatiche Cos è EyesDGTV è la soluzione che Betacom propone per la televisione digitale terrestre. Basata su tecnologie consolidate, quali J2EE

Dettagli

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015 BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2009/2010 Progettazione e realizzazione di un applicativo Web Annunci Immobiliari 1 Scopo del progetto Si vuole realizzare un applicazione

Dettagli

Prefazione Sistemi informativi e basi di dati Il modello relazionale Il modello ER

Prefazione Sistemi informativi e basi di dati Il modello relazionale Il modello ER Indice Prefazione XI 1 Sistemi informativi e basi di dati 1 1.1 La Gestione dell Informazione................... 1 1.1.1 Sistemi Informativi e Sistemi Informatici......... 1 1.2 Esempi di Sistemi Informativi...................

Dettagli

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

Basi di dati. Gabriella Trucco gabriella.trucco@unimi.it

Basi di dati. Gabriella Trucco gabriella.trucco@unimi.it Basi di dati Gabriella Trucco gabriella.trucco@unimi.it Esempio Quando si pensa ad un database, generalmente si immagina una tabella contenente grandi quantità di informazioni, sulla quale è possibile

Dettagli

Modello relazionale. ing. Alfredo Cozzi 1

Modello relazionale. ing. Alfredo Cozzi 1 Modello relazionale E fondato sul concetto matematico di relazione tra insiemi di oggetti Una relazione su n insiemi A1, A2,..,An è un sottoinsieme di tutte le n-uple a1,a2,,an che si possono costruire

Dettagli

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei Introduzione Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei. ESEMPI DI INSIEMI DI DATI DA ORGANIZZARE ED USARE IN MANIERA EFFICIENTE Introduzione Più utenti con

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 1. Introduzione a Internet e al WWW Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica

Dettagli

Nuove funzionalità Max 4i

Nuove funzionalità Max 4i Nuove funzionalità Max 4i Caratteristiche operative principali del nuovo prodotto: Nuovi metodi di navigazione nell applicativo tramite albero gerarchico e tramite pop up menu: nuove modalità di ricerca

Dettagli

Introduzione ai database I concetti fondamentali Database e DBMS Per comprendere appieno cos'è un Database e quali sono i vantaggi legati al suo impiego, soprattutto nel settore gestionale, è necessario

Dettagli

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati Che cos è un DBMS? Capitolo 1 Introduzione ai sistemi di basi di dati Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni

Dettagli

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB MODULO 5 DATA BASE MODULO 5 - DATA BASE 1 PROGRAMMA Introduzione: concetti generali di teoria Progettazione rapida introduzione alla progettazione di DB Utilizzo di Access pratica sulla creazione e l utilizzo

Dettagli

Impresa di raccolta e riciclaggio di materiali metallici e di rifiuti.

Impresa di raccolta e riciclaggio di materiali metallici e di rifiuti. Impresa di raccolta e riciclaggio di materiali metallici e di rifiuti. Indice Cognome Nome Matr.xxxxxx email Cognome Nome Mat. Yyyyyy email Argomento Pagina 1. Analisi dei requisiti 1 a. Requisiti espressi

Dettagli

PROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste

PROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste PROGRAMMAZIONE MODULARE Indirizzo: INFORMATICA SIRIO Disciplina: INFORMATICA Classe: QUINTA Ore previste: 16 di cui 66 ore di teoria e 99 ore di laboratorio. N. modulo Titolo Modulo Titolo unità didattiche

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

3.3 Software didattico (scelta, uso, sviluppo)

3.3 Software didattico (scelta, uso, sviluppo) 3.3 Software didattico (scelta, uso, sviluppo) a cura di Enrico Giliberti, Università di Bologna 3.3.1 Reperimento dell informazione sul SD Individuare, accedere e consultare le principali fonti di informazione

Dettagli

DBMS ed Applicazioni Motivazioni

DBMS ed Applicazioni Motivazioni DBMS ed Applicazioni Motivazioni Sin ora abbiamo visto SQL come linguaggio per interrogare DBMS da interfaccia interattiva Nella pratica, un efficace sfruttamento delle potenzialità dei DBMS deriva dalla

Dettagli

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri.

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri. Il Servizio World Wide Web () Corso di Informatica Generale (Roberto BASILI) Teramo, 20 Gennaio, 2000 Il World Wide Web Storia : obbiettivi : tecnologie Le Applicazioni Scenari Futuri La Storia (1990)

Dettagli

disponibili nel pacchetto software.

disponibili nel pacchetto software. Modulo syllabus 4 00 000 00 0 000 000 0 Modulo syllabus 4 DATABASE 00 000 00 0 000 000 0 Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database

Dettagli