Testo prove scritte - Provincia di Pistoia

P r o vincia di P i stoia
PIAZZA S. LEONE 1 51100 PISTOIA - TEL. 0573/3741 -
http://www.provincia.pistoia.it
OGGETTO: SELEZIONE PUBBLICA PER TITOLI ED ESAMI A N. 1 POSTO DI CAT.
D.1., POSIZIONE ECONOMICA D.1, C.C.N.L. 31.03.1999 COMPARTO REGIONI AUTONOMIE LOCALI, PROFILO INFORMATICO – SERVIZIO BILANCIO E SERVIZI
INFORMATICI.
Prima Prova Scritta (18 settembre 2008)
Prova estratta
PROVA A
Domanda 1
Determinazione della netmask ottima per un’unica rete IP.
Sia data una rete con 27 hosts. Determinare la netmask minima necessaria per la gestione di tale
rete, supponendo che debba essere inserita in una stessa network IP.
Domanda 2
In Oracle, quali sono le funzionalità tipiche del tool RMAN?
Domanda 3
In quale ambito ed a quale scopo è utilizzato il protocollo ICMP ?
Domanda 4
che cosa è l’IP masquerading?
Domanda 5
Descrivere sinteticamente qual è l’effetto del seguente comando in Linux:
# iptables -A INPUT -s 192.168.0.10 -p tcp –dport 80 \
-j LOG --log-prefix "Dropped (http): "
Domanda 6
In Linux, fornire un esempio d’uso di istruzioni PostgreSQL per effettuare un backup ed un restore
di un database.
Domanda 7
Si descriva sinteticamente (ad esempio in UML) lo schema di funzionamento di un software
publish-subscribe.
Domanda 8
In PHP, illustrare la differenza tra l’istruzione require e l’istruzione include.
Domanda 9
Nell’ambito dell’ingegneria del software, definire lo scopo di utilizzo di una WBS (Work Breakdown
Structure) e di un diagramma di PERT.
Domanda 10
In Linux, descrivere il significato del seguente comando:
route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.50
Domanda 11
In Linux, con quale comando è possibile impostare per una certa interfaccia di rete, più indirizzi ip
(alias)? Se ne fornisca un esempio, supponendo che la scheda eth0 abbia IP 192.168.1.5 e si
voglia impostare un alias 192.168.1.6
Date le seguenti informazioni (valevoli per le prossime 4 domande):
Base di dati: Hotel
La Base di Dati di una agenzia che organizza banchetti in vari Hotel sparsi sul territorio nazionale
contiene le seguenti informazioni:
 Un elenco di Hotel, tra cui ci sono anche Hotel caratteristici che sono gli unici ad offrire particolari specialità
 Gli elenchi degli invitati ai singoli banchetti
 Anagrafica persone, contenente i dati delle persone che si rivolgono all’agenzia per organizzare
un banchetto e i dati delle persone invitate al banchetto.
 Informazioni sui banchetti organizzati in occasione di particolari eventi (congressi, matrimoni, …)
per conto dei clienti
 Un elenco delle portate tra cui si distinguono le specialità
 Un insieme di menu con l’elenco delle portate di cui sono composti
 La descrizione degli ingredienti di cui una portata è composta
