Studying at the University of Verona

Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.

Type D and Type F activities

Type D learning activities are the student's choice, type F activities are additional knowledge useful for job placement (internships, transversal skills, project works, etc.). According to the Teaching Regulations of the Course, some activities can be chosen and entered independently in the booklet, others must be approved by a special committee to verify their consistency with the study plan. Type D or F learning activities can be covered by the following activities.

1. Modules taught at the University of Verona

Include the modules listed below and/or in the Course Catalogue (which can also be filtered by language of delivery via Advanced Search).

Booklet entry mode: if the teaching is included among those listed below, the student can enter it independently during the period in which the curriculum is open; otherwise, the student must make a request to the Secretariat, sending the form to carriere.scienze@ateneo.univr.it during the period indicated.

2. CLA certificate or language equivalency

In addition to those required by the curriculum/study plan, the following are recognized for those matriculated from A.Y. 2021/2022:

  • English language: 3 CFUs are recognized for each level of proficiency above that required by the course of study (if not already recognized in the previous course of study).
  • Other languages and Italian for foreigners: 3 CFUs are recognized for each proficiency level starting from A2 (if not already recognized in the previous study cycle).

These CFUs will be recognized, up to a maximum of 6 CFUs in total, of type F if the study plan allows it, or of type D. Additional elective credits for language knowledge may be recognized only if consistent with the student's educational project and if adequately justified.

Those enrolled until A.Y. 2020/2021 should consult the information found here.

Method of inclusion in the booklet: request the certificate or equivalency from CLA and send it to the Student Secretariat - Careers for the inclusion of the exam in the career, by email: carriere.scienze@ateneo.univr.it

Warning: to students, who have achieved the B2 level of English in their three-year careers (bachelor), we emphasize the need to replace the full B2 level of English, provided by the study plan, with the C1 level of "computerized" English (prova informatizzata) or to acquire other language proficiency in a community language at least at the full B1 level.

3. Transversal skills

Discover the training paths promoted by the University's TALC - Teaching and learning center intended for students regularly enrolled in the academic year of course delivery

Mode of inclusion in the booklet: the teaching is not expected to be included in the curriculum. Only upon obtaining the Open Badge will the booklet CFUs be automatically validated. The registration of CFUs in career is not instantaneous, but there will be some technical time to wait.  

4. CONTAMINATION LAB 

The Contamination Lab Verona (CLab Verona) is an experiential course with modules on innovation and enterprise culture that offers the opportunity to work in teams with students from all areas to solve challenges set by companies and organisations.  

Upon completion of a CLab, students will be entitled to receive 6 CFU (D- or F-type credits).  

Find out more:  https://www.univr.it/clabverona 

PLEASE NOTE: In order to be admitted to any teaching activities, including those of your choice, you must be enrolled in the academic year in which the activities in question are offered. Students who are about to graduate in the December and April sessions are therefore advised NOT to undertake extracurricular activities in the new academic year in which they are not enrolled, as these graduation sessions are valid for students enrolled in the previous academic year. Therefore, students who undertake an activity in an academic year in which they are not enrolled will not be granted CFU credits.

5. Internship/internship period

In addition to the CFUs stipulated in the curriculum/study plan (check carefully what is indicated on the Teaching Regulations): here information on how to activate the internship. 

Check in the regulations which activities can be Type D and which can be Type F.

Modules and other activities that can be entered independently in the booklet

Academic year:

Teaching code

4S009064

Credits

12

Language

English en

Scientific Disciplinary Sector (SSD)

INF/01 - INFORMATICS

Courses Single

Authorized

The teaching is organized as follows:

Programming

Credits

6

Period

Semester 1

Academic staff

Niccolo' Marastoni

Database
The activity is given by Data warehouse and integration of the course: Master's degree in Computer Engineering for Robotics and Smart Industry

Credits

6

Period

Semester 2

Academic staff

Elisa Quintarelli

Learning objectives

The course is structured as follows [Programming Module] The purpose of the module is to provide skills and knowledge in programming in Python and R, giving the basic concepts of algorithm with particular reference to the use of the Python language (syntax, data structures, data import / export in Python, data visualization in Python) and its applications in data science [Database form] The course aims to provide the skills necessary for the design of data according to the requirements with reference to different application contexts and within the production process of software systems; for the management and effective and efficient use of data and for the study of a system for the management of relational databases in order to create, manage and query databases.

