BASI DI DATI, ONTOLOGIE E WEB SEMANTICO

Anno accademico 2021/2022 - 2° anno
Docenti Crediti: 12
SSD: INF/01 - INFORMATICA
Organizzazione didattica: 300 ore d'impegno totale, 228 di studio individuale, 72 di lezione frontale
Semestre: 1° e 2°
ENGLISH VERSION

Obiettivi formativi

  • MODULO A: BASI DI DATI

    Il corso ha come obiettivo principale di fornire i concetti fondamentali su: sistemi di gestione delle basi di dati (DBMS), linguaggio SQL, tecniche di modellazione dei dati e metodi di progettazione di una base di dati.

    Durante il corso, gli studenti applicheranno le conoscenze acquisite effettuando operazioni reali e pratiche di CRUD (Create, Read, Update, Delete) su basi dati su server locali.

    Particolare attenzione viene posta sulle tecniche per svolgere l’analisi funzionale, la raccolta dei requisiti e la definizione dei processi del contesto di lavoro dove la base di dati dovrà essere inserita.

     

    Conoscenza e capacità di comprensione

    Comprendere la struttura dei sistemi informativi, la raccolta dei requisiti e la loro modellazione così da avere consapevolezza del contesto in cui le basi di dati sono allocate.

    Comprendere i principali concetti di gestione e progettazione di sistemi di basi di dati.

    Conoscere gli strumenti per l'interrogazione di basi di dati di natura differente.

    Comprendere le differenze tra le varie tipologie di database: relazionali, datawarehouse, big data e NoSQL.

     

    Capacità di applicare conoscenza e comprensione

    Saper comprendere le esigenze e bisogni del contesto e astrarre le informazioni necessari al fine di sapere modellare i dati, riuscire a documentare i requisiti, conoscere le tecniche di progettazione e effettuare interrogazioni.

     

    Autonomia di giudizio

    Riuscire ad analizzare, raccogliere ed interpretare i dati da un contesto complesso e riuscire ad adottare la soluzione progettuale più efficiente.

     

    Abilità comunicative

    Spiegare oralmente le proprie scelte di progetto in modo chiaro facendo riferimento in modo appropriato ai concetti fondamentali nella gestione della base di dati.

     

    Capacità di apprendimento

    Lo studente riuscirà tramite i concetti e le nozioni acquisite durante il corso a intraprendere studi successivi con un alto grado di autonomia.

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Conoscenza e capacità di comprensione (knowledge and understanding): saranno acquisite le conoscenze relative agli strumenti standard indicati dal World Wide Web Consortium (W3C) per la rappresentazione semantica e l'interrogazione della conoscenza presente sul Web.

    Capacità di applicare conoscenza e comprensione (applying knowledge and understanding): saranno acquisite le capacità di costruire modelli logici riguardanti svariati domini di applicazione, anche chiamati ontologie web, utilizzando la tecnologia standard del W3C insieme a dati e informazioni presenti sul Web. Lo studente inoltre, sarà in grado di utilizzare i reasoner automatici attualmente più diffusi per costruire inferenze logiche sulle ontologie web realizzate e quindi deducendo l'informazione implicitamente presente in esse.

    Autonomia di giudizio (making judgements): lo studente sarà in grado di valutare la qualità di un’ontologia e di valutare quale strumento per la rappresentazione e l'interrogazione della conoscenza sia più adeguato nelle diverse situazioni.

    Abilità comunicative (communication skills): saranno acquisite le necessarie abilità comunicative ed un'adeguata appropriatezza espressiva nella comunicazione di problematiche riguardanti la rappresentazione e l'interrogazione della conoscenza presente sul Web, anche ad interlocutori non esperti.

    Capacità di apprendimento (learning skills): lo studente avrà la capacità di adattare le conoscenze acquisite anche a nuovi contesti, nonché di aggiornarsi attraverso la consultazione delle fonti specialistiche del settore del Web semantico.


