Sistemi Informativi e Basi di Dati

Documenti analoghi
Sistemi Informativi Corso di Laurea in Ingegneria dell Integrazione d Impresa (E-Business)

Sistemi Informativi e Basi di Dati. Sistemi Informativi

Anno Accademico 2007/2008. Sistemi Informativi. Corso di Laurea in Ingegneria della Gestione Industriale

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1

Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS

Elena Baralis 2007 Politecnico di Torino 1

Sistemi informativi D B M G. Introduzione. Introduzione alle basi di dati D B M G 2. Elena Baralis 2007 Politecnico di Torino 1

Introduzione alle Basi di Dati

Basi di dati. Elena Baralis Politecnico di Torino

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Basi di Dati. Concetti e Principi Generali. Maria Mirto

D. Gubiani Introduzione alle Basi di Dati 3. La porzione automatizzata di un sistema informativo viene in

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Basi di dati Basi di dati per bioinformatica

Informatica per le Scienze Umane. Introduzione al corso: programma dettagliato

Fondamenti di Informatica e Programmazione

Basi di dati. Docente Prof. Alberto Belussi. Anno accademico 2009/10

DOCENTE PROF. ALBERTO BELUSSI. Anno accademico 2010/11

Informatica per le Scienze Umane. Introduzione al corso: programma

Corso Informatica di Base. Basi di Dati

Fondamenti di Teoria delle Basi di Dati

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

Prof. Pagani corrado SISTEMI INFORMATIVI E DATABASE

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

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

Basi di dati. Giuseppe De Giacomo. Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza

Basi di dati. Giuseppe De Giacomo. Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma

Corso di. Basi di Dati I. 1. Introduzione

Corso di. Basi di Dati I. 1. Introduzione

Sistemi Informativi Avanzati

Basi di dati D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/13

SISTEMI INFORMATIVI E DATABASE

Che cos è l informatica?

Basi di dati. Base di dati

INFORMATICA. Prof. MARCO CASTIGLIONE ITS Tito Acerbo - PESCARA

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno

SISTEMI INFORMATIVI TERRITORIALI DATABASES -LEZIONE 3

MODELLI DEI DATI. Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Basi di dati. Maurizio Lenzerini. Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza

Informazione: notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere.

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Introduzione alle basi di dati. A. Ferrari

BASI DI DATI INTRODUZIONE

Introduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1

BASI DI DATI: Dal problema reale al modello concettuale

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale

Cap. 1-I 1 I sistemi informatici

record a struttura fissa

Scopo Laboratorio di Informatica

LINGUAGGI E UTENTI DI UN DBMS

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

SISTEMI INFORMATIVI AZIENDALI

Syllabus A042 Insegnamenti disciplinari

DBMS. Affidabilità. Privatezza dei dati. Efficienza. Efficacia. Un DBMS deve garantire:

Fondamenti di Informatica A. A / 1 9

BASE DI DATI. (accezione specifica) collezione di dati gestita da un DBMS. Università degli Studi di Cassino

Modello Relazionale. Schemi. Schemi. Schemi. In ogni base di dati si possono distinguere: Es. (relazioni INSEGNAMENTO e MANIFESTO)

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

INTRODUZIONE. Prof. Fabio A. Schreiber. Dipartimento di Elettronica e Informazione Politecnico di Milano PROGRAMMA DEL CORSO

DataBase Management System - DBMS

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

Basi di dati (database)

Informatica. per laurea triennale di area non informatica. 1 Le basi di dati

IL PIANO DI QUALITA AZIENDALE

Progettazione di Basi di Dati

Informatica Introduzione alle basi di dati

Basi di Dati Concetti Introduttivi

Sistemi di Elaborazione delle Informazioni

BASI DI DATI: Dal problema reale al modello concettuale. a cura del Prof. Claudio Traini

Tecnico della progettazione implementazione e manutenzione di sistemi di gestione di database

Scopo. Informatica. Sistema informativo. Sistema informatico

ITI M. FARADAY. Programmazione a. s

Introduzione alle Basi di Dati

Basi di Dati Ingegneria Informatica e delle Telecomunicazioni

Introduzione. Basi di Dati. Testo: Azteni e altri. Basi di Dati (II ed.). McGraw Hill. Maurizio Gabbrielli Ricevimento Martedi 14.

Informatica di Base - 6 c.f.u.

DBMS. Alice Pavarani

Corso di Laurea in Informatica Basi di Dati a.a

Informatica II Basi di Dati (08/09) Parte Introduzione. Sistemi informativi e basi di dati. Sistemi informativi e basi di dati

Disciplina: INFORMATICA

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

