Avanti Indietro Indice

Progetto e verifica delle transazioni

Le transazioni tipiche sono state raccolte nei requisiti del sistema. A livello concettuale, occorre simulare il loro flusso di esecuzione verificandone la fattibilità. Ad esempio, consideriamo la transazione:

Generare una statistica sull'andamento delle stagioni teatrali della rete. Per ogni stagione si vuole calcolare la media degli spettatori paganti, la media dell'affluenza, cioè del rapporto tra paganti e capienza e la media degli incassi riferite agli spettacoli della stagione. Si vuole inoltra stampare gli spettacoli di una particolare stagione in ordine di: (i) paganti, (ii) affluenza, (iii) incasso.

I dati in ingresso di questa transazione di interrogazione sono una particolare stagione teatrale. E' possibile accedere ai relativi spettacoli tramite le relazioni proposta e alle corrispondenti messe in scena attravarso la relazione scena. Per ogni spettacolo, il numero di spettatori paganti si ottiene contando il numero di prenotazioni associate ad ogni messa in scena dello spettacolo. L'incasso dello spettacolo si ottiene sommando i prezzi delle prenotazioni. L'affluenza si ottiene come rapporto tra paganti e capienza dello spazio teatrale della messa in scena. Per ogni spettacolo è dunque possibile definire funzioni per il calcolo dei paganti, dell'affluenza e dell'incasso. Le medie possono dunque essere calcolate e gli spettacoli possono dunque essere ordinati secondo il valori di queste funzioni. Dunque la transazione è fattibile.

Inserire una nuova prenotazione, se possibile.

Questa è una transazione di aggiornamento che ha in ingresso una prenotazione riferita ad uno spettacolo. La prenotazione si può inserire se ci sono ancora posti a disposizione per quello spettacolo. L'attributo calcolato posti disponibili contiene il numero di posti liberi per uno spettacolo.

Trovare gli spettacoli andati in scena che sono prodotti da un teatro della rete.

Questa è una transazione di interrogazione senza dati in ingresso. Occorre restituire gli spettacoli appartenenti a qualche stagione teatrale che partecipano alla relazione produzione con un produttore interno.

Trovare tutti gli incrementi stipendiali di un certo dipendente ordinati cronologicamente.

Questa è una transazione di interrogazione con un dipendente in ingresso. Occorre trovare tutti gli stipendi raggiungibili tramite la relazione paga ordinati secondo la data di inizio dello stipendio. Ogni coppia consegutiva di stipendi corrisponde ad un incremento salariale pari alla differenza dell'importo.

Anche le regole aziendali dovranno essere implementate come le transazioni. Dunque è necessario verificare la loro fattibilità. Ad esempio, consideriamo la regola:

Un teatro non può mettere in scena più di due spettacoli di propria produzione all'interno della stessa stagione teatrale.

Quando una stagione teatrale di un teatro viene inserita (o modificata) occorre verificare che non vi siamo più di due spettacoli che compaiono come produzioni di quel teatro. E' possibile controllare se uno spettacolo è prodotto da un teatro della rete verificando se esso partecipa alla relazione produzione con un produttore interno.

I dipendenti con almeno 10 anni di attività in un teatro possono concorrere ad un posto nel Consiglio di Amministrazione di quel teatro.

Quando un dipendente entra nel CDA di un teatro occorre verificare che la sua data di assunzione in quel teatro sia almeno 10 anni fa. Questo è fattibile in quanto esiste l'attributo data di assunzione della relazione lavoro.

Avanti Indietro Indice
Basi di dati - Massimo Franceschet