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

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

SIMULAZIONE SECONDA PROVA

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

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

2011 Politecnico di Torino 1

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

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

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

La connessione ai database MySQL tramite script PHP versione 5.5

Anno 2013 Informatica ABACUS

Simulazione della seconda prova d esame Materia: Informatica

Tema Esame Informatica Mercurio Gestione della palestra

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

Laboratorio Progettazione Web PHP e FORMs HTML - Lezione 8. Andrea Marchetti IIT-CNR 2011/2012

1.0 Ipotesi aggiuntive

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 1 OTTOBRE 2015 Tempo: 2h30m

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

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

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

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

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

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

Procedura di login e sessione

PHP & MySQL. Giselda De Vita

Un client su arduino invia i dati acquisiti ad un database

ESERCITAZIONE: Fornitore-Fornisce-Articolo

SOLUZIONE SECONDA PROVA ESAME DI STATO TRAMONTANA

Per poter interagire con un database in rete mediante uno script php bisogna. innanzitutto cerare una connessione. Ciò si ottiene mediante la funzione

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

HTML: FORM. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

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

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

DATABASE CLIENTIRAPPRESENTANTI

Fondamenti di Informatica e Programmazione

ESAME di INFORMATICA e ARCHIVIAZIONE

Spiegazioni esercizio Gestione Tabella con PHP e MySQL

Ministero dell Istruzione, dell Università e della Ricerca

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

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

CREAZIONE PAGINE STATICHE

GESTIONE ASSICURAZIONI AUTO

PROGETTAZIONE DI DATABASE Linguaggio SQL

Sommario. Introduzione... 13

Simulazione della seconda prova d esame Materia: Informatica

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

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

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini

Modulo o Form in Html

Indirizzo ITIA Informatica e Telecomunicazioni Articolazione Informatica. Tema di Informatica Tipologia C

Ministero dell Istruzione, dell Università e della Ricerca I044 ESAME DI STATO DI ISTRUZIONE SECONDARIA SUPERIORE

Istituto Statale E.Torricelli Liceo Scientifico Tecnologico-Tecnico Industriale. Compiti Estivi Informatica

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

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

Connessione con MySQL

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

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

M963 ESAME DI STATO DI ISTRUZIONE SECONDARIA SUPERIORE Indirizzo: INFORMATICA E TELECOMUNICAZIONI ARTICOLAZIONE INFORMATICA Tema di: INFORMATICA

Транскрипт:

ESAME DI STATO I.T.E. A.S. 2015-2016 PRIMA PARTE La compagnia City2City è una società italiana di recente costituzione che offre collegamenti passeggeri diretti verso varie città europee. City2City si vuole inserire dinamicamente sul mercato del trasporto passeggeri, offrendo un servizio efficiente e a costi contenuti. Il suo target sono tutti quei soggetti che non amano spostarsi in aereo, non hanno la possibilità di usare un mezzo proprio e desiderano viaggiare comodamente, trasportando facilmente il proprio bagaglio. La compagnia, almeno per la fase iniziale di avvio delle attività, ha scelto di offrire collegamenti di andata e di ritorno che partono dalla propria sede operativa, situata in una città di medie dimensioni del centro Italia, e sono diretti ad alcune città europee, raggiungibili in 24 ore di viaggio al massimo. Si è quindi dotata di un parco di autobus GT ( Gran Turismo ) forniti di differenti livelli di comfort. La manutenzione degli autobus GT è affidata ad una serie di ditte esterne, e deve essere comunque tenuta sotto attento controllo dalla City2City. Puntando sulla qualità e sulla sicurezza del servizio offerto, si è scelto che il personale viaggiante sia costituito da un autista principale ed un secondo autista che si alternano alla guida, oltre che da un assistente di viaggio in grado di offrire servizi di cortesia ai passeggeri (es. riviste, frigo bar, noleggio tablet, noleggio videogiochi o film) di cui la City2City periodicamente rifornisce i suoi mezzi. La compagnia è interessata a fidelizzare i clienti e prevede quindi sistemi di registrazione degli utenti, con tessera virtuale a punti e indagini di mercato di customer satisfaction. Infine, essa intende offrire sistemi di prenotazione on-line. Il candidato, fatte le opportune ipotesi aggiuntive: 1. identifichi le principali aree del sistema informativo della compagnia City2City e le soluzioni tecnologiche necessarie alla sua implementazione; 2. concentrandosi poi sulla porzione del sistema informativo che gestisce l attività di trasporto, sviluppi uno schema concettuale della relativa base di dati, che dovrà prevedere: i collegamenti offerti, registrando per ciascuno la città collegata, il giorno della settimana, l orario previsto di partenza e di arrivo, se il collegamento è di andata o di ritorno; il personale viaggiante, del quale oltre ai dati anagrafici interessa il ruolo ricoperto come sopra descritto; il parco di autobus GT, con i dati identificativi di ciascun mezzo, le relative caratteristiche e i dati necessari a gestirne la manutenzione; i viaggi effettuati, registrando per ciascuno la data in cui è stato svolto, l orario effettivo di partenza e di arrivo, il numero dei passeggeri effettivi, l autobus GT utilizzato e il personale viaggiante impiegato. 3. derivi il corrispondente schema logico relazionale; 4. sviluppi in linguaggio SQL le query per ottenere le seguenti informazioni: a Prof. Sergio Scarano Pagina 1

