Presentazione del corso

The course aims to provide third-year students of the degree course in Mathematics and Computer Science with the tools and methods for designing and implementing databases and interacting with them using appropriate query languages. After an introduction to information systems, the course includes a first part centered on the theory of the relational model, a second in which the problem of database design is analyzed, and a third aimed at providing students with an overview of NoSQL systems.

The exam includes a written test (or a project work to be agreed in advance with the instructor) and an oral test.

The written test is structured in two parts: the first concerns the design of a database or the definition of a schema for a database; the second on writing some queries for the same database written in relational algebra and/or SQL language.

The oral exam focuses on the topics of the course and possibly on the discussion of the project work carried out during the course or in any case agreed with the teacher on the outline proposed by the students. The project work is discussed individually but it is foreseen to be a group work which consists in the planning of a database. The report for the project work is organized into sections:

1) Interview/description of the problem
2) Analysis and collection of requirements
3) Production of the data dictionary and analysis of the functionalities
4) Conceptual design
5) Analysis on ER schemes and restructuring
6) Logical-relational model
7) Formulation of the necessary queries
9) Trial cases and testing