Modalità di svolgimento dell'insegnamento

  • MODULO A: BASI DI DATI

    Lezioni frontali, esercitazioni pratiche, discussione di casi di studio.

    Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Lezioni frontali in cui, oltre alla spiegazione delle nozioni e degli strumenti base del semantic Web, verranno presentati diversi esempi e casi di studio al fine di stimolare la discussione in classe e facilitare la comprensione degli argomenti.

    Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.


Prerequisiti richiesti

  • MODULO A: BASI DI DATI

    Non si richiedono specifiche capacità e/o prerequisiti di natura informatica.

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Nessun prerequisito richiesto.


Frequenza lezioni

  • MODULO A: BASI DI DATI

    Obbligatoria

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Obbligatoria


Contenuti del corso

  • MODULO A: BASI DI DATI

    1. Nozioni base di sistemi informativi (Dispense del docente)

    1. Introduzione ai sistemi informativi
    2. Ciclo di vita software
    3. Metodologia di sviluppo del software
    4. Analisi architetturale dei sistemi software
    5. Raccolta e gestione dei requisiti

     

    2. Modelli e linguaggi delle basi di dati

    1. Introduzione ai Database Management System (Capitolo 1)
    2. Modello relazionale (Capitolo 2)
    3. Cenni di algebra e calcolo relazionale (Capitolo 3, dispense del docente)
    4. Linguaggio SQL (Capitolo 4)
    5. DBMS relazionale: MySQL (Dispense del docente)
    6. Altre tipologie di basi di dati (Dispense del docente)

     

    3. Progettazione delle basi di dati

    1. Metodologie di progettazione (Capitolo 6)
    2. Progettazione Concettuale (Capitolo 7)
    3. Progettazione Logica (Capitolo 8)
    4. Cenni di normalizzazione (Capitolo 9, dispense del docente)
    5. Cenni di PHP: con lo scopo di creare pagine con accesso ad un database MySQL (Dispense del docente)
  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Introduzione al web semantico: motivazioni, esempi, cenni alla modellazione semantica (ontologie), alla logica.

     

    Modello di dati Resource Description Framework (RDF), cenni a progetti come Open Graph Protocol di Facebook, Google Graph, DBPedia.

     

    Il linguaggio SPARQL per l’interrogazione di grafi RDF e introduzione a importanti endpoint SPARQL.

     

    Il linguaggio RDFSchema (cenni ad ontologie fondazionali in RDFS per le Digital Humanities).

     

    Il Web Ontology Language (OWL) 2, esempi di ontologie fondazionali e non per le Digital Humanities..

     

    Introduzione al Semantic Web Rule Language (SWRL), alle logiche descrittive (teorie logiche in grado di rappresentare i linguaggi del semantic web) e a relativi strumenti di inferenza.


Testi di riferimento

  • MODULO A: BASI DI DATI

    1. BASI DI DATI 5/ED CON CONNECT, di Paolo Atzeni, Stefano Ceri, Piero Fraternali, Stefano Paraboschi, Riccardo Torlone - Casa editrice: Mc-Graw-Hill (2018), cap. 1 (pp. 3-14), cap. 2 (pp. 15-39), cap. 3 (dispense del docente), cap. 4 (pp. 91-147), cap. 6 (pp. 197-234), cap. 7 (pp. 241-271), cap. 8 (pp. 281-319), cap. 9 (dispense del docente).

     

    2. Appunti e dispense del docente

     

    Si ricorda che, ai sensi dell’art. 171 della legge 22 aprile 1941, n. 633 e successive disposizioni, fotocopiare libri in commercio, in misura superiore al 15% del volume o del fascicolo di rivista, è reato penale.

    Per ulteriori informazioni sui vincoli e sulle sanzioni all’uso illecito di fotocopie, è possibile consultare le Linee guida sulla gestione dei diritti d’autore nelle università (a cura della Associazione Italiana per i Diritti di Riproduzione delle opere dell’ingegno - AIDRO).

    I testi di riferimento possono essere consultati in Biblioteca.

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    1. A semantic Web Primer (third edition). Grigoris Antoniou, Paul Groth, Frank van Harmelen, and Rinke Hoekstra, 2012. The MIT Press, Cambrigde, Massachusetts, London, England (pp. 288).

     

    2. Semantic Web for the Working Ontologist (Third Edition). Dean Allemang, James Hendler and Fabien Gandon, 2020. Morgan and Claypool (pp. 510).

    I testi non vanno studiati per intero, ma devono essere utilizzati come supporto alle lezioni frontali e alle slide.

    Si ricorda che, ai sensi dell’art. 171 della legge 22 aprile 1941, n. 633 e successive disposizioni, fotocopiare libri in commercio, in misura superiore al 15% del volume o del fascicolo di rivista, è reato penale.

    Per ulteriori informazioni sui vincoli e sulle sanzioni all’uso illecito di fotocopie, è possibile consultare le Linee guida sulla gestione dei diritti d’autore nelle università (a cura della Associazione Italiana per i Diritti di Riproduzione delle opere dell’ingegno - AIDRO).

    I testi di riferimento possono essere consultati in Biblioteca.