a. elenco dei viaggi di andata svolti verso una determinata città, in un intervallo di date fornite in input; b. per ciascuna città collegata, calcolare la media del tempo di percorrenza dei viaggi di andata effettuati nel mese di agosto dell anno corrente. SECONDA PARTE Si supponga che la compagnia City2City desideri attivare con i propri clienti operazioni di marketing non convenzionale, che tengano conto di fattori come stile di vita, interessi, realtà famigliare, ecc. Il candidato a tale scopo: a. integri la base di dati sviluppata nella prima parte inserendo opportunamente un entità Cliente ; b. ne definisca gli attributi utili alle operazioni di marketing ipotizzate, motivando le scelte fatte, e ne derivi lo schema logico; c. infine sviluppi le pagine web necessarie alla registrazione di un nuovo cliente, in un linguaggio di programmazione a propria scelta. SOLUZIONE PRIMA PARTE SISTEMA INFORMATIVO Si intende ricorrere ad una soluzione integrata quale può essere quella rappresentata da un sistema informativo ERP. Esso risulta costituito da un unico database centralizzato (la cui progettazione verrà realizzata di seguito) verso il quale si interfacciano i principali moduli software del sistema informativo quali: amministrazione e finanza, logistica e trasporti, gestione del personale, gestione della manutenzione dei mezzi, marketing e gestione della comunicazione, ENTITÀ: ANALISI DEI DATI Destinazione: le città europee che sono destinazione dei collegamenti; Collegamento: informazioni dettagliate sul collegamento verso una data destinazione; Bus: i mezzi a disposizione della compagnia per effettuare i collegamenti con le città europee; Viaggio: informazioni sui singoli viaggi effettuati per ogni possibile collegamento; Personale: dipendenti della compagnia in servizio sugli autobus e distinti per ruolo; Servizio: i vari servizi messi a disposizione sui suoi mezzi e che possono variare da bus a bus; Ditta: informazioni sulle ditte esterne che usualmente prestano opera di manutenzione sui mezzi della compagnia. Prof. Sergio Scarano Pagina 2

