mail unicampaniaunicampania webcerca

    Mauro IACONO

    Insegnamento di DATABASES AND INFORMATION SYSTEMS

    Corso di laurea in DATA ANALYTICS

    SSD: ING-INF/05

    CFU: 6,00

    ORE PER UNITÀ DIDATTICA: 56,00

    Periodo di Erogazione: Secondo Semestre

    Italiano

    Lingua di insegnamento

    INGLESE

    Contenuti

    Modellazione di problemi reali mediante un approccio basato sulla definizione di entità, proprietà, relazioni e comportamenti degli oggetti.

    Testi di riferimento

    Atzeni, Ceri, Paraboschi, Torlone, Database Systems - Concepts, Languages and Architectures, McGraw-Hill.
    Materiali didattici di approfondimento forniti dai docenti durante il corso.

    Obiettivi formativi

    Obiettivo del corso è fornire agli studenti gli strumenti metodologici per progettare e utilizzare le basi di dati e per comprendere le principali problematiche relative alle basi di dati relazionali e non relazionali.

    Prerequisiti

    Conoscenza di base della modellazione con approccio orientato agli oggetti.
    Fondamenti di programmazione.

    Metodologie didattiche

    Lezioni frontali, seminari on line pre-registrati, esercitazioni al calcolatore.

    Metodi di valutazione

    Prova scritta, esame orale

    Altre informazioni

    è consigliato il previo superamento o almeno la conoscenza degli argomenti degli insegnamenti di Fundamentals of Programming ed Object Oriented Programming.

    Programma del corso

    INTRODUZIONE AI SISTEMI INFORMATIVI
    Sistemi informativi, informazioni e dati. L'impatto dei sistemi informativi sull'azienda. Basi di dati e sistemi di gestione delle basi di dati. Modelli di dati. Schemi e istanze. Livelli di astrazione nei DBMS. Indipendenza dei dati. Linguaggi di database e utenti.

    PARTE PRIMA: IL MODELLO RELAZIONALE
    Il modello relazionale: strutture del modello relazionale; relazioni e tabelle; relazioni e database; vincoli di integrità; chiavi; vincoli di integrità referenziale;
    operatori dell'algebra relazionale: unione, intersezione e differenza; selezione e proiezione; join.

    SQL: tipi di dati in SQL; definizione dei dati in SQL; manipolazione dei dati in SQL; query SELECT, INSERT e UPDATE, query set; query join; query annidate.

    PARTE SECONDA: PROGETTAZIONE DEL DATABASE
    Metodologie e modelli per il progetto: metodologie e modelli per il progetto; introduzione alla progettazione; cenni sul ciclo di vita dei sistemi informativi; cenni sulle metodologie di progettazione e sulle basi di dati; il modello Entità-Relazioni.
    Progettazione logica: panoramica sull'analisi delle prestazioni degli schemi E-R; ristrutturazione degli schemi E-R; analisi delle ridondanze; eliminazione delle generalizzazioni; scelta degli identificatori principali; traduzione verso il modello relazionale; entità e associazioni molti-a-molti; associazioni uno-a-molti; entità con identificatore esterno; associazioni uno-a-uno; traduzioni di schemi complessi; normalizzazione.

    PARTE TERZA: Caratteristiche e utilità dei database NoSQL; teorema CAP; tipi di database NoSQL; principali soluzioni.

    English

    Teaching language

    English

    Contents

    The course introduces information systems and the main issues about DBMS, database design and implementation, use of databases, relational and non-relational approaches.

    Textbook and course materials

    Atzeni, Ceri, Paraboschi, Torlone, Database Systems - Concepts, Languages and Architectures, McGraw-Hill
    Materials provided during the course

    Course objectives

    Goal of the course is to provide students with the methodological means to design and use databases and to understand the main issues about relational and non-relational databases.

    Prerequisites

    Basic knowledge of modeling with object-oriented approach.
    Fundamentals of programming.

    Teaching methods

    Lessons and exercise sessions, on-line pre-recoded lectures, practical activities in computer lab.

    Evaluation methods

    Written test, oral assessment.

    Other information

    Prior passing or at least knowledge of the topics of the Fundamentals of Programming and Object Oriented Programming teachings is recommended.

    Course Syllabus

    INTRODUCTION TO INFORMATION SYSTEMS
    Information systems, information and data. The impact of information systems on the company. Databases and database management systems. Data models. Schemes and instances. Abstraction levels in DBMSs. Data independence. Database languages ​​and users.

    PART ONE: THE RELATIONAL MODEL
    The relational model: structures of the relational model; relations and tables; relations and databases; integrity constraints; keys; referential integrity constraints;
    relational algebra operators: union, intersection and difference; selection and projection; join.

    SQL: data types in SQL; data definition in SQL; data manipulation in SQL; SELECT, INSERT and UPDATE queries, set queries; join queries; nested queries.

    PART TWO: DATABASE DESIGN
    Methodologies and models for the project: methodologies and models for the project; introduction to design; notes on the life cycle of information systems; notes on design methodologies and databases; the Entity-Relationship model.
    Logical design: overview of performance analysis on E-R schemes; restructuring of E-R schemes; redundancy analysis; elimination of generalizations; choosing the main identifiers; translation towards the relational model; entities and many-to-many associations; one-to-many associations; entity with external identifier; one-to-one associations; translations of complex schemes; normalization.

    PART THREE: NoSQL database features and utilities; CAP theorem; types of NoSQL databases; main solutions.

    facebook logoinstagram buttonyoutube logotype