+ All Categories
Home > Documents > il - Portale Cdc · 11. Che cos'è un sistema RAID? Descriverne le strutture e i vantaggi derivanti...

il - Portale Cdc · 11. Che cos'è un sistema RAID? Descriverne le strutture e i vantaggi derivanti...

Date post: 20-Feb-2019
Category:
Upload: lynhan
View: 214 times
Download: 0 times
Share this document with a friend
14
1. Dopo aver riportato sinteticamente le caratteristiche dello standard "10-gigabit Ethernet", elencare e descrivere le relative tecniche di trasmissione su fibra e su rame. 2. Dopo aver definito sinteticamente il significato di algoritmo di routing, descrivere la tecnica di f1ooding. 3. Nell'ambito dei protocolli di controllo utilizzati nel livello di rete, descrivere l'internet control message protocol (ICMP) ed i relativi principali messaggi. 4. In cosa consiste un attacco "DNS spoofing"? Descrivere inoltre le caratteristiche del protocollo Domain Name System Security Extensions (DNSsec). 5. Che cos'è una "stored procedure" in SQL? 6. Fornire una descrizione delle tre fasi principali della progettazione di basi di dati. 7. Nell'ambito della progettazione concettuale delle basi di dati, descrivere la strategia "inside-out". 8. Nell'ambito della normalizzazione di una base dati, descrivere quali sono le proprietà che dovrebbero essere sempre soddisfatte da una decomposizione. 9. Dopo aver definito il significato di "kernel", spiegare a cosa serve il metodo stratificato. 10. Nell'ambito della gestione della memoria centrale, definire ed eventualmente rappresentare il procedimento di awicendamento o scambio (swapping) dei processi in memoria. 11. Che cos'è un sistema RAID? Descriverne le strutture e i vantaggi derivanti dalla sua implementazione. 12. Cosa si intende per Cloud Computing? Descrivere inoltre la seguente tipologia di servizio: "Platform-as- a-Service" (PaaS). 13. Nell'ambito dell'analisi dei dati, quali sono le funzioni di base deIl'OLAP? 14. Cos'è un "data mart"? Quali sono le fasi della progettazione di un data mart? 15. Che cosa sono gli "indici di proiezione" nell'ambito del data warehouse? 16. Nell'ambito della Business Intelligence, cosa si intende per "Business Performance Management" (BPM)? 17. Cosa sono i Web Services? Darne una descrizione delle caratteristiche e del funzionamento. 18. Spiegare il concetto di "ontologia" nell'ambito del Web Semantico. 19. Spiegare il significato dell'acronimo "XML", dandone le caratteristiche principali. 20. Descrivere brevemente il significato di "Protocol far Web Description Resources" (POWDER). 21. Descrivere brevemente il processo "unificato" di sviluppo software. 22. Nell'ambito della modellazione analitica dare una descrizione della modellazione "Class-Responsibility- Collaborator" (CRC). 23. Cosa sono i Function Point (FP)? Come vengono calcolati? 24. Dopo aver fornito una definizione di "System Testing", presentarne i tipi conosciuti ed applicabili ai sistemi software. 25. Come awiene il controllo della versione di un software? Descrivere brevemente il sistema CVS. 26. Esporre la tecnica" Adaptive Software Development" (ASD) come metodologia agile per lo sviluppo del software. 27. Nell'ambito della gestione di progetti, quali sono gli elementi chiave di un progetto secondo il principio "W5HH"? 28. Definire la scheduling nello sviluppo di un software ed indicarne i metodi conosciuti. 29. Introdurre brevemente le best practices "ITIL". Quante e quali sono le fasi del ciclo di vita di un servizio. 30. Dare una breve descrizione della "Business Process Management" (BPM). In cosa differisce dal "Business Process Re-engeneering" (BPR)?
Transcript

1. Dopo aver riportato sinteticamente le caratteristiche dello standard "10-gigabit Ethernet", elencare e

descrivere le relative tecniche di trasmissione su fibra e su rame.

2. Dopo aver definito sinteticamente il significato di algoritmo di routing, descrivere la tecnica di

