Presentation on theme: "Android around the clock Authors: Lior Narkis Maxim Chepurnyak Supervisor: Ittay Eyal."— Presentation transcript:
Android around the clock Authors: Lior Narkis Maxim Chepurnyak Supervisor: Ittay Eyal
Agenda Motivation Project Goals CTP algorithm Application top-level Main modules overview Clock synchronization Membership Playback command dispatch Media Player control GUI Design environment Milestones
Motivation Android based smart-phones are very common nowadays. These phones are used by many also as a media device. We want to let a group of two or more of these phones, play the same song at the same time. The playback can be controlled by any of group member.
Project goals Creating a distributed Android application which will play a song on different devices all together. The application will manage the group membership by supporting joining and leaving. The application will keep all the group members clocks synchronized to each other. The application will ensure global ordering of users’ commands.
Classless Time Protocol A network clock synchronization protocol Based on Omer Gurewitz’s work published in IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 14, NO. 4, AUGUST 2006 Improvement to NTP
Application top-level The diagram is neither complete nor final
Clock synchronization module Implements CTP. Provides a synchronized clock for other modules. Provides a level of confidence parameter indicating the CTP quality.
Membership module Maintaining a list of active members(“alive” messages). Support joining and leaving(avoiding partitions and livelocks). Provides the members list to the rest of the modules.
Playback command dispatch (PCD) module Broadcasts commands list sent by the MPC to all group members(including itself). Delivers commands list to the MPC if no later commands list was delivered before.
Media player control (MPC) module Drives the Android media player. Receives commands from the GUI and sends those to the PCD. Receives commands lists delivered by the PCD. Processing the commands list.
GUI module Simple. Provides joining and leaving a group. Provides basic playback operations.
Design Environment The following tools/packages will be used: Eclipse JRE 7+ JDK 1.7+ Android SDK tools for eclipse Paradigm UML plugin for eclipse – community edition The project will be written in Java, using Android libraries, and will be checked on the Android emulator and real Android smart- phones.