Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C. Batini 4. Progettazione concettuale 4.3. Analisi dei requisiti - 1 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Come si raccolgono i requisiti L’analista conosce in generale assai poco del dominio applicativo, e quindi deve individuare diverse fonti informativa, a partire dalle quali raccogliere i requisiti. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Requisiti: possibili fonti Utenti, attraverso: interviste Documentazione fornita Modulistica utilizzata per acquisire i dati Documentazione esistente: normative (leggi, regolamenti di settore) regolamenti interni, procedure aziendali realizzazioni preesistenti Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Esempio di modulistica per pagare l’ICI: l’utente riempia i seguenti campi …. Nome Cognome Codice Fiscale Anno nascita Sesso Beni immobili posseduti Citta’ CAP Via Numero Civico Regione Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Nei moduli la informazione e’ molto piu’ strutturata rispetto al linguaggio naturale Esempio di descrizione in linguaggio naturale: Degli utenti vogliamo sapere il nome, il cognome, il Codice Fiscale, l’anno di nascita e il sesso. Poi vogliamo sapere tutti i beni immobili posseduti, e di essi vogliamo sapere la citta’, il CAP, la via e numero civico e la Regione Nome Cognome Codice Fiscale Anno nascita Sesso Beni immobili posseduti Citta’ CAP Via Numero Civico Regione Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Il maggior grado di strutturazione, ad esempio, dei moduli, rende piu’ semplice la successiva fase di progettazione concettuale. Domanda 4.3.1 – provate a generare lo schema concettuale a partire dai due tipi di requisiti Nome Cognome Codice Fiscale Anno nascita Sesso Beni immobili posseduti Citta’ CAP Via Numero Civico Regione Degli utenti vogliamo sapere il nome, il cognome, il Codice fiscale, l’anno di nascita e il sesso. Poi vogliamo sapere tutti i beni posseduti, e di essi vogliamo sapere la citta’, il CAP, la via e numero civico e la regione Utente Bene possiede Nome Cognome Codice fiscale Anno nascita Sesso Via Numero Civico CAP Citta’ Regione Risposta Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Acquisizione e analisi dei requisiti Il reperimento dei requisiti è un'attività complessa, svolta in diverse fasi, e non standardizzabile L'attività di analisi inizia con i primi requisiti raccolti e spesso indirizza verso altre acquisizioni Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Problemi nella acquisizione per interviste Utenti diversi possono fornire informazioni diverse e usare termini diversi per gli stessi concetti Utenti a livello di maggiore responsabilita’ nella organizzazione hanno spesso una visione più ampia ma meno dettagliata Esempio: l’amministratore delegato di una azienda automobilistica e l’operativo alla catena di montaggio le interviste portano spesso ad una acquisizione dei requisiti “per raffinamenti successivi” Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Esempio di acquisizione per raffinamenti successivi: il caso di una biblioteca. Esito di una prima presa di contatto Base di dati di una biblioteca Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti in una biblioteca Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Supponiamo ora di intervistare l’addetto alla archiviazione Base di dati di una biblioteca Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti di una biblioteca 1 Base di dati di una biblioteca Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti bibliografici, con tutte le informazioni da riportarsi in una biblioteca. Per ogni pubblicazione della biblioteca deve esistere un codice identificante costituito da sette caratteri, indicanti le iniziali degli autori, l'anno di pubblicazione e un carattere aggiuntivo per la discriminazione delle collisioni. 2 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Domanda 4.3.2: Notate qualcosa di anomalo nella versione 2? Base di dati di una biblioteca Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti di una biblioteca 1 Troppo dettaglio! Base di dati di una biblioteca Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti bibliografici, con tutte le informazioni da riportarsi in una biblioteca. Per ogni pubblicazione della biblioteca deve esistere un codice identificante costituito da sette caratteri, indicanti le iniziali degli autori, l'anno di pubblicazione e un carattere aggiuntivo per la discriminazione delle collisioni. 2 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Interazione con gli utenti: spunti effettuare spesso verifiche di comprensione e coerenza Es allievo e studente sono lo stesso concetto o no? verificare anche per mezzo di esempi (generali e relativi a casi limite) Es. mi puo’ fare un esempio di numero di matricola? Es. mi fa un esempio di bene immobile e di dove sia ubicato? richiedere definizioni e classificazioni Es. mi puo’ fare l’elenco delle facolta’? far evidenziare gli aspetti essenziali rispetto a quelli marginali Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Gli esempi aiutano a scoprire eventuali incompletezze nei requisiti Es. mi fa un esempio di bene immobile e di dove sia ubicato? Certo: una abitazione di tre stanze ubicata a Via D’Ovidio 127 al terzo piano interno 12. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Per identificare il bene e’ necessario anche l’interno Es. mi fa un esempio di bene immobile e di dove sia ubicato? Certo: una abitazione di tre stanze ubicata a Via D’Ovidio 127 al terzo piano interno 12. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Requisiti: documentazione descrittiva Regole generali: scegliere il corretto livello di astrazione Es. e’ meglio usare la parola studente o la parola persona? standardizzare la struttura delle frasi separare le frasi sui dati da quelle sulle operazioni che aggiornano i dati Es. si vogliono rappresentare gli studenti e le loro iscrizioni agli esami FRASE DATI si vogliono rappresentare gli studenti FRASE OPERAZIONI si vogliono effettuare le iscrizioni degli studenti agli esami Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Requisiti: organizzazione di termini e concetti Regole generali costruire un glossario dei termini individuare omonimi e sinonimi e unificare i termini Es. Allievo e studente sono sinonimi rendere esplicito il riferimento fra termini Es. Con il termine Data ci si riferisce alla nascita o alla iscrizione o a che altro? riorganizzare le frasi per concetti Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 4.3.3 Considera il seguente testo, sottolinea i termini che, in base ad una ragionevole interpretazione del fenomeno descritto, ti sembrano non precisi, vaghi, ambigui. Si vuole rappresentare l’insieme degli allievi di una universita’. Per ogni studente si vuole rappresentare l’identificatore, il nome esteso, la nascita, il luogo in cui e’ residente, e per ogni corso superato quando lo ha superato e con quale valutazione. Per ogni esame, si vuole sapere come si chiama, chi lo insegna e dove, e quando. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Si vuole rappresentare l’insieme degli allievi di una universita’. Per ogni studente si vuole rappresentare l’identificatore, il nome esteso, la nascita, il luogo in cui e’ residente, e per ogni corso superato quando lo ha superato e con quale valutazione. Per ogni esame, si vuole sapere come si chiama, chi lo insegna e dove, e quando. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 4.3.4 Sostituisci ora il testo con uno in cui tutte le imprecisioni e ambiguita’ sono risolte Si vuole rappresentare l’insieme degli allievi di una universita’. Per ogni studente si vuole rappresentare l’identificatore, il nome esteso, la nascita, il luogo in cui e’ residente, e per ogni corso superato quando lo ha superato e con quale valutazione. Per ogni esame, si vuole sapere come si chiama, chi lo insegna e dove, e quando. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Si vuole rappresentare l’insieme degli allievi ( studenti) di una universita’. Per ogni studente ( studente) si vuole rappresentare l’identificatore ( la matricola), il nome esteso ( nome e cognome), la nascita ( data di nascita), il luogo ( comune) in cui e’ residente, e per ogni corso superato ( esame superato) quando ( la data in cui) lo ha superato e con quale valutazione ( voto) . Per ogni esame ( corso), si vuole sapere come si chiama ( la denominazione) , chi lo insegna ( il professore titolare) e dove ( l’aula dove e’ tenuto) , e quando ( i giorni e le ore in cui e’ tenuto). Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Esercizio 4.3.1 Fai una intervista a una persona di casa o a un amico/amica, con lo scopo di raccogliere e analizzare i requisiti di una applicazione di suo interesse: ad es. le ricette di cucina e la disponibilita’ degli ingredienti in frigorifero. Utilizza tutte le indicazioni fornite e cerca di procedere con domande utili, non ambigue, efficaci nel raccogliere i requisiti. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Esercizio 4.3.2 Considera uo schema nel modello Entita’ Relazione tra quelli visti nelle lezioni precedenti, e descrivilo mediante un testo in linguaggio naturale. Osserva l’ordine ed il percorso con cui “visiti” tutti i concetti. Analizza se a fini di chiarezza sia il percorso ottimo, ed eventualmente sostituscilo con uno che ti convince di piu’, motiva il tutto. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Concetti introdotti Modulo di acqisizione dati Raccolta dei requisiti Fonte Acquisizione per interviste Intervista Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill