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 magistrale in Ingegneria e scienze informatiche - Enrollment from 2025/2026The 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.
1° Year
2° Year activated in the A.Y. 2023/2024
Modules | Credits | TAF | SSD |
---|
Modules | Credits | TAF | SSD |
---|
Modules | Credits | TAF | SSD |
---|
4 modules among the following
2 modules among the following
3 modules among the following
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.
Foundations of software analysis and verification (2023/2024)
Teaching code
4S008901
Teacher
Coordinator
Credits
6
Also offered in courses:
- Software Analysis of the course Master's degree in Computer Science and Engineering
Language
Italian
Scientific Disciplinary Sector (SSD)
ING-INF/05 - INFORMATION PROCESSING SYSTEMS
Period
Semester 1 dal Oct 2, 2023 al Jan 26, 2024.
Courses Single
Authorized
Learning objectives
The goal of the course is that of providing the basic tools for understanding, designing and using analysis tools on computational systems aiming at verifying properties and/or extracting functionalities of systems under analysis. In the context of the CdS, the course provides context knowledge and cross capabilities useful for analyzing software systems both from the developer point of view and from the point of view of who aims at extracting functionalities from unknown systems (reverse engineering). At the end of the course, the student will be able to show knowledge and comprehension capabilities that allow him/her to elaborate and/or apply original ideas in the fields of software analysis and verification, potentially in research contexts; to solve problems of program analysis in new and not familiar fields, included in wider contexts, related to their field of study; to study and to search for study material concerning system and program analysis in autonomy.
Prerequisites and basic notions
Knowledge of programming, mathematical logic and discrete mathematics, software engineering.
Program
Introduction to program analysis and verification.
Static analyses: Data-flow analysis based on CFG, Static analysis based on semantics (abstract interpretation), numerical analysis, alias and inter-procedural analysis (nods)
Dynamic analyses: Formal foundations of testing, Monitoring.
Verification: Model checking
Slicing: Transformation technique for program analysis and verification.
Bibliography
Didactic methods
Frontal lessons.
Learning assessment procedures
The exam will be structured in two parts and can be carried out in two ways:
- Written + Project on analysis topics
- Written + Oral (mandatory above 26)
In particular:
Written: Set of questions to evaluate the student's preparation on the whole course program.
- Project / study done by groups of maximum two people whose topic can also be proposed to the teacher by the group itself. This project must be completed with a written report that will be presented in oral form (with slides).
- Oral: Oral questions on the entire program of the course, in the case of a mark higher than 26/30 for the written exam, the oral exam becomes compulsory, otherwise a maximum of 26 can be registered.
Evaluation criteria
The written exam aims to verify a sufficient acquisition and understanding of the concepts presented in the course. The project aims to verify the ability to acquire study material and autonomously rework the concepts presented during the course. The oral exam aims to verify an advanced acquisition and understanding of the concepts studied, with the ability to re-elaborate them.
Criteria for the composition of the final grade
The written test is evaluated out of thirty if you intend to register (if between 18 and 26) or if you intend to proceed with an oral interview (above 26).
The written test is evaluated at a maximum of 4/30 in the event that you intend to do the project. In this case, the project can be rated up to 27/30 and the overall grade is the sum of the two results.
Exam language
Italiano