VPresent Collaborative Presentation System on Mobile Devices.

Slides:



Advertisements
Similar presentations
Summary Cache: A Scalable Wide-Area Web Cache Sharing Protocol Li Fan, Pei Cao and Jussara Almeida University of Wisconsin-Madison Andrei Broder Compaq/DEC.
Advertisements

ARP Cache Poisoning How the outdated Address Resolution Protocol can be easily abused to carry out a Man In The Middle attack across an entire network.
MicroCast: Cooperative Video Streaming on Smartphones Lorenzo Keller, Anh Le, Blerim Cic, Hulya Seferoglu LIDS, Christina Fragouli, Athina Markopoulou.
THINCing Together: Multi-User Collaborative Support with THINC Dave Coulthart, Sudip Das, and Leo Kim Computer Science Department Columbia University,
28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities.
Skills: none Concepts: host, TCP/IP communication software, TCP/IP layers, TCP/IP functions, TCP/IP protocols This work is licensed under a Creative Commons.
Technical Architectures
© 2009 Research In Motion Limited Advanced Java Application Development for the BlackBerry Smartphone Trainer name Date.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
1 Introducing Collaboration to Single User Applications A Survey and Analysis of Recent Work by Brian Cornell For Collaborative Systems Fall 2006.
Incremental Network Programming for Wireless Sensors NEST Retreat June 3 rd, 2004 Jaein Jeong UC Berkeley, EECS Introduction Background – Mechanisms of.
Distributed Database Management Systems
Portable Image File Viewer ENEE 408G: Multimedia Signal Processing Seun Fabayo John Glancy Gordon Krauthamer.
CHA1 Mobile Commerce Digital Meeting Support System Presented by Hung Lau Yung, Simon Ip Tak Shun, Alan Siu Po Wa Power Advised by Prof. Samuel T. Chanson.
Computer Science 162 Section 1 CS162 Teaching Staff.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
Chapter 7: Client/Server Computing Business Data Communications, 5e.
CS-3013 & CS-502, Summer 2006 Network Input & Output1 CS-3013 & CS-502, Summer 2006.
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
Distributed Systems: Client/Server Computing
File Systems (2). Readings r Silbershatz et al: 11.8.
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
Chapter 1 Introduction Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
Baiboard Ask3 Nearpod. Kimberly Boyd Kay Cole Edmodo Group Code: ib9yk2.
Data Communications and Networks
By: Joel Rodriguez.  International student from Mexico  Delicias, Chihuahua Mexico  Spanish  Sports and Music.
Netwrok and the internet Part two Introduction to computer, 2nd semester, 2009/2010 Mr.Nael Aburas Faculty of Information.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
BASS Application Sharing System Omer Boyaci September 10,
The 2000 Decennial Census School District Project: Using Census Data for the School District Mapping System **** Development and Implementation Tai A.
Week 5 Lecture Distributed Database Management Systems Samuel ConnSamuel Conn, Asst Professor Suggestions for using the Lecture Slides.
1 TCP/IP Internetting ä Subnet layer ä Links stations on same subnet ä Often IEEE LAN standards ä PPP for telephone connections ä TCP/IP specifies.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Hybrid Cellular-Ad hoc Data Network Shuai Zhang, Ziwen Zhang, Jikai Yin.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Network Layer4-1 The Internet Network layer forwarding table Host, router network layer functions: Routing protocols path selection RIP, OSPF, BGP IP protocol.
Real-Time Cyber Physical Systems Application on MobilityFirst Winlab Summer Internship 2015 Karthikeyan Ganesan, Wuyang Zhang, Zihong Zheng Shantanu Ghosh,
1 Client-Server Interaction. 2 Functionality Transport layer and layers below –Basic communication –Reliability Application layer –Abstractions Files.
 Architectural overview  Main APIs. getGames.php getGroupsLocations.php getGroupsScores.php getMessage.php getStreet.php getTime.php login.php sendMessage.php.
Unit 9: Distributing Computing & Networking Kaplan University 1.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
C3 confidentiality classificationIntegrated M2M Terminals Introduction Vodafone MachineLink 3G v1.0 1 Vodafone MachineLink 3G Connect on demand Feature.
Overview All Partners Access Network Pacific Warfighting Center US Pacific Command Alex Conway.
ANDROID AND MODEL / VIEW / CONTROLLER. Slide 2 Design Patters Common solutions to programming problems are called design patterns Design patterns are.
FriendFinder Location-aware social networking on mobile phones.
TAXII SC Call Agenda Administrivia Month Behind Discussion Month Ahead.
ISecurity End of Semester Presentation November 29, 2012.
TURN Jonathan Rosenberg Cisco Systems. Changes since last version Moved to behave terminology Many things moved into STUN –Basic request/response formation.
Alex Chee Daniel LaBare Mike Oster John Spann Bryan Unbangluang Collaborative Document Sharing In Conjunction With.
Web Services An Introduction Copyright © Curt Hill.
File Transfer And Access (FTP, TFTP, NFS). Remote File Access, Transfer and Storage Networks For different goals variety of approaches to remote file.
The Claromentis Digital Workplace An Introduction
Multimedia Retrieval Architecture Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia Retrieval Architecture.
Alex Chee Daniel LaBare Mike Oster John Spann Bryan Unbangluang Collaborative Document Sharing In Conjunction With.
Information Systems Design and Development Technical Implications (Software) Computing Science.
Wireless Mesh Networking or Peer to Peer Technology Andre Lukito – Johnsonsu – Wednesday, 9.
Technology Requirements for Online Testing Training Module Copyright © 2014 American Institutes for Research. All rights reserved.
Redmond Protocols Plugfest 2016 Andrew Davidoff Exchange 2016 Protocol Overview Senior Software Engineer.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
Business System Development
Information Technology Deanship
Peer-to-peer networking
Chapter 3: Windows7 Part 4.
DUCKS – Distributed User-mode Chirp-Knowledgeable Server
Systems Analysis and Design in a Changing World, 6th Edition
Presentation transcript:

vPresent Collaborative Presentation System on Mobile Devices

Introduction

Presentation … (1) Is to show or explain content of a topic to audience (From Wikipedia) Used in many aspects Educational Business Analyze existing presentation … Based on existing presentation systems

Presentation … (2) Content Slides-based Apple Keynote / Microsoft PowerPoint Alternative Prezi – Zoom-in and out of whole picture

Presentation … (3) Style Single Presenter oriented Few Viewer involvement Ask question Voting Device Single machine connected to external monitor

Problem ? Presenter Dominance Difficult for Passing Control For multiple presenter Few Viewer Involvement Just listening Posting question and voting … But still limited

Objective Prevent Single Presenter Dominance Optimize for Multiple Presenters Allow Viewers Join and Contribute Vague Boundary between Presenters and Viewers

Agenda Introduction Collaborative Presentation System Design and Implementation Conclusion Future Development

Collaborative Presentation … Make the Difference

Main Idea Allow more people to contribute presentation content Contribute by Presenters Seamless Presentation Contribute by Viewers Viewers Involvement

Terminologies Group of People Moderator Presenter Viewer Mechanism Seamless Presentation Viewers Involvement

Moderator One in a presentation Controlling and Monitoring Presentation Handling requests by presenters and viewers Device connected to External Monitor Sometime can be a Presenter

Presenters Presentation with own slides In their own device Active Presenter Presenting Presenter Inactive Presenter Not presenting Act as viewers

Viewers Not bring any content to present Contribute to presentation Request for interrupt presentation

Viewers Involvement Request of Presentation Control Keep in the slide Drawing Present his comment and opinion Communicate between presenter and viewer

Presenters Collaboration – Seamless Presentation No physical action needed for passing control Using own device for presentation Own device screen synchronize to external monitor Connected Moderator Moderator Connect to External Monitor

Deployment Scenario ScenarioPresenters GroupViewers Group Business MeetingSmall / MediumNone / Small LectureSmall / IndividualMedium ConferenceSmallLarge ………

Implementation Platform iOS and iPad With enough equipments and APIs Why not Android? External Display support from Android 4.2 (Jelly Bean)

Design and Implementation

System Structure

Drawing Pad Drawing Arbitrary Path on Screen Consider as multiple points Join points together Further improvement: Using Set for storage Synchronize to External Screen (via Moderator)

External Monitor (1) – Overview For Moderator Connecting to External Screen Showing Slides

External Monitor (2) – Fitting to External Monitor Resolution of iPad and External Monitor is different Need to Resize and Scale

External Monitor (3) – View Synchronization Maintaining two view objects Device View External View Copying of View Object When adding into subview Messaging to Two Views Mapping point coordinates from device to external monitor

External Monitor (4) – View Synchronization Perform Action Copying a View

Network and Messaging – Introduction Important for Inter-Device Communication Main Idea – Client-Server Model All Data sent / get from Moderator All Requests Send and Forwarded by Moderator

Network and Messaging – Connection (1) Based on Internet Protocol Currently using TCP Transport layer alternative: UDP Performance Boost Wireless Connection

Network and Messaging – Connection (2) Wireless Connection Wi-Fi and Wi-Fi Access Point Local Area Network or Internet LAN for easy deployment and control Optional back end server Avoid moderator bottleneck

Network and Messaging – Protocol (1) Understand by both sides Easy to Manage Partitioning Presenter Partitioning Message Type Easy to encode and decode Minimize Traffic

Network and Messaging – Protocol (2) Request-Response Respond when foreign (server) finish action Receive Success or Failure Response Echo Mechanism SSH-liked Ensure Synchronization Used in Drawing Pad

Slides Import Import files via iTunes Common in iOS apps Sandbox Isolate data from other apps Limited Permission Slides Format Currently support image files PNG JPG Together with index file

Conclusion

Conclusion of Presentation Presentation … as starting point Collaborative Presentation Seamless Presentation Viewers Involvement Software Design and Implementation Some Issue Mentioned

Progress in Summer and Fall 2012 Implemented two Prototypes Moderator and Presenter Subset of Functions Arbitrary Path Drawing External Monitor Network and Synchronization File Import and Read/Write Knowledge and Soft Skills iOS and Objective-C Programming UIKit and NextStep API Experiencing Software Development User Experience and Interface Design

Future Development … What’s next ?

Functionality Recording Drawing Pad Support more shapes Undo and Redo Save the Drawing More presentation style Multimedia Viewer Implementation

Performance Optimization Adopting UDP for some network message Points Drawing Avoid TCP overhead Drawing Pad Try of OpenGL ES Supported by GPU of iPad (and other devices) Optimizing Mechanism

Q & A Feel Free to Try our apps =]

Network and Messaging – Issue Moderator become bottleneck Alternative Peer-to-Peer with Tracker Difficult to Control Lack Verification of Data Solution: Back-end server Moderator also get data from the server Only needed when Scale is large

Network and Messaging – Protocol (3) Echo Mechanism Similar for SSH command line Update local view until server echo (processed) message Ensure synchronization between presenter and moderator Used in Drawing Pad