ARCHITETTURA DI UN DBMS

I database. Introduzione alla teoria delle basi di dati

IL MODELLO RELAZIONALE. Patrizio Dazzi a.a

Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS

Parte I Introduzione

INTRODUZIONE AI DBMS. Inoltre i fogli elettronici. Mentre sono poco adatti per operazioni di. Prof. Alberto Postiglione

INTRODUZIONE AI DBMS

Le basi di dati. Le basi di dati. dalla teoria all'utilizzo di tutti i giorni. Alessandro Tanasi

A.s Programma di Informatica

Docente: Laura Po

Basi di dati (Sistemi Informativi)

Scopo Informatica. Sistema informativo. Sistema informatico. Gestione dell informazione per le lauree triennali

UD U.D. 1 : Introduzione ai

Transcript:

Anno Accademico 2011/2012 Corso di Laurea in Ingegneria Gestionale Prof. Domenico Beneventano Ing. Andrea Bulgarelli 1

SISTEMI INFORMATIVI Due Moduli Un sistema informativo è un componente di una organizzazione il cui scopo è gestire (acquisire, elaborare, memorizzare, produrre, distribuire) le informazioni utili per gli scopi dell organizzazione stessa. BASI DI DATI La gestione delle informazioni con strumenti informatici avviene normalmente tramite una Base di Dati, una collezione di dati che rappresentano le informazioni di interesse per un organizzazione. 2

Modalità d esame L insegnamento è costituito da due moduli ma da un unico esame (si registra un unico esame, con un unico voto) L esame è costituito dalle seguenti prove 1. [Sistemi Informativi] Prova scritta (obbligatoria) 2. [Basi di Dati] Prova pratica di laboratorio (obbligatoria) 3. Prova orale (facoltativa) Nella valutazione finale la Prova scritta avrà un peso di 2/3 e la Prova pratica di 1/3 = (2* voto prova scritta + voto prova pratica)/3 Per superare l esame occorre superare sia la Prova scritta che la Prova pratica Nessun ordine cronologico tra Prova scritta e Prova pratica: una prova superata resta valida per tutto l Anno Accademico Prova scritta e Prova di laboratorio in giorni distinti La prova orale si può sostenere in una data da concordare 3

Modalità d esame [SISTEMI INFORMATIVI] Prova scritta, a fine corso (durata=2,5 ore): Progettazione concettuale (13 punti) Progettazione logica (7 punti) Interrogazioni SQL (7 punti) Domanda «teorica» (3 punti) Punto facoltativo (3 punti) [BASI DI DATI] Prova pratica, a fine corso (durata = 1 ora): Store Procedure (15 punti) Trigger (15 punti) Prova orale facoltativa Tratta tutti gli argomenti del corso Influisce sul voto finale al massimo di ± 3 4

Registrazione dell esame Per superare l esame occorre superare sia la Prova scritta che la Prova pratica; Nessun ordine cronologico tra Prova scritta e Prova pratica: una prova superata resta valida per tutto l Anno Accademico È obbligatorio iscriversi ad entrambe le prove tramite esse3! Gli esiti di entrambe le prove verranno pubblicati tramite esse3: non è necessario accettare il voto! È obbligatorio registrare il voto su libretto: Quando entrambe le prove sono state superate, lo studente può accettare il voto complessivo risultante e registrare il voto su libretto 5

Organizzazione delle Lezioni Modulo di Sistemi Informativi 6 CFU = 54 ore 54 Ore di lezioni ed esercitazioni in aula Modulo di Basi di Dati 3 CFU = 27ore 6 Ore di lezioni in aula 21 Ore di esercitazioni in laboratorio 6

Materiale didattico Libro di testo (copre tutte le lezioni ed esercitazioni in aula e gran parte delle lezioni ed esercitazioni in laboratorio) Progetto di Basi di Dati Relazionali: Lezioni ed Esercizi Autori: Domenico Beneventano, Sonia Bergamaschi, Francesco Guerra, Maurizio Vincini Editore: Pitagora Editrice - Bologna - Edizione 2007 www.dbgroup.unimo.it/librobdati/libro.html Altri Esercizi (necessita di password, riportata nell introduzione del libro) Errata Corrige Tutto l altro materiale didattico necessario sarà disponibile sia in forma cartacea (in copisteria) che sul sito web del corso (www.dbgroup.unimo.it/sire/) 7

