Docente
|
DOCENTE FITTIZIO
(programma)
Obiettivi formativi per il raggiungimento dei risultati di apprendimenti previsti nella scheda SUA Il corso mira all'apprendimento delle strategie, metodi e tecniche per la progettazione concettuale e logica, la realizzazione e l’uso di basi dati gestiti da un dbms relazionale, nonche’ delle caratteristiche transazionali dei moderni rdbms.
Numero totale e descrizione delle unità didattiche ** Nr. Totale: 12
Organizzazione della didattica (lezioni, laboratorio etc) didattica EROGATIVA N. 12 ORE videoLEZIONI ON-LINE (n. 2 videolezioni - unita’ didattiche - della durata di un’ora per ogni cfu)
didattica interattiva n. 12 ore lezioni in streaming (n. 2 lezioni in streaming per ogni cfu) di cui n. // da registrare e pubblicare in piattaforma ed eventuali n. // per esercitazioni in aula n. 12 forum – 2 per CFU N. // CHAT N. // WEB CONFERENCE N. // PROGETTI N. // REPOSITORY N. 6 TEST (ALMENO 1 PER CFU) CON 10 DOMANDE ASSISTENZA MEDIANTE E-MAIL
Programma del corso - Introduzione a: sistemi informativi; dbms; concetto di transazione - modello relazionale - ciclo di vita del software - orientamento al project work Analisi e specifica dei requisiti (esempi) - cenni di algebra relazionale - postgresql Installazione e documentazione - concetti base di sql ddl Dichiaratività di sql Ddl - concetti preliminari Domini, schemi e tabelle Vincoli intrarelazionali e interrelazionali Policy di reazione Modifica e cancellazione di schemi e strutture Esempi ed esercizi in ambiente postgresql - concetti base di sql dml Dml - concetti preliminari Introduzione alle query Inserimento, cancellazione e modifica dei dati Query semplici Join interni ed esterni Ordinamento, operatori aggregati, Query con raggruppamento e predicati sui gruppi Esempi ed esercizi in ambiente postgresql - metodologie e modelli per il progetto Il modello e-r: i costrutti e la documentazione (esempi) Cenni di modellazione dei dati in uml e uso di strumenti case - la progettazione concettuale - orientamento al project work Raccolta e analisi dei requisiti Rappresentazione concettuale dei dati: criteri e pattern di progetto (esempi ed esercizi) Strategie di progetto; qualità di uno schema; una metodologia generale Un caso di studio: dall’analisi dei requisiti ad un diagramma e-r canonico - la progettazione logica Fasi della progettazione logica Analisi delle prestazioni su schemi e-r Ristrutturazione di schemi e-r Traduzione verso il modello relazionale - la progettazione logica: considerazioni sull’organizzazione fisica e indici nei rdbms Cenni sull’organizzazione fisica - la progettazione logica - orientamento al project work Fasi della progettazione logica Esercitazioni sulle analisi delle prestazioni e sulla ristrutturazione di schemi e-r Traduzione verso il modello relazionale Un caso di studio: dall’analisi delle prestazioni alla ristrutturazione di schemi e-r - la normalizzazione Ridondanze, anomalie e dipendenze funzionali (esempi) Le prime tre forme normali e la bcnf Progettazione di basi di dati e normalizzazione Esempi sulla valutazione della qualità dello schema e la normalizzazione - la normalizzazione - orientamento al project work - caratteristiche di base complesse di sql Query insiemistiche e nidificate (interpretazione semplice) Query nidificate complesse (interpretazione complessa) Query nidificate nelle clausole select e from - caratteristiche di base complesse di sql - orientamento al project work Esercitazioni sulle query insiemistiche e nidificate - controllo dell’accesso sql Risorse e privilegi; comandi per concedere e revocare privilegi; i ruoli in sql - caratteristiche evolute di sql Vincoli di integrità generici e asserzioni Cenni sulle viste Stored procedures e trigger Specifica delle transazioni (commit e rollback) e proprietà acide delle transazioni - caratteristiche evolute di sql - orientamento al project work Esercitazioni su viste e trigger Un caso di studio: trigger e transazioni in ambiente postgresql - sviluppo di applicazioni per bd Cenni sql embedded Odbc e jdbc Pattern generico di progettazione e sviluppo di una applicazione java e jdbc - sviluppo di applicazioni per bd - orientamento al project work Esercizi: un pattern generico di progettazione e sviluppo di una applicazione java e jdbc Un caso di studio con uso di jdbc: sviluppo di una applicazione java
Modalità di verifiche di profitto in itinere Il grado di apprendimento degli Studenti è monitorato costantemente attraverso metodologie e strumenti di verifica. In particolare, al fine di rendere fattibile la verifica e la certificazione degli esiti formativi, il docente e il tutor terranno conto de: Il tracciamento automatico delle attività formative da parte del sistema-reporting; Il monitoraggio didattico e tecnico (a livello di quantità e qualità delle interazioni, di rispetto delle scadenze didattiche, di consegna degli elaborati previsti, ecc); Le verifiche di tipo formativo in itinere, anche per l’autovalutazione (es. test multiple choice, vero/falso, sequenza di domande con diversa difficoltà, simulazioni, mappe concettuali, elaborati, progetti di gruppo, ecc); L’esame finale di profitto, nel corso del quale si tiene conto e si valorizza il lavoro svolto in rete (attività svolte a distanza, quantità e qualità delle interazioni on line, ecc).
La valutazione in questo quadro tiene conto di più aspetti: Il risultato di un certo numero di prove intermedie (test on line, sviluppo di elaborati, ecc); La qualità e la quantità della partecipazione alle attività on line (frequenza e qualità degli interventi monitorabili attraverso la piattaforma); I risultati della prova finale.
Pertanto i dati raccolti saranno oggetto di analisi da parte del docente per l’attività di valutazione dello Studente. Modalità di valutazione*
Obiettivi della Prova L'esame prevede una prova scritta e un colloquio orale. Nella prova scritta, lo studente, a partire dalla specifica di un problema, deve affrontare tutte le fasi di progettazione e di definizione di una base di dati, nonché l'implementazione di un sottoinsieme delle query e delle funzionalità applicative, realizzando un elaborato progettuale. Nella prova orale lo studente discute l'elaborato prodotto nella prova scritta e tutti gli altri argomenti del corso. La valutazione complessiva tiene conto ovviamente sia della prova scritta che di quella orale. Si segnala che la prova orale può riguardare anche lo svolgimento di alcuni esercizi in ambiente postgresql.
Durante lo svolgimento del corso, gli studenti possono sviluppare, anche in gruppo, un elaborato progettuale articolato in 1) analisi e specifica dei requisiti e progettazione concettuale; 2) progettazione logica; 3) definizione e gestione della base dati utilizzando il linguaggio sql in ambiente postegresql; 4) realizzazione di funzionalità applicative in java. Al singolo studente all'interno del gruppo sarà assegnata la responsabilità diretta di una delle parti in cui l’elaborato è articolato, nell’ambito delle attività complessive del gruppo. La discussione dell’elaborato ed in particolare della parte assegnata al singolo studente è elemento di valutazione dello studente e sostituisce la prova scritta. La valutazione complessiva del singolo studente tiene conto ovviamente prevalentemente sia della parte di elaborato di responsabilità dello stesso che della prova orale, nonché seppur in modo non prevalente dell’elaborato complessivo.
Conoscenze e capacità di comprensione che consentono di elaborare e/o applicare idee originali, spesso in un contesto di ricerca (descrittore di Dublino n. 1) Il modello relazionale e i concetti base dell’algebra relazionale. Progettazione concettuale, pattern di progettazione. Progettazione logica e concetti base di progettazione fisica di una base dati. Il linguaggio sql per la definizione di dati, la manipolazione e l’estrazione dei dati. I fondamentali della normalizzazione. I db attivi. Jdbc e gli elementi di base per lo sviluppo di applicazioni. Le transazioni acide.
Capacità di applicare conoscenza, comprensione e abilità nel risolvere i problemi (descrittore di Dublino n. 2) Capacità di specificare i requisiti, progettare, implementare e usare una base dati relazionale per un dato scenario. Capacità di usare un rdbms reale.
Capacità di identificare i metodi ed i pattern più adatti per l'analisi, il design e l'implementazione di una database relazionale per un dato scenario.
Capacità di esporre verbalmente gli argomenti del corso; lavorare in autonomia ed in piccoli gruppi.
Capacità di applicare la conoscenza acquisita a contesti differenti da quelli analizzati nel corso e di approfondire le tematiche usando anche materiale diverso da quello suggerito durante il corso.
(testi)
---
|