Conoscenze
Dopo aver sostenuto l'esame, gli studenti conosceranno:
- I meccanismi di rappresentazione dei dati;
- I criteri di dimensionamento dello spazio necessario per la memorizzazione dei dati;
- I principali componenti di un computer e le loro interazioni;
- Le caratteristiche dei processori: dalle CPU a bordo dei sistemi integrati, alle CPU multi-core, alle GPU;
- I diversi tipi di supporti di memorizzazione e la loro classificazione in base alle caratteristiche;
- I diversi tipi di sistemi di calcolo, da quelli integrati e indossabili ai supercomputer;
- La distinzione tra Hardware e Software e la distinzione tra Hardware, Firmware, Sistema Operativo e Applicazioni, secondo una struttura a strati delle architetture informatiche; Macchine virtuali;
- I diversi tipi di applicazioni e servizi (accessibili anche in rete).
- I diversi tipi di licenze software;
- Le caratteristiche dei vari protocolli di comunicazione;
- I criteri di dimensionamento dei dispositivi (anche in base alla capacità di memorizzazione) e la loro potenza di trasmissione;
- I principali componenti necessari per consentire la connessione alla rete di un PC, di un dispositivo mobile o di un sensore IoT;
- I componenti caratteristici dei dispositivi mobili e dei sensori IoT;
- L'interfacciamento dei dispositivi IoT con le applicazioni mobili e da queste ai sistemi cloud;
- La differenza tra requisiti funzionali e non funzionali
- La modellazione di un modello concettuale
- La modellazione dei casi d'uso del sistema
- I requisiti di sicurezza, gli attacchi e la loro classificazione, i cookie e la tracciabilità;
- Principi generali di sicurezza e crittografia;
- Organizzazione, procedure, gestione degli incidenti;
- Algoritmi e protocolli crittografici e loro utilizzo per ottenere i requisiti di sicurezza;
- Protocolli di controllo degli accessi e di autenticazione;
- Protocolli HTTPS e TLS;
- Introduzione ai firewall e ad altri dispositivi di sicurezza di rete e importanza degli aspetti organizzativi in questo ambito.
Competenze
Gli studenti acquisiranno familiarità con le tecnologie digitali, anche per la comunicazione di rete, rispetto alle potenzialità che esse hanno per risolvere problemi specifici. Inoltre, acquisiranno consapevolezza dei rischi di sicurezza e familiarità con i meccanismi di protezione, hardware, software e organizzativi. In particolare saranno in grado di:
- identificare le fonti dei dati e i problemi della loro acquisizione, codifica e archiviazione; in generale, determinare la quantità di dati da elaborare, in relazione al contesto applicativo;
- determinare il tipo di elaborazione a cui i dati devono essere sottoposti per valutare la potenza di calcolo necessaria per ottenere tempi di elaborazione adeguati allo specifico contesto applicativo;
- individuare i protocolli e il tipo di dispositivo più adatti allo scenario in questione;
- comprendere quali sono i passi fondamentali della definizione dei requisiti di un sistema
- comprendere i requisiti fondamentali di sicurezza del proprio ambiente applicativo, avendo ben chiari i possibili rischi;
- mettere in relazione i vari strumenti crittografici con i requisiti di sicurezza ed efficienza che essi garantiscono. In particolare:
- caratteristiche e funzionamento della firma digitale;
- gli strumenti adatti per la segretezza e la privacy;
- meccanismi per l'identificazione sicura degli utenti e per il controllo degli accessi;
- interagire con esperti nello sviluppo di architetture software e nel dimensionamento dell'hardware per soddisfare i requisiti di efficienza, affidabilità e scalabilità posti dal problema specifico, anche in vista di un'evoluzione futura;
- interagire con esperti di sicurezza per determinare insieme gli strumenti migliori da utilizzare nel contesto specifico;
- aggiornare le proprie conoscenze sulle tecnologie disponibili, nell'ottica di una continua ricerca della soluzione più efficace alle sfide poste dal proprio ambiente applicativo.
Knowledge
After taking the examination, students will know:
- The mechanisms of data representation;
- The criteria for dimensioning the space required for data storage;
- The main components of a computer and their interactions;
- The characteristics of processors: from CPUs on board integrated systems to multi-core CPUs and GPUs;
- The different types of storage media and their classification according to characteristics;
- The different types of computing systems, from embedded and wearable to supercomputers;
- The distinction between Hardware and Software and the distinction between Hardware, Firmware, Operating System and Applications, according to a layered structure of computer architectures; Virtual machines;
- The different types of applications and services (also accessible over the network).
- The different types of software licences;
- The characteristics of the various communication protocols;
- The criteria for sizing devices (also based on storage capacity) and their transmission power;
- The main components required to enable the connection of a PC, mobile device or IoT sensor to the network;
- The characteristic components of mobile devices and IoT sensors;
- The interfacing of IoT devices with mobile applications and from them to cloud systems;
- The difference between functional and non-functional requirements
- The modelling of a conceptual model
- The modelling of system use cases
- Security requirements, attacks and their classification, cookies and tracking;
- General principles of security and cryptography;
- Organisation, procedures, incident management;
- Cryptographic algorithms and protocols and their use to achieve security requirements;
- Access control and authentication protocols;
- HTTPS and TLS protocols;
- Introduction to firewalls and other network security devices and the importance of organisational aspects in this area.
Skills
Students will become familiar with digital technologies, including for network communication, with respect to their potential for solving specific problems. Furthermore, they will gain awareness of security risks and familiarity with protection mechanisms, hardware, software and organisational. In particular, they will be able to
- identify data sources and the problems of their acquisition, encoding and storage; in general, determine the amount of data to be processed, in relation to the application context
- determine the type of processing to which the data must be subjected in order to assess the computing power required to obtain processing times appropriate to the specific application context;
- identify the protocols and type of device best suited to the scenario in question;
- understand the basic steps involved in defining the requirements of a system
- understand the basic security requirements of one's own application environment, being clear about the possible risks;
- relate the various cryptographic tools to the security and efficiency requirements they guarantee. In particular:
- characteristics and functioning of digital signatures;
- appropriate tools for secrecy and privacy;
- mechanisms for secure user identification and access control;
- interact with experts in the development of software architectures and hardware sizing to meet the requirements of efficiency, reliability and scalability posed by the specific problem, also with a view to future evolution;
- interact with security experts to jointly determine the best tools to use in the specific context;
- updating one's knowledge of available technologies, with a view to a continuous search for the most effective solution to the challenges posed by one's application environment.
Follow us :