Materiale didattico DBMS Microsoft SQL-SERVER 2000 È disponibile in laboratorio Verrà distribuito agli studenti - durante i primi incontri in laboratorio oppure contattando i docenti - come macchina virtuale di VIRTUALBOX 1. Installare VIRTUALBOX ultima versione da http://www.virtualbox.org/ 2. Copiare la macchina virtuale sul proprio PC (è di circa 1.4 GB ) 3. Attivare da VIRTUALBOX la macchina virtuale Uso e scopo di SQL-SERVER 2000 Per Sistemi Informativi : per provare le query SQL della prova scritta Per Basi di Dati: per preparare la prova pratica di laboratorio che verrà fatta appunto su SQL-SERVER 2000 (si deve consegnare un DB realizzato con SQL-SERVER 2000). 8

Sistemi Informativi Un sistema informativo è un componente di una organizzazione il cui scopo è gestire (acquisire, elaborare, memorizzare, produrre, distribuire) le informazioni utili per gli scopi dell organizzazione stessa. L informazione è un bene a valore crescente, necessario per pianificare e controllare con efficacia le attività dell organizzazione, e rappresenta la materia prima che viene trasformata dai sistemi informativi Possibili approcci ai Sistemi Informativi: Tecnico: Modelli, strumenti e metodologie per progettare e usare Sistemi Informativi Comportamentale: influenza dei Sistemi Informativi sulle organizzazioni e gli individui Economico: Valutazioni di efficacia e convenienza economica 9

Sistema Informativo e Sistema Informatico L esistenza del Sistema Informativo è in parte indipendente dalla sua automazione tramite strumenti propri della tecnologia dell informazione La parte automatizzata di un Sistema Informativo viene chiamata Sistema Informatico Sistema Informativo Sistema Informatico 10

Informazioni e Dati Nei Sistemi Informatici le informazioni vengono rappresentate per mezzo di dati, che hanno bisogno di essere interpretati per fornire informazioni Dati : "Mario Rossi" e 0898932989 Informazioni : Il numero di telefono di Mario Rossi è 0898932989 11

Base di Dati (DataBase) Una Base di Dati è una collezione di dati utilizzati per rappresentare le informazioni di interesse per un Sistema Informativo. Un DBMS (Data Base Management System) è un sistema software in grado di gestire collezioni di dati grandi, condivise e persistenti, assicurando la loro affidabilità e privatezza. Una Base di Dati è una collezione di dati gestita da un DBMS. Sistema Informativo Sistema Informatico DBMS BASE DI DATI 12

File System Un file è una collezione di dati che risiede su un dispositivo di memoria esterna ed è strutturata in accordo ai requisiti di un'applicazione. Un File System fornisce solo semplici meccanismi di accesso e condivisione Emissione fatture Inserimento Ordini Indirizzo Cliente Indirizzo Cliente Anagrafe clienti Ordini Registro fatture Indirizzo Cliente Fatture La ripetizione dell'indirizzo del cliente consente alle applicazioni Registro fatture e inserimento ordini di operare allo stesso tempo 13

DBMS vs File System La gestione delle informazioni è centralizzata in una rappresentazione integrata e non ridondante Emissione fatture Indirizzo cliente Anagrafe clienti Inserimento Ordini DBMS Ordini Registro fatture Fatture Una granularita' piu' fine consente l'uso condiviso della risorsa indirizzo cliente 14

Pecularietà dei DBMS Gestione di grandi moli di dati persistenti Gestione della condivisione tra diversi utenti ed applicazioni gestione delle transazioni Garantisce la affidabilità dei dati, cioè la capacità di ripristino a fronte di malfunzionamenti (resilienza) meccanismi di salvataggio (backup) e ripristino (recovery) Offre una visione strutturata dei dati modello (logico) dei dati Garantisce la privatezza dei dati meccanismi di autorizzazione 15

Modello dei Dati Un modello dei dati è una collezione di strutture e regole che permettono la rappresentazione della realtà di interesse. Schema: rappresentazione di una specifica realtà secondo un certo modello (aspetto intensionale) Istanza: valori (dati) effettivamente memorizzati (aspetto estensionale) Modelli logici: forniscono una descrizione dei dati direttamente supportata dal DBMS; (in ordine cronologico): gerarchico, reticolare, relazionale, a oggetti Modelli concettuali: descrizione dei concetti della realtà indipendente da aspetti realizzativi Entity-Relationship, a oggetti 16

Modello dei Dati Relazionale È il modello logico più diffuso. I dati sono rappresentati in forma tabellare, cioè usa come unica struttura le relazioni o tabelle ESAMI Matricola NomeCorso Docente Voto 123 Matematica Rossi 28 128 Matematica Rossi 24 123 Inglese Taylor 26 Schema Istanza Lo schema è sostanzialmente costituito dal nome delle colonne. Lo schema è praticamente invariante rispetto al tempo. L istanza è costituita dalle righe L istanza varia per l aggiunta, la modifica e la cancellazione righe (record o tuple) 17

