Modulo | Contenuti | Descrizione |
---|---|---|
Strumenti e Linguaggi di programmazione |
|
Nel corso verrà introdotta la programmazione Object Oriented, paradigma indispensabile per sviluppare software mediamente complessi. Verrà quindi introdotto il Java, un linguaggio di programmazione estremamente diffuso in virtù della sua grande versatilità. Saranno poi mostrati i principali ambienti di che facilitano il programmatore nello sviluppo di un software e verranno mostrati strumenti di test dello stesso. Infine, verrà presentato GitHub, strumento fondamentale per confrontare diverse versioni di un codice e poterlo condividere tra più autori. |
Gestione dell'Informazione |
|
Le basi di dati sono archivi virtuali che permettono di immagazzinare le informazioni in formati standardizzati. Il corso fornisce gli strumenti fondamentali alla modellazione di database, alla ricerca di informazioni al loro interno e presenta le principali tecnologie che permettono di connettere i database alle applicazioni. |
Integrazione dei Sistemi Informativi Aziendali |
|
Il corso presenta gli aspetti fondamentali delle reti di calcolatori, sia dal punto di vista teorico che dal punto di vista pratico. Vengono analizzati i principali protocolli di rete dei livelli applicativi in funzione della implementazione attuale. |
Strumenti avanzati di programmazione |
|
Nel corso verranno introdotte metodologie e le tecnologie necessarie a progettare e sviluppare una applicazione in Java. Gli studenti, anche attraverso l’uso di semplici esempi applicativi, verranno guidati nel processo di sviluppo e nella definizione delle componenti che costituiscono l’applicazione garantendo la manutenibilità e l’estendibilità del codice. Le moderne applicazioni sono tipicamente caratterizzate da la necessità di elaborare e trattare grosse mole di dati. Nel corso verranno introdotte le strutture dati necessarie ad una efficiente memorizzazione ed elaborazione delle informazioni. Inoltre, al fine di sfruttare le moderne architetture hardware spesso caratterizzate da multiple unità di calcolo, saranno presentati alcuni strumenti che consentono di elaborare i dati in modo concorrente e parallelo. Verranno quindi introdotti gli strumenti che permettono di sviluppare l’interfaccia grafica di una applicazione in Java. Infine, verranno presentati gli strumenti per il supporto alla compilazione e alla distribuzione delle applicazioni come, ad esempio, GRADLE. |
Metodologie di Progettazione e Gestione di Soluzioni Digitali |
|
Nel corso verranno analizzate tutte le fasi del ciclo di vita del software, ovvero l’insieme di attività tra loro coordinate che permettono di realizzare e mantenere un applicativo. Il corso propone innanzitutto lo studio della struttura del software, cioè delle relazioni tra le classi che lo compongono e presenta il principale strumento di modellazione: UML2. Verrà quindi introdotta la metodologia per analizzare i requisiti che il software deve soddisfare e per progettare il design dello stesso. Il corso presenta inoltre i concetti base del software testing, strumento indispensabile per verificare che l’applicazione implementi correttamente le funzionalità desiderate. |
Soluzioni digitali per l'azienda |
|
Lo studente sarà introdotto ai concetti base dei processi di business con un focus su sistemi di process management e workflow management systems. Lo scopo principale del corso è quello instruire una figura capace di gestire sistemi informativi, composti da processi di business o applicazioni verticali adeguatamente integrate in applicazioni enterprise. Inoltre, lo studente acquisirà concetti relativi allo sviluppo di applicazioni orientate ai servizi per il disaccoppiamento di funzionalità. Particolare attenzione sarà data allo sviluppo software (smart contract) su blockchain utili per l’implementazione di processi di business certificati. Infine, la tematica del process mining sarà quindi illustrata allo studenti in particolare per quanto riguarda la sua applicazione rispetto al miglioramento continuo dei processi organizzativi e attività di auditing. |
Fondamenti di Programmazione Web e Mobile |
|
Descrizione: L'obiettivo del corso è introdurre lo studente alle metodologie e agli strumenti per la programmazione Web e allo sviluppo di applicazioni Web. Lo studente sarà introdotto alle architetture e alle tecnologie inerenti al Web e alle applicazioni ad esso connesse. Lo studente prenderà confidenza con i linguaggi utilizzati per strutturare il layout delle pagine Web adattabili a contesti mobile e con i linguaggi di scripting eseguiti nel browser o nel server e i linguaggi utilizzati per lo scambio di informazioni. Lo studente imparerà l'utilizzo di framework per lo sviluppo rapido di frontend sia desktop che mobile. Alla fine del corso, lo studente sarà in grado di progettare e sviluppare applicazioni con interfacce web e mobile. |
Fondamenti di Data Management e Machine Learning |
|
Il corso presenta i principali strumenti per la realizzazione di applicazioni che possano gestire ed elaborare in modo intelligente i dati. Verranno introdotti i principi dell’apprendimento automatico e le librerie fondamentali che permettono di implementare gli algoritmi più importanti per l’intelligenza artificiale. |