- Docente: Gianluca Moro
- Crediti formativi: 6
- SSD: ING-INF/05
- Lingua di insegnamento: Italiano
- Moduli: Gianluca Moro (Modulo 1) Roberto Pasolini (Modulo 2)
- Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
- Campus: Cesena
- Corso: Laurea in Ingegneria e scienze informatiche (cod. 8615)
Conoscenze e abilità da conseguire
Al termine del corso lo studente è in grado di progettare e sviluppare componenti e applicazioni per gestire ed elaborare dati strutturati e destrutturati in scenari di interesse aziendale, impiegando moderne architetture e tecnologie di rete e di accesso a basi di dati remote.
Contenuti
Il corso fornisce competenze teoriche e pratiche sull'impiego di metodi e tecnologie per lo sviluppo di applicazioni data-intensive secondo moderne architetture computazionali e di rete. In questo contesto, il termine data-intensive indica applicazioni orientate alla gestione ed elaborazione sia di dati strutturati in database relazionali, sia di dati destrutturati testuali, come documenti, pagine Web, tweets, e-mail etc.
Sito web del corso (https://datascienceunibo.github.io/dia/)
MOTIVAZIONI
Tra le applicazioni data-intensive aziendali, i sistemi di e-commerce rappresentano un case study esaustivo poiché richiedono applicazioni per la gestione e l'elaborazione di dati strutturati e destrutturati sviluppate con tecnologie Web, client-server e applicazioni mobili:
- per quanto riguarda i dati strutturati, occorrono componenti e applicazioni con cui effettuare acquisti e anche applicazioni per l'elaborazione intelligente dei dati, come quelle di recommendation che dallo storico delle combinazioni di acquisto, prevedano le propensioni di acquisto di ogni cliente;
- per quanto riguarda i dati destrutturati, occorrono applicazioni che dai commenti dei clienti/utenti, postati anche su social network come twitter, blog, formi etc., siano in grado di rilevare automaticamente la soddisfazione della clientela, la reputazione aziendale, aspetti positivi e negativi dei prodotti/servizi etc.
PROGRAMMA
Il programma è suddiviso in due parti:
applicazioni data-intensive per la gestione dei dati
- Paradigmi client-server a 2 e 3 livelli, architetture e componenti ODBC/JDBC di accesso a db, applicazioni Java/JSP con transazioni e object-relational mapping
- Metodologia di progettazione e sviluppo Interaction Flow Modeling Language (IFML), web e mobile web applications
- Metodi e tecnologie per la raccolta e gestione di dati destrutturati: documenti, pag. web, tweets, blogs, email etc.
Applicazioni data-intensive per l'elaborazione dei dati
- prevedere le propensioni di acquisto dei clienti (i.e. recommendation) e la soddisfazione dalle loro recensioni attraverso metodi di collaborative filtering, svd etc.
- impiego via API di librerie e tool (open source) per l'elaborazione intelligente dei dati
- sviluppo di applicazioni per l'e-commerce con dati reali di Amazon: carrello della spesa e transazioni, combinazioni di acquisto e applicazioni di recommendation, elaborazione di commenti (e.g. tweets, recensioni etc.) per rilevare la soddisfazione della clientela.
Testi/Bibliografia
- Dispense e riferimenti bibliografici forniti dal docente
- Software e data set disponibili in laboratorio e scaricabili gratuitamente
- Interaction Flow Modeling Language – Model-Driven UI Engineering of Web and Mobile Apps with IFML. Marco Brambilla and Piero Fraternali.
Metodi didattici
Lezioni in aula affiancate da esercitazioni in laboratorio dove sviluppare soluzioni e applicazioni presentate in aula.
Modalità di verifica e valutazione dell'apprendimento
Progetto di laboratorio svolto in gruppo con discussione orale individuale.
Strumenti a supporto della didattica
- Attività di laboratorio assistite
- Software open source disponibile in laboratorio e online
Link ad altre eventuali informazioni
https://datascienceunibo.github.io/dia/
Orario di ricevimento
Consulta il sito web di Gianluca Moro
Consulta il sito web di Roberto Pasolini