Base di Dati Relazionale Una base di dati relazionale è un insieme di tabelle correlate ESAMI Matricola NomeCorso Docente Voto 123 Matematica Rossi 28 STUDENTI Matricola Nome Cognome Età 123 Anna Verde 21 CORSI NomeCorso Anno Crediti Matematica 1 5 18

Base di Dati Relazionale Una base di dati relazionale è un insieme di tabelle correlate ESAMI Matricola NomeCorso Docente Voto 123 Matematica Rossi 28 STUDENTI Matricola Nome Cognome Età 123 Anna Verde 21 CORSI NomeCorso Anno Crediti Docente Matematica 1 5 Rossi 19

Informazioni e Vincoli In ogni situazione reale le informazioni che si vogliono gestire devono rispettare certi vincoli Esempio: il numero di matricola è unico STUDENTE Matricola Cognome 123 Rossi 123 Verde Esempio: una stessa matricola non può dare due volte lo stesso esame ESAME Matricola NomeCorso Voto 123 Matematica 28 123 Matematica 26 20

Progettazione Concettuale: Entity/Relationships (E/R) Esigenza di strumenti efficaci, chiari e sintetici per rappresentare i dati di interesse e le loro associazioni in modo concettuale Uno studente ha la matricola univoca ed un cognome Un corso ha un nome univoco ed un docente Studente (0,N) Matricola Cognome Uno studente sostiene un esame per un corso, riportando un voto l esame è un associazione tra studente e corso E/R Esame (0,N) Voto Uno studente può sostenere più esami, ma non per lo stesso corso Corso Nome Docente Informazioni e Vincoli Schema E/R 21

Progettazione Logico-Relazionale Partendo da uno schema E/R si definiscono delle semplici regole per ottenere le tabelle di una base di dati relazionale Studente Matricola Cognome STUDENTE Matricola Cognome (0,N) Esame ESAME Relazionale Matricola Nome Voto (0,N) Corso Voto Nome Docente CORSO Nome Docente Schema E/R Schema Relazionale 22

Implementazione del DataBase sul DBMS Le tabelle di una base di dati relazionale vengono realizzate sul DBMS utilizzando il linguaggio standard SQL (Structured Query Language) CREATE TABLE ESAME( MATRICOLA INTEGER NOT NULL, NOME CHAR NOT NULL, VOTO INTEGER, PRIMARY KEY (MATRICOLA, NOME) ) DBMS (SQL SERVER) Codice SQL Tabella in SQL-SERVER 23

Utilizzo del DataBase Le tabelle contengono i dati che possono essere visualizzati, modificati e aggiunti. 24

Utilizzo del DataBase L utilità principale di un DBMS sono le query (interrogazioni) sui dati contenuti. Anche per le interrogazioni si utilizza il linguaggio SQL SELECT COGNOME,NOME,VOTO FROM ESAME, STUDENTE WHERE ESAME.MATRICOLA = STUDENTE.MATRICOLA AND NOME = BIANCO esami sostenuti da Bianco 25

Utilizzo del DataBase I dati ottenuti possono essere quindi visualizzati e modificati in un formato personalizzabile con una MASCHERA. Ad esempio in questa maschera vengono riportati gli studenti che hanno superato l esame di matematica 26

Utilizzo del DataBase Per stampare i dati si utilizzano i REPORT. Ad esempio in questo report vengono stampati gli esami superati ordinati per Docente. 27

Utilizzo (avanzato) del DataBase Tramite linguaggi di programmazione che ospitano comandi scritti in SQL Ad esempio questo è un frammento di codice scritto nel linguaggio VBScript per generare una pagina web dinamica con tecnologia ASP (ActiveServerPages) http://ares.ing.unimo.it/beneventano/iscrizioneappello.asp?!!!idcorso=9&idappello=1!! <%! 'Seleziono i dati nel database! OBJECT1.Open("...! Data Source= " \beneventano\dati\studenti.mdb")! Set rs = OBJECT1.Execute! ("SELECT * FROM [qry_elencoappelli]! WHERE [IDCorso] = " & Request.QueryString("IDCorso")! & " AND [IDAppello] = " & Request.QueryString("IDAppello"))!! %>!! 28

Livelli di astrazione nei DBMS La "classica" architettura a tre livelli di astrazione in un database. Vista Vista Schema logico Database su dispositivi fisici Livello esterno Livello logico Livello fisico A livello logico si descrive la base di dati con il modello logico del DBMS A livello fisico si descrive il modo in cui i dati sono organizzati e gestiti in memoria di massa (dispositivi fisici): ordinamento, metodi accesso A livello esterno si descrive una parte (una vista) della base di dati di interesse per un certo utente o applicazione 29