ATTRIBUTI: Destinazione: IDDestinazione (PK), Città, Nazione. IDDestinazione contiene numeri interi ad auto-incremento; Città e Nazione sono campi di tipo testo. Collegamento: IDCollegamento (PK), Giorno, OraPartenza, OraArrivo, TipoViaggio, Prezzo. La chiave primaria IDCollegamento contiene numeri interi ad auto-incremento; Giorno (lunedì, martedì, ) e TipoViaggio (andata o ritorno) sono di tipo testo, OraPartenza e OraArrivo sono campi di tipo Data/Ora; Prezzo è un campo di tipo valuta. Bus: Targa (PK), Marca, Modello, KmPercorsi, NumeroPosti. La chiave primaria Targa è un campo di tipo testo (alfanumerico); Marca e Modello sono campi di tipo testo; KmPercorsi è un campo numerico di tipo intero mentre NumeroPosti è numerico di tipo byte. Viaggio: IDViaggio (PK), DataViaggio, OraEffettivaPartenza, OraEffettivaArrivo, Durata, NumeroPasseggeri. La chiave primaria IDViaggio contiene numeri interi ad autoincremento; DataViaggio, OraEffettivaPartenza e OraEffettivaArrivo sono campi di tipo Data/Ora; Durata (numero ore di viaggio) e NumeroPasseggeri campi di tipo byte. Personale: IDPersonale (PK), Cognome, Nome, DataNascita, Indirizzo, Città, ContattoTelefonico, Ruolo. IDPersonale contiene numeri interi ad auto-incremento; Cognome, Nome, Indirizzo, Città, ContattoTelefonico e Ruolo (autista 1, autista 2 o assistente) sono campi di tipo testo; DataNascita è un campo di tipo Data/Ora. Servizio: IDServizio (PK), NomeServizio. IDServizio contiene numeri interi ad autoincremento; NomeServizio è un campo si tipo testo. Ditta: IDDitta (PK), RagioneSociale, Indirizzo, Città, Telefono, Mail. IDDitta contiene numeri interi ad auto-incremento; RagioneSociale, Indirizzo, Città, Telefono, Mail sono campi di tipo testo. ASSOCIAZIONI E REGOLE DI LETTURA Destinazione Collegamento: (1 a Molti). Per ogni destinazione ci devono essere uno o più collegamenti; ogni collegamento deve essere associato ad un unica destinazione. Collegamento Viaggio: (1 a Molti). Per ogni collegamento (o tratta) devono esserci nel DB uno o più viaggi effettuati; ogni viaggio deve essere associato ad un preciso collegamento. Bus Viaggio (1 a Molti). Ogni mezzo deve essere stato utilizzato per uno o più viaggi; ogni viaggio deve essere associato ad un unico mezzo. Personale Viaggio (Molti a Molti). Ciascun dipendente (in servizio sugli autobus) deve aver preso parte ad uno o più viaggi; in ogni viaggio devono essere presenti più dipendenti della compagnia (autista 1, autista 2, assistente). Servizio Bus (Molti a Molti). Ogni servizio può essere offerto su uno o più autobus; su ogni autobus possono essere offerti uno o più servizi. Ditta Bus (Molti a Molti). Ogni ditta esterna può occuparsi della manutenzione di uno o più mezzi; ogni mezzo deve essere sottoposto nel tempo a varie manutenzioni presso una o più ditte (per ogni singola manutenzione la compagnia può rivolgersi a ditte differenti). Prof. Sergio Scarano Pagina 3

MODELLO E/R DESTINAZIONE COLLEGAMENTO VIAGGIO BUS DITTA PERSONALE SERVIZIO MODELLO LOGICO Poiché si intende utilizzare, in fase di implementazione, un DBMS relazionale (Access o MySql), le relazioni Molti a Molti saranno sostituite da relazioni 1 a Molti attraverso l introduzione di tabelle di collegamento. PERSONALE VIAGGIO PERSONALE_VIAGGIO SERVIZIO BUS SERVIZIO_BUS DITTA BUS MANUTENZIONE Prof. Sergio Scarano Pagina 4