f1ooding.

3. Nell'ambito dei protocolli di controllo utilizzati nel livello di rete, descrivere l'internet control message

protocol (ICMP) ed i relativi principali messaggi.

4. In cosa consiste un attacco "DNS spoofing"? Descrivere inoltre le caratteristiche del protocollo

Domain Name System Security Extensions (DNSsec).

5. Che cos'è una "stored procedure" in SQL?

6. Fornire una descrizione delle tre fasi principali della progettazione di basi di dati.

7. Nell'ambito della progettazione concettuale delle basi di dati, descrivere la strategia "inside-out".

8. Nell'ambito della normalizzazione di una base dati, descrivere quali sono le proprietà che dovrebbero

essere sempre soddisfatte da una decomposizione.

9. Dopo aver definito il significato di "kernel", spiegare a cosa serve il metodo stratificato.

10. Nell'ambito della gestione della memoria centrale, definire ed eventualmente rappresentare il

procedimento di awicendamento o scambio (swapping) dei processi in memoria.

11. Che cos'è un sistema RAID? Descriverne le strutture e i vantaggi derivanti dalla sua implementazione.

12. Cosa si intende per Cloud Computing? Descrivere inoltre la seguente tipologia di servizio: "Platform-as-

a-Service" (PaaS).

13. Nell'ambito dell'analisi dei dati, quali sono le funzioni di base deIl'OLAP?

14. Cos'è un "data mart"? Quali sono le fasi della progettazione di un data mart?

15. Che cosa sono gli "indici di proiezione" nell'ambito del data warehouse?

16. Nell'ambito della Business Intelligence, cosa si intende per "Business Performance Management"

(BPM)?

17. Cosa sono i Web Services? Darne una descrizione delle caratteristiche e del funzionamento.

18. Spiegare il concetto di "ontologia" nell'ambito del Web Semantico.

19. Spiegare il significato dell'acronimo "XML", dandone le caratteristiche principali.

20. Descrivere brevemente il significato di "Protocol far Web Description Resources" (POWDER).

21. Descrivere brevemente il processo "unificato" di sviluppo software.

22. Nell'ambito della modellazione analitica dare una descrizione della modellazione "Class-Responsibility­

Collaborator" (CRC).

23. Cosa sono i Function Point (FP)? Come vengono calcolati?

24. Dopo aver fornito una definizione di "System Testing", presentarne i tipi conosciuti ed applicabili ai

sistemi software.

25. Come awiene il controllo della versione di un software? Descrivere brevemente il sistema CVS.

26. Esporre la tecnica" Adaptive Software Development" (ASD) come metodologia agile per lo sviluppo del

software.

27. Nell'ambito della gestione di progetti, quali sono gli elementi chiave di un progetto secondo il principio

"W5HH"?

28. Definire la scheduling nello sviluppo di un software ed indicarne i metodi conosciuti.

29. Introdurre brevemente le best practices "ITIL". Quante e quali sono le fasi del ciclo di vita di un

servizio.

30. Dare una breve descrizione della "Business Process Management" (BPM). In cosa differisce dal

"Business Process Re-engeneering" (BPR)?

\\ --.

1.

2. 3. 4.

5.

6.

7.

8.

9.

Dopo aver riportato sinteticamente le caratteristiche dello standard "Gigabit Ethernet", descrivere le

due funzionalità "carrier extension" e "frame bursting".

Dopo aver definito una "rete a circuito virtuale", descriverne il funzionamento.

Nell'ambito del protocollo IPv6, descrivere i tipi di "intestazioni estese".

Descrivere, nella maniera più esauriente possibile, come vengono distribuite le chiavi pubbliche in

modo sicuro. Cosa è e quale è la principale funzione dello standard X.509?

Nell'ambito delle basi di dati esporre il concetto di "transazione", descrivendo inoltre le quattro

proprietà "AClD" delle transazioni.

Nell'ambito dell'ambiente Java descrivere le caratteristiche del modulo Java Database Connectivity

(JDBC).

Nell'ambito della progettazione concettuale delle basi di dati, descrivere la strategia "top-down".

