The Databases subject introduces the student to the foundations of database management systems and to the role they play in the basic training in health engineering. The module provides a progressive overview of the data lifecycle, from understanding the basic concepts and the evolution of DBMSs to data model design and its implementation. In this context, it contributes to the development of modelling, abstraction and problem-solving skills.
Titular Professors
Not required
The subject aims to provide the student with a solid foundation in the conceptual and technical principles of databases, while developing the ability to analyse information requirements, model data and implement appropriate solutions to specific problems. It also aims to encourage the rigorous use of the main database management system languages and functionalities, as well as the ability to design, build and validate data structures that are consistent, secure and aligned with the requirements of a near-real use case.
Unit 1. Introduction to databases.
Unit 2. Conceptual model.
Unit 3. Relational model.
Unit 4. Physical model.
Unit 5. Advanced SQL.
Unit 6. Data Control Language.
Unit 7. SQL Programming.
Unit 8. NoSQL Systems.
Unit 9. Security and SQL Injection.
The teaching methodology for the subject is based on an active, dynamic and participatory approach, aimed at encouraging students to take a leading role in their own learning process. Lectures are combined with in-class exercises, practical activities, laboratory sessions and projects guided by the teaching staff. The laboratories serve a progressive support and consolidation function, and include individual exercises that must be submitted within the specified deadline.
During the first part of the subject, the focus is on knowledge-based work, with theoretical presentations, problem-solving, and individual or guided activities.
Subsequently, during the second half of the semester, learning is structured around a project-based methodology, in which the knowledge acquired is consolidated through the design, implementation and use of a database in an almost real case study.
The assessment of the subject is done based on a knowledge grade and a project grade, which must be passed separately. The knowledge grade (50%) is based on the maximum grade obtained between the result of the continuous in-class assessments (40%) and the exam grade (70%) and the exam grade (100%). The knowledge grade can be recovered with a final exam in the extraordinary call. The project grade (50%) is based on the grade obtained for the group project involving designing and implementing a relational database and can be recovered in the extraordinary call.
Students' understanding of the fundamentals of database management systems, their capacity to analyse information requirements, correctly model data and implement appropriate solutions by coherently applying conceptual, relational and physical models, will be assessed. Their ability to use SQL and the main DBMS functionalities appropriately in relation to the definition, querying and manipulation of data, as well as the use of advanced programming and control mechanisms, will also be taken into account. The technical quality of the database developed in practical activities and the project will also be assessed according to the following criteria: correctness, consistency, integrity, normalisation, security, and coherence between the proposed design and its implementation. Finally, in collaborative activities, students' ability to work effectively in a team, contribute actively to project development, justify technical decisions and communicate designed and implemented solutions effectively will be considered.
[1] R.Groff, P.N.Weinberg and A.J.Oppel, SQL: The Complete Reference, 3rd Edition, McGrawHill, ISBN: 978-0071592550, 2009.
[2] J.D.Ullman and J.Widom, A First Course in Database Systems, 3rd Edition, Prentice Hall, ISBN: 978-0136006374, 2007.
[3] Hector Garcia-Molina, Jeffrey D. Ullman and Jennifer Widom, Database Systems: The Complete Book, 2nd Edition, Prentice Hall, 2008.
[4] Garcia-Molina, Hector; Ullman, Jeffrey D.; Widom, Jennifer, Database System Implementation, Pearson, 2009.
[5] Özsu M.Tamer and Patrick Valduriez, Principles of Distributed Database Systems, 4th Edition, Springer, 2020.
Not required