DALMINE
Overview
Date/time interval
Syllabus
Course Objectives
Upon completion of the course, the student will have a basic understanding of the main data management issues in information systems, with a particular emphasis on systems used in the medical field, and will have acquired the techniques for designing and querying relational databases.
Specifically, the course aims to achieve the following learning objectives:
Database Fundamentals
Objective: Understand the fundamental concepts of databases and their use in the medical field.
Identify the requirements of an information system and select the most appropriate data model.
Objective: Know the conceptual, logical, and physical models of databases.
The relational model.
Objective: Understand the relational model as the logical model of a database.
Relational algebra
Objective: Be able to write queries in relational algebra to extract data from a relational database.
SQL language and data manipulation.
Objective: be able to write complex SQL queries (SELECT, FROM, WHERE, GROUP BY, JOIN, HAVING, Nested Queries, Views) and know the SQL commands for creating and modifying relational databases.
Objective: Implement relational databases using database management systems (DBMS) such as PostgreSQL and MySQL.
Relational database design.
Objective: Know the phases and techniques for designing a relational database that captures the needs of a specific information system.
Objective: Create Entity-Relationship (ER) diagrams to model entities, attributes, and relationships.
Objective: Convert an ER diagram into a relational schema.
Course Prerequisites
There are no formal requirements. Students are expected to already be familiar with basic informatics concepts.
Teaching Methods
Teaching will be carried out through lectures introducing the course arguments, but with emphasis on discussion and direct dialogue with students, who will be allowed to formulate questions and proposals for further study during the lectures. Exercises will be carried out in the class both by the teacher and the students themselves.
Assessment Methods
The exam consists of a written test, typically structured in 4-6 questions and exercises that cover the entire course program. Furthermore, when required by the teacher, the exam could include an oral test to validate the results of the written test.
Contents
The course focuses on the fundamental principles of data management and the practical application of relational databases, with a particular emphasis on their role in the medical field. The program covers core concepts, design methodologies, and querying techniques necessary for the effective development and utilization of databases.
Data Management and Relational Database Utilization (with a particular emphasis on the medical sector):
Fundamental concepts of data management, exploring the challenges and opportunities associated with the efficient storage, organization, and retrieval of data.
Discussion of the advantages of relational databases for data management, particularly for complex data structures.
In-depth exploration of the specific applications of databases in the medical sector, addressing the unique needs and challenges of this field.
Database Layered Architecture:
Introduction to the concept of layered architecture for databases and its benefits for system design.
Discussion of the roles of the different layers, such as the presentation layer, the application layer, and the data access layer.
Presentation of how a layered architecture promotes modularity, maintainability, and scalability of database applications.
The Relational Model as a Logical Database Model:
Provide a comprehensive overview of the relational model, the dominant model in modern database systems.
Explain the fundamental concepts of the relational model, including relations (tables), tuples (rows), attributes (columns), and keys (primary and foreign).
Relational Algebra:
Introduction to relational algebra as a formal language for expressing data manipulation operations.
Coverage of fundamental operations such as selection, projection, join, union, intersection, and difference.
Translation of real-world data retrieval requirements into relational algebra expressions.
SQL Language: Data Querying and Manipulation:
In-depth introduction to the SQL query language, the standard language for interacting with relational databases.
Presentation of fundamental SQL commands for data retrieval, insertion, update, and deletion.
Advanced SQL features, including GROUP BY, HAVING, JOIN operations, nested queries, and views.
SQL commands for creating and modifying the database structure, including table creation and constraints.
Conceptual Data Modeling:
Introduction to the concept of conceptual data modeling for creating a high-level representation of a system's data requirements.
Entity-Relationship (ER) diagrams for representing entities (objects), attributes (properties), and relationships between entities.
Introduction to constraints (e.g., identifiers) and external constraints.
Translation from Conceptual to Logical Model:
The process of translating a conceptual model (represented by an ER diagram) into a logical model (a relational schema).
Online Resources
More information
If it will be necessary to hold the course remotely or in a mixed way, the syllabus could be modified in order to make the course and the exams suitable for these teaching methods.