SIMULAZIONE SECONDA PROVA

Похожие документы
ESAME DI STATO I.T.E. A.S

ESAME DI STATO I.T.E. A.S

ESAME DI STATO I.T.E. A.S

Simulazione seconda prova scritta Informatica

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Esame di Stato 2015 Informatica e Telecomunicazioni - Informatica proff. F. Formichi, G. Meini 2015

2011 Politecnico di Torino 1

Tema Esame Informatica Mercurio Gestione della palestra

SOLUZIONE ESAME DI STATO 2015/2016 Indirizzo: ITSI - AMMINISTRAZIONE, FINANZA E MARKETING ARTICOLAZIONE SISTEMI INFORMATIVI AZIENDALI

Fabio Proietti (c) 2013 Licenza:

SISTEMI OPERATIVI, RETI, INTERNET

Spiegazioni esercizio Gestione Tabella con PHP e MySQL

Soluzione traccia Informatica simulazione d esame di Stato Istituto GAUSS. 15/04/2013

Sommario. Introduzione... 13

Anno 2013 Informatica ABACUS

Procedura di login e sessione

ESERCITAZIONE: Fornitore-Fornisce-Articolo

Prova Pratica di Informatica, Modulo Basi di dati Appello 23/07/2018

Estensioni del linguaggio SQL per interrogazioni OLAP

Connessione con MySQL

1. Schema concettuale della base di dati PROGETTO CONCETTUALE SCHEMA ER

DBMS. Affidabilità. Privatezza dei dati. Efficienza. Efficacia. Un DBMS deve garantire:

DATABASE CLIENTIRAPPRESENTANTI

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

OBIETTIVI MINIMI Anno scolastico TIC-TIT. 1. Foglio elettronico: funzioni fondamentali (Excel)

D B M G Il linguaggio HTML

Connessione con MySQL

Sessione ordinaria 2003 Seconda prova scritta ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Indirizzo: INFORMATICA CORSO SPERIMENTALE Progetto ABACUS

SOLUZIONE SECONDA PROVA ESAME DI STATO TRAMONTANA

Verifica di Informatica. Cognome e Nome: Classe 5ª Ci, Data

Fabio Proietti (c) 2013 Licenza:

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 27 Marzo 07 Nome: Cognome: Matricola:

La connessione ai database MySQL tramite script PHP versione 5.5

Introduzione a phpmyadmin

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO SPERIMENTALE Progetto ABACUS SIMULAZIONE PROVA SCRITTA DI INFORMATICA

ESAME di INFORMATICA e ARCHIVIAZIONE

BASI DI DATI. Titolo Prof. Cognome Nome Indirizzo Numero Telefono

GESTIONE ASSICURAZIONI AUTO

Esercizi su JavaScript, DOM e Web Storage

PHP & MySQL. Giselda De Vita

Esercitazione seconda prova Esame di Stato Prova di Informatica Gestionale ITC Programmatori e Mercurio. Note introduttive

Basi di dati I 27 gennaio 2016 Esame Compito A Tempo a disposizione: un ora e quarantacinque minuti. Libri chiusi.

PHP e MySQL. Scripting server-side per accesso a DB MySQL

ITI M. FARADAY Programmazione modulare a.s

Sessione ordinaria 2005 Seconda prova scritta M070 - ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

Un client su arduino invia i dati acquisiti ad un database

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query

Ministero dell Istruzione, dell Università e della Ricerca

Транскрипт:

SIMULAZIONE SECONDA PROVA L azienda Gamma è una società multinazionale di produzione e commercializzazione di prodotti di abbigliamento. Essa ha intuito l opportunità di indagare i nuovi modelli individuali di comportamento dei consumatori e ha adeguato le proprie strategie manageriali, utilizzando metodologie di raccolta dati che consentano un rapido feedback tra l analisi delle vendite e le strategie di produzione. Ciò le ha consentito di offrire sul mercato modelli di abbigliamento di tendenza, con un processo di progettazione, produzione e distribuzione di poche settimane e a prezzi accessibili al grande pubblico. L offerta di modelli è differenziata in base all analisi dei comportamenti dei consumatori e, pertanto, per identificarne rapidamente le tendenze, Gamma traccia ogni singolo capo disponibile nei suoi punti vendita. La rete commerciale dell azienda Gamma è composta di punti vendita che presentano caratteristiche e offerte differenziate, distribuiti prevalentemente nelle città di medie e grandi dimensioni. Il personale di vendita può essere impiegato presso i vari punti vendita della società, in periodi diversi. L azienda attua strategie di fidelizzazione e di raccolta delle opinioni dei clienti anche tramite Web. Il candidato, concentrandosi sulla porzione di sistema informativo che gestisce l attività di vendita: 1. sviluppi uno schema concettuale della relativa base di dati, che dovrà prevedere: a. i punti vendita, identificati mediante un opportuno codice, dei quali si registra anche l indirizzo, il telefono, la data di inizio attività; b. i dipendenti, dei quali interessano i dati anagrafici, la qualifica, il punto vendita in cui operano; c. i modelli, specificando per ciascuno il codice, il nome, la descrizione, il prezzo di listino, il genere (uomo/donna), la collezione a cui appartiene; d. i singoli capi, di cui interessano il modello, la taglia, il colore (scelto tra un insieme codificato) ed il punto vendita dove si trova. Al momento della vendita si deve inoltre memorizzare la data di vendita, il prezzo effettivo di vendita (che può differire dal prezzo di listino in caso di promozioni) e il dipendente che ha curato la vendita. 2. derivi il corrispondente schema logico relazionale; 3. sviluppi in linguaggio SQL le query per ottenere le seguenti informazioni: a. il volume totale di vendite di un determinato punto vendita in un dato periodo di tempo; b. l elenco dei capi presenti in un punto vendita ad una precisa data (a scopo di inventario) con la descrizione dei modelli a cui appartengono. 4. Si immagini che un cliente, in un punto vendita della catena, non trovi un capo della sua taglia di un determinato modello, e che chieda al commesso di verificare se esso è presente in un altro punto vendita. Il candidato sviluppi in un linguaggio a sua scelta le pagine web che consentono all addetto alle vendite di visualizzare, per ciascun punto vendita, il numero di capi disponibili del tipo richiesto dal cliente, specificando modello e taglia. Prof. Sergio Scarano Pagina 1

