Suggested study programmes

When drawing up your study plan, you can refer to the Programmes of Study established by the Academic Board that are active in the current academic year.

Each programme is aimed at training a qualified specialist in a field of information technology identified as relevant for the profession and for research.

A Programme of Study is defined by the list of courses, and any recommended preparatory activities, providing the set of skills required to meet the educational objectives of a given specialty.


The proposed programme is aimed at students who wish to focus on the theoretical and algorithmic aspects of computer science, specializing in one of the corresponding fields. The goal is to train professionals with a strong cultural and scientific background in the area of algorithms, in the fields of formal languages, programming and logical and formal methods.

Graduates will have an open and critical view of automatic processing and computing issues, successfully adjusting to the evolution of IT disciplines. Key specialties focus on algorithmic problems related to the following contexts:

  • parallel and distributed architectures,
  • WWW,
  • GPU-computing,
  • learning and applications (bioinformatics, artificial vision).

Other natural topics of specialization concern new themes linked to the fundamentals of computer science and formal languages (for example, unconventional automata and complexity studies), heuristic procedures and operational research applications, program verification and software engineering.

The programme will train students in decision support methods based on digital data, descriptive, predictive and prescriptive mathematical models, and analysis and optimization algorithms. It was designed to meet the growing demand for graduates who are able to extract value from data available in digital form and from now pervasive tools of information and communication technology. Therefore, the emphasis is not on technology development or improvement, but on its intelligent use to optimize complex products, processes and systems.

