Corso di Basi di Dati

Documenti analoghi
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione concettuale

LA PROGETTAZIONE CONCETTUALE. Prima parte

Progettazione concettuale. Facoltà di Scienze Matematiche, Fisiche e Naturali. Progettazione concettuale. Acquisizione e analisi dei requisiti

LA PROGETTAZIONE CONCETTUALE

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione concettuale

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione concettuale

Progettazione Concettuale. Raccolta e analisi dei requisiti

Analisi dei requisiti

Progettazione concettuale

analisi dei requisiti

Cardinalità degli attributi

Progettazione Concettuale. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Progettazione Concettuale di Basi di Dati

Basi di dati. Progettazione concettuale. Analisi dei requisiti e progettazione concettuale ("Analisi dei dati") Requisiti. Acquisizione per interviste

Esercizio 1 ESERCIZI DI PROGETTAZIONE CONCETTUALE DI BASI DI DATI. La base di dati di una università contiene informazioni

Modello Entità-Relazione (E-R)

Progettazione concettuale

Progettazione concettuale

IL MODELLO ENTITA - RELAZIONE

Progettazione concettuale

Progettazione concettuale

Progettazione parte seconda

Corso di Basi di Dati

Progettazione di basi di dati: Metodologie e modelli

Un esempio di progettazione concettuale

Corso di Informatica

Fasi del ciclo di vita

Corso di Laurea in Ingegneria Informatica Fondamenti di informatica II Modulo Basi di dati a.a

Corso di Laurea in Informatica Basi di Dati a.a

I requisiti provengono da fonti diverse: æ utenti, attraverso: í interviste í documentazione apposita æ documentazione, contrattuale o preesistente: í

Dr. C. d'amat LA PROGETTAZIONE CONCETTUALE

Progettazione di basi di dati

Corso di Laurea in Informatica Basi di Dati a.a

Metodologie e modelli di progetto

Progettazione di basi di dati

Ciclo di vita di un sistema informativo

Esercitazione 2: Progettazione Concettuale

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni di un ente che eroga corsi di formazione:

Corso di Basi di Dati

PROGETTAZIONE DI BASE DI DATI. Metodologie e modelli

INSEGNANTE TECNICO PROGETTISTA MECCANICO TECNICO

Basi di Dati Relazionali

Ore settimanali di lezione: 3 h di cui 2 in compresenza con l insegnante di Lab. di Informatica prof.ssa E.De Gasperi

Laboratorio di Basi di Dati

LA PROGETTAZIONE DELLA BASE DI DATI. la progettazione della base di dati 1

IL PROGETTO DI UN DATABASE TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI. Informatica

BDL. Modalità didattica: imparare facendo Obiettivi: Testo: Albano, Ghelli, Orsini, Basi di Dati relazionali e a Oggetti, Zanichelli

Laboratorio di Basi di Dati prova totale 30 gennaio 2013

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati

Elementi di Informatica LB Basi di Dati. Anno accademico 2007/2008 Prof. Stefano Contadini

Raccolta e analisi dei requisiti

INFORMATICA TECNOLOGIE DELLA COMUNICAZIONE SAPERI MINIMI DISCIPLINARI

2 - Metodologie e modelli per la progettazione di BD. Informatica II Basi di Dati (08/09) Parte 1. Introduzione alla progettazione

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

Disciplina: INFORMATICA

Corso di Basi di Dati

INFORMATICA PER LE SCIENZE UMANE a.a. 2017/2018

Progettazione e pianificazione

INFORMATICA PER LE SCIENZE UMANE a.a. 2016/2017

A. Ferrari sistemi informativi e sistemi informatici

Progettazione Concettuale/1

Metodologie e Modelli di Progetto

Prima prova di verifica del 4/11/2009

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1

Introduzione alle basi di dati: Il modello concettuale

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni di una società che organizza eventi mondani:

INFORMATICA PER LE SCIENZE UMANE a.a. 2015/2016

Le Basi di dati: progettazione concettuale

Università degli Studi di Bologna Facoltà di Ingegneria. Corso di Applicazioni di Intelligenza Artificiale LS

Corso di SISTEMI INTELLIGENTI M. Prof. Michela Milano" Anno accademico 2011/2012

PROGRAMMAZIONE DISCIPLINARE DIPARTIMENTALE DI INFORMATICA

Esercitazione 7 Progettazione concettuale