Dopo aver introdotto il concetto di normalizzazione di una base di dati, descrivere la terza forma

normale.

Cos'è il debugging nell'ambito dei sistemi operativi? Definire sinteticamente la funzione dell'utilità

DTrace.

10. Nell'ambito della sincronizzazione dei processi dare una definizione della "sezione critica". Quali

soluzioni software o hardware esistono per rispondere al problema della sezione critica?

11. Dopo aver definito sinteticamente il "file system", descrivere le caratteristiche del protocollo NFS.

12. Dopo aver descritto la differenza tra cloud privato e cloud pubblico, descrivere la seguente tipologia di

servizio: "Infrastructure-as-a-Service" (laaS).

13. Cosa si intende con l'acronimo OLAP? Descrivere inoltre le tipologie di sistemi OLAP.

14. Descrivere il ciclo di vita di sistemi di data warehouse denominato "Rapid Warehousing Methodology".

15. Che cosa sono gli "indici Join" nell'ambito del data warehouse?

16. Nell'ambito della Business Intelligence, descrivere cosa si intende per "data mining".

17. Definire brevemente i linguaggi HTML e XHTML.

18. Nell'ambito del Web Semantico cosa sono i "metadati"? Descriverne le caratteristiche principali.

19. Facendo riferimento al diagramma piramidale del web semantico, descrivere brevemente il significato

di "URI".

20. Descrivere brevemente il significato di "Web Ontology Language" (OWL).

21. Nell'ambito dello sviluppo software, cosa si intende per "modelli a processo evolutivo"? Descrivere, in

particolare, il modello a spirale.

22. In che modo la tecnica "Quality Function Deployment" (QFD) traduce i bisogni del cliente in requiSiti

tecnici per il software?

23. Nell'ambito del processo di sviluppo software fornire una breve presentazione del modello di design e

riportare gli elementi previsti nella progettàzione.

24. Nell'ambito delle strategie di testing del software descrivere il "validation testing".

25. Nell'ambito della gestione della qualità come possono essere misurate l'affidabilità e la disponibilità di

un software?

26. Descrivere, nell'ambito dei modelli di processo agili per lo sviluppo del software, cosa si intende per

"Extreme Programming" (XP).

27. Nell'ambito della gestione di progetti di sviluppo software, come viene definito lo "scope" del software

e cosa deve riportare l'enunciato dello scope?

28. In base a quali parametri avviene la scelta fra acquisto e sviluppo di un software?

29. Nell'ambito della gestione dei rischi di un progetto, cosa è un "piano RMMM"?

30. Cosa si intende per "Service Oriented Architecture" (SOA)? Su quali elementi o standard si fonda?

1. Dopo aver riportato sinteticamente le caratteristiche dello standard "Fast Ethernet", descrivere le

principali differenze tra le tecniche di trasmissione 100-Base-T4, 100Base-TX e 100Base-FX.

2. Dopo aver definito una "rete datagram", descriverne il funzionamento.

3. Dopo aver descritto i motivi che hanno portato all'introduzione del protocollo IPv6, definirne

brevemente le caratteristiche e le differenze con il protocollo IPv4.

4. Dopo aver indicato l'ambito di utilizzo e le principali caratteristiche del protocollo "SIP", descrivere le

somiglianze e le differenze con il protocollo H.323.

5. Definire e descrivere le attività di cui si compone il ciclo di vita di un sistema informativo.

6. Cosa sono i trigger? Descrivere la loro importanza funzionale nei sistemi relazionali.

7. NeWambito della progettazione dei database esporre il modello Entità-Relazione, soffermandosi

sull'analisi dei suoi costrutti principali.

8. Dopo aver introdotto il concetto di normalizzazione di una base di dati, descrivere la forma normale di

Boyce e Codd.

9. Definire brevemente il concetto generale di macchina virtuale, illustrandone i vantaggi. Descrivere

inoltre il funzionamento della macchina virtuale Java.

10. Quali sono i criteri per confrontare gli algoritmi di scheduling della CPU? Descrivere inoltre l'algoritmo

