The course aims at learning how to access, model, and manipulate (textual) data by providing concepts of object-oriented programming (Python scripts) and an introduction to data interchange files and databases.
The course includes frontal teaching activities alongside practical lecutures with the aim of consolidating the topics seen in class.
The course has a strong applicative connotation, then students are encouraged to tackle problems of increasing complexity independently.
The course aims to provide students with the necessary IT tools to collect, store, manage, and analyze data to be used in the context of transport and logistics systems, with particular emphasis on the development of methodologies to make such systems more efficient, sustainable, and safe. This objective will be achieved by offering basic technological and methodological tools for writing simple scripts and using an information system. In particular, the course will address aspects related to the automation of data management and data warehousing systems, with a specific focus on scripting techniques and methods for querying structured text files and databases.
At the end of the course, students are able to:
The course is articulated in 45 hours of lectures held in the INFAL2 laboratory. Due to the practical nature of the course, some practical classes are provided during the course; in addition, each theoretical lesson ends with exercises of the concepts introduced. In order to complete, review and better understand the proposed exercises, students are encouraged to install Python 3, PyCharm and MariaDB server.
Python fundamentals:
Database introduction:
SQL principles:
All the slides and additional exercise material used during the lectures will be available on AulaWeb.
In general, the notes taken during the lectures and the material on AulaWeb are sufficient to prepare for the exam.
https://corsi.unige.it/en/corsi/10377/studenti-orario
The exam is composed of two parts.
A quiz part (10 questions -multiple choices- in 20 minutes) will test the database and SQL knowledge of the students, 1 point for each correct answer will be assigned (no penalty for wrong answers is foreseen).
A lab project (2 hours) where students should demonstrate their ability to access data from CSV files, manipulate file content to extract some information, and save the results.
Both the parts are delivered on AulaWeb.
Both parts should be sufficient to pass the exam (6 right answers for the quiz and a grade of 18 for the lab). The final grade is given by the weighted average of the two parts (30% the quiz and 70% the lab).
Students with learning disorders ("Disturbi Specifici di Apprendimento", DSA) will be allowed to use specific modalities and supports that will be determined on a case-by-case basis in agreement with the delegate of the Engineering courses in the Committee for the Inclusion of Students with Disabilities.
The quiz aims to test the knowledge for accessing information in relational databases and the comprehension of SQL queries; while the lab project tests the acquired scripting knowledge.