1 / 23

Basi di Dati e Sistemi Informativi

Basi di Dati e Sistemi Informativi. Progettazione di Basi di Dati Home page del corso : http:// www.cs.unibo.it /~ difelice / dbsi /. Progettazione di DB.

noma
Download Presentation

Basi di Dati e Sistemi Informativi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Basi di Dati e SistemiInformativi Progettazione di Basi di Dati Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/

  2. Progettazione di DB Negliesempivistifin’ora, abbiamostudiato come implementareuna base di datiin SQL, a partire da uno schema gia’ definito. IMPIEGATO UFFICI CREATE TABLE IMPIEGATO( CODICE SMALLINT PRIMARY KEY … .. …

  3. Progettazione di DB Come procedere se dobbiamorealizzareda zero un nuovosistemainformativo? Es. Progettazione di un sistemainformativo per gestireidati di un repartoospedaliero (anagraficapazienti, anagraficamedici, cartellecliniche, etc). … In questocaso, partiredirettamente con l’implementazionedelletabelle SQL puo’ esserecomplesso se non impossibile(vedidopo)…

  4. Progettazione di DB PROBLEMA1: Dimensionamento del problema. Negliesempiproposti fin qui, uno schema di un DB era composto da max 5 tabelle… In pratica, un DB di un sistemainformativo di mediedimensionipuo’ conteneredecine di tabelle… Es. rete SOLE, gestione integrata del fascicolosanitario

  5. Progettazione di DB PROBLEMA2: Analisideirequisiti • Qualisono le specifiche del sistemachesivuolerealizzare? • Qualisonoidatid’interessenelmodello? • Qualisono le operazioni sui datida gestire? • Nellapratica, capire le richiestedeiclienti e’ un processo solo apparentementesemplice…

  6. Progettazione di DB PROBLEMA3: Traduzionenelmodellorelazionale Q. Supponendo di aver chiaritocosasideverealizzare, edidati da gestire, come passare da unaspecificainformaledeidati ad un schema relazionale? SPECIFICHE Il sistemadevegestireidatirelativiairicoveri di ciascunpaziente, tenendotracciadelleterapiemedichegiornalieresomministrate, degliesami di laboratorioeffettuati, etc ? ? PAZIENTE RICOVERO TERAPIA

  7. Progettazione di DB Come procedere? Esistonotecniche e metologieconsolidate per progettareuna base di datia partiredaisuoirequisiti. In generale, la progettazione e’ un solo unodeicomponenti del ciclo di vita di un sistemainformativo (vediprossima slide …) REQUISITI PROGETTAZIONE DB SQL

  8. Progettazione di DB Studio di fattibilita’ Oggetto di studio del modulo corrente { Raccolta/analisirequisiti Progettazione Ciclo di vita di un sistemaInformativo Modulo precedente Implementazione Validazione Funzionamento

  9. Progettazione di DB Analisideirequisitie progettazionein dettaglio … Studio/analisideirequisiti Fasidellaprogettazione Risultati SCHEMA CONCETTUALE Progettazioneconcettuale SCHEMA LOGICO Progettazionelogica SCHEMA FISICO Progettazionefisica

  10. Progettazione di DB Esempio: Progettazione di una base di dati per un entecheerogacorsi di formazione. SPECIFICA deiREQUISITI sui DATI Si vuoleprogettareuna base di dati per unasocieta’ cheerogacorsi, di cui sivoglionorappresentareidatideidocenti e dglistudenti. Per glistudenti, identificati da un codice, sivuoleteneretraccia del codicefiscale, cognome, eta’, sesso, e corsichestannoseguendo/hannoseguito. I corsihanno un codice, un titolo e possonoaverevarieedizioni con date di inizio/fine e numerodeglistudenti. Per gliinsegnanti, sivuolememorizzareilcodice, ilcognome, l’afferenza, ilnome del corsocheinsegnano/hannoinsegnato.

  11. Progettazione di DB Esempio: Progettazione di una base di dati per un entecheerogacorsi di formazione. SPECIFICA delleOPERAZIONI sui DATI • Inserimento di un nuovostudente (in media, ognimese) • Inserimento di un nuovodocente (in media, ogni anno) • Inserimento di un nuovocorso (in media, ogni anno) • Stampa di tuttiicorsiattivi (ognigiorno) • Stampa di tuttiiglistudentidell’ultimo anno • … • …

  12. Progettazione di DB Analisideirequisitie progettazionein dettaglio … Studio/analisideirequisiti Fasidellaprogettazione Risultati SCHEMA CONCETTUALE Progettazioneconcettuale SCHEMA LOGICO Progettazionelogica SCHEMA FISICO Progettazionefisica

  13. Progettazione di DB Esistonodellemetodologie di progettazioneper produrreunabuona base di dati … In cosaconsisteunametolodogia? Decomposizionedell’attivita’ di progetto in fasi successive. Strategie da seguire, e criteri di sceltaper determinare la soluzioneottimale. Modelli per descrivereidati in ingresso/uscitanellevariefasi. Metriche e strumenti per valutare la qualita’ del prodotto finale.

  14. Progettazione di DB In questocorso, vedremounametodologia “classica” di progettazionebasatasu 3 fasi… ANALISI REQUISITI PROGETTAZIONE CONCETTUALE Cosasirappresenta Come losirappresenta FILE1 FILE2 FILEn PROGETTAZIONE FISICA PROGETTAZIONE LOGICA

  15. Progettazione di DB • Ognifasedellaprogettazione produce unarappresentazionedella base di datiattraversounoschema: • ProgettazioneConcettuale  • ProgettazioneLogica • ProgettazioneFisica  SCHEMA CONCETTUALE SCHEMA LOGICO (dipendente dal modellodeidati) SCHEMA FISICO (dipendente dal DBMS in uso)

  16. Progettazione di DB Analisideirequisitie progettazionein dettaglio … Studio/analisideirequisiti Fasidellaprogettazione Risultati SCHEMA CONCETTUALE Progettazioneconcettuale SCHEMA LOGICO Progettazionelogica SCHEMA FISICO Progettazionefisica

  17. Progettazione di DB • In questafase, ci sifocalizzasulcontenutoinformativodeidati ad alto livello di astrazione, senzafocalizzarsisull’implementazione. • In output, si produce un modelloconcettuale: • indipendentedallo schema logico(relazionale) • indipendente dal DBMS in uso • Utilita’ dellaprogettazioneconcettuale: • Creareun’astrazionecompletadeidati da rappresentare • Capirele relazionitraidati del modello

  18. Progettazione di DB Sonodisponibilimoltimodelliconcettualiper la progettazione di basi di dati: MODELLO ENTITA’ -RELAZIONE(ER) UNIFIED MODELING LANGUAGE(UML)

  19. Progettazione di DB Analisideirequisitie progettazionein dettaglio … Studio/analisideirequisiti Fasidellaprogettazione Risultati SCHEMA CONCETTUALE Progettazioneconcettuale SCHEMA LOGICO Progettazionelogica SCHEMA FISICO Progettazionefisica

  20. Progettazione di DB • In questafase,sirappresenta la base di datinelloschema logico del DMBS (nelnostrocaso, nello schema relazionale). • La progettazionelogicacomprende: • Traduzionedello schema concettuale • Ottimizzazionedello schema logicoottenuto

  21. Progettazione di DB • Unavoltaottenuto lo schema logico, e’ necessarioanalizzare la qualita’ del prodotto finale: • Rimozionedelleridondanze(normalizzazione) • Analisidelleprestazioni • In base alleoperazionipreviste sui dati, lo schema prodotto e’ efficientedal punto di vista delleprestazioni?

  22. Progettazione di DB Analisideirequisitie progettazionein dettaglio … Studio/analisideirequisiti Fasidellaprogettazione Risultati SCHEMA CONCETTUALE Progettazioneconcettuale SCHEMA LOGICO Progettazionelogica SCHEMA FISICO Progettazionefisica

  23. Progettazione di DB In questafase, sidescrivono le struttureper la memorizzazionedeidatisumemoriasecondaria, e l’accesso (efficiente) aidati. FILE1.dat 0001000 111010 101110 • Strutturasequenziale • Strutturaad accessocalcolato(hash) • Strutturaad albero

More Related