di scheduling "in ordine d'arrivo" (FCFS).

11. Cosa si intende per tecnica della memoria virtuale? Descrivere inoltre il caso di "paginazione

degenere" (thrashing).

12. Dopo aver introdotto sinteticamente il concetto di Cloud Computing, descrivere la seguente tipologia

di servizio: "Software-as-a-Service" (SaaS).

13. Dopo aver dato la definizione di "data warehousing", descriverne le architetture tipiche.

14. Descrivere il ciclo di vita di sistemi di data warehouse denominato "Business Dimensionai Lifecycle".

15. Che cosa sono gli "indici bitmap" nell'ambito del data warehouse?

16. Nell'ambito della Business Intelligence, descrivere le tecniche di analisi "what-if'.

17. Definire brevemente i protocolli HTTP e HTTPS.

18. Una delle prime implementazioni web "dinamiche" è stata la "Common Gateway Interface" (CGI).

Descriverne le caratteristiche principali.

19. Facendo riferimento al diagramma piramidale del web semantico, descrivere brevemente lo standard

"Unicode".

20. Che cosa è il"Resource Description Framework" (RDF) proposto dal W3C?

21. Nell'ambito dello sviluppo software, cosa si intende per "modelli a processo incrementale"?

Descrivere, in particolare, il modello RAD.

22. In cosa consiste il deployment di un software? Quali sono i principi chiave da seguire quando lo si

esegue?

23. Elencare e descrivere brevemente i principi o concetti fondamentali della progettazione del software.

24. Nell'ambito delle strategie di testing del software fornire una breve descrizione dell' "integration

testing".

25. Dopo aver presentato i fondamenti del testing del software, fornire una breve descrizione del testing

"black-box" e "white box".

26. Cosa si intende con processo di sviluppo software "agile"? Quali sono gli elementi chiave? 27. Esplicitare e dare una breve descrizione delle "quattro P" su cui si fonda la gestione di un progetto.

28. Quale è la differenza tra metrica di processo e metrica di progetto?

29. Dare una breve descrizione della "Earned Value Analysis" (EVA)?

30. Introdurre brevemente il metodo di project management "PRINCE2".

Il Sistema Informativo per l'Amministrazione del Personale (SIAP) è un sistema integrato rivolto

alla gestione giuridico-amministrativa del personale, realizzato dal Ministero dell'Economia e delle

Finanze con lo scopo di automatizzare i processi interni di gestione del personale e di fornire uno

strumento di supporto a tutte le strutture dell'Amministrazione coinvolte nella gestione del

personale.

L'implementazione della funzione RilevamentoPresenze consente di rilevare la presenza dei

dipendenti del MEF in tutte le sedi distribuite sul territorio regionale, consentendo loro di registrare

l'entrata e l'uscita mediante uno qualsiasi degli appositi sensori del sistema.

TI sensore dovrà rilevare la data e l'ora dell 'evento e il nome del dipendente interessato. Le

informazioni relative agli eventi generati dai dipendenti saranno raccolte dal sistema e raggruppate

in un rapporto periodico (mese, anno).

TI sistema prevede la visualizzazione degli eventi più recenti su richiesta esplicita del dipendente.

Gli eventi eccezionali (malattia, ferie, permessi) segnalati dai dipendenti sono registrati da un

dipendente della sede centrale, responsabile del rilevamento presenze, mediante un 'apposita

interfaccia utente.

Prima di inviare i rapporti periodici al sistema stipendi, il responsabile del rilevamento presenze li

normalizza, rimuovendo eventuali incongruenze (doppie entrate, doppie uscite) anche sulla base

delle dichiarazioni presentate dai dipendenti. Può accadere, infatti, che un dipendente registri

erroneamente un evento (un'entrata al posto di un'uscita, ad esempio) o che si dimentichi di

registrarlo.

Tutte le informazioni relative ai dipendenti, al loro profilo (orari di entrata e di uscita, intervalli per

il pranzo, compensazioni e autorizzazione allo svolgimento delle ore straordinarie) sono gestite dal

