Basi di dati - Basi di dati e Web

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= Mailto://webmaster@xxx.com> 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= Mailto://webmaster@xxx.com> 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

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

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

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

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

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

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

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

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni

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

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

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

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca

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

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

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

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

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

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

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.

Dettagli

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL ALFA PORTAL La struttura e le potenzialità della piattaforma Alfa Portal permette di creare, gestire e personalizzare un Portale di informazione in modo completamente automatizzato e user friendly. Tramite

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

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

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

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

Capitolo 13. Interrogare una base di dati

Capitolo 13. Interrogare una base di dati Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per

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

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

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

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

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

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

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

Basi di dati 9 febbraio 2010 Compito A

Basi di dati 9 febbraio 2010 Compito A Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

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

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

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

Ottimizzazione delle interrogazioni (parte I)

Ottimizzazione delle interrogazioni (parte I) Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di

Dettagli

Sistemi centralizzati e distribuiti

Sistemi centralizzati e distribuiti Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:

Dettagli

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

ITI M. FARADAY Programmazione modulare a.s. 2014-2015

ITI M. FARADAY Programmazione modulare a.s. 2014-2015 Indirizzo: INFORMATICA E TELECOMUNICAZIONI Disciplina: Informatica Docente:Maria Teresa Niro Classe: Quinta B Ore settimanali previste: 6 (3 ore Teoria - 3 ore Laboratorio) ITI M. FARADAY Programmazione

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza

Dettagli

Università Politecnica delle Marche. Progetto Didattico

Università Politecnica delle Marche. Progetto Didattico Università Politecnica delle Marche Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica e dell Automazione Sede di Ancona Anno Accademico 2011-2012 Corso di Tecnologie WEB Docente prof. Alessandro

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

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

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

I database. Cosa sono e a cosa servono i Database

I database. Cosa sono e a cosa servono i Database I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di

Dettagli

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Progettazione concettuale Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

CONTENT MANAGEMENT SYSTEM

CONTENT MANAGEMENT SYSTEM CONTENT MANAGEMENT SYSTEM P-2 PARLARE IN MULTICANALE Creare un portale complesso e ricco di informazioni continuamente aggiornate, disponibile su più canali (web, mobile, iphone, ipad) richiede competenze

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

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

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età PROGETTAZIONE LOGICA 7í0 Progettazione logica Obiettivo: ëtradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed eæciente Input: Output: æ schema concettuale

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO RELAZIONALE. Introduzione MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

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

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System) (DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni

Dettagli

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Dettagli

DATABASE. A cura di Massimiliano Buschi

DATABASE. A cura di Massimiliano Buschi DATABASE A cura di Massimiliano Buschi Introduzione Con Microsoft Access: Immissione dati e interrogazione Interfaccia per applicazioni e report Ma prima bisogna definire alcune conoscenze di base sui

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

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

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

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

La Metodologia adottata nel Corso

La Metodologia adottata nel Corso La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

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

Progettazione di una base di dati Ufficio della Motorizzazione

Progettazione di una base di dati Ufficio della Motorizzazione Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2008/2009 1 Scopo del progetto Progettazione di una base di dati Ufficio della Motorizzazione Si vuole realizzare un applicazione base

Dettagli

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni

Dettagli

SUAP. Per gli operatori SUAP/amministratori. Per il richiedente

SUAP. Per gli operatori SUAP/amministratori. Per il richiedente Procedura guidata per l inserimento della domanda Consultazione diretta, da parte dell utente, dello stato delle sue richieste Ricezione PEC, protocollazione automatica in entrata e avviamento del procedimento

Dettagli

Ipertesti e Internet. Ipertesto. Ipertesto. Prof.ssa E. Gentile. a.a. 2011-2012

Ipertesti e Internet. Ipertesto. Ipertesto. Prof.ssa E. Gentile. a.a. 2011-2012 Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Ipertesti e Internet Prof.ssa E. Gentile a.a. 2011-2012 Ipertesto Qualsiasi forma di testualità parole, immagini,

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,

Dettagli

Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori

Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori Telelavoro ed e-commerce, due mini-rivoluzioni, stentano a svilupparsi

Dettagli

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara LICEO SCIENTIFICO STATALE "FILIPPO LUSSANA" V i a A n g e l o Ma j, 1 2 4 1 2 1 B E R G A M O 035 237502 Fax: 035 236331 Sito e contatti: www.liceolussana.com Codice fiscale: 80026450165 PROGRAMMA SVOLTO

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

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

GOW GESTIONE ORDINI WEB

GOW GESTIONE ORDINI WEB OW GOW GESTIONE ORDINI WEB OWUn'azienda moderna necessita di strumenti informatici efficienti ed efficaci, in GESTIONE CLIENTI, ORDINI E STATISTICHE TRAMITE BROWSER WEB grado di fornire architetture informative

Dettagli

Elena Baralis 2013 Politecnico di Torino 1

Elena Baralis 2013 Politecnico di Torino 1 Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica

Dettagli

INNOVAZIONE XNOTTA PER PORTALI TURISTICI

INNOVAZIONE XNOTTA PER PORTALI TURISTICI INNOVAZIONE XNOTTA PER PORTALI TURISTICI 1. Introduzione La nostra attività è partita dall esame dei sistemi di gestione dei Portali turistici; tutti hanno pensato ad una ottima interfaccia, ad un buon

Dettagli

ARCHIVIAZIONE DOCUMENTALE NEiTdoc

ARCHIVIAZIONE DOCUMENTALE NEiTdoc ARCHIVIAZIONE DOCUMENTALE NEiTdoc PROCESS & DOCUMENT MANAGEMENT La documentazione può essere definita un complesso di scritture prodotte da entità pubbliche o private nell espletamento della loro attività,

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore

Dettagli

Manuale d'uso. Manuale d'uso... 1. Primo utilizzo... 2. Generale... 2. Gestione conti... 3. Indici di fatturazione... 3. Aliquote...

Manuale d'uso. Manuale d'uso... 1. Primo utilizzo... 2. Generale... 2. Gestione conti... 3. Indici di fatturazione... 3. Aliquote... Manuale d'uso Sommario Manuale d'uso... 1 Primo utilizzo... 2 Generale... 2 Gestione conti... 3 Indici di fatturazione... 3 Aliquote... 4 Categorie di prodotti... 5 Prodotti... 5 Clienti... 6 Fornitori...

Dettagli

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12 SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.

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