Indipendenza dei dati Gli utenti ed i programmi applicativi che utilizzano una base di dati possono interagire ad un eleveto livello di astrazione, che prescinde dai dettagli implementativi della base di dati. UTENTI DBMS APPLICAZIONI BASE DI DATI Indipendenza Logica: è possibile interagire con il livello esterno della base di dati in modo indipendente dalla struttura logica dei dati. Indipendenza Fisica: è possibile interagire con il DBMS in modo indipendente dalla struttura fisica dei dati. 30

Linguaggi per Basi di Dati Linguaggi di definizione dei dati (DDL - Data Definition Language): per definire schemi logici, esterni e fisici, e autorizzazioni di accesso Linguaggi di manipolazione dei dati (DML - Data Manipulation Lan.): per interrogare e aggiornare il contenuto di una base di dati Il Linguaggio SQL (Structured Query Language) = DDL + DML Linguaggio standard per basi di dati relazionali Accesso ai dati Tramite linguaggi testuali interattivi (es. SQL) Tramite interfacce amichevoli che permettono di sintetizzare le operazioni Tramite linguaggi di programmazione (es. C) che ospitano comandi scritti nel linguaggio per basi di dati 31

Sistemi Informativi Gestione Industriale Programma del Corso Progettazione concettuale (lezioni + esercitazioni) Il modello concettuale dei dati Entity-Relationships (E/R) Documentazione di schemi E/R: Regole Aziendali, Dizionario dei Dati Progettazione da requisiti in linguaggio naturale Basi di Dati Relazionali (lezioni + esercitazioni) Il modello Relazionale Elementi di teoria relazionale: Algebra relazionale, Dipendenze funzionali, Normalizzazione La Progettazione logico relazionale Interrogazione di un database tramite il linguaggio SQL Elementi introduttivi ai Sistemi di Gestione delle Basi di Dati Relazionali Attività di laboratorio Introduzione al sistema di gestione di basi di dati Microsoft SQL- SERVER 32

- Gestionale Programma del corso Modulo di Sistemi Informativi Progettazione concettuale (lezioni + esercitazioni) Il modello concettuale dei dati Entity-Relationships (E/R) Documentazione di schemi E/R: Regole Aziendali, Dizionario dei Dati Progettazione da requisiti in linguaggio naturale Basi di Dati Relazionali (lezioni + esercitazioni) Il modello Relazionale Elementi di teoria relazionale: Algebra relazionale, Dipendenze funzionali, Normalizzazione La Progettazione logico relazionale Interrogazione di un database tramite il linguaggio SQL Elementi introduttivi ai Sistemi di Gestione delle Basi di Dati Relazionali 33

- Gestionale Programma del corso Modulo di Basi di Dati Il sistema di gestione di basi di dati Microsoft SQL-SERVER (laboratorio) Viste (lezioni + esercitazioni di laboratorio) T-SQL (lezioni + esercitazioni di laboratorio) (variabili, controllo di flusso, trattamento degli errori, print, operatori) Trigger (lezioni + esercitazioni di laboratorio) (creazione, chiamata, parametri, valori di ritorno) Store Procedure (lezioni + esercitazioni di laboratorio) (creazione, tipi di trigger, tabelle inserted/deleted) 34

Altri Insegnamenti : Sistemi Informativi Avanzati Questo insegnamento si propone di fornire le nozioni fondamentali riguardanti i sistemi informativi avanzati, con particolare riferimento sia alla progettazione di sistemi informativi per il supporto alle decisioni che alla modellazione integrata degli aspetti strutturali, dinamici e funzionali di un sistema informativo. Sistemi Informativi di supporto alle decisioni e Sistemi Informativi direzionali Datawarehouse : un raccoglitore di informazioni che integra e riorganizza i dati provenienti da sorgenti di varia natura e li rende disponibili per analisi e valutazioni finalizzate alla pianificazione e al processo decisionale Modellazione integrata al progetto dei sistemi informativi Integrazione e condivisione dell informazione 35

Sistemi Informativi Vecchio Ordinamento Modalità d esame Prova scritta, a fine corso (durata = 2,5 ore): Progettazione concettuale (13 punti) Progettazione logica (7 punti) Interrogazioni SQL (7 punti) Domanda «teorica» (3 punti) Punto facoltativo (3 punti) Prova orale facoltativa, dopo lo scritto Tratta tutti gli argomenti del corso Influisce sul voto finale al massimo di ± 3 La data della prova sarà concordata con il docente 36