Francesco Foresta
Em@il: francescoforesta[at]email[dot]it
Thesis
Mobile Collaborative Learning System
Introduction
Seminars
[11/03/2013 10:00]Mobile Collaborative Learning System
La grande evoluzione e diffusione di dispositivi mobile, unita alla sempre più alta disponibilità di infrastrutture di reti di comunicazione, ha permesso la realizzazione di complessi sistemi informatici distribuiti basati su piattaforma mobile.
Durante il seminario vedremo come sarà possibile realizzare un ambiente di apprendimento cooperativo sulla base di tali trends e delle nuove tecnologie di mobile computing. Partiremo con una breve panoramica sulle dinamiche che intercorrono nello sviluppo di un ambiente cooperativo, prendendo in esempio Coffee, per poi soffermarci su una possibile architettura per la realizzazione in ambito mobile.
Nella seconda parte del seminario analizzeremo il protocollo XMPP (Extensible Messaging and Presence Protocol) il quale, come avremo modo di mostrare, permette lo scambio in tempo reale di dati strutturati tra diverse entità di rete.
Dopo aver analizzato le caratteristiche del protocollo e il formato dei messaggi, vedremo OPENFIRE, un server RTC che utilizza il protocollo XMPP, con una breve parentesi sulle funzionalità messe a disposizione.
Infine, nell'ultima parte del seminario, faremo una breve analisi comparativa sulle possibili soluzioni di implementazione, sulle librerie a disposizione che supportano il protocollo XMPP client-side e su possibili framework da utilizzare per sviluppare un ambiente cooperativo flessibile e modulare.
01_Seminario.pptx (1.8 MB)
[17/05/2013 12:00]Groupware and collaboration environment: Work in progress
Dopo un breve flash back sugli argomenti trattati nel seminario scorso, riprenderemo il discorso sull'analisi dei framework presi in considerazione per lo sviluppo di un ambiente cooperativo su mobile. Faremo in particolare una panoramica sullo stato dei lavori, soffermandoci sulle scelte fatte riguardanti le tecnologie da utilizzare, nonché una breve discussione sui possibili scenari di utilizzo del sistema.
Concluderemo con una breve panoramica riguardante gli OSGi Services e illustrando una possibile idea di architettura del sistema, sulla base della quale mostreremo una demo sviluppata.
02_Seminario.pptx (2.1 MB)
[20/07/2013 12:00]aCME-groupware: a Collaborative Mobile Environment
Durante il seminario analizzeremo l'architettura finale del sistema partendo dalle scelte tecnologiche fatte. Dopo una breve introduzione, vedremo come sono state modellate l'entità rispetto all'idea iniziale di sviluppo del sistema, quali sono gli utenti coinvolti nell'utilizzo del sistema e come interagiscono fra di loro. Successivamente parleremo della suddivisione del sistema in bundle e di quali tecnologie sono state scelte per memorizzare i dati e quindi gestire lo strato di persistenza. Parleremo poi del centro nevralgico del sistema, dei servizi e delle funzionalità trasversali implementate per i tool. Come passo successivo analizzeremo il front-end del sistema, ovvero i tre punti di accesso alla logica di business, lato amministratore, lato controller e lato discusser. Vedremo come sia possibile sviluppare un tool, quali sono i passi da seguire, e come impostare la progettazione. Infine parleremo dei possibili test da effettuare, come sia possibile migliorare le prestazioni del sistema e quali possano essere i possibili sviluppi futuri del sistema.
03_Seminario.pptx (11.1 MB)
Tesi
Francesco_Foresta_front_end.pdf (895 KB)
Presentazione laurea
Bibliography
The Extensible Messaging and Presence Protocol (XMPP) is an open technology for real-time communication, which powers a wide range of applications including instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data.
XMPP RFCs
asmack Java Android library
Openfire is a real time collaboration (RTC) server licensed under the Open Source Apache License. It uses the only widely adopted open protocol for instant messaging, XMPP.
Framework java for building modern web application
Hibernate is an open source Java persistence framework project. Perform powerful object relational mapping and query databases using HQL and SQL.
The Java Persistence API provides a POJO persistence model for object-relational mapping.
JBoss is an application server