I laureati in Ingegneria Informatica devono essere pronti a risolvere problemi in contesti applicativi molto diversificati. A tale scopo le seguenti capacità individuali sono fortemente stimolate da parte di tutti gli insegnamenti professionalizzanti: (i) individuare le caratteristiche dei problemi sottoposti alla loro valutazione identificandone sia gli aspetti tecnici sia le implicazioni economiche; (ii) reperire in modo autonomo le fonti disponibili (articoli pubblicati nella letteratura tecnico/scientifica) per raccogliere dati pertinenti ai problemi in discussione, utilizzando anche strumenti appropriati per valutarne l'affidabilità delle fonti; (iii) comprendere ed elaborare le informazioni raccolte e di procedere alla formulazione di un giudizio autonomo e consistente sui problema in esame.
Al raggiungimento dei risultati sopra elencati contribuiscono in particolare le seguenti scelte effettuate dal Corso di studio.
- Alcuni insegnamenti di ingegneria informatica e ingegneria industriale sono specificatamente orientati al problem solving dove la capacità di trovare soluzioni in modo autonomo e di giustificare le scelte è fortemente incentivata.
- L'approfondimento delle implicazioni di più ampio respiro dei significati sociali, scientifici o etici viene incentivato dalle interazioni con il modo dell'impresa e delle professioni nell'ambito del tirocinio obbligatorio.
- Nel Regolamento didattico, si promuove l'integrazione delle attività formative tradizionali con Webinar, articoli della letteratura accessibile alle loro competenze, seminari e incontri con aziende.
- Si favoriscono le attività laboratoriali, i progetti singoli o in gruppo, oltre al tirocinio e tesi ove lo studente si può confrontare con aspetti concreti e valutare in modo autonomo le diverse opzioni che le problematiche offrono.
I laureati in Ingegneria Informatica si dovranno confrontare con realtà molto diverse del mondo del lavoro. Quindi, si ritiene indispensabile che siano dotati delle seguenti abilità: (i) comunicare in modo efficiente ed efficace anche in lingua inglese (almeno a livello B1, preferibilmente B2), in forma scritta e orale, nei confronti di interlocutori specialisti e non specialisti; (ii) redigere relazioni tecniche sulle attività svolte e di presentarne sinteticamente i risultati salienti in discussioni collegiali.
Al raggiungimento dei risultati sopra elencati contribuiscono, in particolare:
- organizzazione di seminari e incontri con esterni all'interno dei moduli didattici;
- sessioni di esercitazioni e lavoro di gruppo;
- attività valutative intermedie che prevedano la preparazione di relazioni, predisposizione di slide a supporto dell'esposizione orale;
- redazione della prova finale e discussione della medesima di fronte al pubblico.
Per quanto riguarda le abilità comunicative in inglese, oltre all'idoneità di livello B1 del Quadro Comune Europeo di Riferimento, lo studente sarà incentivato a sostenere alcuni esami all'estero grazie alle possibilità offerte dal Programma Erasmus e dalle collaborazioni già attive nell'ambito dell'Università di Modena e Reggio Emilia.
I laureati in ing. Informatica devono essere in grado di mantenersi aggiornati su metodi, le tecniche e l'evoluzione delle tecnologie nel settore dell'ingegneria informatica e industriale, di identificare nuove necessità di informazione e formazione, e poter intraprendere studi più avanzati nel settore dell'Ingegneria informatica con un elevato grado di autonomia.
Le capacità di apprendere ed aggiornare continuamente le proprie conoscenze sono promosse nell'ambito dei singoli insegnamenti attraverso:
- la richiesta di approfondire in modo autonomo conoscenze in ambiti di interesse promosse dal docente o suggerite dallo studente;
- lo svolgimento di un tirocinio obbligatorio dove si valuteranno, tra le altre cose, la capacità di apprendimento in contesti estranei all'aula universitaria nonché la capacità di rispettare scadenze;
- la preparazione dell'elaborato per la prova finale in cui lo studente dovrà dimostrare elevate capacità di apprendimento e problem solving autonome.
Scienze di base
- Conoscere e comprendere i principali concetti dell'analisi matematica relativi alle funzioni e al calcolo differenziale ed integrale, oltre che alle equazioni differenziali (MAT/05)
- Conoscere e comprendere i principali concetti dell'algebra lineare e della geometria euclidea di dimensione due e tre (MAT/03)
- Conoscere e comprendere i principali concetti ed algoritmi del calcolo numerico e del calcolo delle probabilità (MAT/08)
- Conoscere e comprendere i principali concetti della fisica (FIS/01)
Informatica
- Conoscere e comprendere i fondamenti dell'informatica ed in particolare della programmazione imperativa e sequenziale, con riferimento ai linguaggi di scripting ed alla programmazione ad oggetti (ING-INF/05)
- Conoscere e comprendere i fondamenti dei sistemi operativi, con particolare riferimento a UNIX/Linux e alla relativa programmazione di sistema (ING-INF/05)
- Conoscere e comprendere i fondamenti dei calcolatori elettronici, anche in riferimento a microcontrollori (INF/01)
- Conoscere e comprendere i fondamenti delle basi di dati in particolare relazionali (ING-INF/05)
- Conoscere e comprendere le principali tecnologie Web e di cloud computing. In particolare, le tecnologie client e server side e le tecnologie per la gestione di macchine virtuali e servizi in ambienti cloud (ING-INF/05)
- Conoscere e comprendere le principali tecniche di machine learning, con particolare riferimento ai problemi di apprendimento supervisionato, semi-supervisionato (reinforcement learning) e non-supervisionato (ING-INF/05)
- Conoscere e comprendere le basi tecnologiche dell'Internet of Things (IoT) e dei principali strumenti per raccogliere ed analizzare i dati generati da tali sistemi (ING-INF/05)
- Conoscere e comprendere i principali concetti dell'informatica industriale con particolare riferimento alla model-based engineering (ING-INF/05)
Altre discipline dell'ICT
- Conoscere e comprendere le basi dei circuiti elettrici e dell'elettronica digitale e delle comunicazioni wireless tra dispositivi elettronici (ING-INF/01)
- Conoscere e comprendere i concetti di base dei controlli automatici (ING-INF/04)
Ingegneria Industriale e Discipline affini ed integrative
- Conoscere e comprendere i principali concetti alla base delle macchine e dei sistemi energetici (ING-IND/08)
- Conoscere e comprendere i principali concetti alla base del design industriale (ING-IND/15) e dei sistemi di fabbricazione, con particolare riferimento alla fabbricazione additiva (ING-IND/16)
- Conoscere e comprendere i principali concetti della produzione e della logistica industriale (ING-IND/17)
- Conoscenze e comprensione dell'economia e gestione delle imprese (SECS-P/08)
Scienze di base
- Sapere modellare e risolvere problemi matematici utilizzando le tecniche dell'analisi matematica in particolare funzioni di una variabile, punti di massimo e di minimo di funzioni di più variabili reali e integrali. (MAT/05)
- Sapere modellare e risolvere problemi algebrici e geometrici utilizzando le tecniche dell'algebra lineare e della geometria.(MAT/03)
- Saper sviluppare ed utilizzare i principali algoritmi del calcolo numerico. Saper calcolare i loro margini di errore e la loro complessità computazionale. Saper impostare e risolvere problemi base di statistica e di calcolo delle probabilità (MAT/08)
- Saper modellare e risolvere problemi di fisica. In particolare, problemi di dinamica del corpo rigido, problemi di termodinamica, semplici problemi di elettromagnetismo (FIS/01)
Informatica
- Sapere definire algoritmi sequenziali e avere la capacità di sviluppare e testare programmi utilizzando diversi linguaggi di programmazione (ING-INF/05)
- Sapere utilizzare i principali comandi shell di UNIX/Linux e avere la capacità di sviluppare programmi di script in Shell e programmi di sistema (ING-INF/05)
- Sapere analizzare le principali architetture dei calcolatori elettronici valutandone le prestazioni (INF/01)
- Sapere progettare, creare, modificare e interrogare un database relazionale (ING-INF/05)
- Sapere sviluppare applicazioni Web tramite tecniche REST e saper configurare ed accedere a macchine virtuali e servizi cloud. Sapere usare i principali servizi applicativi delle reti di calcolatori e avere la capacità di installare e configurare sistemi embedded industriali in ambiente UNIX/Linux (ING-INF/05)
- Sapere applicare i principali algoritmi di machine learning e pattern recognition e saper utilizzare le principali librerie che li implementano (ING-INF/05)
- Sapere sviluppare programmi in ambito embedded/IoT e soluzioni per il monitoraggio ambientale e industriale attraverso Internet of Things (ING-INF/05)
- Saper modellare e verificare un sistema informatico industriale tramite le tecniche di model checking (ING-INF/05)
Altre discipline dell'ICT
- Sapere analizzare i circuiti elettrici lineari e sapere identificare il comportamento dei componenti e dei circuiti elettronici all'interno dei sistemi embedded, e saper identificare i protocolli di comunicazione wireless tra dispositivi elettronici (ING-INF/01)
- Sapere descrivere e analizzare i sistemi dinamici retroazionati e sapere progettare regolatori, atti a migliorare le prestazioni dinamiche dei sistemi retroazionati (ING-INF/04)
Ingegneria Industriale e Discipline affini ed integrative
- Saper descrivere gli elementi principali delle macchine e dei sistemi energetici (ING-IND/08)
- Saper applicare le principali tecniche di design industriale (ING-IND/15). Saper descrivere ed applicare i principali sistemi di fabbricazione con particolare riguardo all'additive manufacturing. (ING-IND/16)
- Sapere descrivere ed analizzare impianti industriali e logistici (ING-IND/17)
- Sapere usare gli strumenti necessari per l'analisi economico-finanziaria e per l'interpretazione dei risultati gestionali e sapere valutare gli aspetti economici di un progetto (SECS-P/08).