CODE 97163 ACADEMIC YEAR 2024/2025 CREDITS 9 cfu anno 2 INGEGNERIA GESTIONALE 10716 (L-9) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 2° Semester TEACHING MATERIALS AULAWEB OVERVIEW The course of Information Systems provides the basic knowledge, skills and abilities for the management and operation of a relational database, providing the essential elements of the SQL language for queries. The first part of the course is related to the conceptual design of a relational database. The second deals with the logical design. The last part of the course is about the development of queries using the SQL and Python programming languages. AIMS AND CONTENT LEARNING OUTCOMES The aim of the course is to introduce the student to the main concepts related to the management of large quantities of data on computers (database) and their use in applications developed to enable input, handling and management of such data. The course will provide knowledge about the main databases in use (relational and associative model) and on the related technical and practical features. The knowledge of object oriented programming in Python will be given as an instrument to interact with database and develop applications that can persist data beyond the standard predefined data structures in Python. During the course the student will leanr how to implement simple databases and interact with them through Python scripts. As for capabilities, the student will learn how to choose the best model for a specific task, and choose the best implementation of data structures to interact with a specific database. AIMS AND LEARNING OUTCOMES This course is aimed to provide the student with the knowledge and understanding of the relational data model. In particular, the techniques and methodologies to design, build, manage and maintain a relational database are described. The conceptual database design is carried out through the ER (Entity Relationship) model, while the design of queries is carried out through the SQL and Python programming languages. PREREQUISITES The student must have the knowledge of data representation in digital computers, basics of computer architecture, basic algorithms for sorting and searching, basic of high-level programming languages, in particular the Python language. TEACHING METHODS Lectures with slides. Exercises on design of data base systems and queries with the SQL and Python programming languages. SYLLABUS/CONTENT 1. Database Architecture. 2. The relational model, table definition and query formulation in SQL and relational algebra. 3. Database conceptual design using the ER model, and ER-to-Relational mapping. 4. SQL and Python programming languages. RECOMMENDED READING/BIBLIOGRAPHY Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, 7/E, Pearson, 2017 TEACHERS AND EXAM BOARD FABIO ROLI Ricevimento: Contact the instructor by email. www.saiferlab.ai/people/fabioroli LUCA DEMETRIO Exam Board FABIO ROLI (President) LUCA ONETO LUCA DEMETRIO (President Substitute) LESSONS LESSONS START https://corsi.unige.it/en/corsi/10716/studenti-orario Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION Intermediate in class assignments (closed-book solutions of numerical/coding exercises and open-ended questions), or final written exam. ASSESSMENT METHODS Closed-book solutions of numerical/coding exercises and open-ended questions. Exam schedule Data appello Orario Luogo Degree type Note 14/01/2025 09:00 GENOVA Scritto 11/02/2025 09:00 GENOVA Scritto 09/06/2025 15:30 GENOVA Scritto 07/07/2025 09:00 GENOVA Scritto 10/09/2025 09:00 GENOVA Scritto FURTHER INFORMATION Contact the instructor by email