Beruflich Dokumente
Kultur Dokumente
Indice
Progettazione concettuale:
1) Introduzionepag3
2) Analisi della componente Persona....pag3
3) Analisi della componente Istruttore..pag5
4) Analisi della componente Corso...pag6
5) Analisi della componente Lezionepag6
Schema totale E/Rpag7
6) Dizionario dei datipag8
Progettazione logica:
Aspetti implementativi:
1) Introduzione ad Access.pag15
Tutorial al progetto:
1) Il men principale.pag16
1.1) Gestore abbonamenti pag17
1.2) Gestore allenamenti. pag18
1.2.1) Gestore esercizi pag19
1.2.2) Gestore istruttore... pag20
1.2.3) Gestore scheda pag21
1.3) Gestore Corsi pag22
1.4) Gestore entrate pag23
1.5) Gestore persone.pag24
1.6) Gestore statistichepag 25
2
Raccolta e analisi dei Requisiti.
3
Progettazione Concettuale.
1) Introduzione:
In questa fase si cerca di astrarre la realt di interesse mediante il modello E/R al fine di
ricavare i concetti pi importanti. In prima istanza si adotta uno schema detto a scheletro
in maniera tale da avere una visione unitaria, anche se scarna, dell intero progetto,
successivamente si procede al raffinamento concettuale delle singole componenti dello
schema a scheletro fino ad arrivare al modello completo E/R .
Schema a scheletro
4
Schema E/R della componente "Persona"
telefono data_nascita
Persona
professione
prezzo_abbonamento codice_abbonamento
(1,n) (1,1)
Utente Abbonato sottoscrive Abbonamento
occasionale
(1,n)
data_inizio_abb data_fine_abb
paga
(1,1)
Entrata prezzo_entrata
data_entrata
codice_entrata ora
5
3) Analisi della componente Istruttore:
Un istruttore un membro della palestra che ha il compito di assegnare delle schede con
esercizi individuali ad una o pi persone della palestra e di tenere dei corsi.
Questi definito attraverso un codice istruttore, un nome, un cognome, sesso e tipo di
specializzazione (ogni persona si rivolge allistruttore prima di svolgere un esercizio, in
modo tale da avere delle spiegazioni sulle modalit di esecuzione) .
Le schede sono catalogate per livello di difficolt, tipo di allenamento, codice scheda,
durata allenamento (numero di ore di palestra), data inizio e data fine della scheda (data
di validit della scheda), giorni settimanali in cui la scheda deve essere eseguita.
Ogni scheda contiene un certo numero di esercizi che sono identificati da un codice
esercizio, da un nome dellesercizio, un nome della macchina in cui vengono fatti gli
esercizi, una durata del singolo esercizio, un certo numero di ripetizioni per esercizio
(reps), dal numero delle serie di ripetizioni (numero di volte in cui devono essere eseguite
le ripetizioni .
Istruttore
(1,n)
assegna
data_inizio
durata_allenamento (1,n) data_fine codice_esercizio nome_esercizio nome_macchina
reps
serie
giorni_settimanali Scheda contiene Esercizio
(1,n) (1,n) durata_esercizio
codice_scheda livello_di_difficolt
tipo_di_allenamento
6
4) Analisi della componente Corso:
Un corso caratterizzato da una serie di attivit ginniche di natura aerobica che vengono
tenute dagli istruttori specializzati nel settore in sale opportune adibite allo svolgimento.
Ogni corso contraddistinto da un codice corso, la sala in cui si tiene tale corso e la
difficolt del corso (principianti, amatori, esperti) e dalla tipologia di corso(aerobica, step,
fit box, spinning, yoga).
codice_corso tipo_di_corso
Corso
7
5) Analisi della componente Lezione:
Ogni corso consiste in un certo numero di lezioni giornaliere.
Ogni lezione gestita tramite un codice lezione, un giorno, un orario, un turno di lezione
che deve essere rispettato dalle persone iscritte ai corsi.
Lezione
(1,
n) (1,
n) (1,1) (1,
n) (1,1)
Istrutto
re tiene Corso consiste Lezione
tipo_di_corso
(1,
n)
(1,1)
segue
assegna
data_inizio
cognome sesso
scale nome
codice_fi luogo_nascita data_fi
ne (1,
n) durata_alle
namento nome _esercizio nome _macchina
codice_esercizio
reps
data_nascita
tele
fono
Persona giorni_sett
ima nali (1,
n) (1,
n) serie
Scheda contiene Esercizio
professione durata_esercizio
codice_scheda
livello
_di_diffi
colt
tipo_di_alle
namento codice_abbonamento
(1,
n) (1,1)
U tente sotto
scrive Abbonamento
Abbonato prezzo_abbonamento
occasionale
(1,
n)
data_inizio_abb data_fi
ne_abb
Paga
(1,1)
codice_entrata
Entrata ora
data_entrata
prezzo_entrata
Lo schema E/R totale si ottiene come fusione degli schemi E/R parziali sviluppati fino a
questo punto sul modello dello schema a scheletro di partenza.
8
6) Dizionario dei dati:
Per rendere amichevole la lettura dello schema E/R totale necessario dotare lo schema di
una documentazione di riferimento. A tal proposito si costruisce un dizionario dei dati che
raccoglie le propriet delle entit e delle relazioni.
9
Entit Descrizione Attributi Chiave
Corso Attivit ginniche Codice corso,num Codice corso
tenute in palestra. sala, livello di
difficolt, tipo di
corso.
Scheda Foglio su cui sono Codice Codice scheda
segnati gli esercizi scheda,durata
individuali. allenamento, tipo di
allenamento, giorni
settimanali, livello di
difficolt, data inizio,
data fine.
Esercizio Nome dellesercizio Codice esercizio, Codice esercizio
da eseguire. nome esercizio,
nome macchina,
reps, serie, durata
esercizio.
Lezione Indice delle lezioni Codice lezione, Codice lezione
tenute in un corso giorno, ora, turno.
10
Progettazione logica.
tipo_di_corso
(1,n)
(1,1)
segue
assegna
data_inizio
nome cognome sesso luogo_nascita nome_macchina
codice_fiscale data_fine (1,n) durata_allenamento nome_esercizio
codice_esercizio
reps
data_nascita
telefono
Persona giorni_settimanali (1,n) (1,n) serie
categoria_persona Scheda contiene Esercizio
professione durata_esercizio
codice_scheda
livello_di_difficolt
(1,n)
tipo_di_allenamento codice_abbonamento
(0,n) (1,1)
Paga sottoscrive Abbonamento prezzo_abbonamento
(1,1)
data_inizio_abb data_fine_abb
codice_entrata
Entrata ora
data_entrata
prezzo_entrata
Nel modello E/R ristrutturato, vista limportanza che assume lentit persona rispetto ai
figli abbonato ed utente, si operato un accorpamento dei figli al padre introducendo
l attributo tipo categoria_persona. Attraverso tale attributo si riassumono le entit utente
occasionale ed abbonato.
11
2) Schema relazionale:
A partire dal modello E/R ristrutturato analizzato precedentemente possibile passare al
modello relazionale della realt di interesse.
12
Progettazione delle applicazioni.
DFD di livello 0
Inserimento_persone
Aggiornamento_persone
Rimozione_persone
Inserimento_corsi
Aggiornamento_corsi
Rimozione_corsi
Inserimento_allenamenti
Aggiornamento_allenamenti
Rimozione_allenamenti
Rich_info_persone
Risp_info_persone
Rich_info_corsi
Risp_info_corsi
Amministratore Rich_info_allenamenti Gestore_palestra
Risp_info_allenamenti
Rich_info_abbonamenti
Risp_info_abbonamenti
Rich_info_entrate
Risp_info_entrate
Rich_info_statistiche
Risp_info_statistiche
Inserimento_abbonamenti
Aggiornamento_abbonamenti
Rimozione_abbonamenti
Inserimento_entrate
Aggiornamento_entrate
Rimozione_entrate
Nel DFD di livello 0 la realt di interesse viene riassunta in modo piuttosto generale, vi
sono infatti un interfaccia amministratore ed un processo attivo che la palestra:
le uniche cose che permettono di cogliere i particolari sono i flussi di dati che vanno
dallamministratore al gestore palestra e viceversa.
Tra i flussi di dati vi sono flussi di richiesta informazioni, di inserimento, di rimozione che
riguardano i seguenti ambiti: persone, corsi, allenamenti, abbonamenti, entrate,
statistiche. Nel DFD di livello 1 si andr a fare una particolarizzazione di questi flussi.
13
DFD di livello 1
Iserim ento_abbonam enti
Aggiornamento_abbonam enti
R im ozione_abbonam enti
R ich_info_abbonam enti
R isp_info_abbonam enti
R ich_info_entrat
e
R isp_info_entrat
e
Inserim ento_entrate
Aggiornamento_entrat e
R im ozione_entrate
G estore
entrate
dati_entrat
e
R isp_info_persone
dati_entrat
e
R ich_info_persone
info_entrat
e
Inserim ento_persone
Inserim ento_persone
Inserim ento_entrat
e
Aggiornamento_persone
R im ozione_persone
dati_persone
Inserisci_istr
uttore
Aggiornamento_istr
utt
ore
R im uovi_istr
utt
ore
R ich_info_istr
utt
ore
R isp_info_istr
uttore inserim ento_alle
nam enti Inserim ento_persone
R ich_info_esercizio G estore Inserim ento_persone
G estore Inserim ento_abbonam enti G estore
R isp_info_esercizio
allenam enti persone dati_persone abbonam enti
R ich_info_scheda
R isp_info_scheda dati_persone
dati_abbonam enti
dati_alle
nam enti
Inserim ento_persone
dati_persone
dati_abbonam enti
ore
Inserisci_esercizio
info_persone info_abbonam enti
inserisci_corsi
info_alle
nam enti
Amm inistrat
Aggiorna_esercizio
nam enti
R im uovi_esercizio
Inserisci_scheda
dati_alle
dati_persone
Aggiorna_scheda
R im uovi_scheda
G estore
corsi
dati_corsi
R isp_info_corsi
dati_corsi
R ich_info_corsi
Inserim ento_corsi
info_corsi
Aggiornamento_corsi
R im ozione_corsi
R ich_info_stat
istiche
R isp_info_stat
istiche G estore
statistiche
dati_stat
istiche
dati_stat
istiche
info_stat
istiche
14
DFD di livello 2 del gestore allenamenti.
Inserimento
_istr
uttore
Aggiornamento _istr
uttore
R imozione_istr uttore
G estore
R ich_info_istruttore
R isp_info_istr
uttore Istr
uttore
dati
_ istr
uttore
dati
_ istr
uttore
info_istr
uttore
Amministratore
Inserimento_esercizi
Aggiornamento_eser cizi
R imozione_eser
cizi
R ich_info_esercizi
G estore
R isp_info_esercizi esercizi
dati
_ eser
cizi
dati
_ eser
cizi
info_eser
cizi
cizi
_ eser
dati
Inserimento
_scheda
Aggiornamento
_scheda
G estore
R imozione_scheda
R ich_info_scheda Scheda
_ scheda
R isp_info_scheda
dati
_ scheda
Info_scheda
dati
Nel DFD di livello 2 del gestore allenamenti sono presenti 3 processi attivi che sono:
gestore istruttore, gestore esercizi, gestore scheda.
Nel primo processo vengono memorizzati i dati degli istruttori che tengono i corsi e che
assegnano le schede ai clienti, nel secondo processo invece si trovano tutti i tipi di esercizi
assegnati dagli istruttori, nel terzo vengono gestite le schede fatte dagli istruttori ed
assegnate alle persone.
Una volta modellizzata realt a livello fisico si pu passare tranquillamente alla fase
implementativa scegliendo un DBMS in cui inserire i dati e su cui gestire le applicazioni.
15
Aspetti implementativi
1) Introduzione ad Access:
Dopo aver approfondito gli aspetti riguardanti la progettazione concettuale, quella logica e
quella fisica, passiamo allultimo aspetto della progettazione di un data base che
sicuramente non meno importante delle altre e corrisponde all implementazione.
Per questa fase si scelto come piattaforma software il sistema operativo Windows Xp e
come DBMS Access Xp. La scelta di Access come DBMS legata al fatto che si presta in
maniera facile, ma non troppo, alla gestione di realt non troppo complesse come quella di
una palestra. Le fasi fondamentali dellimplementazione sono state le seguenti:
2) Durante la seconda fase si sono create le relazioni fra le tabelle andando nelleditor di
relazioni di Access e collegando i campi che hanno gli stessi valori (il modello relazionale
un modello legato per valori). Successivamente si sono definiti in vincoli di integrit per
ogni legame.
3) La terza fase sicuramente una delle fasi pi importanti perch la fase in cui vengono
implementate le query che, come noto, sono una richiesta di dati dal data base
dellutente. Siccome spesso si va alla ricerca di dati allinterno del data base importante
realizzare al meglio ogni query. Nel caso di Access la realizzazione delle query non cosa
semplice date le limitazioni di SQL; infatti per fare delle semplici query basta andare nel
men di visualizzazione struttura o realizzazione guidata, se si vogliono fare query pi
complesse necessario usare VBA ( visual basic for application).
4) Nella quarta fase si cerca di rendere amichevole la consultazione dei dati, creando delle
interfacce grafiche dette maschere, che rappresentano un front end tra utente ed
applicazione. Ogni maschera corredata da pulsanti funzione realizzati in visual basic che
aprono o chiudono la maschera , che permettono di inserire dati o eliminarli e permettono
di fare delle ricerche.
5) Nella quinta fase si creano i report che sono delle maschere di riepilogo dei dati che
permettono di rendere i risultati di inserimenti o di query presentabili e anche stampabili.
6)La penultima fase si rende necessaria quando le maschere dati o le tabelle dati, cosa che
capita spesso, non si aggiornano o non eseguono delle operazioni che si rendono
necessarie. Una macro non nientaltro che un insieme di operazioni che vengono eseguite
da Access quando si rendono necessarie e si trovano tutte in un contenitore di macro.
16
7) Lultima fase quella di collaudo nella quale si prova leffettivo funzionamento del data
base.
Tutorial al progetto:
1) Men principale
17
1.1) Gestore abbonamenti
Attraverso questa maschera possibile inserire i dati relativi ad ogni abbonamento, che
caratterizzato da un codice abbonamento, un codice persona, una data di inizio e di fine
dellabbonamento e il prezzo dellabbonamento. Il prezzo dellabbonamento dipende dalla
durata dellabbonamento stesso: se labbonamento trimestrale, si paga una quota di 95 ,
se semestrale si paga una quota di 190 , se annuale si pagano 380 .
Sul prezzo dellabbonamento si risparmia dato che la quota mensile di 35 .
Allinterno della maschera gestore abbonamenti, c la sottomaschera persona, che associa
ad ogni abbonamento una persona insieme ai suoi dati personali.
18
1.2) Gestore allenamenti
19
1.2.1) Gestore esercizi
In questa maschera del men gestore allenamenti si tiene memoria degli esercizi
assegnati dagli istruttori attraverso delle schede. Un esercizio caratterizzato da un
codice, un nome, lindicativo della macchina (attrezzo ginnico) in cui viene svolto, le reps
con cui si indica il numero di volte in cui verr effettuato tale esercizio, le serie che danno
indicazioni sul numero di volte in cui verranno eseguite le reps , e la durata di ogni singolo
esercizio. Accanto alla maschera principale c la sottomaschera associa scheda, attraverso
la quale si associano gli esercizi alle schede dei clienti. Ciccando sul pulsante report, viene
visualizzato il report degli esercizi disponibili nel data base.
20
1.2.2) Gestore istruttore
21
1.2.3) Gestore scheda
22
1.3) Gestore corsi
In questa maschera sono memorizzati i dati inerenti ai corsi tenuti nella palestra.
Un corso caratterizzato da un codice corso, dal codice dellistruttore che lo tiene,
da un livello di difficolt (alto, medio, basso), e da una tipologia (body building, step).
Ogni corso frequentato da un certo numero di persone e tramite la sottomaschera
persone si pu venire a conoscenza dei dati delle persone che lo frequentano.
23
1.4) Gestore entrate
24
1.5) Gestore Persone
Questa la maschera fulcro dellintero data base perch proprio su di essa che si basa
lattivit della palestra ( che cos una palestra se non un attivit economica nata per
servire i bisogni delle persone che la frequentano? ), essa caratterizzata da un codice
persona che identifica in maniera univoca ogni persona, da un codice istruttore che
associato alla persona in questione, da nome, da cognome, dalla data di nascita, dal luogo
di nascita, dalla professione ( studente, lavoratore ), dalla categoria (abbonato, utente
occasionale). Cliccando sul pulsante report, viene fatta unanteprima report delle persone
che si trovano in palestra in quel preciso momento.
25
1.6) Gestore statistiche
In questa maschera vengono fatte delle statistiche sulle persone e sui corsi. Allestrema
sinistra della maschera c una casella di riepilogo che riassume le persone che si trovano
in palestra.
Cliccando il pulsante Numero di persone si apre una piccola maschera che indica il
numero di persone che ci sono in quel momento in palestra:
26
Cliccando su Persona pi vecchia o su Persona pi giovane viene restituita la data della
persona pi vecchia e la data della persona pi giovane:
Nel pulsante statistiche corsi viene fatta una valutazione del num di persone
frequentanti i corsi:
27