At the end of the course the student has to show to have acquired the following skills:
- ability to develop Python code to solve concrete examples
- ability to evaluate algorithms in terms of complexity in time and space
- knowledge of the syntax and semantics of the language used
- knowledge of the bases of: database management; architecture and functionality of a database management system; concepts of physical independence, logical independence, persistence, competition, reliability, query and updating of a database; advantages of a database management system compared to an operating system file system
- ability to conceptually design databases, e.g., conceptual models for data design; the Entity-Relationship (E-R) model; elements of the E-R model: entities, attributes, relationships, generalization hierarchies and cardinality constraints; the conceptual scheme of a database
- knowledge of the basics of the logical design of a database: data models for database management systems; the relational model; relationship definitions, integrity constraints and relationship scheme; the logical scheme of a database; rules for the translation of conceptual schemes into relationship schemes
- understanding of the mechanisms of interaction with a database: introduction to languages for the definition, modification and query of a database; relational algebra; optimization of algebra expressions; the SQL language; the selection construct (Select-From-Where), nested queries, sorting and grouping of data in SQL; the concept of sight.

Prerequisites and basic notions

Basic concepts of logic and of the notion of algorithm

Program

The course is structured in two parts:
------------------------
Programming
------------------------
1. Introduction to Software Development
- Procedural programming recap
- Jupyter Notebooks, Python
- Software product requirements analysis

2. Data analysis
- Loading structured and unstructured data
- Data manipulation with Numpy and Pandas
- Data visualization with Matplotlib

3. Scientific computing
- NumPy and overall Python open-source ecosystem
- Introduction to Sklearn

4. Object-oriented programming
- OOP fundamentals
- OOP in open-source products
- Redesign of procedural programming

5. Operationalization
- Operationalization with Notebooks
- Operationalization with Streamlit

------------------------
Database
------------------------
1. Introduction to database management systems (DBMS): architectures and functionalities of a DBMS. Physical and logical data independence. Data models. Concepts of model, schema and instance of a database. Languages for database systems. DBMS vs. file system. Information Systems and Data Science.
2. The relational theory: the model and the algebra.
3. Interacting with a database system: languages for the definition, querying and update of a database. SQL: select-from-where statement, join in SQL, the GROUP BY and ORDER BY clauses, using subqueries. Views.
4. Conceptual database design: conceptual data models. The Entity-Relationship model (ER). Elements of the ER model: entities, attributes, relationships, ISA hierarchies and cardinality constraints. Logical database design: logical data models, the relational data model. Elements of the relational data models: relations and integrity constraints. Mapping between conceptual schemas in ER model and logical schema in the relational model.
5. Decision support systems.
1. Datawarehouse systems
2. Designing Data Warehouse on integrated data (GAV and LAV approaches)
3. OLAP queries
6. Beyond the Relation Model: main differences with NO-SQL Models

Bibliography

Visualizza la bibliografia con Leganto, strumento che il Sistema Bibliotecario mette a disposizione per recuperare i testi in programma d'esame in modo semplice e innovativo.

Didactic methods

In-person classes and practical sessions

Learning assessment procedures

To pass the Programming exam, the students must:
- complete a Python project that showcases the fundamentals of Data Science taught during the first semester
- pass an oral exam which will test the knowledge of the aforementioned project and general programming skills
- [OPTIONAL] undertake a written midterm test which will grant at most 6 points
The combination of a successful project, oral exam, and midterm will be evaluated with a grade between 18 and 33.

The Database exam consists of a written test (2 hours), possibly supplemented by an oral, containing some open questions about theory concepts, an exercise about conceptual modeling (using the E-R model or DFM schema), and the logical modeling (using the relational model) of a database, and some exercises about the specification of queries in SQL on a given database.

Students with disabilities or specific learning disorders (SLD), who intend to request the adaptation of the exam, must follow the instructions given HERE

Evaluation criteria

To pass the exam, the students must show that:
- they can write a Python program to analyze datasets and provide relevant data analysis, following the Data Science techniques investigated during the course lessons;
- they have understood the concepts related to the theory of relational databases and data warehouses and their design;
- they are able to describe the concepts in a clear and exhaustive way;
- they are able to apply the acquired knowledge to solve application scenarios described by means of questions and exercises.
The exam will be evaluated with at most 33 points (30 cum Laude).

Criteria for the composition of the final grade

The final mark will be the average of the marks obtained in the Programming and Database parts.

Exam language

Inglese