SOLUZIONE ANALISI DEI DATI ENTITÀ: Modello: per memorizzare informazioni relative ai vari modelli prodotti dall azienda Capo: per tracciare ogni singolo capo in vendita PuntoVendita: per le informazioni relative ai vari punti vendita dell azienda dislocati nelle varie città Dipendente: anagrafica dei dipendenti dell azienda e operanti presso i vari punti vendita. ATTRIBUTI: Modello: IDModello (PK), Descrizione, PrezzoListino, Genere, Collezione, Recensione. IDModello contiene numeri interi ad auto-incremento; PrezzoListino è un campo di tipo valuta; Descrizione, Genere e Collezione sono campi di tipo testo; Recensione (intesa come la media delle recensioni dei vari clienti) è un campo che conterrà un numero reale. Capo: IDCapo (PK), Taglia, Colore, Disponibilità, DataVendita, PrezzoVendita. IDCapo contiene numeri interi ad auto-incremento; Taglia è un campo di tipo testo; Colore è un campo di tipo numerico (byte, consente 256 colori diversi con codici compresi tra 0 e 255); Disponibilità è un campo binario di tipo SI/NO; DataVendita è un campo di tipo data/ora (formato gg/mm/aaaa); PrezzoVendita è un campo di tipo valuta. DataVendita e PrezzoVendita possono essere considerati campi opzionali (saranno valorizzati solo in caso di vendita del capo). PuntoVendita: IDPuntoVendita (PK), Città, Indirizzo, Telefono, Mail, DataInizioAttività. IDPuntoVendita contiene numeri interi ad auto-incremento; Città, Indirizzo, Telefono e Mail sono campi di tipo testo; DataInizioAttività è un campo di tipo data/ora (formato gg/mm/aaaa). Dipendente: IDDipendente (PK), Cognome, Nome, DataNascita, Qualifica. IDDipendente contiene numeri interi ad auto-incremento; Cognome, Nome e Qualifica sono campi di tipo testo; DataNascita è un campo di tipo data/ora (formato gg/mm/aaaa). ASSOCIAZIONI E REGOLE DI LETTURA Modello Capo: (1 a Molti). Ad ogni modello si devono associare uno o più capi; ogni capo deve essere collegabile ad un unico modello. PuntoVendita Capo: (1 a Molti). In ogni punto vendita (negozio) deve essere possibile acquistare uno o più capi; ogni singolo capo deve essere a disposizione per la vendita in un unico negozio. Dipendente Capo: (1 a Molti). Ad ogni dipendente si può ricondurre la vendita di uno o più capi; ogni capo può essere venduto da un unico dipendente. Prof. Sergio Scarano Pagina 2

PuntoVendita Dipendente: (Molti a Molti). In un punto vendita devono lavorare uno o più dipendenti; ogni dipendente deve lavorare in uno o più punti vendita (chiaramente in periodi diversi). MODELLO E/R MODELLO CAPO DIPENDENTE PUNTO VENDITA MODELLO LOGICO Poiché si intende utilizzare, in fase di implementazione, un DBMS relazionale (Access o MySql), la relazione Molti a Molti sarà sostituita da relazioni 1 a Molti attraverso l introduzione di una tabella di collegamento. PUNTO VENDITA DIPENDENTE ASSUNZIONE ARCHIVIO CAMPO CHIAVE FORMATO DIMENSIONE OPZIONALITA IDModello PK Numerico AutoIncremento NO Descrizione Testo 20 NO Modelli PrezzoListino Valuta Euro NO Genere Testo 1 NO Collezione Testo 20 NO Recensione Numerico Decimale NO IDPuntoVendita PK Numerico AutoIncremento NO Città Testo 20 NO PuntiVendita Indirizzo Testo 30 NO Telefono Testo 15 NO Mail Testo 40 NO DataInizioAttività Data/Ora Data in Cifre NO IDDipendente PK Numerico AutoIncremento NO Cognome Testo 20 NO Dipendenti Nome Testo 20 NO DataNascita Data/Ora Data in Cifre NO Qualifica Testo 20 NO Prof. Sergio Scarano Pagina 3

