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:

Bachelor's degree in Human Centered Medical System Engineering - 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:

2° Year   activated in the A.Y. 2024/2025

ModulesCreditsTAFSSD
6
C
ING-IND/22
Medical system seminars (2nd year)
1
F
-
activated in the A.Y. 2024/2025
ModulesCreditsTAFSSD
6
C
ING-IND/22
Medical system seminars (2nd year)
1
F
-
Modules Credits TAF SSD
Between the years: 2°- 3°

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

Mariano Ceccato

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 Software Engineering - Teoria of the course: Bachelor's degree in Computer Science

Credits

5

Period

2nd semester

Academic staff

Mariano Ceccato

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

Credits

1

Period

2nd semester

Academic staff

Pietro Sala

Learning objectives

The course aims to provide the basic scientific and professional skills of SW engineering, addressing the different phases of code development and production: planning and elicitation of requirements, design, modeling and specification, implementation, testing and verification, evaluation, and maintenance. Provide the skills needed to develop software systems with object-oriented languages, such as Java and Python. At the end of the course, the student will have to: Demonstrate knowledge and understanding of the development process of software systems and design methodologies and techniques; Know how to apply the knowledge acquired in order to create and document software systems and develop applications with object-oriented methodologies and languages, such as Java/Pyhon; Be able to choose and critically evaluate different software solutions in different application contexts; Knowing how to communicate profitably with all the actors involved in the creation and use of a software system within complex organizations; Be able to continue the studies independently in the field of SW design and development techniques and to deepen the study of IT tools and techniques for software development in different application contexts.

Program

The course theory includes the following topics:
- Introduction to software engineering: definition of software engineering, types of software, characteristics of software, ethical aspects
- Software process: model of software process, process activities, change management
- Agile software development: agile methods, SCRUM methodology and applications
- Requirements engineering: functional and non-functional requirements, requirements engineering processes, requirements engineering and UML use cases
- Object oriented design: object oriented modelling with UML (class diagram, use case diagram, activity diagram, sequence diagram), design phases
- Architectural patterns: MVC, repository, client server, pipe and filter
- Design patterns: singleton, observer, template, iterator, factory, abstract factory, proxy, façade, decorator
- Verification and Validation: inspection and test, unit test, integration test, user acceptance test, test driven development
- Software evolution and maintenance: change management, legacy systems, software maintenance

This lab covers tools and frameworks for modern
software engineering and data visualization. Over 12 hours,
students will gain hands-on experience with five key areas.
They'll start by learning Plotly basics for creating interactive
data visualizations. Next, they'll explore Pandas DataFrames for
efficient data manipulation and analysis. The course then
introduces Dash, a Python framework for building analytical
web applications. Students will also learn about Pony ORM for
simplifying database operations in Python. Finally, the course
concludes with advanced Dash callbacks, teaching students
how to create more complex, interactive web applications.

Learning assessment procedures

Project at the end of the course and interview exam.

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