it
Politecnico di Torino
Academic Year 2017/18
14AFQOA
Database
1st degree and Bachelor-level of the Bologna process in Computer Engineering - Torino
Teacher Status SSD Les Ex Lab Tut Years teaching
Cagliero Luca   A2 IINF-05/A 50 20 10.5 0 9
Apiletti Daniele   A2 IINF-05/A 40 30 10.5 0 2
SSD CFU Activities Area context
ING-INF/05 8 B - Caratterizzanti Ingegneria informatica
Esclusioni:
03LSZ
Subject fundamentals
The course, compulsory for the Bachelor degree in Computer Engineering, is offered on the 2nd semester of the 2nd year. The course presents database management systems and introduces both database design methodologies and the development of applications for database querying and management. Laboratory sessions allow experimental activities on the most widespread commercial and open-source products.
Expected learning outcomes
- Knowledge of the main characteristics of a database management system
- Knowledge of the structure and properties of the relational model
- Knowledge of query languages for a relational database: Relational algebra and SQL language
- Ability to write queries in the relational algebra and SQL languages
- Knowledge of the conceptual Entity-Relationship model for data representation and of the methodology for conceptual and logical design of a relational database
- Ability to design a relational database
- Knowledge of the SQL statements for view management, data access control, and transaction management
- Knowledge of the interaction techniques between SQL statements and programming languages
- Ability to design and develop an application accessing a database
Prerequisites / Assumed knowledge
Basic programming skills.
Contents
Class topics and their weight in credits:
- Characteristics of a database management system (0.2 cr.)
- Characteristics of the relational model (0.2 cr.)
- Relational algebra (0.4 cr.): main operators and query definition
- SQL language: statements for data definition and processing (1 cr.)
- Conceptual data model (Entity-Relationship) and methodology for the conceptual and logical design of a relational database (0.8 cr.)
- SQL language: statements for view management, data access control, and transaction management (0.6 cr.)
- SQL for applications: client-server architectures, integration of SQL statements into a programming language, stored procedures, design of a client-server web-based architecture accessing a database (1.15 cr.)
Delivery modes
The course includes lectures in the classroom, whose topics are described earlier, and practices on the lecture topics, and in particular SQL language, relational algebra, and conceptual and logical database design (2.6 cr.). Students will prepare an individual written report on the exercises proposed during the course. The report will contribute to the final exam grade. The course includes laboratory sessions on the SQL language and the design of a client-server architecture accessing a database (1.05 cr.). Laboratory sessions allow experimental activities on the most widespread commercial and open-source products
Texts, readings, handouts and other learning resources
The reference book, covering the majority of the course topics, is: Atzeni, Ceri, Paraboschi, Torlone, "Basi di dati - Modelli e linguaggi di interrogazione", 3 ed., McGraw Hill, 2009.
The following book supports practices: Baralis, Belussi, Psaila, "Basi di dati: temi d’esame svolti", Esculapio, 2000. Copies of the slides used during the lectures, examples of written exams and exercises, and manuals for the activities in the laboratory will be made available. All teaching material is downloadable from the course website or the Portal.
Assessment and grading criteria
The exam includes a written part, which lasts 2 hours, and the evaluation of the report on the individual practices assigned during the course.

The written part consists of
- 3 multiple-choice tests on the main course topics (theory of relation model, integrity constraints’ management, materialized views’ management, transactions’ management, security, SQL for applications (connection to databases, HTML, PHP)) (max 3 points)
- 3 exercises on writing queries to access data in a relational database (through relational algebra and SQL language) (max 15 points)
- 1 exercise on conceptual and logical database design and on the definition of referential integrity constraints (max 13 points)
Students can consult textbooks or notes during the exam.

The delivery of individual practices’ reports during the course is optional (max 2.5 points).

The final exam grade is defined by evaluating both the written part and the reports. The grade of the reports is considered only if the written part evaluation is 18 or above. Exercises are evaluated according to the correctness of the proposed solution and to the appropriateness of the adopted methodologies of resolution.

Programma definitivo per l'A.A.2017/18
Back