Tabelle
 HOTEL(NomeH, Località, Indirizzo, Telefono, #Posti)
 HOTEL _OFFRE_MENU(NomeH, Località, IdMenu)
 INVITATO(CodiceBanchetto, CodFiscInvitato)
 PERSONA(CodiceFiscale, Nome, Cognome, DataNascita, Indirizzo,#Telefono, Professione)
 MENU(IdMenu, NomePortata)
 PREZZO(IdMenu, Costo)
 PORTATA(NomePortata, Prezzo, Tipo, Specialità)
 INGREDIENTE(NomeIngrediente, Tipo)
 INGREDIENTI_IN_PORTATA(NomePortata, NomeIngrediente,Quantità)
 BANCHETTO(Codice, Occasione, Data, #Partecipanti, CodFiscCliente,NomeHotel, Località,
IdMenu)
Domanda 12
Tramite SQL , trovare il nome di tutti gli Hotel di Firenze e di Pistoia che abbiano almeno 50 posti
Domanda 13
Tramite SQL, trovare gli ingredienti di tutti i primi piatti che sono specialità e appartengono a menù
con un costo inferiore a 10 euro (nel risultato riportare anche il nome della portata)
Domanda 14
Tramite SQL , creare una vista che contenga tutti gli ingredienti e le quantità delle specialità
Domanda 15
Tramite SQL , modificare le righe della tabella Portata aumentando i prezzi pari a 15 euro di 5 euro
Domanda 16
Cosa si intende per variazione di bilancio?
Domanda 17
Descrivere i requisiti per la conservazione di documenti informatici ai sensi del Codice
dell’Amministrazione Digitale.
Domanda 18
Nel caso di attività di controllo ed ispettive, quali finalità vengono considerate di rilevante interesse
pubblico ai sensi dell’art. 67 del Decreto Legislativo 196/2003?
Prove non estratte
PROVA B
Domanda 1
Descrivere il significato della seguente riga di codice PHP:
<? require("nome_file.php"); ?>
Domanda 2
Sia data una rete con 15 host ed un router. Si cerchi di organizzare la rete in modo da impegnare
un numero di indirizzi più limitato possibile
Domanda 3
In quale ambito viene usato il protocollo H323?
Domanda 4
In PostgreSQL su Linux, specificare quali sono i comandi per:
- fermare il server
- far avviare il server
Domanda 5
Nel networking, a cosa serve la SNMP COMMUNITY ?
Domanda 6
In Oracle, qual è lo scopo dei Redo Log Files?
Domanda 7
In linux , in quale contesto viene tipicamente utilizzato il comando make config ?
Domanda 8
Descrivere sinteticamente qual è l’effetto del seguente comando in Linux:
# iptables -A FORWARD -m state NEW \
-m mac –mac-source 00 :CA :EA :BB :DE :00 –j ACCEPT
Domanda 9
In Linux, fornire il comando per impostare la subnet 255.255.255.0 per la scheda eth0.
Domanda 10
Elencare alcune tipologie di diagrammi UML utili per documentare il software nella
programmazione ad oggetti.
Domanda 11
In Linux, qual è l’utilizzo tipico del comando netstat ? Fornire inoltre il significato del seguente comando: netstat -ia
Date le seguenti informazioni (valevoli per le prossime 4 domande):
Base di dati: Hotel
La Base di Dati di una agenzia che organizza banchetti in vari Hotel sparsi sul territorio nazionale
contiene le seguenti informazioni:
 Un elenco di Hotel, tra cui ci sono anche Hotel caratteristici che sono gli unici ad offrire particolari specialità
 Gli elenchi degli invitati ai singoli banchetti
 Anagrafica persone, contenente i dati delle persone che si rivolgono all’agenzia per organizzare
un banchetto e i dati delle persone invitate al banchetto.
 Informazioni sui banchetti organizzati in occasione di particolari eventi (congressi, matrimoni, …)
per conto dei clienti
 Un elenco delle portate tra cui si distinguono le specialità
 Un insieme di menu con l’elenco delle portate di cui sono composti
 La descrizione degli ingredienti di cui una portata è composta
Tabelle
 HOTEL(NomeH, Località, Indirizzo, Telefono, #Posti)
 HOTEL _OFFRE_MENU(NomeH, Località, IdMenu)
 INVITATO(CodiceBanchetto, CodFiscInvitato)
 PERSONA(CodiceFiscale, Nome, Cognome, DataNascita, Indirizzo,#Telefono, Professione)
 MENU(IdMenu, NomePortata)
 PREZZO(IdMenu, Costo)
 PORTATA(NomePortata, Prezzo, Tipo, Specialità)
 INGREDIENTE(NomeIngrediente, Tipo)
 INGREDIENTI_IN_PORTATA(NomePortata, NomeIngrediente,Quantità)
 BANCHETTO(Codice, Occasione, Data, #Partecipanti, CodFiscCliente,NomeHotel, Località, IdMenu)
Domanda 12
Tramite SQL, trovare il nome di tutte le portate che hanno tra gli ingrediente almeno 50 gr. di Burro
Domanda 13
Tramite SQL, modificare le righe della tabella Portata diminuendo i prezzi pari a 50 euro di 5 euro
Domanda 14
Tramite SQL, trovare il nome degli Hotel e la rispettiva località che hanno un menù in cui offrono le
Penne al pomodoro.
Domanda 15
Tramite SQL, creare una vista che contenga nome e località di tutti gli Hotel caratteristici (Hotel
che offrono specialità) di Pistoia.
Domanda 16
Quali sono i diritti dei Consiglieri provinciali nei confronti degli organi e degli uffici
dell’Amministrazione provinciale?
Domanda 17
Descrivere le caratteristiche ed i requisiti che devono possedere i certificatori ai sensi del Codice
dell’Amministrazione Digitale.
Domanda 18
Si indichi quando l’interessato ha diritto ad opporsi al trattamento dei dati personali.
PROVA C
Domanda 1
In Linux, descrivere il significato del seguente comando:
kill -9 3208
Domanda 2
In Linux, se ad un file è associato il diritto di accesso tramite la mask 610, cosa vuol dire?
Domanda 3
In Oracle, descrivere come fare un backup completo di un database a “caldo”.
Domanda 4
In Linux, descrivere il significato del seguente comando:
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
Domanda 5
Descrivere il significato della seguente riga di codice Java:
import java.sql.*
Domanda 6
Ad una rete IP privata è assegnato l’insieme di indirizzi definiti da:
- address: 208.57.0.0
- netmask: 255.255.0.0
Occorre partizionare la rete in modo da servire una vecchia rete locale con circa 4000 host.
a) che netmask serve per definire la sotto-rete per i circa 4000 host?
b) che indirizzo di rete gli si può associare (risposta non univoca)?
c) quante altre reti delle stesse dimensioni si possono definire?
Domanda 7
Nell’ambito dei DBMS, che cosa sono i trigger? Fornirne un semplice esempio descrittivo.
Domanda 8
In quale ambito è utilizzato il protocollo SNMP ?
Domanda 9
Per documentare le applicazioni object-oriented, quali diagrammi UML vengono tipicamente usati?
Domanda 10
In PostgreSQL su Linux , specificare come effettuare un dump di un Database.
Domanda 11
In Linux, qual è l’utilizzo tipico del comando netstat ? Fornire inoltre il significato del seguente
comando: netstat -nr
Date le seguenti informazioni (valevoli per le prossime 4 domande):
Base di dati: Hotel
La Base di Dati di una agenzia che organizza banchetti in vari Hotel sparsi sul territorio nazionale
contiene le seguenti informazioni:
 Un elenco di Hotel, tra cui ci sono anche Hotel caratteristici che sono gli unici ad offrire particolari specialità
 Gli elenchi degli invitati ai singoli banchetti
 Anagrafica persone, contenente i dati delle persone che si rivolgono all’agenzia per organizzare
un banchetto e i dati delle persone invitate al banchetto.




Informazioni sui banchetti organizzati in occasione di particolari eventi (congressi, matrimoni, …)
per conto dei clienti
Un elenco delle portate tra cui si distinguono le specialità
Un insieme di menu con l’elenco delle portate di cui sono composti
La descrizione degli ingredienti di cui una portata è composta
Tabelle
 HOTEL(NomeH, Località, Indirizzo, Telefono, #Posti)
 HOTEL _OFFRE_MENU(NomeH, Località, IdMenu)
 INVITATO(CodiceBanchetto, CodFiscInvitato)
 PERSONA(CodiceFiscale, Nome, Cognome, DataNascita, Indirizzo,#Telefono, Professione)
 MENU(IdMenu, NomePortata)
 PREZZO(IdMenu, Costo)
 PORTATA(NomePortata, Prezzo, Tipo, Specialità)
 INGREDIENTE(NomeIngrediente, Tipo)
 INGREDIENTI_IN_PORTATA(NomePortata, NomeIngrediente,Quantità)
 BANCHETTO(Codice, Occasione, Data, #Partecipanti, CodFiscCliente,NomeHotel, Località,
IdMenu)
Domanda 12
Tramite SQL, trovare i nomi degli Hotel di Pistoia aventi un numero di posti superiore a 50 e che
offrono specialità.
Domanda 13
Tramite SQL, trovare nome e cognome delle persone che si sono rivolte all’agenzia per
organizzare un banchetto in occasione di un Compleanno.
Domanda 14
Tramite SQL, modificare le righe della tabella Portata raddoppiando i prezzi pari a 10 euro.
Domanda 15
Tramite SQL, creare una vista che contenga nome e località di tutti gli Hotel che offrono specialità
a Firenze.
Domanda 16
Cosa si intende per residui attivi?
Domanda 17
Indicare la composizione della Commissione di coordinamento del Sistema Pubblico di
Connettività.
Domanda 18
Indicare quali sono i dati sensibili ai sensi del Decreto Legislativo 196/2003.
Seconda Prova Scritta (19 settembre 2008)
Prova estratta
TRACCIA C
L’Amministrazione ha deciso di dotarsi di un Firewall per migliorare la sicurezza perimetrale del proprio
Ente (da collocarsi in corrispondenza dell’unica linea dati per la connessione all’esterno). Si descrivano i
principali requisiti funzionali che dovrà possedere il Firewall (motivando le scelte adottate). Al fine di
fornire un ordine di grandezza del contesto, si supponga che l’Amministrazione debba gestire almeno 20
sistemi server su LAN con un congruo numero di applicativi fruibili via Intranet da almeno 400 client e siano
previste tre DMZ con circa due server e 5 applicativi per ciascuna DMZ.
Si supponga che uno dei suddetti Server in DMZ ospiti il seguente Database UnivDb (in ambiente MYSQL):
 cdl = {id, id_facolta, nome, classe_di_laurea, numero_chiuso};
 facolta = {id, nome, indirizzo, citta};
 insegnamento = {id, id_cdl, nome, crediti, anno};
Supponiamo di voler cancellare tutti i dati di un corso di laurea attraverso un’applicazione web. La struttura
generale dovrà essere la seguente: all'utente sarà proposta una form in cui si richiederà di immettere il codice
del corso e poi, cliccando su un pulsante, verrà visualizzata un’ulteriore form contenente i dati principali del
corso (es. classe di laurea e codice facoltà) da cancellare. L’utente potrà così confermare la cancellazione dei
dati cliccando su un pulsante a video; a conclusione dell’operazione l'utente riceverà una pagina con la
"ricevuta" dell'operazione.
Il candidato descriva e riporti le porzioni di codice ritenute più significative per identificare la soluzione del
suddetto problema. Il linguaggio da utilizzare dovrà essere Open-Source (preferibilmente PHP o Java).
Il candidato illustri come poter gestire le problematiche relative all’integrità referenziale del database per il
problema illustrato.
Fornire un esempio di diagramma UML che documenti opportunamente l’ipotetico programma sviluppato.
Prove non estratte
TRACCIA A
Si illustri come realizzare una congrua architettura di disaster-recovery per il salvataggio di alcuni sistemi e
dei dati presenti nel sistema informatico della LAN dell’Amministrazione: si supponga di disporre di almeno
20 sistemi server (con vari sistemi operativi sui diversi server e vari applicativi e DBMS). Riguardo ai server, 15 sono situati nella sede centrale e 5 in sedi remote (1 server per sede remota) con collegamenti xDSL
punto-punto tra la sede remota e la sede centrale. La soluzione adottata dovrà essere il più possibile automatizzata e centralizzata nella gestione. Riguardo alle scelte tecnologiche (architettura, protocolli, QoS, politiche di backup e sicurezza, ecc.) si fornisca una motivazione delle scelte adottate.
Si supponga inoltre che la suddetta sede centrale dell’Amministrazione ospiti un Server con il seguente
Database UnivDb (in ambiente MYSQL):
 cdl = {id, id_facolta, nome, classe_di_laurea, numero_chiuso};
 facolta = {id, nome, indirizzo, citta};
 insegnamento = {id, id_cdl, nome, crediti, anno};
Supponiamo di voler creare una pagina web per l'inserimento dei dati minimali associati ad un nuovo corso
di laurea (es. codice del corso e codice della facoltà). La struttura generale dovrà essere la seguente: dovrà
comparire una form in cui si richiede all'utente di immettere i dati che si vogliono inserire e poi, cliccando su
un pulsante, il controllo passerà ad uno script che eseguirà l'operazione di aggiornamento della base di dati.
Una volta avvenuto l'inserimento, uno script richiamerà automaticamente un nuova pagina che si occuperà di
visualizzare un messaggio di conferma all'utente.
Il candidato descriva e riporti le porzioni di codice ritenute più significative per identificare la soluzione del
suddetto problema. Il linguaggio da utilizzare dovrà essere Open-Source (preferibilmente PHP o Java).
In riferimento ai fogli di stile, il candidato illustri come sia possibile associare un foglio di stile CSS ai form,
fornendone un semplice esempio per il form di inserimento dati.
Fornire un esempio di diagramma UML che documenti opportunamente l’ipotetico programma sviluppato.
TRACCIA B
Si illustri una soluzione per realizzare un collegamento dati wireless che consenta il collegamento di tre sedi
remote con la sede centrale dell’Amministrazione. Tutte le sedi si trovano nell’ambito dello stesso centro
cittadino. Si illustrino in particolare le problematiche da dover valutare, le scelte tecnologiche, i protocolli
adottati, l’architettura per la sicurezza, il monitoraggio e la QoS. Fornire un’opportuna motivazione delle
scelte adottate.
Si supponga inoltre che la suddetta sede centrale dell’Amministrazione ospiti un Server con il seguente
Database UnivDb (in ambiente MYSQL):
 cdl = {id, id_facolta, nome, classe_di_laurea, numero_chiuso};
 facolta = {id, nome, indirizzo, citta};
 insegnamento = {id, id_cdl, nome, crediti, anno};
Supponiamo di voler creare una pagina web per la modifica di alcuni dati di un corso di laurea. La struttura
generale dovrà essere la seguente: dovrà comparire una form in cui si richiede all'utente di immettere il
codice del corso di laurea e poi, cliccando su un pulsante, i dati principali del corso (es. classe di laurea e
codice facoltà) sono presentati all'utente in una form, pronti per essere modificati. Una volta che l'utente avrà
sottomesso la form, il controllo passerà ad uno script che eseguirà l'operazione di aggiornamento della base
di dati. Se la modifica è avvenuta con successo l'utente viene rediretto a una pagina con la "ricevuta"
dell'operazione (la “ricevuta” visualizza i dati modificati).
Il candidato descriva e riporti le porzioni di codice ritenute più significative per identificare la soluzione del
suddetto problema. Il linguaggio da utilizzare dovrà essere Open-Source (preferibilmente PHP o Java).
Si illustri inoltre come poter gestire eventuali controlli sui dati immessi e relativi messaggi all’utente,
fornendone un esempio.
Fornire un esempio di diagramma UML che documenti opportunamente l’ipotetico programma sviluppato.