sistema stipendi e inviate al sistema per il rilevamento delle presenze che le utilizza in sola lettura.

1-4

Quesito 1

Dare un diagramma delle classi, considerando come classi o attributi tutti e soli i termini che

nell'enunciato compaiono in grassetto.

Quesito 2

E' stato individuato il caso d'uso Registrazione con la seguente breve descrizione:

Il dipendente segnala la propria entrata o uscita al sistema.

Domanda

Dare la narrativa del caso d'uso Registrazione

Quesito 3

Si sono individuati i seguenti caso d'uso:

R et. E tiE lO eglS razIone ven cceZlona I Breve descrizione Il responsabile immette nel sistema le informazioni relative a eventi

eccezionali (malattia, ferie, permessi, ecc.) per ciascun dipendente interessato

Attori principali Responsabile Attori secondari Nessuno

Normalizzazione Breve descrizione Il responsabile, basandosi sulle dichiarazioni dei dipendenti, modifica le

informazioni contenute nel rapporto, per nrnuovere eventuali incongruenze (doppie entrate o doppie uscite)

Attori principali Responsabile Attori secondari Nessuno

In particolare, il caso d'uso Normalizzazione ha la seguente sequenza principale degli eventi:

Normalizzazione

Sequenza principale degli eventi

1. Per ogni dipendente:

1.1. per ogni doppia entrata o uscita:

1.1.1. il sistema la presenta al responsabile

1.12. se il responsabile ha informazioni al riguardo comunica l'azione correttiva al sistema

1.1.3. altrimenti il responsabile segnala al sistema di salvare l'incongruenza in una lista

~ ~ L\7 ~ 2-4

1 'daRisolvere'

1.2. se la lista 'daRisolvere' non è vuota il sistema genera una lettera di richiesta di chiarimenti al dipendente.

Domanda

Dare un diagramma di sequenza che realizzi il caso Normalizzazione.

Quesito 4

La vista comportamentale, a componenti e connettori (C&C), dell'architettura del sistema è dato dal

seguente diagramma, dove mancano i tipi dei connettori.

«component~~ [) D8Eventi

«componen!» GestoreGUI

