Modello E-R Generalizzazioni Rappresentano legami logici fra una entità E (entità padre) e una o più entità E1, E2, …, En (entità figlie) che sono comprese in E come caso particolare. E è una generalizzazione per E1, E2, …, En E1, E2, …, En sono specializzazioni di E Proprietà: Ogni occorrenza di un’entità figlia è anche un’occorrenza dell’entità padre Ogni proprietà dell’entità padre è anche una proprietà dell’entità figlia (ereditarietà)
Generalizzazioni: Rappresentazione grafica Dipendente Impiegato Funzionario Dirigente
Modello E-R Una generalizzazione è detta totale se ogni occorrenza dell’entità padre è anche un’occorrenza di almeno una delle figlie, altrimenti è detta parziale. E’ detta esclusiva se ogni occorrenza dell’entità padre è al più una occorrenza di una delle figlie, altrimenti è detta sovrapposta. Una generalizzazione può sempre essere resa esclusiva attraverso una opportuna definizione di una entità che rappresenti la ‘intersezione’ fra le entità sovrapposte. Ci possono essere più livelli di generalizzazioni (gerarchie). Se una entità padre ha solo una entità figlia si parla di sottoinsieme.
Esempio Le persone (entità padre) hanno CF, cognome ed età; gli uomini anche la posizione militare; gli impiegati hanno lo stipendio e possono essere segretari, direttori o progettisti (un progettista può essere anche responsabile di progetto); gli studenti (che non possono essere impiegati) un numero di matricola; esistono persone che non sono né impiegati né studenti (ma i dettagli non ci interessano)
Studente Persona Uomo Donna Impiegato Segretario Direttore Progettista CF Persona Età Cognome Uomo Donna Militare Impiegato Studente Stipendio Matr. Segretario Direttore Progettista Responsabile
Modello E-R Applicazioni del modello E-R per attività diverse dalla progettazione: Gli schemi E-R possono essere utilizzati a scopo di documentazione per la loro interpretazione intuitiva Possono essere usati per descrivere sistemi informativi preesistenti nel caso in cui si debba procedere ad una loro integrazione. Possono essere usati per comprendere su quali parti di un sistema si debba intervenire, e quali modifiche apportare, in caso di modifica dei requisiti di una applicazione.
Documentazione di schemi E-R Il modello E-R è utile per descrivere dati ma è meno espressivo se si devono esprimere vincoli fra dati o descrizioni qualitative più precise del solo nome che appare nella descrizione. Può anche essere di difficile lettura nel caso di schemi molto complessi. Si utilizzano quindi strumenti non formali atti ad integrare l’informazione fornita dal modello E-R con le altre informazioni necessarie per descrivere completamente un problema. Una delle tecniche utilizzate allo scopo è quella delle cosiddette regole aziendali o business rules
Documentazione di schemi E-R Le regole aziendali esprimono delle regole che riguardano il dominio di interesse come, ad esempio: una descrizione particolareggiata di un concetto rilevante per l’applicazione: si usa di solito linguaggio naturale. un vincolo di integrità sui dati dell’applicazione, sia che sia o che non sia esprimibile attraverso i costrutti del modello E-R: si usano espressioni formali ma non ci sono standard a riguardo. una derivazione, cioè una qualche informazione che può essere derivata da altri concetti dello schema, ad esempio attraverso un’espressione matematica
Progettazione concettuale Il prodotto è uno schema E-R che descriva le specifiche sui dati relative ad una applicazione. Si può suddividere in due fasi: Raccolta e analisi dei requisiti Individuazione dei problemi da risolvere Chiarimento ed organizzazione delle specifiche Definizione dello schema E-R
Raccolta e analisi dei requisiti Il reperimento dei requisiti è un'attività difficile e non standardizzabile l'attività di analisi inizia con i primi requisiti raccolti e spesso indirizza verso altre acquisizioni
Raccolta e analisi dei requisiti Realizzazione di una descrizione del problema in linguaggio naturale che rispetti criteri di completezza e non ambiguità: corretto livello di astrazione frasi standardizzate semplicità delle specifiche (evitare frasi contorte) eliminazione di sinonimi o omonimi esplicitazione dei riferimenti fra termini glossario dei termini Per i dati, occorre specificare il numero delle occorrenze previste. Per le operazioni, occorre specificare il numero di volte che si prevede che debbano essere eseguite in un certo arco di tempo.
Acquisizione per interviste utenti diversi possono fornire informazioni diverse utenti a livello più alto hanno spesso una visione più ampia ma meno dettagliata le interviste portano spesso ad una acquisizione dei requisiti ‘per raffinamenti successivi’
Interazione con gli utenti effettuare spesso verifiche di comprensione e coerenza verificare anche per mezzo di esempi (generali e relativi a casi limite) richiedere definizioni e classificazioni far evidenziare gli aspetti essenziali rispetto a quelli marginali
Raccolta requisiti: un esempio
Un esempio più articolato
Glossario dei termini
Strutturazione dei requisiti in gruppi di frasi omogenee