The programme includes IT and operational research courses. (The latter are shared by a programme activated within the Master's degree programme in Mathematics.) It aims to provide solid basic skills that are not destined for obsolescence, and to create a comprehensive, interdisciplinary professional profile. 

L’intelligenza artificiale emerge sempre di più come scienza, metodologie, e tecniche per risolvere problemi complessi mediante approcci ispirati alla natura, estraendo conoscenza dalla realtà osservata, imparando dinamicamente dai dati, e fornendo capacità di adattabilità. Tale area è utilizzata in modo pervasivo in un crescente numero di scenari applicativi e impatta sempre di più la vita quotidiana di miliardi di persone in tutto il mondo, nonché le attività delle imprese e della pubblica amministrazione. Le applicazioni sono oggi in un ampio spettro di ambiti che includono, ad esempio, processi manifatturieri dell'Industry 4.0, prodotti e servizi adattativi, gestione aziendale, sicurezza informatica, comunicazione e marketing, reti sociali, gestione dell’ambiente, applicazioni in medicina, intrattenimento, scienze sociali, digital humanities, finanza ed economia.

L’intelligenza artificiale è oggi motore per l’innovazione dei processi delle imprese e della pubblica amministrazione e per il miglioramento delle condizioni di vita dei cittadini, nonché per l’aumento della competitività e della sostenibilità del sistema Paese.

In quest’ottica diventano fondamentali le scienze, metodologie e tecnologie informatiche che consentono di analizzare dati, estrarre e analizzare conoscenza, predire comportamenti, creare modelli della realtà osservata, ragionare sulla conoscenza acquisita, e gestire sistemi complessi.

L’esperto di intelligenza artificiale possiede un nucleo solido e ampio di conoscenze informatiche, soprattutto orientate agli obiettivi sopra citati, nonché competenze  interdisciplinari necessarie a comprendere e interagire meglio con il mondo reale, adattandosi facilmente alle continue evoluzioni tecnologiche informatiche e dei settori applicativi in cui opera.

Tale esperto contribuisce sia allo sviluppo di nuove tecnologie, metodologie e soluzioni informatiche basate sull'intelligenza artificiale in tutti i settori applicativi sopra citati nonché in quelli emergenti, sia alla progettazione, realizzazione e gestione di sistemi complessi in tali ambiti. Nella ricerca tale esperto contribuisce anche a definire e sviluppare i fondamenti teorici delle scienze e tecnologie utilizzate.

Information and communication science and technology, including knowledge extraction, construction and analysis, are now the basis of work activities, information exchange and entertainment of billions of people around the world, as well as all business and public administration activities.

The ever stronger convergence and integration of activities in the corporate and the wider world are supported by the convergence of technologies and IT systems and applications. In particular, the global vision of Industry 4.0 combines analysis and management of business processes with business management, manufacturing and logistics.

Management, interaction with citizens and environmental monitoring come together in public administration and local management. Social and entertainment systems merge continuous interaction and data analysis. These techniques are essential for ongoing process improvement in large companies and public administrations, as well as for increasing the competitiveness of small manufacturing firms that need to provide innovative and economically sustainable products and services. In all these areas, information technology and science are key to acquire, analyse and manage data, extract and analyse knowledge, predict behaviours, manage complex systems, integrate information through structures based on the Internet of Things, cloud systems, cyber information systems, embedded and mobile systems.

Creating these systems requires the ability to collect, analyse, model and understand real-world information to define operational strategies ensuring the desired behaviour of business, social and local management processes and systems. Industrial IT specialists have a solid computer science background as well as interdisciplinary skills that are essential to better understand and interact with the real world, easily adapting to the continuous development of IT technology and its applications.

They contribute to the development of new IT technologies, methods and solutions for the industrial and environmental sectors and their applications, as well as to the design, implementation and management of complex systems in these areas. In research, they take part in defining and developing the theoretical foundations of computer science and technology. 

The Music Information Science programme of the Master's Degree Programme in Computer Science aims to provide a solid background and a thorough knowledge of multidisciplinary methods and technologies of sound investigation and music computing.

Leveraging on the Bachelor's Degree Programme in Music Information Science, it focuses on the most advanced theoretical and applicative aspects of information technology in the musical field.

One of the consequences of the spread of information technology is the production of large amounts of data in digital format. The massive presence of data in many sectors of research and industry is fostering the rise of new professions such as the data scientist, i.e. someone who can extract, integrate, organize, analyse and present information from numerous data sources.

Research initiatives in genomics, particle physics, astrophysics and neurosciences, as well as the growing relevance of applications based on the analysis of social networks, require professionals and researchers who can develop algorithms to filter, group and categorize massive data flows in rapid and constant evolution.

A data scientist must possess a broad and complex set of skills to acquire different types of data (texts, images, relationships, genes, ...) with different structures (flows, hierarchies, networks, ...) and from different sources (Web, sensors, mobile terminals , ...), and organize the acquired data in appropriately structured databases. The data must be analysed by combining statistical, algorithmic and machine learning techniques to synthesise predictive models.

Software development and maintenance remain key in several areas, such as banking and insurance, research centres, etc. New software economies are emerging, including the development of mobile, stock-market, social-network and entertainment applications. Recent cyber incidents, such as the serious disruptions to Poste Italiane in 2011, revealed the need for professionals that can guarantee software quality and reliability. In safety-critical areas, such as avionics, software quality is not just a financial issue. Here, testing and validation techniques are complemented by formal methods such as model checking, static analysis and program correctness.

Graduates may be involved in the software development process at various levels within established businesses, or may launch or work in innovative start-ups. Students will be taught how to design and develop reliable and quality software using languages, methods and models connected with various aspects of software production, both in wide-ranging fields (e.g. for production process management and organization, analysis, design, development and maintenance, with a focus on verification and validation) and in new exciting areas, such as videogame or mobile apps.

The spread of personal and mobile devices is transforming the original architecture of the Internet and its applications to meet new mobility requirements of millions of users who want to access customized, context-aware and collaborative services "always and everywhere". This trend has an impact on the entire value chain of an IT product. It involves all the disciplinary areas of information technology and is a huge attractor of specific professional skills.

As the Pervasive Computing paradigm allows for transparent capillary connection between people and objects with limited initial investments, the sector provides young people with new business opportunities in a wide range of applications. The integration and processing of context data from sensors embedded in mobile devices, in the environment and in everyday objects significantly expand the range of services to be implemented. These include geo-referenced and context-aware services for personal, social and professional use, as well as the use of personal, home-automation and vehicle devices as sensors of environment-related parameters. Advanced data protection techniques are required to manage large amounts of mostly personal data within these systems.

The programme intends to provide students with the wide and complex set of skills they will need to work in this field.

Human beings are, and will increasingly be surrounded by sensors and computing and communication technologies embedded in various types of objects and artifacts distributed in the environment, such as sensor networks, augmented perception and interaction objects (Google Glass, Kinect, Leap Motion), context-aware artifacts that react to individuals (self-driving cars), digital or real "creatures" (avatars, anthropomorphic robots, drones) capable of sensing the environment and interacting with humans (reactively, cognitively, and even emotionally).

Perceptual computing has the fundamental purpose of changing the interaction between human beings and the environment. This entails the development of tools using special programming techniques (e.g. GPU computing and real-time graphics) to:

  • detect and analyse traditional signals (audio, images, video, proximity, etc.) as well as behavioural and emotional signals used by humans, individually or collectively, in non-verbal communication (postures, facial expressions, non-verbal vocalizations, localization);
  • learn and understand these perceived signals within a context;
  • animate and enrich interaction through computational graphics and virtual reality tools, as well as simulating and synthesising social signals in an artificial virtual or physical agent (an avatar or a robot).

The programme aims to provide the methodological, design and application tools to deal with the fundamental types of interaction that can be deployed in different areas: ambient intelligence, industrial inspection and production control; media and technologies for interactive installations and design, interactive exploration of cultural heritage, remote healthcare, intelligent video surveillance, interaction between different media (e.g. image tagging); social interaction through the media (video blog, P2P video sharing); interaction captured by the media (e.g. the inference of non-verbal interactions from video surveillance systems or in general from sensor networks); robotics; video games; augmented reality.

The video game market has been among the fastest-growing sectors of the entertainment industry in recent years, with important reverberations on the economy, society and culture. Italy is currently the fifth largest market in Europe in terms of consumption. Despite this, it is still a niche in the international competitive landscape as far as production is concerned. This is a critical historical juncture for independent developers, with new opportunities opening up both on the online market (especially for mobile terminals) and the console market. In this context, university can play a crucial role for the industry, which has been calling for a programme that could at least partially fill the knowledge gap holding back our country.

The programme intends to train videogame entertainment specialists, providing the conceptual, methodological, design and application tools required to win the challenge of complex and innovative software development in highly multidisciplinary groups. The programme allows for different pathways, with a focus on design and the study of gameplay and system-player interaction, or on implementation.