Assunzioni Capi IDPuntoVendita FK Numerico Intero Lungo NO IDDipendente FK Numerico Intero Lungo NO DataAssunzione Data Data in Cifre NO IDCapo PK Numerico AutoIncremento NO Taglia Testo 5 NO Colore Numerico Byte NO Disponibilità SI/NO NO DataVendita Data/Ora Data in Cifre SI PrezzoVendita Valuta Euro SI IDModello FK Numerico Intero Lungo NO IDPuntoVendita FK Numerico Intero Lungo NO IDDipendente FK Numerico Intero Lungo NO CARATTERISTICHE DEL DBMS Si userà il DBMS MySql per la creazione del database e per le interrogazioni (query) al database. Si ipotizza, quindi, di poter testare il funzionamento dell applicazione in un ambiente preinstallato in locale che comprende una piattaforma integrata di sviluppo web (come ad esempio EasyPhp) contenente: il server web Apache il server di database MySQL un interprete di script php l'interfaccia grafica phpmyadmin per la creazione delle tabelle e il test delle query in SQL. INTERROGAZIONI SELECT SUM(PrezzoVendita) AS [Volume totale Vendita] FROM PuntiVendita, Capi WHERE PuntiVendita.IDPuntoVendita = Capi.IDPuntoVendita AND IDPuntoVendita = [Inserire il codice del punto vendita] AND DataVendita BETWEEN [Inserire data iniziale] AND [Inserire data finale] AND Disponibilità = NO ; SELECT IDCapo, Taglia, Colore, Descrizione FROM Modelli, Capi, PuntiVendita WHERE Modelli.IDModello = Capi.IDModello AND PuntiVendita.IDPuntoVendita = Capi.IDPuntoVendita AND IDPuntoVendita = [Inserire il codice del punto vendita] AND Disponibilità = SI ; Prof. Sergio Scarano Pagina 4

PAGINA WEB Si intende progettare una pagina web che permetta di cercare capi, di un modello e di una taglia ben precisa, all interno della rete dei punti vendita dell azienda; la pagina PHP restituirà il numero di capi, del modello e della taglia cercata, presenti in ciascun punto vendita. Di seguito il codice HTML relativo a tale pagina: <!doctype html> <html lang="it"> <head> <meta charset="utf-8" /> <title> Ricerca Capi </title> </head> <body bgcolor="yellow" text="blue" topmargin="50"> <div align="center"> <h2> RICERCA CAPO </h2> <font size="5"> <form action="ricerca.php" method="get"> <table border="0" cellspacing="20"> <tr> <td> Modello </td> <td> <input type="text" size="15" name="txtmodello" /> </td> </tr> <tr> <td> Taglia </td> <td> <input type="text" size="5" name="txttaglia" /> </td> </tr> <tr> <td> <input type="submit" name="cmdcerca" value="cerca" /> </td> <td> <input type="reset" name="cmdannulla" value="annulla" /> </td> </table> </form> </font> </div> </body> </html> Prof. Sergio Scarano Pagina 5

Alla pressione del pulsante CERCA viene richiamata la pagina ricerca.php che provvederà ad eseguire la query di ricerca nel database. Il codice di tale pagina è il seguente: <!doctype html> <html lang="it"> <head> <meta charset="utf-8" /> <title> Esito ricerca capo </title> </head> <body bgcolor="yellow" text="blue" topmargin="5"> <div align="center"> <h2> ESITO RICERCA </h2> <?php // recupero dati dal form $modello=$_get["txtmodello"]; $taglia=$_get["txttaglia"]; // connessione a MySql Server $conn=mysql_connect("localhost","root","") or die("connessione non riuscita"); // selezione del database su MySql mysql_select_db("dbgamma",$conn) or die("database non trovato"); // creazione query SQL $sql="select IDPuntoVendita, Città, COUNT(*) AS Totale "; $sql.="from PuntiVendita, Capi, Modelli "; $sql.="where PuntiVendita.IDPuntoVendita = Capi.IDPuntoVendita "; $sql.="and Modelli.IDModello = Capi.IDModello "; $sql.="and Descrizione = $modello "; $sql.="and Taglia = $taglia "; $sql.="group BY IDPuntoVendita, Città;"; // esecuzione query e creazione recordset $rs=mysql_query($sql,$conn) or die("query fallita"); // visualizzazione risultato ricerca echo "<font size=5>"; echo "<table cellspacing=10 border=0>"; echo "<tr> <th> CODICE PUNTO VENDITA </th> <th> CITTA </th> <th> N CAPI </th> </tr>"; while ($riga=mysql_fetch_array($rs)) { echo "<tr> <th>. $riga[ IDPuntoVendita ]. </th> <th>. $riga[ Città ]. </th><th>. $riga[ Totale ]. </th> </tr>"; } echo "</table>"; echo "</font>"; // chiusura connessione a MySql Server mysql_close($conn);?> </div> </body> </html> Prof. Sergio Scarano Pagina 6