Courses

We offer a range of computer science courses at the bachelor’s, master’s, and doctoral levels within the engineering departments of our university. Additionally, we possess extensive expertise in conducting teaching sessions and seminars for both companies and private organizations. We are dedicated to cultivating innovation and nurturing a community of lifelong learners, equipping them with the skills to effectively tackle the challenges presented by the dynamic and swiftly changing landscape of computer science.

Courses

DISMI (Reggio Emilia)
Digital Automation Engineering (Master)
Prof. Monica Stefania

This course equips students with essential knowledge and skills for addressing challenges in Artificial Intelligence and Data Science. Objectives include imparting a solid theoretical and practical foundation in AI and introducing key concepts and techniques in Data Science.
DISMI (Reggio Emilia)
Management Engineering (Master)
Prof. Lippi Marco

Introducing the student to the advanced aspects of data science and data management for Business Intelligence, Data Warehousing and Information Integration, with a particular focus on statistical methods and machine learning.
DISMI (Reggio Emilia)
Digital Automation Engineering (Master)
Prof. Picone Marco

This course imparts knowledge on the fundamental principles of distributed architectures and software systems, emphasizing communication patterns, design principles, and development techniques. Students will apply these principles to Cyber-Physical and Internet of Things systems, focusing on interoperability, end-to-end architecture design, and development.
DIEF (Modena)
Computer Engineering (Master)
Prof. Franco Zambonelli

This course focuses on imparting students with crucial knowledge and skills for managing and developing adaptive software systems. Emphasis is placed on the integration of distributed intelligent components throughout the design and development processes, ensuring students are well-prepared to create resilient and responsive software solutions.
DIEF (Modena)
Computer Engineering (Master)
Prof. Bicocchi Nicola

Edge computing is a distributed computing paradigm that brings computation and data storage closer to the sources of data. This is expected to improve response times and save bandwidth. It is a topology- and location-sensitive form of distributed computing. The goal of the course is to provide students with the skills needed for designing, developing, and maintaining modern edge applications.
DISMI (Reggio Emilia)
Management Engineering
Prof. Mamei Marco

This course seeks to equip students with the knowledge and skills to comprehend and independently create basic Python programs for data processing. This foundational understanding is crucial for proficient utilization of IT systems in both academic and professional pursuits. The acquired skills also serve as a preparation for creating, modifying, extending, and utilizing data analysis programs encountered throughout their academic and professional journey.
DISMI (Reggio Emilia)
Management Engineering
Prof. Monica Stefania, Pietri Marcello

This course covers essential skills in managing data within information systems. It introduces key concepts of databases, emphasizing the relational and Entity-Relationship models. Students learn SQL for database creation and management, with practical examples. The course also demonstrates tools to connect databases using Python and display data in simple web applications.
DIEF (Mantova)
Computer Engineering
Prof. Picone Marco

The course aims to impart a basic understanding of Internet of Things (IoT) system principles, emphasizing communication protocols, distributed architectures, and design principles. It provides applied knowledge through hands-on use of a laboratory testbed and IoT devices. Additionally, it offers insight into technological and research trends in IoT and Edge Computing.
DIEF (Modena)
Computer Engineering
Prof. Bicocchi Nicola

The course serves as an introduction to the fundamental concepts of object-oriented programming, utilizing the Java programming language. With a focus on providing students with comprehensive skills, it aims to empower them in the development of modern applications. The scope extends to both desktop and mobile platforms, ensuring a well-rounded understanding and proficiency in application development using Java.
DISMI (Reggio Emilia)
Management Engineering
Prof. Mamei Marco

The course intend to provide knowledge and competences about modern distributed and pervasive software architectures, a about modern software technologies based on cloud platforms. At the end of the course, the student should be able to develop distributed applications that can receive information from sensors and devices, and to process this information in the cloud, using AI techniques.
DISMI (Reggio Emilia)
Management Engineering
Prof. Zambonelli Franco

The course intend to provide the knowledge and competences necessary to the management and development of complex software systems. For a deeper understanding of the teaching objectives, please refer to the expected teaching objectives later in this page.
DIEF (Modena)
Computer Engineering
Prof. Bicocchi Nicola

The course introduces the key concepts for managing and programming Unix systems using both the Bash shell and the C programming language. The course comprises two main units: the former about Unix operating systems and their programming environment using the BASH shell; while the latter introduces the C language.
DISMI (Reggio Emilia)
Management Engineering (Master)
Prof. Monica Stefania

This course focuses on imparting knowledge and skills for comprehending, designing, and managing web applications. It systematically analyzes prevalent technologies and standards, emphasizing a methodological approach to acquire programming skills for web applications. Additionally, the course introduces basic knowledge and skills related to Internet of Things (IoT), with a particular focus on technologies like Raspberry Pi and Arduino.