Programmazione del corso

MODULO B:ONTOLOGIE E WEB SEMANTICO
 ArgomentiRiferimenti testi
1Il linguaggio Resource Description Framework (RDF)Cap. 3 di 2), cap. 2 di 1) e materiale integrativo 
2Il linguaggio di interrogazione SPARQLCap. 3 di 1), cap 5) e 6) di 2) e materiale integrativo 
3Il linguaggio RDFSchemaCap. 7 e 8 di 2) e materiale integrativo 
4Esempi di vocabolari:FOAF e SKOSCap. 9 e 10 di 2) e materiale integrativo 
5Web Ontology Language (OWL)Cap. 4 di 1) e cap. 11 e 12 di 2) e materiale integrativo 
6Semantic Web Rule Language (SWRL)Materiale integrativo 

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

  • MODULO A: BASI DI DATI

    Prova orale

    Prova pratica

    Gli studenti, singolarmente e non suddivisi in gruppi, svilupperanno un progetto, concordato con il docente, nel quale applicheranno le tecniche apprese a lezione. Il progetto dovrà essere corredato da una relazione e verrà presentato e discusso in sede di esame orale.

    Durante la presentazione del progetto potranno, ove necessario, essere poste alcune domande allo studente.

    Saranno previste, durante il corso, delle esercitazioni di laboratorio intermedie che saranno valutate e faranno media con il progetto finale.

    Per la valutazione complessiva dell’esame si terrà conto dello svolgimento del progetto, della padronanza dei contenuti e delle competenze acquisite, dell’accuratezza linguistica e proprietà lessicale, nonché della capacità argomentativa dimostrata dal candidato.

    La verifica dell'apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    Progetto software sugli argomenti del corso. Durante la discussione del progetto, in data d'appello d'esame, lo studente verrà sottoposto a delle domande riguardanti la motivazione di alcune scelte nel design dell'ontologia e delle domande teoriche riguardanti costrutti ed operatori utilizzati.

    Il progetto potrà anche essere sviluppato in piccoli gruppi (di tre o quattro persone).

    In quest’ultimo caso il lavoro svolto da ciascun partecipante dovrà essere ben documentato.

    Per la valutazione dell’esame si terrà conto della padronanza dei contenuti e delle competenze acquisite, dell’accuratezza linguistica e proprietà lessicale, nonché della capacità argomentativa dimostrata dal candidato.

    La verifica dell'apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.


Esempi di domande e/o esercizi frequenti

  • MODULO B:ONTOLOGIE E WEB SEMANTICO

    1) Cos'è SPARQL e come lo si può usare? Cosa genera una query CONSTRUCT?

    2) A che serve la restrizione esistenziale?

    3) A che serve la restrizione universale?

    4) Come può essere usata la restrizione di cardinalità?

    5) Cosa sono le regole SWRL?

    Durante la verifica del progetto:

    1. Come è stata ottenuta questa inferenza? È possibile ottenere il risultato mostrato in altro modo?
    2. Spiegare la costruzione di una gerarchia delle classi.
    3. Quali ontologie fondazionali sono state usate per la realizzazione del progetto?