Sei sulla pagina 1di 4

Software Engineering - Prof.

Luca Mainetti
Università del Salento, Facoltà di Ingegneria, Laurea Magistrale Computer Engineering
a.a. 2014-2015
Prova scritta
22 aprile 2016

Nome

Cognome

Matricola

Firma

Non potete utilizzare appunti, libri né altri tipi di materiale didattico.

Scrivere in modo leggibile.

Per l’elaborato utilizzare esclusivamente lo spazio disponibile nei fogli consegnati.


Rispondere in modo sintetico ma completo.

Tempo a disposizione: 2h.

1
DOMANDA 1 (management dell’ingegneria del software).
Descrivere la tecnica dei Function Point e calcolare i Function Point del sistema nel seguito descritto.
Si consideri un’applicazione di Gestione Pazienti, la quale deve eseguire le seguenti operazioni:
1 Gestione dei dati sui Pazienti
1.1 Iscrizione Paziente: inserisci i dati di un nuovo paziente. I dati comprendono il numero di Codice
Sanitario, il Nome, l’Indirizzo e il Reparto in cui viene ricoverato il paziente.
1.2 Interroga Pazienti: richiedi i dati di un paziente dato il suo Nome o il suo numero di Codice
Sanitario.
1.3 Elenca Pazienti per Reparto: mostra la lista di tutti i Pazienti di un certo Reparto, stampandone il
numero totale alla fine.
2 Gestione degli Esami
2.1 Inserisci Esame da Effettuare: inserisci gli esami che un Paziente deve effettuare. L’utente deve
inserire il Codice Sanitario del paziente, il Tipo di esame e la Data dell'esame di laboratorio da effettuare.
2.2 Interroga Esami: richiedi l’elenco degli esami da effettuare su un Paziente dato il suo Codice
Sanitario.
3 Gestione dei Referti
3.1 Inserisci Referto: inserisce il referto di un esame di laboratorio. L’utente inserirà il Tipo dell’esame, la
Data e il Referto (positivo o negativo).
3.2 Interroga Esami refertati: richiede i referti degli esami effettuati da un Paziente, dato il suo numero di
Codice Sanitario, e stampa il numero totale di esami refertati.

2
DOMANDA 2 (design pattern).
Un lido balneare vuole realizzare un software per consentire ai bagnanti di prenotare online le consumazioni e di
riceverle comodamente sdraiati sui lettini. Per usare il sistema, il bagnante deve registrarsi. Quando decide di fare
un’ordinazione, il bagnante si connette al sistema con le proprie credenziali e consulta il catalogo delle
consumazioni disponibili, che sono organizzate per tipologia (bibite, gelati, panini, primi piatti, ecc.). Il bagnante
sceglie dal catalogo una o più consumazioni per comporre l’ordinazione. Quando ha completato l’ordinazione, il
bagnante la conferma indicando il luogo della consumazione (al banco oppure sotto il proprio ombrellone), e
seleziona la preferenza di pagamento (in contanti alla consegna, con carta di credito). Un bagnante può cambiare
idea, modificando l’ordinazione prima di confermarla definitivamente, oppure annullandola. Un bagnante può
fare un’ordinazione anche per un suo amico che sta a un altro ombrellone, indicando il numero dell’ombrellone
medesimo. Il responsabile del lido, periodicamente, accede al sistema con le proprie credenziali e verifica il totale
delle ordinazioni del giorno e di quelle ancora da servire. Il responsabile del lido, periodicamente, esegue
manutenzione del catalogo dei prodotti disponibili, aggiungendone di nuovi, cancellando quelli non saranno più
serviti e aggiornando i prezzi in seguito a variazioni di costo da parte dei fornitori. Il responsabile del bar accede
al sistema con le proprie credenziali e consulta costantemente l’elenco delle nuove ordinazioni, spuntando quelle
che di volta in volta sono consegnate ai bagnanti.
A. Analizzare lo scenario sopra riportato con la tecnica dei casi d’uso estraendo max 3 casi d’uso a scelta.
B. Analizzare i casi d’uso ed estrarre il diagramma UML delle dipendenze.
C. Ridisegnare il diagramma delle dipendenze applicando almeno 1 design pattern creazionale e 1 design pattern comportamentale.

3
4