SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
SISTEMI INFORMATIVI
     D’AZIENDA
   dott. ing. Francesco Guerra
   guerra.francesco@unimo.it
SISTEMI INFORMATIVI D’AZIENDA




                                     Metodologie e modelli per il progetto




                                                 dott. ing. Francesco Guerra   2
                                                        a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                           DB e DBMS

                                     L’attenzione alle basi di dati ha caratterizzato le applicazioni
                                     informatiche fino dalle origini: i primi software risalgono
                                     agli anni ’60.
                                        Molte applicazioni scritte con il linguaggio COBOL sono tuttora
                                        utilizzate anche se si devono ritenere come applicazioni legacy
                                     L’approccio convenzionale sfrutta la presenza di archivi per
                                     memorizzare i dati in modo persistente sulla memoria di
                                     massa.
                                        Un file fornisce solo semplici meccanismi di accesso e di
                                        condivisione
                                     Un sistema di gestione di basi di dati (DBMS-Data Base
                                     Management System) e’ un sistema software per gestire
                                     grandi quantita’ di dati grandi condivise e persistenti,
                                     assicurando affidabilita’ e privatezza.
                                                             dott. ing. Francesco Guerra                  3
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                          DB e DBMS

                                     Le basi di dati sono grandi nel senso che possono contenere
                                     Terabyte di dati. Devono essere scalabili perche’ gli archivi
                                     possono essere anche di poche migliaia di byte
                                     I db sono condivisi: applicazioni e utenti diversi devono potere
                                     accedere secondo opportune modalita’ a dati comuni.
                                        Questa proprieta’ determina la riduzione della ridondanza per
                                        evitare la possibilita’ di inconsistenze
                                        Implementazione di un sistema di controllo di concorrenza
                                     Le basi di dati sono persistenti: il loro tempo di vita non e’
                                     limitato a quelle delle esecuzione degli applicativi che le
                                     utilizzano
                                     I DBMS garantiscono affidabilita’: capacita’ di conservare il
                                     contenuto di un database in caso di malfunzionamento
                                        Implementazione di specifiche funzionlita’ di backup e recovery


                                                            dott. ing. Francesco Guerra                 4
                                                                   a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                            DB e DBMS

                                     I DBMS garantiscono la privatezza dei dati: ciascun utente
                                     e’ riconosciuto mediante un account e viene abilitato a
                                     svolgere solo determinate azioni sulla base di meccanismi
                                     di autorizzazione
                                     Un DBMS soddisfa ai principi di
                                        Efficienza: capacita’ di svolgere le operazioni utilizzando un
                                        insieme di risorse accettabile per gli utenti
                                        Efficacia: capacita’ della base di dati di rendere produttive le
                                        attivita’ degli utenti.




                                                              dott. ing. Francesco Guerra                  5
                                                                     a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                             Modelli di dati

                                     Un modello di dati e’ un insieme di concetti utilizzati per
                                     organizzare i dati di interesse e descriverne la struttura in
                                     modo che sia comprensibile a un elaboratore
                                        Ogni modello dati fornisce dei meccanismi di strutturazione.
                                     Il modello relazionale dei dati – il piu’ diffuso – permette di
                                     definire nuovi tipi di dato sulla base del costruttore
                                     relazione: un insieme di record a struttura fissa
                                        La relazione e’ rappresentabile mediante una tabella
                                           Le righe sono gli specifici record
                                           Le colonne sono i campi del record
                                           L’ordine delle righe e delle colonne e’ sostanzialmente irrilevante




                                                               dott. ing. Francesco Guerra                       6
                                                                      a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                           Il modello dei dati


                                 Docenti
                                               CODICE                             NOME

                                     1                           Francesco Guerra
                                     2                           Tizio Caio
                                     …                           …

                                 Manifesto
                                         CDL                    MATERIA                              ANNO

                                     CGI         Sistemi informativi d’azienda                   1
                                     EA          Sistemi informativi d’azienda                   3
                                     ACGF        Controllo e S.I.                                2

                                                             dott. ing. Francesco Guerra                     7
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                            Schemi e Istanze

                                     Le basi di dati si compongono di due parti:
                                        Una parte invariante nel tempo detta schema della base di dati
                                        che descrive le caratteristiche dei dati
                                           E’ la componente intensionale
                                        Una parte variabile costituita dai valori effettivi degli elementi
                                        rappresentati.
                                           E’ la componente estensionale




                                                              dott. ing. Francesco Guerra                    8
                                                                     a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                Livelli di astrazione nei DBMS

                                     Esiste una proposta standardizzata di architettura per
                                     DBMS articolata su 3 livelli (esterno, logico e interno) per
                                     ciascuno dei quali esiste uno schema:
                                        Schema logico: e’ lo schema della intera base di dati per
                                        mezzo del modello logico adottato dal DBMS (relazionale,
                                        gerarchico, reticolare, ad oggetti, …)
                                        Schema interno: si tratta della rappresentazione dello schema
                                        logico per mezzo delle strutture di memorizzazione
                                        Schema esterno: costituisce la descrizione di una porzione
                                        della base di dati di interesse per mezzo dello schema logico.




                                                            dott. ing. Francesco Guerra                  9
                                                                   a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                            Linguaggi per basi di dati

                                     I linguaggi per basi di dati si dividono in tre tipologie:
                                        Data Definition Language: servono per specificare gli schemi
                                        logici esterni e fisici
                                        Data Manipulation Language: sono utiulizzati per
                                        l’interrogazione e l’aggiornamento delle basi di dati
                                        Data Control Language: sono i comandi per la gestione degli
                                        utenti e la specificazione dei privilegi di accesso
                                     I dati possono essere consultati mediante:
                                        Linguaggi testuali interattivi
                                        Comandi simili a quelli interattivi immersi in linguaggi di
                                        programmazione tradizionali
                                        Interfacce amichevoli che permettono di sintetizzare le
                                        interrogazioni senza usare un linguaggio testuale


                                                             dott. ing. Francesco Guerra               10
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                         Riassumiamo

                                     Un DB è una collezione di dati (ad es. rappresentati in
                                     forma di tabelle) che rappresentano le informazioni di
                                     interesse per un’organizzazione
                                     Progettare un DB significa trovare un “buon modo” per
                                     strutturare i dati, che rispetti sia i requisiti propri del
                                     Sistema Informativo dell’organizzazione sia i vincoli che sui
                                     dati vengono imposti
                                     Un DBMS è un sistema software che gestisce DB
                                     Per eseguire operazioni su un DB è necessario scrivere
                                     istruzioni in un linguaggio (tipicamente dichiarativo: SQL)
                                     supportato dal DBMS
                                     Il modo specifico con cui un’istruzione viene eseguita è
                                     scelto dal modulo ottimizzatore del DBMS sulla base di
                                     considerazioni di efficienza e considerando quali sono gli
                                     operatori e i metodi di accesso disponibili
                                                           dott. ing. Francesco Guerra             11
                                                                  a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                   Indipendenza fisica e logica

                                  Tra gli obiettivi di un DBMS vi sono quelli di fornire
                                  caratteristiche di:
                                Indipendenza fisica
                                      L’organizzazione fisica dei dati dipende da considerazioni
                                      legate all’efficienza delle organizzazioni adottate. La
                                      riorganizzazione fisica dei dati non deve comportare
                                      effetti collaterali sui programmi applicativi
                                Indipendenza logica
                                      Pur in presenza di uno schema logico integrato non è
                                      utile o conveniente che ogni utente ne abbia una visione
                                      uniforme

                                     La soluzione porta a quella che è comunemente nota
                                     come…
                                                         dott. ing. Francesco Guerra           12
                                                                a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA
                                                                                  La classica architettura a
                                                                                    tre livelli di astrazione




                                     Vista

                                                                                                Database su
                                      Vista                                                     dispositivi
                                                              Schema logico                     fisici
                                 Livello esterno

                                       A livello logico si descrive la base di dati con il modello logico usato
                                       dal DBMS              Livello logico                    Livello fisico
                                       A livello fisico si descrive il modo in cui i dati sono organizzati e
                                       gestiti in memoria di massa (dispositivi fisici): ordinamento, scelta
                                       dei metodi accesso
                                       A livello esterno si descrive una parte (una vista) della base di dati
                                       di interesse          dott. ing. Francesco Guerra                    13
                                                                 a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                           Utenti e progettisti

                                     Ci sono diverse categorie di operatori che lavorano con le
                                     basi di dati:
                                        L’amministratore delle basi di dati (DBA): e’ il responsabile
                                        della progettazione, controllo e amministrazione della base di
                                        dati
                                        I progettisti e i programmatori di applicazioni: definiscono e
                                        realizzano i programmi per accedere alle basi di dati
                                        utilizzando un DML
                                        Gli utenti che possono accedere sia per compiere transazioni
                                        ripetitive e formalizzate sia delle interrogazioni non
                                        preventivabili a priori




                                                             dott. ing. Francesco Guerra                     14
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                             Vantaggi e svantaggi dei DBMS

                                     Vantaggi:
                                       I dati vengono considerati come una risorsa comune di una
                                       organizzazione
                                       La base di dati rappresenta un modello unificato e preciso della
                                       parte di mondo reale di interesse per l’organizzazione
                                       Con il DBMS e’ possibile la gestione centralizzata dei dati che
                                       puo’ essere arricchita da forme di standardizzazione e
                                       beneficiare di economie di scala
                                       La condivisione permette di ridurre la ridondanza e eventuali
                                       inconsistenze
                                       L’indipendenza dei dati favorisce lo sviluppo di applicazioni
                                       flessibili e facilmente modificabili
                                     Svantaggi:
                                       I DBMS sono prodotti costosi e complessi con necessita’ di
                                       investimenti sia diretti sia indiretti (personale di
                                       manutenzione)
                                                            dott. ing. Francesco Guerra              15
                                                                   a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                           Introduzione alla progettazione


                                 Studio di           Raccolta e                               Implemen-   Validazione e
                                                                       Progettazione                                      Funzionamento
                                 fattibilita’      analisi requisiti                            tazione     collaudo




                                     La progettazione di una base di dati costituisce solo una
                                     delle componenti del processo di sviluppo di un sistema
                                     informativo complesso:
                                         Va inquadrata nel ciclo di vita dei sistemi informativi:
                                                Studio di fattibilita’:serve a definire i costi delle varie alternative
                                                possibili
                                                Raccolta e analisi dei requisiti: consiste nella individuazione e nello
                                                studio delle proprieta’ e delle funzionalita’ che il sistema
                                                informativo deve avere


                                                                         dott. ing. Francesco Guerra                             16
                                                                                a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                              Introduzione alla progettazione

                                        Progettazione: si divide in progettazione di dati (per individuare la
                                        struttura e l’organizzazione che i dati devono avere) e
                                        progettazione delle applicazioni (si definiscono le caratteristiche
                                        dei programmi applicativi).
                                        Implementazione: consiste nella effettiva realizzazione del sistema
                                        informativo seguendo la struttura e le caratteristiche definite nella
                                        progettazione
                                        Validazione e collaudo: si verifica il funzionamento e la
                                        corrispondenza del sistema ai requisiti di funzionamento
                                        Funzionamento: il sistema informativo diventa operativo e esegue
                                        i compiti per i quali e’ stato progettato
                                     La metodologia puo’ anche prevedere la realizzazione di
                                     attivita’ di prototipizzazione, ovvero nel creare delle versioni
                                     rapide e semplificate di parti del sistema informativo allo scopo
                                     di verificarne sul campo le funzionalita’ prima della
                                     realizzazione definitiva della applicazione

                                                            dott. ing. Francesco Guerra                    17
                                                                   a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                              Metodologie di progettazione e basi di dati

                                     Una metodologia di progettazione consiste generalmente
                                     in:
                                       Una decomposizione della attivita’ in passi successivi e
                                       indipendenti
                                       Una serie di strategie da seguire e alcuni criteri di scelta nel
                                       caso di alternative
                                       Alcuni modelli di riferimento per descrivere i dati in
                                       ingresso/uscita
                                     Una metodologia deve garantire:
                                       La generalita’ rispetto alle applicazioni e ai sistemi in gioco
                                       La qualita’ del prodotto in termini di correttezza, completezza
                                       ed efficienza
                                       La facilita’ di uso sia delle strategie sia dei modelli di
                                       riferimento

                                                             dott. ing. Francesco Guerra                  18
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                               Metodologie di progettazione e basi di dati

                                     Nell’ambito delle basi di dati si e’ consolidata una
                                     metodologia che si articola in tre fasi in cascata:
                                        Progettazione concettuale: lo scopo e’ quello di rappresentare
                                        le specifiche informali della realta’ tramite una descrizione
                                        formale e completa ma indipendente dai criteri di
                                        rappresentazione utilizzati nei sistemi di gestione delle basi di
                                        dati
                                        Progettazione logica: la rappresentazione precedente viene
                                        tradotta nel modello adottato dal sistema di gestione delle basi
                                        di dati
                                        Progettazione fisica: lo schema logico viene completato con la
                                        specifica dei parametri fisici di memorizzazione dei dati
                                        (organizzazione dei file).



                                                             dott. ing. Francesco Guerra               19
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA




                                     I modelli concettuali dei dati




                                             dott. ing. Francesco Guerra   20
                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                         Modello e schema

                                     Modello: insieme di regole e strutture che permette la
                                     rappresentazione della realta’ di interesse
                                     Schema: rappresentazione di una specifica realta’ secondo
                                     un determinato modello


                                                                                    Modello




                                       Realta’ Percepita
                                                                                    Schema




                                                           dott. ing. Francesco Guerra                  21
                                                                  a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                                   Primitive di astrazione

                                     Le primitive di astrazione comuni a tutti i modelli sono:

                                        Classificazione (relazione di MEMBER_OF)

                                        Generalizzazione (relazione di IS_A)

                                        Aggregazione (relazione di PART_OF)




                                                            dott. ing. Francesco Guerra                 22
                                                                   a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                       Il modello Entita’-Relazione

                                     Il modello E/R e’ un modello concettuale dei dati e quindi
                                     fornisce una serie di strutture (costrutti) per descrivere la
                                     realta’ di interesse in una maniera facile da comprendere
                                     che prescinde dai criteri di organizzazione dei dati nel
                                     calcolatore
                                        I costrutti sono utilizzati per definire schemi che descrivono
                                        l’organizzazione e la struttura delle occorrenze dei dati (i valori
                                        assunti dai dati al variare del tempo
                                     Il modello e’ stato sviluppato dal Chen nel 1976




                                                              dott. ing. Francesco Guerra                23
                                                                     a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                       Il modello Entita’-Relazione
                                I costrutti del modello E/R
                                e la loro rappresentazione
                                grafica




                                I costrutti del modello E/R
                                e la loro rappresentazione
                                grafica




                                                              dott. ing. Francesco Guerra        24
                                                                     a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                    Panoramica sul modello E/R

                                     Gli schemi E/R, pur essendo di fondamentale importanza
                                     nella progettazione della base di dati, possono essere
                                     utilizzati con profitto anche per attivita’ non strettamente
                                     legate alla progettazione.
                                        Possono essere utilizzati a scopo documentativo
                                        Possono essere utilizzati per descrivere i dati di un sistema
                                        informativo gia’ esistente con un linguaggio astratto e
                                        unificante
                                        Gli schemi E/R possono servire a comprendere in caso di
                                        modifica dei requisiti di una applicazione su quali porzioni del
                                        sistema si deve operare e in cosa consistono le modifiche da
                                        effettuare




                                                             dott. ing. Francesco Guerra                   25
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                    Tecniche di documentazione

                                     Uno schema E/R va corredato con una documentazione di
                                     supporto, per facilitare l’interpretazione dello schema stesso e
                                     per descrivere proprieta’ di dati che non possono essere
                                     espresse direttamente dai costrutti di modello.
                                     La documentazione puo’ essere prodotta facendo uso di un
                                     dizionario dei dati che contiene per ogni dato:
                                        Il nome con cui ogni dato e’ definito all’interno del db
                                        Il tipo di rappresentazione ammesso
                                        Il responsabile per l’aggiornamento
                                        Le persone autorizzate per la consultazione
                                     Possono essere prodotte anche un insieme di regole di
                                     vincolo, e le regole di derivazione (l’operazione attraverso la
                                     quale puo’ essere un concetto, utilizzando altre proprieta’
                                     dello schema)
                                                             dott. ing. Francesco Guerra           26
                                                                    a.a. 2008/2009
       1                        DB
SISTEMI INFORMATIVI D’AZIENDA

                                                                            Esempio di documentazione
                                     Entita’                Descrizione                           Attributi        Identificatore
                                Impiegato        Impiegato che lavora nell’azienda         Codice, cognome,       Codice
                                                                                           stipendio, eta
                                Progetto         Progetti aziendali sui quali              Nome, budget,          Nome
                                                 lavorano gli impiegati                    data di consegna
                                Dipartimento     Dipartimenti delle sedi                   Telefono, nome         Nome, sede
                                                 dell’azienda
                                Sede             Sede dell’azienda in una certa            Citta’, indirizzo      Citta’
                                                 citta’                                    (numero, via, cap)

                                 Associazione               Descrizione                            Entita’             Attributi
                                Direzione         Associa un dipartimento al suo            Impiegato (0,1),
                                                  direttore                                 Dipartimento (1,1)
                                Afferenza         Associa un impiegato al suo               Impiegato (0,1),      Data di afferenza
                                                  dipartimento                              Dipartimento (1,N)
                                Partecipazione    Associa agli impiegati i progetti         Impiegato (0,N),      Data inizio
                                                  su cui lavorano                           Progetto (1,N)
                                Composizione      Associa una sede ai dipartimenti          Dipartimento (1,1),
                                                  di cui e’ composta                        Sede (1,N)
                                                                    dott. ing. Francesco Guerra                                 27
                                                                           a.a. 2008/2009
       1                        DB
Esercizio: spettacoli estivi

Si vogliono rappresentare informazioni relative alla gestione
di manifestazioni artistiche durante l’estate. Una manifestazione,
descritta da un codice e da un nome, consiste di due o più
spettacoli; ogni spettacolo è descritto da un numero univoco
all’interno della manifestazione nella quale è inserito e dall’ora di
inizio. Durante uno spettacolo si esibiscono uno o più artisti
(un artista si può esibire al massimo una volta durante lo stesso
spettacolo) ricevendo un certo compenso. Un artista è descritto
dal codice SIAE e dal nome d’arte. Per ogni artista si deve indicare
necessariamente un altro artista che lo sostituisca in caso di
indisponibilità; un artista può essere indicato come sostituto di più
artisti. Per ospitare gli spettacoli vengono adibiti opportuni
luoghi;inoltre, in una certa data, un luogo può ospitare al massimo
tre spettacoli, sia della stessa manifestazione che di manifestazioni
differenti.

Si disegni il modello concettuale del dominio descritto utilizzando il formalismo E/R.
                                                                                     esercizio 1
                                                                                                   28
Determinazione concetti
              fondamentali
Entità

   MANIFESTAZIONE
   SPETTACOLO
   ARTISTA
   LUOGO

Associazioni

   CONSISTE Associazione binaria MANIFESTAZIONE- SPETTACOLO
   OSPITA   Associazione binaria SPETTACOLO-LUOGO
   ESIBIZIONE Associazione binaria ARTISTA-SPETTACOLO




                                                     esercizio 1
                                                                   29
Schema scheletro


MANIFEST.                 SPETTACOLO


            CONSISTE
                              ESIBIZIONE

                 OSPITA




            LUOGO                      ARTISTA

                                           esercizio 1
                                                         30
SVILUPPO ASSOCIAZIONE
      MANIFESTAZIONE-SPETTACOLO
                                           Numero
Codice   Nome                                               Ora
                             CONSISTE                       inizio


  MANIFEST.                                         SPETTACOLO
                     (2,N)              (1,1)


  Una manifestazione consiste di 2 o più spettacoli;
         card(MANIFEST.,CONSISTE) = (2,N)
  ogni spettacolo è descritto da un numero univoco all’interno
della manifestazione nella quale è inserito.
         card(SPETTACOLO,CONSISTE) = (1,1)
                                                         esercizio 1
                                                                       31
SVILUPPO ASSOCIAZIONE
           SPETTACOLO-LUOGO (non
                  corretta)
Numero                                                   Indirizzo
                                                 Nome
           Ora-inizio           OSPITA


  SPETTACOLO                                            LUOGO
                        (1,1)            (0,3)


  Per ospitare gli spettacoli vengono adibiti opportuni luoghi;
inoltre, in una certa data, un luogo può ospitare al massimo 3
spettacoli, sia della stessa manifestazione che di manifestazioni
differenti.
 In questo modo si vincola un luogo ad ospitare in tutto tre
spettacoli, mentre questo è valido solo per una certa data

                                                           esercizio 1
                                                                         32
SVILUPPO ASSOCIAZIONE
     SPETTACOLO-LUOGO (corretta)
                                     Numero             Ora-inizio
Si introduce una nuova entità
DISPONIBILITA’ che indica la
disponibilità in un certo luogo di
ospitare in una certa data uno               SPETTACOLO
spettacolo.
                                                       (1,1)
   Nome
                                      OSPITA
           Indirizzo
                                                       (0,3)

   LUOGO                        HA           DISPONIBILITA
                       (0,N)         (1,1)

                                                Data
                                                          esercizio 1
                                                                        33
SVILUPPO ASSOCIAZIONE
           SPETTACOLO-ARTISTA
                                       Codice-SIAE
Numero                                                 Nome-arte
          Ora-inizio      Compenso


 SPETTACOLO                                          ARTISTA
                       (1,N)            (0,N)

                               ESIBIZIONE
Durante uno spettacolo si esibiscono uno o più artisti (un artista
si può esibire al massimo una volta durante lo stesso
spettacolo) ricevendo un certo compenso.
card(SPETTACOLO,ESIBIZIONE) = (1,N)
card(ARTISTA,ESIBIZIONE) = (0,N)
                                                           esercizio 1
                                                                         34
SVILUPPO ASSOCIAZIONE UNARIA
          ARTISTA-ARTISTA
                         Sostituito      Codice-SIAE
                           (1,1)
                                                   Nome-arte


   SOSTITUISCE                            ARTISTA


                         Sostituto
                          (0,N)
Per ogni artista si deve indicare necessariamente un altro artista
che lo sostituisca in caso di indisponibilità; un artista può essere
indicato come sostituto di più artisti.
card(ARTISTA,SOSTITUITO) = (1,1)
card(ARTISTA,SOSTITUTO) = (0,N)
                                                             esercizio 1
                                                                           35
SCHEMA E/R
                                                    Numero
Codice
         Nome                                                             Compenso
                                  CONSISTE                   Ora-inizio
                                                                                   ESIBIZIONE
                                                                          (1,N)
  MANIFEST.                                            SPETTACOLO
                     (2,N)                  (1,1)

                                               (1,1)
                                                                codice-SIAE (0,N)
                                                          nome-arte
Nome                                   OSPITA

         Indirizzo
                                                                            ARTISTA
                                               (0,3)          (1,1)


                     (0,N)          (1,1)                             Sostituito      Sostituto
   LUOGO                     HA              DISPONIBILITA’

                                                                                   (0,N)
                                                                   SOSTIT.
                                               Data      (1,1)
                                                                                   esercizio 1
                                                                                                  36
SISTEMI INFORMATIVI D’AZIENDA

                                                                                         Bibliografia

                                     Atzeni, Ceri, Paraboschi, Torlone: Basi di dati: Modelli e
                                     linguaggi di interrogazione, McGraw-Hill
                                     Beneventano, Bergamaschi, Guerra, Vincini: Progetto di
                                     basi di dati relazionali, Pitagora Editrice Bologna, 2007




                                                           dott. ing. Francesco Guerra             37
                                                                  a.a. 2008/2009
       1                        DB

Más contenido relacionado

Similar a 1 Siadb Studenti

Basi di dati e gis n
Basi di dati e gis nBasi di dati e gis n
Basi di dati e gis n
imartini
 
2b. lezione ss biblioteca digitale org
2b. lezione ss biblioteca digitale org2b. lezione ss biblioteca digitale org
2b. lezione ss biblioteca digitale org
Mau-Messenger
 

Similar a 1 Siadb Studenti (20)

Database introduzione
Database introduzioneDatabase introduzione
Database introduzione
 
3 database dbms
3 database dbms3 database dbms
3 database dbms
 
Corso access 2010
Corso access 2010Corso access 2010
Corso access 2010
 
Basi di dati
Basi di dati Basi di dati
Basi di dati
 
Basi di dati e gis n
Basi di dati e gis nBasi di dati e gis n
Basi di dati e gis n
 
Dbms
DbmsDbms
Dbms
 
Database Management Intro
Database Management IntroDatabase Management Intro
Database Management Intro
 
Descrizione di NO-SQL
Descrizione di NO-SQLDescrizione di NO-SQL
Descrizione di NO-SQL
 
01 Intro07
01 Intro0701 Intro07
01 Intro07
 
No Sql Intro
No Sql IntroNo Sql Intro
No Sql Intro
 
Cloud Computing
Cloud  ComputingCloud  Computing
Cloud Computing
 
Db2 e book_ita
Db2 e book_itaDb2 e book_ita
Db2 e book_ita
 
2 Sigda - Database
2 Sigda - Database2 Sigda - Database
2 Sigda - Database
 
Database - Appunti teorici
Database - Appunti teoriciDatabase - Appunti teorici
Database - Appunti teorici
 
Guida SQL: le basi per iniziare a programmare i database
Guida SQL: le basi per iniziare a programmare i databaseGuida SQL: le basi per iniziare a programmare i database
Guida SQL: le basi per iniziare a programmare i database
 
Data Express 4.0 - Conformità, produttività e privacy con dati di Test
Data Express 4.0 -  Conformità, produttività e privacy con dati di TestData Express 4.0 -  Conformità, produttività e privacy con dati di Test
Data Express 4.0 - Conformità, produttività e privacy con dati di Test
 
Strumenti digitali professionisti - Gestione del dato
Strumenti digitali professionisti - Gestione del datoStrumenti digitali professionisti - Gestione del dato
Strumenti digitali professionisti - Gestione del dato
 
2b. lezione ss biblioteca digitale org
2b. lezione ss biblioteca digitale org2b. lezione ss biblioteca digitale org
2b. lezione ss biblioteca digitale org
 
Database relazionali
Database relazionaliDatabase relazionali
Database relazionali
 
Brochure: Linked Open Data PILLS
Brochure: Linked Open Data PILLSBrochure: Linked Open Data PILLS
Brochure: Linked Open Data PILLS
 

Más de Majong DevJfu

9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud
Majong DevJfu
 
8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes
Majong DevJfu
 
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line7 - Architetture Software - Software product line
7 - Architetture Software - Software product line
Majong DevJfu
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
Majong DevJfu
 
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture
Majong DevJfu
 
4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio
Majong DevJfu
 
3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles
Majong DevJfu
 
2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture
Majong DevJfu
 
1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product
Majong DevJfu
 
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
Majong DevJfu
 

Más de Majong DevJfu (20)

9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud
 
8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes
 
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line7 - Architetture Software - Software product line
7 - Architetture Software - Software product line
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
 
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture
 
4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio
 
3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles
 
2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture
 
1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product
 
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
 
Uml3
Uml3Uml3
Uml3
 
Uml2
Uml2Uml2
Uml2
 
6
66
6
 
5
55
5
 
4 (uml basic)
4 (uml basic)4 (uml basic)
4 (uml basic)
 
3
33
3
 
2
22
2
 
1
11
1
 
Tmd template-sand
Tmd template-sandTmd template-sand
Tmd template-sand
 
26 standards
26 standards26 standards
26 standards
 

1 Siadb Studenti

  • 1. SISTEMI INFORMATIVI D’AZIENDA dott. ing. Francesco Guerra guerra.francesco@unimo.it
  • 2. SISTEMI INFORMATIVI D’AZIENDA Metodologie e modelli per il progetto dott. ing. Francesco Guerra 2 a.a. 2008/2009 1 DB
  • 3. SISTEMI INFORMATIVI D’AZIENDA DB e DBMS L’attenzione alle basi di dati ha caratterizzato le applicazioni informatiche fino dalle origini: i primi software risalgono agli anni ’60. Molte applicazioni scritte con il linguaggio COBOL sono tuttora utilizzate anche se si devono ritenere come applicazioni legacy L’approccio convenzionale sfrutta la presenza di archivi per memorizzare i dati in modo persistente sulla memoria di massa. Un file fornisce solo semplici meccanismi di accesso e di condivisione Un sistema di gestione di basi di dati (DBMS-Data Base Management System) e’ un sistema software per gestire grandi quantita’ di dati grandi condivise e persistenti, assicurando affidabilita’ e privatezza. dott. ing. Francesco Guerra 3 a.a. 2008/2009 1 DB
  • 4. SISTEMI INFORMATIVI D’AZIENDA DB e DBMS Le basi di dati sono grandi nel senso che possono contenere Terabyte di dati. Devono essere scalabili perche’ gli archivi possono essere anche di poche migliaia di byte I db sono condivisi: applicazioni e utenti diversi devono potere accedere secondo opportune modalita’ a dati comuni. Questa proprieta’ determina la riduzione della ridondanza per evitare la possibilita’ di inconsistenze Implementazione di un sistema di controllo di concorrenza Le basi di dati sono persistenti: il loro tempo di vita non e’ limitato a quelle delle esecuzione degli applicativi che le utilizzano I DBMS garantiscono affidabilita’: capacita’ di conservare il contenuto di un database in caso di malfunzionamento Implementazione di specifiche funzionlita’ di backup e recovery dott. ing. Francesco Guerra 4 a.a. 2008/2009 1 DB
  • 5. SISTEMI INFORMATIVI D’AZIENDA DB e DBMS I DBMS garantiscono la privatezza dei dati: ciascun utente e’ riconosciuto mediante un account e viene abilitato a svolgere solo determinate azioni sulla base di meccanismi di autorizzazione Un DBMS soddisfa ai principi di Efficienza: capacita’ di svolgere le operazioni utilizzando un insieme di risorse accettabile per gli utenti Efficacia: capacita’ della base di dati di rendere produttive le attivita’ degli utenti. dott. ing. Francesco Guerra 5 a.a. 2008/2009 1 DB
  • 6. SISTEMI INFORMATIVI D’AZIENDA Modelli di dati Un modello di dati e’ un insieme di concetti utilizzati per organizzare i dati di interesse e descriverne la struttura in modo che sia comprensibile a un elaboratore Ogni modello dati fornisce dei meccanismi di strutturazione. Il modello relazionale dei dati – il piu’ diffuso – permette di definire nuovi tipi di dato sulla base del costruttore relazione: un insieme di record a struttura fissa La relazione e’ rappresentabile mediante una tabella Le righe sono gli specifici record Le colonne sono i campi del record L’ordine delle righe e delle colonne e’ sostanzialmente irrilevante dott. ing. Francesco Guerra 6 a.a. 2008/2009 1 DB
  • 7. SISTEMI INFORMATIVI D’AZIENDA Il modello dei dati Docenti CODICE NOME 1 Francesco Guerra 2 Tizio Caio … … Manifesto CDL MATERIA ANNO CGI Sistemi informativi d’azienda 1 EA Sistemi informativi d’azienda 3 ACGF Controllo e S.I. 2 dott. ing. Francesco Guerra 7 a.a. 2008/2009 1 DB
  • 8. SISTEMI INFORMATIVI D’AZIENDA Schemi e Istanze Le basi di dati si compongono di due parti: Una parte invariante nel tempo detta schema della base di dati che descrive le caratteristiche dei dati E’ la componente intensionale Una parte variabile costituita dai valori effettivi degli elementi rappresentati. E’ la componente estensionale dott. ing. Francesco Guerra 8 a.a. 2008/2009 1 DB
  • 9. SISTEMI INFORMATIVI D’AZIENDA Livelli di astrazione nei DBMS Esiste una proposta standardizzata di architettura per DBMS articolata su 3 livelli (esterno, logico e interno) per ciascuno dei quali esiste uno schema: Schema logico: e’ lo schema della intera base di dati per mezzo del modello logico adottato dal DBMS (relazionale, gerarchico, reticolare, ad oggetti, …) Schema interno: si tratta della rappresentazione dello schema logico per mezzo delle strutture di memorizzazione Schema esterno: costituisce la descrizione di una porzione della base di dati di interesse per mezzo dello schema logico. dott. ing. Francesco Guerra 9 a.a. 2008/2009 1 DB
  • 10. SISTEMI INFORMATIVI D’AZIENDA Linguaggi per basi di dati I linguaggi per basi di dati si dividono in tre tipologie: Data Definition Language: servono per specificare gli schemi logici esterni e fisici Data Manipulation Language: sono utiulizzati per l’interrogazione e l’aggiornamento delle basi di dati Data Control Language: sono i comandi per la gestione degli utenti e la specificazione dei privilegi di accesso I dati possono essere consultati mediante: Linguaggi testuali interattivi Comandi simili a quelli interattivi immersi in linguaggi di programmazione tradizionali Interfacce amichevoli che permettono di sintetizzare le interrogazioni senza usare un linguaggio testuale dott. ing. Francesco Guerra 10 a.a. 2008/2009 1 DB
  • 11. SISTEMI INFORMATIVI D’AZIENDA Riassumiamo Un DB è una collezione di dati (ad es. rappresentati in forma di tabelle) che rappresentano le informazioni di interesse per un’organizzazione Progettare un DB significa trovare un “buon modo” per strutturare i dati, che rispetti sia i requisiti propri del Sistema Informativo dell’organizzazione sia i vincoli che sui dati vengono imposti Un DBMS è un sistema software che gestisce DB Per eseguire operazioni su un DB è necessario scrivere istruzioni in un linguaggio (tipicamente dichiarativo: SQL) supportato dal DBMS Il modo specifico con cui un’istruzione viene eseguita è scelto dal modulo ottimizzatore del DBMS sulla base di considerazioni di efficienza e considerando quali sono gli operatori e i metodi di accesso disponibili dott. ing. Francesco Guerra 11 a.a. 2008/2009 1 DB
  • 12. SISTEMI INFORMATIVI D’AZIENDA Indipendenza fisica e logica Tra gli obiettivi di un DBMS vi sono quelli di fornire caratteristiche di: Indipendenza fisica L’organizzazione fisica dei dati dipende da considerazioni legate all’efficienza delle organizzazioni adottate. La riorganizzazione fisica dei dati non deve comportare effetti collaterali sui programmi applicativi Indipendenza logica Pur in presenza di uno schema logico integrato non è utile o conveniente che ogni utente ne abbia una visione uniforme La soluzione porta a quella che è comunemente nota come… dott. ing. Francesco Guerra 12 a.a. 2008/2009 1 DB
  • 13. SISTEMI INFORMATIVI D’AZIENDA La classica architettura a tre livelli di astrazione Vista Database su Vista dispositivi Schema logico fisici Livello esterno A livello logico si descrive la base di dati con il modello logico usato dal DBMS Livello logico Livello fisico A livello fisico si descrive il modo in cui i dati sono organizzati e gestiti in memoria di massa (dispositivi fisici): ordinamento, scelta dei metodi accesso A livello esterno si descrive una parte (una vista) della base di dati di interesse dott. ing. Francesco Guerra 13 a.a. 2008/2009 1 DB
  • 14. SISTEMI INFORMATIVI D’AZIENDA Utenti e progettisti Ci sono diverse categorie di operatori che lavorano con le basi di dati: L’amministratore delle basi di dati (DBA): e’ il responsabile della progettazione, controllo e amministrazione della base di dati I progettisti e i programmatori di applicazioni: definiscono e realizzano i programmi per accedere alle basi di dati utilizzando un DML Gli utenti che possono accedere sia per compiere transazioni ripetitive e formalizzate sia delle interrogazioni non preventivabili a priori dott. ing. Francesco Guerra 14 a.a. 2008/2009 1 DB
  • 15. SISTEMI INFORMATIVI D’AZIENDA Vantaggi e svantaggi dei DBMS Vantaggi: I dati vengono considerati come una risorsa comune di una organizzazione La base di dati rappresenta un modello unificato e preciso della parte di mondo reale di interesse per l’organizzazione Con il DBMS e’ possibile la gestione centralizzata dei dati che puo’ essere arricchita da forme di standardizzazione e beneficiare di economie di scala La condivisione permette di ridurre la ridondanza e eventuali inconsistenze L’indipendenza dei dati favorisce lo sviluppo di applicazioni flessibili e facilmente modificabili Svantaggi: I DBMS sono prodotti costosi e complessi con necessita’ di investimenti sia diretti sia indiretti (personale di manutenzione) dott. ing. Francesco Guerra 15 a.a. 2008/2009 1 DB
  • 16. SISTEMI INFORMATIVI D’AZIENDA Introduzione alla progettazione Studio di Raccolta e Implemen- Validazione e Progettazione Funzionamento fattibilita’ analisi requisiti tazione collaudo La progettazione di una base di dati costituisce solo una delle componenti del processo di sviluppo di un sistema informativo complesso: Va inquadrata nel ciclo di vita dei sistemi informativi: Studio di fattibilita’:serve a definire i costi delle varie alternative possibili Raccolta e analisi dei requisiti: consiste nella individuazione e nello studio delle proprieta’ e delle funzionalita’ che il sistema informativo deve avere dott. ing. Francesco Guerra 16 a.a. 2008/2009 1 DB
  • 17. SISTEMI INFORMATIVI D’AZIENDA Introduzione alla progettazione Progettazione: si divide in progettazione di dati (per individuare la struttura e l’organizzazione che i dati devono avere) e progettazione delle applicazioni (si definiscono le caratteristiche dei programmi applicativi). Implementazione: consiste nella effettiva realizzazione del sistema informativo seguendo la struttura e le caratteristiche definite nella progettazione Validazione e collaudo: si verifica il funzionamento e la corrispondenza del sistema ai requisiti di funzionamento Funzionamento: il sistema informativo diventa operativo e esegue i compiti per i quali e’ stato progettato La metodologia puo’ anche prevedere la realizzazione di attivita’ di prototipizzazione, ovvero nel creare delle versioni rapide e semplificate di parti del sistema informativo allo scopo di verificarne sul campo le funzionalita’ prima della realizzazione definitiva della applicazione dott. ing. Francesco Guerra 17 a.a. 2008/2009 1 DB
  • 18. SISTEMI INFORMATIVI D’AZIENDA Metodologie di progettazione e basi di dati Una metodologia di progettazione consiste generalmente in: Una decomposizione della attivita’ in passi successivi e indipendenti Una serie di strategie da seguire e alcuni criteri di scelta nel caso di alternative Alcuni modelli di riferimento per descrivere i dati in ingresso/uscita Una metodologia deve garantire: La generalita’ rispetto alle applicazioni e ai sistemi in gioco La qualita’ del prodotto in termini di correttezza, completezza ed efficienza La facilita’ di uso sia delle strategie sia dei modelli di riferimento dott. ing. Francesco Guerra 18 a.a. 2008/2009 1 DB
  • 19. SISTEMI INFORMATIVI D’AZIENDA Metodologie di progettazione e basi di dati Nell’ambito delle basi di dati si e’ consolidata una metodologia che si articola in tre fasi in cascata: Progettazione concettuale: lo scopo e’ quello di rappresentare le specifiche informali della realta’ tramite una descrizione formale e completa ma indipendente dai criteri di rappresentazione utilizzati nei sistemi di gestione delle basi di dati Progettazione logica: la rappresentazione precedente viene tradotta nel modello adottato dal sistema di gestione delle basi di dati Progettazione fisica: lo schema logico viene completato con la specifica dei parametri fisici di memorizzazione dei dati (organizzazione dei file). dott. ing. Francesco Guerra 19 a.a. 2008/2009 1 DB
  • 20. SISTEMI INFORMATIVI D’AZIENDA I modelli concettuali dei dati dott. ing. Francesco Guerra 20 a.a. 2008/2009 1 DB
  • 21. SISTEMI INFORMATIVI D’AZIENDA Modello e schema Modello: insieme di regole e strutture che permette la rappresentazione della realta’ di interesse Schema: rappresentazione di una specifica realta’ secondo un determinato modello Modello Realta’ Percepita Schema dott. ing. Francesco Guerra 21 a.a. 2008/2009 1 DB
  • 22. SISTEMI INFORMATIVI D’AZIENDA Primitive di astrazione Le primitive di astrazione comuni a tutti i modelli sono: Classificazione (relazione di MEMBER_OF) Generalizzazione (relazione di IS_A) Aggregazione (relazione di PART_OF) dott. ing. Francesco Guerra 22 a.a. 2008/2009 1 DB
  • 23. SISTEMI INFORMATIVI D’AZIENDA Il modello Entita’-Relazione Il modello E/R e’ un modello concettuale dei dati e quindi fornisce una serie di strutture (costrutti) per descrivere la realta’ di interesse in una maniera facile da comprendere che prescinde dai criteri di organizzazione dei dati nel calcolatore I costrutti sono utilizzati per definire schemi che descrivono l’organizzazione e la struttura delle occorrenze dei dati (i valori assunti dai dati al variare del tempo Il modello e’ stato sviluppato dal Chen nel 1976 dott. ing. Francesco Guerra 23 a.a. 2008/2009 1 DB
  • 24. SISTEMI INFORMATIVI D’AZIENDA Il modello Entita’-Relazione I costrutti del modello E/R e la loro rappresentazione grafica I costrutti del modello E/R e la loro rappresentazione grafica dott. ing. Francesco Guerra 24 a.a. 2008/2009 1 DB
  • 25. SISTEMI INFORMATIVI D’AZIENDA Panoramica sul modello E/R Gli schemi E/R, pur essendo di fondamentale importanza nella progettazione della base di dati, possono essere utilizzati con profitto anche per attivita’ non strettamente legate alla progettazione. Possono essere utilizzati a scopo documentativo Possono essere utilizzati per descrivere i dati di un sistema informativo gia’ esistente con un linguaggio astratto e unificante Gli schemi E/R possono servire a comprendere in caso di modifica dei requisiti di una applicazione su quali porzioni del sistema si deve operare e in cosa consistono le modifiche da effettuare dott. ing. Francesco Guerra 25 a.a. 2008/2009 1 DB
  • 26. SISTEMI INFORMATIVI D’AZIENDA Tecniche di documentazione Uno schema E/R va corredato con una documentazione di supporto, per facilitare l’interpretazione dello schema stesso e per descrivere proprieta’ di dati che non possono essere espresse direttamente dai costrutti di modello. La documentazione puo’ essere prodotta facendo uso di un dizionario dei dati che contiene per ogni dato: Il nome con cui ogni dato e’ definito all’interno del db Il tipo di rappresentazione ammesso Il responsabile per l’aggiornamento Le persone autorizzate per la consultazione Possono essere prodotte anche un insieme di regole di vincolo, e le regole di derivazione (l’operazione attraverso la quale puo’ essere un concetto, utilizzando altre proprieta’ dello schema) dott. ing. Francesco Guerra 26 a.a. 2008/2009 1 DB
  • 27. SISTEMI INFORMATIVI D’AZIENDA Esempio di documentazione Entita’ Descrizione Attributi Identificatore Impiegato Impiegato che lavora nell’azienda Codice, cognome, Codice stipendio, eta Progetto Progetti aziendali sui quali Nome, budget, Nome lavorano gli impiegati data di consegna Dipartimento Dipartimenti delle sedi Telefono, nome Nome, sede dell’azienda Sede Sede dell’azienda in una certa Citta’, indirizzo Citta’ citta’ (numero, via, cap) Associazione Descrizione Entita’ Attributi Direzione Associa un dipartimento al suo Impiegato (0,1), direttore Dipartimento (1,1) Afferenza Associa un impiegato al suo Impiegato (0,1), Data di afferenza dipartimento Dipartimento (1,N) Partecipazione Associa agli impiegati i progetti Impiegato (0,N), Data inizio su cui lavorano Progetto (1,N) Composizione Associa una sede ai dipartimenti Dipartimento (1,1), di cui e’ composta Sede (1,N) dott. ing. Francesco Guerra 27 a.a. 2008/2009 1 DB
  • 28. Esercizio: spettacoli estivi Si vogliono rappresentare informazioni relative alla gestione di manifestazioni artistiche durante l’estate. Una manifestazione, descritta da un codice e da un nome, consiste di due o più spettacoli; ogni spettacolo è descritto da un numero univoco all’interno della manifestazione nella quale è inserito e dall’ora di inizio. Durante uno spettacolo si esibiscono uno o più artisti (un artista si può esibire al massimo una volta durante lo stesso spettacolo) ricevendo un certo compenso. Un artista è descritto dal codice SIAE e dal nome d’arte. Per ogni artista si deve indicare necessariamente un altro artista che lo sostituisca in caso di indisponibilità; un artista può essere indicato come sostituto di più artisti. Per ospitare gli spettacoli vengono adibiti opportuni luoghi;inoltre, in una certa data, un luogo può ospitare al massimo tre spettacoli, sia della stessa manifestazione che di manifestazioni differenti. Si disegni il modello concettuale del dominio descritto utilizzando il formalismo E/R. esercizio 1 28
  • 29. Determinazione concetti fondamentali Entità MANIFESTAZIONE SPETTACOLO ARTISTA LUOGO Associazioni CONSISTE Associazione binaria MANIFESTAZIONE- SPETTACOLO OSPITA Associazione binaria SPETTACOLO-LUOGO ESIBIZIONE Associazione binaria ARTISTA-SPETTACOLO esercizio 1 29
  • 30. Schema scheletro MANIFEST. SPETTACOLO CONSISTE ESIBIZIONE OSPITA LUOGO ARTISTA esercizio 1 30
  • 31. SVILUPPO ASSOCIAZIONE MANIFESTAZIONE-SPETTACOLO Numero Codice Nome Ora CONSISTE inizio MANIFEST. SPETTACOLO (2,N) (1,1) Una manifestazione consiste di 2 o più spettacoli; card(MANIFEST.,CONSISTE) = (2,N) ogni spettacolo è descritto da un numero univoco all’interno della manifestazione nella quale è inserito. card(SPETTACOLO,CONSISTE) = (1,1) esercizio 1 31
  • 32. SVILUPPO ASSOCIAZIONE SPETTACOLO-LUOGO (non corretta) Numero Indirizzo Nome Ora-inizio OSPITA SPETTACOLO LUOGO (1,1) (0,3) Per ospitare gli spettacoli vengono adibiti opportuni luoghi; inoltre, in una certa data, un luogo può ospitare al massimo 3 spettacoli, sia della stessa manifestazione che di manifestazioni differenti. In questo modo si vincola un luogo ad ospitare in tutto tre spettacoli, mentre questo è valido solo per una certa data esercizio 1 32
  • 33. SVILUPPO ASSOCIAZIONE SPETTACOLO-LUOGO (corretta) Numero Ora-inizio Si introduce una nuova entità DISPONIBILITA’ che indica la disponibilità in un certo luogo di ospitare in una certa data uno SPETTACOLO spettacolo. (1,1) Nome OSPITA Indirizzo (0,3) LUOGO HA DISPONIBILITA (0,N) (1,1) Data esercizio 1 33
  • 34. SVILUPPO ASSOCIAZIONE SPETTACOLO-ARTISTA Codice-SIAE Numero Nome-arte Ora-inizio Compenso SPETTACOLO ARTISTA (1,N) (0,N) ESIBIZIONE Durante uno spettacolo si esibiscono uno o più artisti (un artista si può esibire al massimo una volta durante lo stesso spettacolo) ricevendo un certo compenso. card(SPETTACOLO,ESIBIZIONE) = (1,N) card(ARTISTA,ESIBIZIONE) = (0,N) esercizio 1 34
  • 35. SVILUPPO ASSOCIAZIONE UNARIA ARTISTA-ARTISTA Sostituito Codice-SIAE (1,1) Nome-arte SOSTITUISCE ARTISTA Sostituto (0,N) Per ogni artista si deve indicare necessariamente un altro artista che lo sostituisca in caso di indisponibilità; un artista può essere indicato come sostituto di più artisti. card(ARTISTA,SOSTITUITO) = (1,1) card(ARTISTA,SOSTITUTO) = (0,N) esercizio 1 35
  • 36. SCHEMA E/R Numero Codice Nome Compenso CONSISTE Ora-inizio ESIBIZIONE (1,N) MANIFEST. SPETTACOLO (2,N) (1,1) (1,1) codice-SIAE (0,N) nome-arte Nome OSPITA Indirizzo ARTISTA (0,3) (1,1) (0,N) (1,1) Sostituito Sostituto LUOGO HA DISPONIBILITA’ (0,N) SOSTIT. Data (1,1) esercizio 1 36
  • 37. SISTEMI INFORMATIVI D’AZIENDA Bibliografia Atzeni, Ceri, Paraboschi, Torlone: Basi di dati: Modelli e linguaggi di interrogazione, McGraw-Hill Beneventano, Bergamaschi, Guerra, Vincini: Progetto di basi di dati relazionali, Pitagora Editrice Bologna, 2007 dott. ing. Francesco Guerra 37 a.a. 2008/2009 1 DB