N-Screen Application Framework
Smartphones and tablets with advanced computing ability and connectivity have already become indispensable in our daily lives. As operating systems of these computer-like handheld devices are getting more mature and stable, many users want physically separated devices to interact with one another and with shared resources in real time. Those devices may have the same type of operating systems, such as sharing between android smartphone and tablets. However, sometimes the sharing occurs among different operating systems. A user may want to use a smartphone to control the menu while the image presentation is displaying on the Internet Protocol television (IPTV), as well as the audio on a personal computer. This scenario brings about the motivation of this thesis. This thesis proposes an architecture that allows for sharing resources among many devices with separated screens at real-time. Compared with traditional mobile application framework, instead of the user experience on a specific device, the consistent user experience across multiple devices becomes the key concern. This research introduces a novel approach to implement the classical Model-View-Controller (MVC) framework in a distributed manner with a multi-layered distributed controller. To ensure consistent user experiences across multiple devices with di erent platforms, this research also adopts a channel-based Publish/Subscribe with effective server push state synchronization. The experiments evaluate the portability, message travelling latency improvement and bandwidth optimization. The results of those experiments prove the advantages of the n-Screen Application Framework (NSAF) both in portability that allows deployment on multiple devices from different manufacturers and performance improvement (both in latency and bandwidth consumption) while comparing with traditional data dissemination scenarios.
n-screens, restful, web services, websocket, mvc, model-view-controller, distributed, publish/subscribe, server push, framework
Master of Science (M.Sc.)