«component»» [I RegistratorePresenze

«component~~ ~

LoglcaPresenze

«component»> ~ GesioreSensore

I componenti hanno le seguenti responsabilità:

GestoreSensore Gestisce un sensore, invia gli eventi rilevati al Ref!istratorePresenze. ReJlistratorePresenze Interfaccia il GestoreSensore ed il DBEventi. DBEventi Mantiene gli eventi rilevati dai sensori. LogicaPresenze Genera il rapporto periodico e lo invia al SistemaStipendi. Per

generare il rapporto interroga il DBEventi e interagisce con GestoreGUl Riceve dal SistemaSti pendi le informazioni relative ai dipendenti.

GestoreGui Permette di visualizzare gli eventi più recenti, di registrare gli eventi eccezionali e di normalizzare i rapporti.

Domanda

4.a. Completare il diagramma C&C indicando il tipo dei connettori, ove siano individuabili degli stili architettonici.

3-4

4.b Per la realizzazione del sistema sono state proposte due soluzioni diverse. Entrambe prevedono l'uso di un server centrale e di un PC per il responsabile, presso la sede centrale, connessi in rete locale. Le soluzioni differiscono per il tipo di connessione dei sensori. La prima soluzione prevede un concentratore per ogni filiale ed una connessione punto a punto tra ogni sensore e il concentratore, a sua volta connesso in rete geografica con iI server centrale. La seconda prevede invece un collegamento in rete geografica tra ogni sensore e il server centrale, senza concentratori.

Dare i diagrammi di dislocazione (deployment diagram) dei componenti descritti alla domanda precedente, per ciascuna delle strutture hardware. Si assuma che gli artefatti abbiano lo stesso nome dei componenti che manifestano, e che siano tutti di tipo jar.

Quesito 5

Si consideri la seguente classe J ava:

public class PuntoNelTempo private int m; Il minuto private int h; Il ora public PuntoNelTempo(int ora, int minuto)

24; h = Math.abs(ora) % m = Math.abs(minuto) % 60;

public int intervallo (PuntoNelTempo p) { PuntoNelTempo pl, p2;

Domanda

if (this.h > p.h) { pl = p; p2 = this;

else if (this.h < p.h) pl = this; p2 = p;

else if (this.m >= p.m) pl p; p2 = this;

else pl this; p2 = p;

int int_h = p2.h - pl.h; int int_m = p2.m - pl.m; if (int_m >= O)

return int h * 60 + int_m; else {

return (int_h - 1) * 60 + (60 + int_m);

Si disegni il grafo di flusso del metodo intervallo. Si fornisca un insieme minimo di valori di input

per i casi di prova che garantiscano la copertura dei cammini del metodo intervallo.

4-4

A

2

Per far fronte alla agguerrita concorrenza delle compagnie low cost, l' ALIT ALIA vuole rendere più

aggressiva la sua campagna di fidelizzazione (Mille Miglia), proponendo ai suoi clienti l'iscrizione

al programma di fedeltà che consente di ricevere in omaggio biglietti aerei o soggiorni in varie

località.

Iscrivendosi al programma da semplice cliente si può diventare un associato della compagnia aerea,

guadagnando immediatamente un bonus di 5.000 miglia utili. Ogni volta che un associato vola con

la compagnia aerea, le .miglia accumulabili del volo sono sommate alle miglia utili, permettendo

così di raggiungere le miglia necessarie per richiedere uno dei premi. La richiesta premi deve

essere effettuata mediante il portale dedicato agli associati; dal portale è sufficiente scegliere il

premio e stampare la ricevuta1•

Gli associati che accumulano almeno 15.000 miglia (miglia accumulate) sono promossi dal livello

standard al livello argento, usufruendo di particolari agevolazioni al momento dell 'imbarco. Se

invece accumulano almeno 100.000 miglia entrano a far parte degli associati del livello oro2•

note 1 Soggetto a disponibilità di miglia utili nella situazione dell 'associato e di disponibilità del premio scelto. I premi riscossi danno luogo a una diminuzione immediata delle miglia utili. La situazione è aggiornata il 31 dicembre, mantenendo solo le miglia dei voli effettuati negli ultimi 5 anni.

2 Tutte le condizioni si riferiscono esclusivamente alle miglia accumulate in un anno. Il passaggio da un livello alraltro è effettuato il 31 dicembre. La permanenza nel livello da un anno all'altro è soggetta al rispetto degli stessi requisiti per entrare nel livello. Il bonus iniziale non concorre al raggiungimento delle miglia richieste per cambiare o mantenere un livello.

~ 1-3

Quesito 1

1.a Dare un diagramma delle classi che descriva il dominio, considerando come classi o attributi tutti e soli i termini che, nell'enunciato e nelle note, compaiono in grassetto.

l.b Dare un diagramma di attività che descriva il processo di assegnazione di un premio.

Quesito 2

L'analisi dei requisiti ha portato al seguente diagramma dei casi d'uso:

GestioneAssociati

T * Cliente <<System» Imbarco

, , , , , ,«Include» , ,

Tempo

-«Include»

Il caso AccumuloPunti ha la seguente breve descrizione:

Il sistema riceve la lista dei passeggeri di un volo e la esamina, aggiornando di conseguenza la situazione degli associati della compagnia aerea.

Domanda

Dare la narrativa del caso d'uso AccumulaPunti.

Quesito 3

Disegnare un diagramma di sequenza che realizzi il caso d'uso AccumulaPunti, mostrando le interazioni tra il sistema e l'attore coinvolto.

2-3

Ouesito4

L'analisi architettonica ha portato a individuare le seguenti componenti:

Componente Responsabilità

GestoreClientiLatoServer Realizza la parte server dei casi d'uso iniziati dai Clienti e il passaggio dall'uno all'altro

GestoreClientiLatoClient Realizza la parte client dei casi d'uso iniziati dai Clienti

DBAssociati Gestisce i dati degli associati del Club

GestionePunti Realizza i casi d'uso AccumuloPunti e AggiomamentoAnnuale

ed il seguente connettore «custom»

Connettore Responsabilità

gestioneClienti Permette gli scambi d'informazione tra i gestori Clienti.

Domanda

Dare una vista comportamentale, a componenti e connettori (C&C), sull'architettura del sistema GestioneAssociati, utilizzando le componenti suddette, il connettore dato ed eventuali connettori standard.

Ouesito 5

Si consideri il metodo stimaLivelli, con la seguente specifica: dato un vettore di associati della compagnia aerea, restituisce una tripla formata, rispettivamente, dal numero degli associati che, in base alla loro situazione: migliorano il proprio livello, non lo modificano, lo peggiorano. Si noti che i livelli standard, argento e oro sono codificati rispettivamente con 1, 2 e 3.

public Tripla stimaLivelli(Vector <Associato> associati) int inAumento = O; int stabili = O; int inCalo = O; for (Associato m : associati) { Il itera su associati

int livello = m.getLivello{) int miglia = m.getMiglia{) ; int differenza; if (miglia > 100000) differenza = 3 - livello;

else if (miglia > 15000) differenza = 2 - livello; else differenza = 1 - livello;

if (differenza> O) inAumento++; else if (differenza==O) stabili++;

else inCalo++;

return new Tripla (inAumento, stabili, inCalo)

Domanda

Definire un insieme di coppie di attributi (livello, miglia) da attribuire agli elementi del vettore associati che permetta di raggiungere una copertura del 100% del codice del metodo stimaLivelli,

~ SA: il Cri~ dei CO~~ 3 _ 3

,.

La Corte dei Conti ha deciso di avviare per i suoi dipendenti una serie di tirocini formativi al fine di

aumentare e potenziare le competenze interne sia in ambito economicollegisiativo sia in ambito

informatico.

I tirocini prevedono la frequenza di un corso della durata di alcuni mesi, a seconda della

complessità degli argomenti trattati, ed un esame finale per la verifica sia della partecipazione dei

dipendenti sia dell'utilità dell' offerta formativa. Inoltre i corsi sono tenuti da docenti universitari

scelti in base alla competenza in materia.

Visto che ogni dipendente è tenuto a seguire un certo numero di corsi nel corso dell' anno solare e a

superarne i relativi esami conclusivi, si è deciso di effettuare la registrazione dell'esame. Infine per

incentivare i dipendenti alla partecipazione attiva ai tirocini, verrà assegnato dal docente un voto

come esito dell' esame finale.

Il processo di dematerializzazione dei documenti cartacei e di innovazione delle procedure

amministrative della Corte dei Conti prevede l'adozione di un sistema di registrazione degli esami

basato sull utilizzo dei telefoni cellulari da parte dei docenti.

Per ogni corso, caratterizzato da un codice, è nominata una commissione, formata dai docenti che

possono svolgere il ruolo di esaminatore. Tra di essi, è designato il presidente di commissione.

Il sistema, denominato CdcEx, prevede che i docenti abilitati all'uso di CdcEx facenti parte della

commissione, utilizzino il cellulare per verbalizzare gli esami, mediante l'invio di un SMS al

numero telefonico del servizio. Come misura di sicurezza e autenticazione, i docenti si abilitano al

servizio registrando (una volta sola) su CdcEx il numero del loro telefono cellulare.

Ogni docente ha un indirizzo mail. Giornalmente, CdcEx registra gli esami della giornata nel

sistema D2 e invia agli esaminatori di ogni corso una mail contenente un'indicazione degli esami

del loro corso registrati in giornata. In seguito alla ricezione della mail, il presidente della

commissione provvede a rispondere per confermare. CdcEx attende 60 giorni l'invio della mail di

conferma.

Gli esami confermati sono definitivamente archiviati nel sistema D2, quelli non confermati sono

cancellati dal sistema D2 e devono essere registrati manualmente dal presidente della commissione,

secondo una procedura cartacea.

Utilizzando l'elenco dei dipendenti iscritti, organizzato in sottoelenchi per ogni giornata di esami, il

docente procede a effettuare l'esame che può avere un esito positivo (voto maggiore o uguale a 6

decimi) o negativo. Solo gli esami con esito positivo sono registrati mediante l'invio di un SMS.

1-4

3 Quesito 1

Dare un diagramma delle classi, considerando come classi o attributi tutti e soli termini che nell'enunciato compaiono in grassetto.

Quesito 2

L'analisi dei requisiti ha portato al seguente diagramma dei casi d'uso:

CdcEx

Sistemista

DocenteAbilitato

con le seguenti narrative incomplete:

Configurazione: Configurazione iniziale del servizio.

Abilitazione: Un docente richiede l'abilitazione all'uso del servizio.

Tempo

«sistema»

MailServer

«sistema»

D2

Verbalizzazione: Permette di verbalizzare un esame usando il telefono cellulare.

ChiusuraSerale: La sera vengono registrati nel sistema D2 gli esami verbalizzati in giornata e

viene mandata una e-mail ai docenti.

Archiviazione:

Domanda

La sera si archiviano nel sistema D2 gli esami verbalizzati 60 giorni prima e

confermati; si cancellano dal sistema D2 quelli non confermati.

Dare la narrativa di Verbalizzazione, ChiusuraSerale e Archiviazione.

~ ~ 0' 2-4

Quesito 3

Si supponga di disporre di almeno tre tipi di nodi hardware:

1. ServerCdcEx che funge da server per l'applicazione CdcEx (un solo nodo di questo tipo);

2. ServerMai/ dove è dislocato il Mai/Server (un solo nodo di questo tipo);

3. PC usato dai docenti quando vogliono abilitarsi o leggere/scrivere messaggi di posta elettronica (un numero imprecisato di nodi di questo tipo).

Il canale tra il nodo ServerCdcEx e i nodi PC supporta HTTP.

I canali con il Server Mail supportano SMTP.

La progettazione architettonica ha individuato le seguenti componenti, alcune da realizzare, altre

che già esistono. Si noti che il MailServer, anche se di fatto esterno al sistema CdcEx - al pari del

sistema D2 e del sistema di ricezione SMS dell'operatore telefonico utilizzato - viene esplicitamente

descritto nell'architettura per completezza. Si noti anche che l'utente interagisce con la componente

Abilitazione attraverso un browser.

Componente Disponibile Responsabilità

DBdocentiAbilitati Mantiene i nomi e i numeri di telefono dei docenti abilitati al servizio.

DBesami Mantiene i dati degli esami verbalizzati e di quelli registrati.

Abilitazione Permette ai docenti di abilitarsi.

GestioneEsami Realizza i casi d'uso Verbalizzazione, ChiusuraSerale e Archiviazione.

MailServer X Server di posta.

MailClientAPI X Client di posta con interfaccia verso altra componente.

Mail ClientInterattivo X CHent di posta con interfaccia utente.

Si assuma che ogni componente si manifesti in un artefatto omonimo, di tipo jar.

Domanda

3.a Fornire una vista comportamentale, a componenti e connettori (C&C)

3.b Fornire una vista logica di dislocazione (deployment diagram)

3-4

3

Quesito 4

Fornire un diagramma di sequenza che illustri come le componenti, individuate nell'ambito del

precedente quesito, interagiscono per realizzare il caso d'uso ChiusuraSerale. Si assuma che le

informazioni sulle commissioni d'esame e sugli indirizzi mail dei docenti siano mantenute nel D2,

cui GestioneEsami accede direttamente.

Quesito 5

Una delle funzioni ausiliarie del sistema CdcEx è di fornire informazioni statistiche sull' andamento

degli esami. In particolare, il sistema deve fornire infonnazioni sul numero d'esami mediamente

sostenuti ogni giorno, per ogni corso. A tale scopo, si prevede l'utilizzo di una funzione

numeroMedioEsami che, dato un vettore di numeri d'esame, ne restituisce la media, arrotondata

all'intero superiore. Per verificare la funzione si prevede un test a scatola nera.

Domanda

Fornire cinque casi di prova per la funzione numeroMedioEsami.

4-4


Recommended