-
Durata
3 anni
-
Sede didattica
Campus Cesena
-
Lingua
Italiano
-
Classe di corso
L-8 - INGEGNERIA DELL'INFORMAZIONE
L-31 - SCIENZE E TECNOLOGIE INFORMATICHE -
Tipo di accesso
Numero programmato locale - TOLC-I
-
Anni Attivi
II, III
Obiettivi formativi
-
Il raggiungimento degli obiettivi qualificanti specificati dal decreto sulle classi è ottenuto attraverso un percorso didattico finalizzato alla formazione di laureati contraddistinti sia da una solida preparazione teorica, tecnologica e metodologica, sia da peculiari competenze operative derivanti da mirate attività progettuali, di gruppo o individuali, che costituiscono parte integrante dell'iter formativo. A questo scopo lo studente è guidato nel processo di apprendimento delle problematiche, dei modelli di riferimento e dei metodi che contraddistinguono la modellazione e la progettazione dei moderni sistemi di elaborazione dell'informazione, nonché delle tecnologie più avanzate disponibili per una loro concreta applicazione.
Particolare enfasi è rivolta all'inquadramento organico dei principi fondazionali, all'esemplificazione degli approcci metodologici, alla presentazione di ambienti e strumenti che supportano, in una visione sistemistica, la progettazione di software, di sistemi operativi, sistemi informativi, reti di calcolatori, infrastrutture web, architetture computazionali e infrastrutture virtuali dispiegati in cloud.
Le competenze specifiche nel settore sono integrate da solide basi fisico-matematiche e da conoscenze interdisciplinari riguardanti altri ambiti caratterizzanti. Completa la formazione del laureato la conoscenza della lingua inglese a livello B2. Possono essere previste sia l'acquisizione delle quattro abilità linguistiche (lettura, scrittura, ascolto, e dialogo) sia la frequenza vincolata delle lezioni, secondo criteri che verranno specificati in itinere dal corso di studi, in coerenza alle prescrizioni degli Organi accademici.
Complessivamente, il corso di laurea fornisce le competenze teorico-pratiche relative alle principali aree dell'informatica. Rappresentano specifici obiettivi formativi l'apprendimento dei principi dell'ingegneria del software, delle tecniche di programmazione e di progettazione dei sistemi informatici, la conoscenza delle principali tecnologie hardware e software, dei sistemi operativi, dei sistemi di rete e dei sistemi web. A queste conoscenze di base si aggiungono poi conoscenze professionalizzanti in specifici settori dell'informatica che possano permettere al laureato l'ingresso diretto nel mondo del lavoro, tra i quali i sistemi mobile, i sistemi embedded e IoT, le tecniche di virtualizzazione e le tecniche di machine learning per applicazioni di AI.
Il raggiungimento di questi obiettivi richiede di acquisire preventivamente una cultura scientifica di base nonché un metodo di analisi e di studio scientifici che permettano, allo studente prima e al laureato poi, di costruire autonomamente nuove conoscenze al fine di adeguarsi all'evoluzione della disciplina e di utilizzare metodi innovativi e attrezzature complesse.
Il laureato possiede:
- un ampio spettro di conoscenze e competenze nei vari settori dell'informatica mirate al loro utilizzo nella progettazione, sviluppo e gestione di reti e sistemi informatici, indipendentemente dallo specifico dominio applicativo;
- adeguata padronanza degli strumenti matematici necessari per la modellazione formale, l'analisi, la valutazione, la progettazione e la realizzazione di sistemi;
- capacità di assimilare con un certo grado di autonomia alcuni temi d'avanguardia nel proprio campo di studi;
- capacità di ideare e sostenere argomentazioni sia nell'ambito del lavoro di gruppo, sia nell'ambito del lavoro individuale;
- capacità di raccogliere ed interpretare i dati sperimentali al fine di valutare l'efficacia e l'efficienza di sistemi informatici;
- capacità di utilizzare efficacemente, in forma scritta e orale, la lingua inglese, in aggiunta all'italiano, sia nell'ambito specifico di competenza sia per lo scambio di informazioni generali;
- capacità di effettuare ricerche bibliografiche anche avvalendosi di banche dati e di reti informatiche;
- competenze necessarie per intraprendere studi successivi con un alto grado di autonomia.
Per dotare il laureato delle caratteristiche suddette, il corso di studi prevede:
- attività formative finalizzate ad acquisire conoscenze matematiche di base, oltre a conoscenze fondamentali sulle principali aree dell'informatica (tra le quali linguaggi di programmazione, algoritmi, sistemi operativi, basi di dati e sistemi informativi, reti di calcolatori, sistemi web, tecniche di virtualizzazione, tecniche di machine learning per applicazioni di AI, ingegneria del software);
- attività progettuali e di laboratorio mirate ad acquisire la conoscenza dei metodi di progettazione e programmazione;
- attività per fornire conoscenze di base della lingua inglese. -
CONOSCENZA E CAPACITÀ DI COMPRENSIONE (KNOWLEDGE AND UNDERSTANDING)
Le conoscenze e le capacità di comprensione che il laureato possiede si articolano nelle tre aree di apprendimento: fondamenti matematici e fisici, analisi e progettazione del software e, infine, amministrazione di sistemi informatici.
Il laureato:
- conosce i fondamentali principi e strumenti di analisi matematica, geometria e algebra lineare, probabilità e statistica;
- conosce i principi dei metodi numerici alla base delle tecniche di intelligenza artificiale, data analisys e ottimizzazione.
Il laureato:
- conosce i principali linguaggi di programmazione, imperativi e ad oggetti, nei diversi scenari applicativi;
- conosce le tecniche di progettazione e di analisi delle prestazioni di algoritmi;
- conosce i principi dell'ingegneria del software ed i principi, gli strumenti e le tecniche per l'analisi, progettazione e programmazione di applicazioni informatiche;
- conosce le architetture dei calcolatori, i sistemi operativi, le reti di calcolatori ed i loro protocolli, i sistemi web e le relative tecniche di programmazione;
- conosce i principali paradigmi di programmazione per architetture hardware moderne;
- conosce le basi di dati relazionali e NoSQL;
- conosce i requisiti minimi di sicurezza di un sistema informatico;
- conosce le principali piattaforme mobile, i sistemi embedded e IoT;
- conosce le tecniche di virtualizzazione ed il modello a microservizi per gli applicativi in cloud;
- conosce le basilari tecniche di intelligenza artificiale e di analisi dei dati;
- conosce le tecniche di base dell'elaborazione d'immagini;
- conosce le principali problematiche giuridiche connesse alla realizzazione di sistemi informatici, anche quelle inerenti l'intelligenza artificiale;
- conosce le basi dei principali servizi di directory ed i principali meccanismi e protocolli necessari per garantire i requisiti minimi di sicurezza di un sistema informatico.
Le conoscenze sopraelencate sono conseguite tramite la partecipazione alle lezioni frontali, alle esercitazioni e ai laboratori, tramite lo studio personale guidato e quello indipendente, a progetti svolti in gruppo o singolarmente, tramite la riflessione critica sui testi proposti per lo studio individuale, sollecitata dalle attività in aula, come previsto dalle attività formative.
La verifica del raggiungimento dei risultati di apprendimento avviene principalmente attraverso elaborati, esami scritti e/o colloqui.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE (APPLYING KNOWLEDGE AND UNDERSTANDING)Il laureato:
- è in grado di utilizzare gli strumenti matematici applicandoli agli scenari di altre discipline;
Il laureato:
- è in grado di programmare usando i principali linguaggi di programmazione imperativi e orientati agli oggetti utilizzati nei diversi scenari applicativi;
- è in grado di risolvere un problema attraverso la progettazione di un algoritmo e la successiva codifica in un linguaggio di programmazione;
- è in grado di sfruttare le principali tecniche di programmazione per realizzare applicazioni in ambito web, reti di calcolatori, sistemi mobile, sistemi embedded, computer graphics, elaborazione di immagini, data analytics e machine learning, realizzando e utilizzando basi di dati relazionali e NoSql, operando su architetture avanzate, hardware e software, complesse e distribuite, monolitiche o a microservizi;
- è in grado di utilizzare linguaggi standard di modellazione dei requisiti per la progettazione di sistemi software, come previsto dalle buone pratiche di project management, e di realizzare processi di ingegneria del software orientati all'agilità.
Il laureato:
- è in grado di installare, configurare e manutenere infrastrutture informatiche composte da più server (fisici e virtuali);
- è in grado di progettare e gestire infrastrutture di rete, progettandone politiche di sicurezza di base;
- è in grado di configurare e gestire siti e applicazioni web, e basi di dati di media complessità;
- è in grado di individuare ed utilizzare i meccanismi ed i protocolli necessari per garantire un livello minimo di sicurezza della applicazioni e dei sistemi informatici.
Il raggiungimento delle capacità sopraelencate avviene tramite la partecipazione alle lezioni frontali, alle esercitazioni e ai laboratori, tramite lo studio personale guidato e quello indipendente, a progetti svolti in gruppo o singolarmente, tramite la riflessione critica sui testi proposti per lo studio individuale, sollecitata dalle attività in aula.
Le verifiche del raggiungimento di tali capacità (tramite progetti software e discussione degli stessi, esami scritti e/o orali, relazioni, esercitazioni, laboratori) prevedono lo svolgimento di specifici compiti in cui lo studente dimostra la padronanza di strumenti, metodologie e autonomia critica.
AUTONOMIA DI GIUDIZIO (MAKING JUDGEMENTS)Il laureato:
- ha capacità di discernimento/giudizio/valutazione delle tecnologie informatiche innovative di medio e lungo termine;
- ha capacità di analisi e di sintesi (in senso generale);
- possiede abilità logico deduttive generiche non legate direttamente al contesto informatico (capacità di ragionamento).
- è capace di identificare, formulare e risolvere problematiche correlate alla progettazione, alla gestione, all'adeguamento delle funzionalità di sistemi e applicazioni informatiche;
- è capace di espletare il collaudo, condurre prove sperimentali, valutare le prestazioni delle infrastrutture hardware/software di sistemi informatici, e di stabilirne il grado di conformità alle specifiche di progetto interpretando i risultati ottenuti;
- è capace di focalizzare i contributi essenziali di relazioni tecniche presentate o redatte da interlocutori, e di estrapolare da essi gli aspetti qualificanti ed innovativi;
- è capace di comprendere articoli pubblicati nella letteratura tecnico/scientifica;
- è capace di reperire e consultare, anche via web, le principali fonti bibliografiche, le proposte di standardizzazione emergenti a livello nazionale o internazionale, la normativa riguardante la certificazione di prodotti e sistemi di interesse industriale.
Al raggiungimento dei risultati sopra elencati contribuiscono le attività di esercitazione e di laboratorio, nonché gli elaborati personali e i progetti di gruppo, e la prova finale, che offrono allo studente le occasioni per sviluppare in modo autonomo le proprie capacità decisionali e di giudizio. Esse permettono di acquisire la capacità di reperire e vagliare fonti di informazione, dati, letterature. La verifica dell'acquisizione dell'autonomia di giudizio avviene tramite la valutazione finale dei singoli insegnamenti, in particolare di quelli che prevedono un'attività progettuale.
ABILITÀ COMUNICATIVE (COMMUNICATION SKILLS)Il laureato:
- possiede abilità nella comunicazione, in forma orale e scritta, informazioni, idee, problemi e soluzioni di tipo scientifico;
- sa presentare materiali e argomentazioni, in forma orale e scritta, nella propria lingua ed in inglese nell'ambito delle attività e dei rapporti professionali;
- è in grado di interagire con altre persone e di condurre attività in collaborazione;
- possiede una buona predisposizione al lavoro di gruppo;
Le abilità comunicative sono sviluppate in occasione delle attività formative caratterizzanti che prevedono la preparazione di relazioni orali e documenti scritti, la partecipazione a gruppi di lavoro nei progetti, l'esposizione orale dei medesimi e le relative prove di verifica. L'acquisizione delle abilità sopraelencate è prevista inoltre tramite la redazione della prova finale e la discussione della medesima.
Per tali abilità sono previste ampie modalità di verifica, colloqui, discussione dei progetti, anche mediante l'ausilio di strumenti multimediali e presentazioni al computer.
La lingua inglese di livello B2 viene appresa tramite attività formative in e-learning.
CAPACITÀ DI APPRENDIMENTO (LEARNING SKILLS)Il laureato:
- ha propensione all'aggiornamento costante sugli strumenti informatici disponibili;
- è capace di mantenersi aggiornato su metodi, tecniche e strumenti orientati all'analisi dei requisiti, alla modellazione e progettazione, al collaudo e messa a punto, all'ottimizzazione delle prestazioni di sistemi e applicazioni informatiche;
- è in grado di lavorare autonomamente, di seguire l'evoluzione delle tecnologie informatiche, e di identificare nuove necessità di informazione e formazione;
- è capace di intraprendere studi più avanzati in ogni settore dell'informatica e dell'ingegneria informatica con un elevato grado di autonomia.
Le capacità di apprendimento sono conseguite nel percorso di studio nel suo complesso, con riguardo in particolare allo studio individuale previsto, alla preparazione di progetti individuali e all'attività svolta per la preparazione della prova finale.
La capacità di apprendimento viene accertata attraverso forme di verifica continua durante le attività formative, valutando altresì la capacità di rispettare le scadenze, richiedendo la presentazione di dati reperiti autonomamente, mediante l'attività di tutorato nello svolgimento di progetti e mediante la valutazione della capacità di autoapprendimento maturata durante la preparazione della prova finale.
Profili professionali
-
Funzione in un contesto di lavoro
L'Analista, progettista e programmatore di software è generalmente incaricato dell'analisi, progettazione e sviluppo di nuove applicazioni informatiche e/o dell'evoluzione di applicazioni software esistenti. La sua collocazione naturale è in aziende del settore ICT che producono software e applicazioni, e in aziende dotate di un centro elaborazione dati interno; più in generale trova collocazione in tutte le aziende, le pubbliche amministrazioni, i centri di elaborazione dati e le società di servizi che devono gestire dati attraverso strumenti/procedure di tipo informatico. La figura professionale in oggetto si occupa di: - sviluppare applicazioni che operano su architetture complesse; - progettare sistemi informativi e database di media complessità; - sviluppare applicazioni basate sulle tecnologie e i linguaggi legati al mondo web; - sviluppare applicazioni per reti di calcolatori e architetture distribuite; - progettare e sviluppare sistemi informatici, costituiti da microservizi (container), resilienti, scalabili e dispiegati in cloud; - eseguire test e collaudo di applicazioni informatiche; - redigere documentazione tecnica.
Competenze associate alla funzione
Per lo svolgimento delle funzioni sopra descritte sono richieste conoscenze, capacità e abilità in ambito informatico, tra cui: - l'utilizzo delle tecniche di ingegneria del software per il progetto di applicazioni e i rudimenti delle tecniche di controllo versione abilitanti i processi di sviluppo agili; - l'utilizzo dei principali linguaggi e ambienti di programmazione; - le conoscenze riguardanti gli ambiti di basi di dati, reti di calcolatori e tecnologie web; - le conoscenze riguardanti l'ambito dei sistemi operativi, le tecniche di virtualizzazione, le metodologie devops; - l'utilizzo di algoritmi e tecniche numeriche per la soluzione di problemi di ottimizzazione. Il CdS permette di approfondire maggiormente competenze concernenti: - strumenti di base per elaborare immagini e per individuare e riconoscere oggetti in immagini e video; - sviluppo di applicazioni native (Kotlin per Android e Swift per iOS) e ibride per piattaforme mobili; - sistemi embedded, IoT e real-time basati su RTOS; - applicazioni di computer grafica; - progettazione di basi di dati NoSQL; - fondamenti e applicazioni di machine learning e analisi dei dati per l'intelligenza artificiale; - algoritmi crittografici a supporto della sicurezza dei sistemi e delle informazioni; - sviluppo di applicazioni resilienti e scalabili a microservizi (container) in cloud; - concetti giuridici di base rilevanti per il settore informatico (protezione dei dati, proprietà industriale e intellettuale, regole di responsabilità). Oltre a capacità di auto-apprendimento e di aggiornamento continuo, sono richieste infine adeguate competenze trasversali di tipo comunicativo-relazionale, organizzativo-gestionale e di pianificazione.
Sbocchi occupazionali
I principali sbocchi occupazionali sono: - Esperto di architetture software; - Analista di procedure informatiche; - Progettista di software applicativo. Tali sbocchi potranno essere esercitati principalmente presso: - Aziende di sviluppo software; - Aziende del settore ICT; - Aziende del settore manifatturiero che utilizzano sistemi ICT a supporto della produzione; - Centri di elaborazione dati di aziende; - Settore ricerca e sviluppo di aziende legate al settore ICT; - Università ed enti pubblici e privati.
-
Funzione in un contesto di lavoro
L'Amministratore di sistemi informatici installa, configura e gestisce software di base e d'ambiente e in particolare: sistemi operativi, sistemi e gestione di basi di dati, sistemi web. Sebbene la sua specializzazione prevalente sia nell'ambito del software, conosce e gestisce apparati hardware e reti. La sua collocazione naturale è in aziende del settore ICT che producono software e applicazioni e in aziende dotate di un centro elaborazione dati interno; più in generale trova collocazione in tutte le aziende, le pubbliche amministrazioni, i centri di elaborazione dati e le società di servizi che devono gestire dati attraverso strumenti/procedure di tipo informatico. La figura professionale in oggetto si occupa di: - amministrare sistemi operativi, web server e application server; - gestire e configurare server fisici, server virtuali, piccoli cluster on premise e piccoli cloud privati; - realizzare e gestire infrastrutture di elaborazione e comunicazione; - configurare e gestire apparati e protocolli di rete; - installare, configurare e amministrare sistemi di gestione di database; - configurare e gestire infrastrutture virtuali in cloud secondo l'approccio Infrastructure as Code (IaC); - utilizzare i servizi di directory per piccole organizzazioni, basati su Microsoft Active Directory; - gestire gli aspetti essenziali di cybersecurity dei sistemi informatici tenendo anche conto del profilo di rischio connesso al loro funzionamento; - eseguire test e collaudo di applicazioni informatiche; - redigere documentazione tecnica.
Competenze associate alla funzione
Per lo svolgimento delle funzioni sopra descritte sono richieste specifiche conoscenze, capacità e abilità di tipo specialistico in ambito tecnico-scientifico. Può essere necessaria una maggiore specializzazione e capacità di approfondimento in uno o più settori di professionalizzazione. Oltre a capacità di auto-apprendimento e di aggiornamento continuo, sono richieste adeguate competenze trasversali di tipo comunicativo-relazionale, organizzativo-gestionale e di programmazione, in accordo con il livello di autonomia e responsabilità assegnato, con le modalità organizzative e di lavoro adottate e con i principali interlocutori (colleghi, altri professionisti e clienti pubblici e/o privati). Per lo svolgimento delle funzioni sopra descritte sono richieste conoscenze, capacità e abilità in ambito informatico, tra cui: - l'utilizzo dei principali linguaggi e ambienti di programmazione; - la conoscenza approfondita di sistemi operativi, tecniche e piattaforme di virtualizzazione, applicazioni client-server e le basi minime delle metodologie devops; - le conoscenze riguardanti gli ambiti di basi di dati, reti di calcolatori e tecnologie web. Il CdS permette di approfondire ulteriormente competenze specifiche in: - interfacce e protocolli di comunicazione; - sistemi embedded, IoT e real-time basati su RTOS, e componenti e sistemi elettronici programmabili ad elevato livello di integrazione; - piattaforme di virtualizzazione in cloud e per cluster on-premise; - sviluppo e dispiegamento di applicazioni resilienti e scalabili a microservizi (container) in cloud; - servizi di directory come Microsoft Active Directory e Samba per l'amministrazione dei sistemi informatici di piccole organizzazioni. Oltre a capacità di auto-apprendimento e di aggiornamento continuo, sono richieste infine adeguate competenze trasversali di tipo comunicativo-relazionale, organizzativo-gestionale e di pianificazione.
Sbocchi occupazionali
I principali sbocchi occupazionali sono: - Gestore di sistemi operativi; - Gestore di reti informatiche; - Progettista e gestore di infrastrutture Web; - Amministratore di database; - Sviluppatore e Amministratore di Infrastrutture virtuali dispiegate via software (modello IaC), in cloud o in cluster on-premise; - Utilizzatore di sistemi informatici basati su servizi di directory (Microsoft Active Directory e Samba), per piccole organizzazioni. Tali sbocchi potranno essere esercitati principalmente presso: - Aziende di sviluppo software; - Aziende del settore ICT; - Aziende del settore manifatturiero che utilizzano sistemi ICT a supporto della produzione; - Centri di elaborazione dati di aziende; - Settore ricerca e sviluppo di aziende legate al settore ICT; - Università ed enti pubblici e privati.
Accesso a ulteriori studi
Dà accesso agli studi di secondo ciclo (laurea specialistica / magistrale) e master universitario di primo livello.
Insegnamenti
Requisiti di accesso
Requisiti per l'accesso al corso
Per essere ammessi al corso di laurea in Ingegneria e Scienze Informatiche, occorre essere in possesso di un diploma di scuola secondaria superiore o di altro titolo di studio conseguito all'estero, riconosciuti idonei secondo la normativa vigente.
Sono inoltre richieste le seguenti conoscenze e competenze: una buona cultura generale, capacità di ragionamento logico e di comprensione del testo, una buona conoscenza delle nozioni fondamentali della matematica e delle scienze sperimentali.
Le modalità di verifica delle conoscenze richieste per l’accesso sono definite nel Regolamento didattico del Corso di Studio.
Se la verifica non è positiva vengono indicati specifici Obblighi Formativi Aggiuntivi (OFA), il cui assolvimento è oggetto di specifica verifica.
La relativa modalità di accertamento è indicata nel Regolamento didattico del Corso di Studio.
Gli studenti che non assolvano agli OFA entro la data stabilita dagli Organi competenti e comunque entro il primo anno di corso devono ripetere l’iscrizione al medesimo anno.
Maggiori dettagli nel Regolamento del Corso di Studio
Elenco dei docenti
- Ciro Barbone
- Marco Antonio Boschetti
- Franco Callegati
- Raffaele Cappelli
- Fabrizio Caselli
- Chiara Ceccarini
- Luisa Dall'Acqua
- Giovanni Delnevo
- Stefano Ferretti
- Annalisa Franco
- Vittorio Ghini
- Matteo Golfarelli
- Luigi Guiducci
- Damiana Lazzaro
- Alessandra Lumini
- Luciano Margara
- Moreno Marzolla
- Silvia Mirri
- Gianluca Moro
- Lorenzo Pellegrini
- Danilo Pianini
- Andrea Piroddi
- Catia Prandi
- Alessandro Ricci
- Stefano Rizzi
- Mirko Viroli
Ti interessa questo corso?
-
Per approfondire
-
Contatti