ARCHIVIO CAMPO CHIAVE FORMATO DIMENSIONE OPZIONALITA IDDestinazione PK Numerico Autoincremento NO Destinazioni Città Testo 20 NO Nazione Testo 20 NO IDCollegamento PK Numerico Autoincremento NO Giorno Testo 15 NO OraPartenza Data/ora hh:mm:ss NO Collegamenti OraArrivo Data/Ora hh:mm:ss NO TipoViaggio Testo 10 NO Prezzo Valuta Euro NO IDDestinazione FK Numerico Intero Lungo NO Targa PK Testo 7 NO Marca Testo 20 NO Bus Modello Testo 20 NO KmPercorsi Numerico Intero NO NumeroPosti Numerico Byte NO IDViaggio PK Numerico Autoincremento NO DataViaggio Data/Ora gg/mm/aaaa NO OraEffettivaPartenza Data/Ora hh:mm:ss NO Viaggi OraEffettivaArrivo Data/Ora hh:mm:ss NO Durata Numerico Byte NO NumeroPasseggeri Numerico Byte NO IDCollegamento FK Numerico Intero Lungo NO Targa FK Testo 7 NO IDPersonale PK Numerico Autoincremento NO Cognome Testo 20 NO Nome Testo Numerico NO Personale DataNascita Data/Ora gg/mm/aaaa NO Indirizzo Testo 30 SI Città Testo 20 SI ContattoTelefonico Testo 15 NO Ruolo Testo 15 NO Personale_Viaggio IDPersonale FK Numerico Intero Lungo NO IDViaggio FK Numerico Intero Lungo NO Servizi IDServizio PK Numerico Autoincremento NO NomeServizio Testo 20 NO Servizi_Bus IDServizio FK Numerico Intero Lungo NO Targa FK Testo 7 NO IDDitta PK Numerico Autoincremento NO RagioneSociale Testo 20 NO Ditte Indirizzo Testo 30 NO Città Testo 20 NO Telefono Testo 15 NO Mail Testo 40 NO IDDitta FK Numerico Intero Lungo NO Targa FK Testo 7 NO Manutenzioni DataManutenzione Data/Ora gg/mm/aaaa NO TipoIntervento Testo 20 NO CostoIntervento Valuta Euro NO Prof. Sergio Scarano Pagina 5

INTERROGAZIONI Query 1 SELECT IDViaggio, DataViaggio, OraEffettivaPartenza, OraEffettivaArrivo, NumeroPasseggeri FROM Viaggi, Collegamenti, Destinazioni WHERE Viaggi.IDCollegamento = Collegamenti.IDCollegamento AND Collegamenti.IDDestinazione = Destinazioni.IDDestinazione AND Città = [Inserisci la destinazione] AND TipoViaggio = Andata AND DataViaggio BETWEEN [Inserisci data iniziale ricerca] AND [Inserisci data finale ricerca] ORDER BY DataViaggio; Query 2 SELECT Città, AVG(Durata) AS [Media del tempo di percorrenza] FROM Destinazioni, Collegamenti, Viaggi WHERE Viaggi.IDCollegamento = Collegamenti.IDCollegamento AND Collegamenti.IDDestinazione = Destinazioni.IDDestinazione AND TipoViaggio = Andata AND DataViaggio BETWEEN #08/01/2018# AND #08/31/2018# GROUP BY Città; SOLUZIONE SECONDA PARTE L entità Cliente deve essere connessa, nel modello E/R creato nella prima parte, all entità Viaggi. In essa possiamo inserire come attributi, oltre ai dati anagrafici, le informazioni relative allo stile di vita del Cliente, informazioni che saranno poi utilizzate dalla compagnia per operazioni di marketing. CLIENTE VIAGGIO Associazione: Molti a Molti. Un cliente inserito nel database deve aver effettuato uno o più viaggi; ad ogni viaggio devono aver preso parte uno o più clienti. La tabella di collegamento tra Clienti e Viaggi può essere indicata come Clienti_Viaggi. Clienti Integrazione al Modello Logico IDCliente PK Numerico AutoIncremento NO Cognome Testo 20 NO Nome Testo 20 NO DataNascita Data/Ora gg:mm:aaaa NO Indirizzo Testo 30 NO Città Testo 20 NO Prof. Sergio Scarano Pagina 6