LE BASI DI DATI. Prima parte Premesse introduttive I MODELLI DEI DATI

ISTITUTO D ISTRUZIONE SUPERIORE G.CENA SEZIONE TECNICA ANNO SCOLASTICO 2018/2019 PROGRAMMAZIONE DISCIPLINARE DIPARTIMENTALE DI INFORMATICA DOCENTI

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

Corso di Ingegneria del Software. Modelli di produzione del software

SCHEDA PROGETTUALE Per le Sezioni A B C Codice progetto

Basi di Dati Concetti Introduttivi

Basi di dati (Sistemi Informativi)

Laboratorio di Basi di Dati

Curriculum Vitae Sostituire con Nome (i) Cognome (i) INFORMAZIONI PERSONALI Sostituire con Nome (i) Cognome (i) [Tutti i campi del CV sono facoltativi

BASI DATI INFORMATICA

Basi di dati I

Disciplina: INFORMATICA

Laboratorio di Basi di Dati

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli

Sistemi informativi D B M G

Grafica ed interfacce per la comunicazione. Scienze della Comunicazione A.A.2013/14

Prova Scritta di Basi di Dati

Strategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down

MODELLO e RAPPRESENTAZIONE

ITI M. FARADAY. Programmazione a. s

Laboratorio di Basi di Dati

Progettazione di Basi di Dati

Progettazione concettuale di una base di dati

Chiarimenti sugli schemi di progettazione in relazione ai compiti scritti di Basi di Dati

Marketing. (Anno accademico ) Laurea triennale Economia e Management (canale A) Docente: Prof. Alberto Marcati. Cari partecipanti,

Transcript:

Corso di Basi di Dati Raccolta ed Analisi dei Requisiti nella Progettazione Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/

Studio di fattibilità Oggetto di studio del modulo corrente Modulo precedente { Raccolta/analisi requisiti Progettazione Implementazione Validazione Ciclo di vita di un sistema Informativo Funzionamento

Analisi dei requisiti e progettazione in dettaglio Studio/analisi dei requisiti Risultati SCHEMA CONCETTUALE SCHEMA LOGICO SCHEMA FISICO Fasi della progettazione Progettazione concettuale Progettazione logica Progettazione fisica

La raccolta/analisi dei requisiti consiste nella completa individuazione dei problemi che il sistema informativo da realizzare deve risolvere e le caratteristiche che il sistema deve avere. Caratteristiche dei dati (informazioni + vincoli) Caratteristiche delle applicazioni Q. Come e dove raccogliere informazioni sui requisiti dei dati/applicazioni?

Fonti dell analisi dei requisiti: Utenti dell applicazione Interviste con i committenti. Documentazione scritta (vedi dopo) Documentazione esistente Normative esistenti Procedure aziendali Regolamenti interni Realizzazioni/applicazioni preesistenti

http://spectrum.ieee.org/computing/software/why-software-fails

Es. Si vuole realizzare un sistema informativo per una società che eroga corsi di formazione. Da dove partire? Raccolta/analisi dei requisiti per capire quali dati devono essere gestiti (studenti? corsi? etc). Raccolta/analisi dei requisiti per capire quali operazioni sui dati devono essere consentite. STEP1. Produrre un documento di specifica

Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i posti dove hanno lavorato in precedenza insieme al periodo, l'indirizzo e il numero di telefono, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale. Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Se gli studenti sono liberi professionisti, vogliamo conoscere l'area di interesse e, se lo possiedono, il titolo. Per quelli che lavorano alle dipendenze di altri,vogliamo conoscere invece il loro livello e la posizione ricoperta. Per gli insegnanti (circa 300), rappresentiamo il cognome, l'età, il posto dove sono nati, il nome del corso che insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche tutti i loro recapiti telefonici.

PROBLEMA: Il linguaggio naturale è spesso fonte di ambiguità e fraintendimenti Regole generali per il documento di specifica: Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare omonimi/sinonimi Esplicitare il riferimento tra i termini

Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i posti dove hanno lavorato in precedenza insieme al periodo, l'indirizzo e il numero di telefono, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale (?). Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Se gli studenti sono liberi professionisti, vogliamo conoscere l'area di interesse e, se lo possiedono, il titolo (?). Per quelli che lavorano alle dipendenze di altri,vogliamo conoscere invece il loro livello e la posizione ricoperta. Per gli insegnanti (circa 300), rappresentiamo il cognome, l'età, il posto dove sono nati, il nome del corso che insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche tutti i loro recapiti telefonici.

PROBLEMA: Il linguaggio naturale e spesso fonte di ambiguita e fraintendimenti Regole generali per il documento di specifica: Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare omonimi/sinonimi Esplicitare il riferimento tra i termini

Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i posti dove hanno lavorato in precedenza insieme al periodo, l'indirizzo e il numero di telefono, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale (?). Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Se gli studenti sono liberi professionisti, vogliamo conoscere l'area di interesse e, se lo possiedono, il titolo (?). Per quelli che lavorano alle dipendenze di altri (= lavoratori dipendenti),vogliamo conoscere invece il loro livello e la posizione ricoperta. Per gli insegnanti (circa 300), rappresentiamo il cognome, l'età, il posto dove sono nati, il nome del corso che insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche tutti i loro recapiti telefonici.

PROBLEMA: Il linguaggio naturale e spesso fonte di ambiguita e fraintendimenti Regole generali per il documento di specifica: Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare omonimi/sinonimi Esplicitare il riferimento tra i termini

Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i posti dove hanno lavorato in precedenza insieme al periodo, l'indirizzo e il numero di telefono, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale (?). Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Se gli studenti sono liberi professionisti, vogliamo conoscere l'area di interesse e, se lo possiedono, il titolo (?). Per quelli che lavorano alle dipendenze di altri,vogliamo conoscere invece il loro livello e la posizione ricoperta. Per gli insegnanti (circa 300), rappresentiamo il cognome, l'età, il posto dove sono nati, il nome del corso che insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche tutti i loro recapiti telefonici.

PROBLEMA: Il linguaggio naturale e spesso fonte di ambiguita e fraintendimenti Regole generali per il documento di specifica: Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare omonimi/sinonimi Esplicitare il riferimento tra i termini

Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i posti dove hanno lavorato in precedenza insieme al periodo, l'indirizzo e il numero di telefono, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale (?). Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Se gli studenti sono liberi professionisti, vogliamo conoscere l'area di interesse e, se lo possiedono, il titolo (?). Per quelli che lavorano alle dipendenze di altri,vogliamo conoscere invece il loro livello e la posizione ricoperta. Per gli insegnanti (circa 300), rappresentiamo il cognome, l'età, il posto dove sono nati, il nome del corso che insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche tutti i loro recapiti telefonici.

Può essere utile decomporre il testo di specifica in frasi omogenee, relative agli stessi concetti FRASI RELATIVE AI PARTECIPANTI Per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita, il nome dei loro attuali datori di lavoro, i corsi che hanno frequentato (i corsi sono in tutto circa 200) e il giudizio finale. Rappresentiamo anche i seminari che stanno attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. FRASI RELATIVE AI DATORI DI LAVORO Per i datori di lavoro presenti e passati, si vuole memorizzare il nome, l indirizzo ed il numero di telefono. FRASI RELATIVE AI CORSI I corsi hanno un codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti etc etc

STEP2. Costruire un glossario dei termini, contenente: descrizione, sinonimi, collegamenti. Termine Seminario Docente Società Ente presso cui i partecipanti lavorano o hanno lavorato Posti Partecipante

STEP3. Definire le operazioni sui dati OPERAZIONE1. Inserire un nuovo partecipante. OPERAZIONE2. Assegnare un partecipante ad un edizione del corso. OPERAZIONE3. Inserire un nuovo corso. OPERAZIONE4. Visualizzare le informazioni dei corsi. OPERAZIONE5. Per ogni docente, visualizzare le informazioni sui partecipanti dei suoi corsi. OPERAZIONE6. Calcolare la media dei partecipanti

Definire le operazioni sui dati è utile per: Verificare la completezza dei modelli sviluppati nella fase di progettazione (logica/concettuale). Valutare le prestazioni dei modelli sviluppati nella fase di progettazione (logica/concettuale). Fornire linee guida per l implementazione dei dati (es. usare stored procedures per le operazioni).

Ricapitolando: La raccolta/analisi dei requisiti è una fase molto complessa e non standardizzabile. Un possibile approccio da seguire: 1. Definizione di un documento di specifica. 2. Decomposizione del testo in gruppi di frasi. 3. Costruzione di un glossario. 4. Definizione delle operazioni sui dati.