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.

Study Plan

This information is intended exclusively for students already enrolled in this course.
If you are a new student interested in enrolling, you can find information about the course of study on the course page:

Laurea interateneo in Ingegneria dei sistemi medicali per la persona - Enrollment from 2025/2026

The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University.
Please select your Study Plan based on your enrollment year.

CURRICULUM TIPO:
Modules Credits TAF SSD
Between the years: 2°- 3°
Between the years: 1°- 2°- 3°
Altre attività formative: lo studente può scegliere tra le 2 seguenti opzioni:
a) 2 CFU di seminari - di cui 1 CFU al 1 anno e 1 CFU al 2 anno - e 7 CFU di tirocinio al 3 anno; 
b) 9 CFU di tirocinio al 3 anno. Non sono previste ulteriori opzioni.

Legend | Type of training activity (TTA)

TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.




S Placements in companies, public or private institutions and professional associations

Teaching code

4S009888

Credits

6

Coordinator

Not yet assigned

Language

Italian

Scientific Disciplinary Sector (SSD)

ING-INF/05 - INFORMATION PROCESSING SYSTEMS

Courses Single

Authorized

The teaching is organized as follows:

Teoria
The activity is given by Programming II and Software Engineering - Software Engineering - Theory of the course: Bachelor's degree in Computer Science

Credits

5

Period

Semester 2

Academic staff

Carlo Combi

Laboratorio
The activity is given by Programming II and Software Engineering - Software Engineering - Laboratorio of the course: Bachelor's degree in Computer Science

Credits

1

Period

Semester 2

Academic staff

Pietro Sala

Program

------------------------
UL: Teoria
------------------------
------------------------
MM: Theory and Exercises
------------------------
* Introduction to Software Engineering
- Definition of Software Engineering
- Professional software development
- Software engineering ethics
* Software Processes
- Software process models
- Process activities
- Coping with change
* Agile Software Development
- Agile methods
- Agile development techniques
- The SCRUM methodology
* Requirements Engineering
- Functional and non-functional requirements
- Requirements engineering processes
- Requirements Engineering and UML Use Cases
* Architectural Design
- Architectural design decisions
- Architectural views
- Architectural patterns
-- MVC
-- Repository
-- Client-server
-- Pipe and filter
* OO Design and Implementation
- OO basic concepts
- The standard language UML 2 for software modeling
-- Use Case diagrams
-- Class diagrams
-- Activity Diagrams
-- Sequence diagrams
- Design patterns
-- Introduction
-- Singleton
-- Observer
-- Template
-- Iterator
-- Factory
-- Abstract factory
-- Proxy
-- Facade
-- Decorator
* Verification and Validation
- Introduction
- Inspection and test
- Testing: unit test, integration test, user acceptance test
* Software evolution and maintenance
- Change Management
- Legacy Systems
- Software maintenance
------------------------
UL: Laboratorio
------------------------
This 12-hour laboratory course focuses on tools and frameworks for modern software engineering and data visualization using JavaFX. The program is structured to provide students with comprehensive hands-on experience in developing modern desktop applications.
The course begins with an introduction to JavaFX basics, teaching students how to create interactive and responsive user interfaces. It then delves into efficient data management through the use of JavaFX Observable Collections, enabling students to develop reactive and dynamic applications.
A significant portion of the course is dedicated to the use of FXML and Scene Builder. Students will learn to define user interfaces using FXML, an XML-based language, and leverage Scene Builder, a powerful visual tool for rapid and intuitive creation of JavaFX UIs.
The course places particular emphasis on the Model-View-Controller (MVC) architecture, a fundamental pattern in software development. Students will learn how to structure their JavaFX applications according to this model, clearly separating responsibilities between Model (data and business logic), View (user interface), and Controller (event handling and coordination). This approach will allow them to create more modular, maintainable, and scalable applications.
Finally, the course concludes with an introduction to scheduling operations in JavaFX. Students will learn to use the Timeline class to program and manage timed operations, including executing periodic tasks.
It is not excluded that the same program may be conducted using Python's Dash library if there is strong demand from the students.

Learning assessment procedures

The examination, for students both attending and not attending classes, consists of a project related to lab activities and of an oral examination. Such exam will allow one to show both his communication skills and his knowledge about Software Engineering. Students will also demonstrate their skills in applying their knowledge in "practical" software engineering tasks.

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