Clienti_Viaggi Mail Testo 40 NO StileDiVita Testo 20 NO RealtàFamiliare Testo 20 NO Interesse Testo 20 NO IDCliente FK Numerico Intero Lungo NO IDViaggio FK Numerico Intero Lungo NO ValutazioneViaggio Numerico Byte NO PAGINE WEB PER LA REGISTRAZIONE DI UN NUOVO CLIENTE Il modulo per la registrazione può presentarsi nel modo seguente: Il codice HTML di tale pagina risulta essere il seguente: <!doctype html> <html lang="it"> <head> <title> Registrazione Clienti</title> <meta charset="utf-8" /> </head> <body topmargin="20" bgcolor="lightblue"> <center><h2> REGISTRAZIONE CLIENTI </h2></center> <form action="registrazione.php" method="get"> <table border="0" align="center" cellspacing="10" cellpadding="5"> <tr> <td> Cognome </td> <td> <input type="text" name="txtcognome" size="20"/> </td> </tr> <tr> <td> Nome </td> <td> <input type="text" name="txtnome" size="20"/> </td> </tr> <tr> <td> DataNascita </td> <td> <input type="text" name="txtdata" size="20"/> </td> </tr> <tr> <td> Indirizzo </td> <td> <input type="text" name="txtindirizzo" size="20"/> </td> </tr> Prof. Sergio Scarano Pagina 7

<tr> <td> Città </td> <td> <input type="text" name="txtcitta" size="20"/> </td> </tr> <tr> <td> Mail </td> <td> <input type="text" name="txtmail" size="40"/> </td> </tr> <tr> <td> Stile di vita </td> <td> <select name="lststile" size="1"> <option> Stile 1 </option> <option> Stile 2 </option> <option> Stile 3 </option> </td> </tr> <tr> <td> Realtà famigliare </td> <td> <select name="lstrealta" size="1"> <option> Realtà 1 </option> <option> Realtà 2 </option> <option> Realtà 3 </option> </td> </tr> <tr> <td> Interessi </td> <td> <input type="radio" name="optinteresse" value="1" checked /> Interesse 1<br/> <input type="radio" name="optinteresse" value="2" /> Interesse 2<br/> <input type="radio" name="optinteresse" value="3" /> Interesse 3 </td> </tr> <tr> <th colspan="2"> <input type="submit" value="conferma Registrazione"/> </th></tr> </table> </form> </body> </html> Alla pressione del pulsante Conferma Registrazione viene richiamata (come si evince dall attributo action del tag form) la pagina PHP registrazione.php, il cui codice permette di effettuare un operazione di inserimento (INSERT) nell archivio Clienti del database progettato (dbcity2city). Di seguito il codice di tale pagina: <!doctype html> <html lang="it"> <head> <title> Esito Registrazione </title> <meta charset="utf-8" /> </head> <body topmargin="20" bgcolor="lightblue"> <?php // recupero informazioni dal form $cognome=$_get[ txtcognome ]; $nome=$_get[ txtnome ]; $data=$_get[ txtdata ]; $indirizzo=$_get[ txtindirizzo ]; Prof. Sergio Scarano Pagina 8

$citta=$_get[ txtcitta ]; $mail=$_get[ txtmail ]; $stile=$_get[ lststile ]; $realta=$_get[ lstrealta ]; $interesse=$_get[ optinteresse ]; // connessione al database $conn=mysqli_connect( localhost, root,, dbcity2city ) or die( Connessione non riuscita oppure database non trovato ); //creazione query di inserimento $sql= INSERT INTO Clienti(Cognome,Nome,DataNascita,Indirizzo,Città,Mail,StileDiVita), RealtàFamiliare,Interesse) ; $sql.= VALUES ( $cognome, $nome, $data, $indirizzo, $citta, $mail, $stile, $realta, $interesse ) ; // esecuzione query e esito if (mysqli_query($sql,$conn)) echo <center><h2> Inserimento effettuato </h2></center> ; else echo <center><h2> Inserimento fallito </h2></center> ; // chiusura connessione mysqli_close($conn);?> </body> </html> Prof. Sergio Scarano Pagina 9