Community Driven Adaptation Iqbal Mohomed Eyal de Lara Department of Computer Science University of Toronto.

Slides:



Advertisements
Similar presentations
Content Interaction and Formatting, Tayeb LEMLOUMA & Nabil Layaïda. November Tayeb Lemlouma & Nabil Layaïda Presented by Sébastien Laborie November.
Advertisements

Correlation-Based Content Adaptation For Mobile Web Browsing Iqbal Mohomed, Adin Scannell, Nilton Bila, Jin Zhang, Eyal de Lara Department of Computer.
Operating System Customization
Make your choice from more than 70 templates to get a quick start online!70 templates.
Mobile Web Interaction on Embedded Devices Jeremy Luchau CSE 237A.
Content  Overview of Computer Networks (Wireless and Wired)  IP Address, MAC Address and Workgroups  LAN Setup and Creating Workgroup  Concept on.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
1: Operating Systems Overview
Reducing the Energy Usage of Office Applications Jason Flinn M. Satyanarayanan Carnegie Mellon University Eyal de Lara Dan S. Wallach Willy Zwaenepoel.
IS4401 Project Technology Issues. Introduction This seminar covers Databases When to use a Database What Database to use Development Tools Visual Studio.
Web Fundamentals Training Series All About the Web.
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Differentiated Multimedia Web Services Using Quality Aware Transcoding S. Chandra, C.Schlatter Ellis and A.Vahdat InfoCom 2000, IEEE Journal on Selected.
July 1998Thane Terrill Using the Web Thane B. Terrill Summer 1998.
Web Clipping Presentation By: Alex Jacobs, Philip Kim, Nathan Po Web Clipping.
ECDL 2002 Employing Smart Browsers to Support Flexible Information Presentation in Petri net-based Digital Libraries Unmil P. Karadkar, Richard Furuta.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
Knowledge Portals and Knowledge Management Tools
Maintaining and Updating Windows Server 2008
The Internet & The World Wide Web Notes
CHAPTER 2 Input & Output Prepared by: Mrs.sara salih 1.
UNDERSTANDING WEB AND WEB PROJECT PLANNING AND DESIGNING AND EFFECTIVE WEBSITE Garni Dadaian.
DC Chp 1 Jeopardy Review Section 1Section 2Section 3Section 4Section
CHAPTER 2 Communications, Networks, the Internet, and the World Wide Web.
Introduction to HP LoadRunner Getting Familiar with LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Performance of Web Applications Introduction One of the success-critical quality characteristics of Web applications is system performance. What.
Internet Basics Dr. Norm Friesen June 22, Questions What is the Internet? What is the Web? How are they different? How do they work? How do they.
1 SWE 513: Software Engineering Usability II. 2 Usability and Cost Good usability may be expensive in hardware or special software development User interface.
Introduction To Computer System
1 Chapter 2 & Chapter 4 §Browsers. 2 Terms §Software §Program §Application.
Chapter 2 Developing a Web Page. Chapter 2 Lessons Introduction 1.Create head content and set page properties 2.Create, import, and format text 3.Add.
Multimedia Brief overview of capabilities and trends Future perspectives Basic hardware and software requirements and costs.
The ID process Identifying needs and establishing requirements Developing alternative designs that meet those requirements Building interactive versions.
Customer Service and Support Sutherland Global Services Consultant Learning Services Microsoft Store.
Copyright 2012 Adobe Systems Incorporated. All rights reserved. ® Copyright 2010 Adobe Systems Incorporated. All rights reserved. ® Copyright 2012 Adobe.
Community-Driven Adaptation Iqbal Mohomed Department of Computer Science University of Toronto.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Context-Aware Interactive Content Adaptation Iqbal Mohomed, Jim Cai, Sina Chavoshi, Eyal de Lara Department of Computer Science University of Toronto MobiSys2006.
CHAPTER TEN AUTHORING.
Fine-Grain Adaptation Using Context Information Iqbal Mohomed Department of Computer Science University of Toronto Advisor: Prof. Eyal de Lara HotMobile.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Community-Driven Adaptation Iqbal Mohomed Department of Computer Science University of Toronto.
Log files presented to : Sir Adnan presented by: SHAH RUKH.
Chapter 12: Web Usage Mining - An introduction Chapter written by Bamshad Mobasher Many slides are from a tutorial given by B. Berendt, B. Mobasher, M.
Designing web pages for handheld mobile devices Improving the client experience.
Using the Right Method to Collect Information IW233 Amanda Murphy.
Stuff By Zach and Turtle To designate a default printer, choose Start > Control Panel > Printers and Faxes. Right-click the printer, and then.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
INTRODUCTION TO CSS. TOPICS TO BE DISCUSSED……….  Introduction Introduction  Features of CSS Features of CSS  Creating Style Sheet Creating Style Sheet.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
Web Systems & Technologies Lecture 1
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 12 Usability 2.
Introduction. Internet Worldwide collection of computers and computer networks that link people to businesses, governmental agencies, educational institutions,
WHAT'S THE DIFFERENCE BETWEEN A WEB APPLICATION STREAMING NETWORK AND A CDN? INSTART LOGIC.
E-Business Infrastructure PRESENTED BY IKA NOVITA DEWI, MCS.
Web fundamentals: Clients, Servers, and Communication
Chapter 10 Multimedia and the Web.
Discovering Computers 2010: Living in a Digital World Chapter 14
WWW and HTTP King Fahd University of Petroleum & Minerals
E-commerce | WWW World Wide Web - Concepts
E-commerce | WWW World Wide Web - Concepts
Chapter 12: Automated data collection methods
Efficient and Transparent Dynamic Content Updates for Mobile Clients
Lesson 9: GUI HTML Editors and Mobile Web Sites
Presentation transcript:

Community Driven Adaptation Iqbal Mohomed Eyal de Lara Department of Computer Science University of Toronto

Challenge of Variety Plethora of client devices access content on the World Wide Web Trend is growing faster! Majority of web pages are still developed for the typical user = Desktop Computing Environment No power constraint Abundant primary/secondary storage Large screen with high color depth Fast processor, etc. Modem-speed or high-speed Internet access Input via Keyboard/ Mouse

Mobile Device Differences Network Connectivity - Intermittent connectivity - Low bandwidth, high latency for some but not for others (e.g. CDPD: 12kbps vs b: 11Mbps) Energy limitations Form Factor –Screen Size –Color Depth I/O Interface –Numeric keypad –Mini-keyboard –Pen

Adaptation Content that is changed or changes so as to become suitable to a new or special application or situation Goal is to save resources and/or improve usability Use of software transcoder to modify fidelity of data objects … and hence resource footprint

Important Considerations Where is it done? When to do it? How much? Who chooses?

Server Adaptation Publishers develop and make available content for several classes of devices Disadvantages: –Burden/Cost imposed on all Content Publishers –Continuous effort to support new types of devices –Difficult to maintain synchronization of various formats under heavy utilization –You can never cover all possible versions!

Proxy Based Adaptation Proxies are heavily utilized in current architecture of WWW Rather than just serving cached content, the adaptation proxy can provide content at different fidelities Transcoding –Can be done at the outset or on the fly –Can be done at the Server or Proxy

Proxy in the Middle

Advantages of Having a Proxy Server does not have to keep track of preferences and other information pertaining to individual users Can place transcoder at proxy to dynamically generate content at fidelities that differ from the original (e.g. black and white, grayscale, 8-bit color and so on for a 32-bit color image)

Who Decides how much to adapt? Server –Server takes information about the user –Provides its best guess on which version of the requested content would be optimal Client –Client/ Agent is told about all types of available content –He/she/it picks the fidelity it wants Proxy –Effectively a combination of the two approaches –Proxy has information about the user –It is provided with a list of all available content versions –Proxy picks the best one to provide the user

Adaptation is tricky How much adaptation should be performed on object? Too much adaptation: –User inconvenienced by frequent explicit interaction –Unusable data is transferred … which wastes resources memory bandwidth time Too little adaptation: –More data than optimally required by user is transferred –Wastes resources again Related to the “Whose decides?” question

Community Driven Adaptation Classify the user into one of many communities Serve content at fidelities which have been deemed appropriate by other members of that community in the past Utilize a community-driven process to determine the optimal fidelity for objects!

Hypothesis Data which is accessed in the past is likely to be accessed again Users share preferences, and thus optimal fidelity, along with other members of a user community

What’s the catch, eh? When no information is available for an object, the proxy makes an educated guess to serve the first user Based on feedback received from the initial users, the proxy modifies the fidelity at which the object is served to future users Share the Pain and Spread the Benefit!

An Example Let a be a community of users {a1,a2,…an} Person a1 accesses page A Proxy serves content at a fidelity it “guesses” to be appropriate If a1 is not satisfied with fidelity, feedback can be provided for real-time refinement Proxy incorporates any feedback received from a1 when choosing the fidelity to serve page A for any member of the a community

The End Result Users who access site initially have to bear “pain” of having to provide feedback Users who come later, reap “benefit” Same user unlikely to always be first to access a site Providing feedback is –Natural … occurs in the course of performing task –Easy … integrated into browser –Optional …no forced user’s interaction

Advantages of our Approach User is not burdened with making too many choices on a frequent basis Preferences do not have to be explicitly transmitted to the proxy … extrapolated through natural feedback to the system With a transcoder installed on the proxy, server does not have to maintain multiple versions of content Given a reasonable set of installed transcoders, system automatically extends to future devices of any characteristics

Research Questions How do we classify users into communities and how does this classification change over time? How closely can history of user accesses be used to track fidelity preferences in the future? (Based on community, how good is prediction) At what granularity should user accesses be tracked? (e.g. object, page, site, etc.) User Interface Usability

Research Direction Focusing on Pragmatic Issues System operates in world of imperfect information Adaptation has the potential of changing user behaviour User Study is a significant component of this research

Goal of Experimentation Design an effective user study that provides realistic data which we will analyze to define and refine system behaviour

User Study Simple Proxy –Serves content at lowest fidelity unless an improvement is requested Extended Browser –Allow user to request improvements The Proxy and Browser trace all user actions

User Study (contd … 1) This experimental setup for the study allows us to determine the minimum fidelity that satisfies a user. Since the goal is to save resources, this turns out to be the optimal fidelity for an object. The traces from this initial study will be mined to discover the efficacy of various heuristics that may be employed by the proxy

User Study (contd … 2) Initial Study focuses on fidelity optimization of image objects Easy to gauge for users Extensive transcoder support for Progressive JPEG images Good Browser support for regular JPEG images Can be extrapolated to other forms of media –Sound –Video –Text

User Interface Considerations Feedback process must be –Simple –Non-disruptive Some Good Candidates: –Mouse over an image –Right click menu options –Right click menu options under a Fidelity category

Browser Extensions We have extended MS Internet Explorer to allow our own code to execute [1] … whenever the user right-clicks on an image, they are allowed to request improvement to the fidelity of that image Same thing can be done with Mozzila and some other advanced browsers

Environment Control Network bandwidth and latency Time limit … simulating energy Screen size

Thoughts for Tasks We have the user carry out simple tasks 1) Freeform browsing … e.g. check out websites about Avril Lavine. 2) Browsing for specific information … e.g. Find states that border Georgia, USA. 3) Making an e-commerce transaction … e.g. buy a book from Amazon.ca. 4) Browse for routine information … e.g. What price did Nortel close today? 

Well Designed Tasks Too much detail in specification is bad Have several instances of each type of task –User learns and might perform better/worse over course of experiment –Randomize order of tasks

Data that we will keep track of Pages navigated by user –Actual Content of Page –Time Spent on Page Time breakdown on a per-task basis Any operations canceled by user

And Then … Data Crunching!

References 1.“Component-Based Adaptation” by Eyal de Lara, Yogesh Chopra, Rajnish Kumar, Nilesh Vaghela, Dan S. Wallach, and Willy Zwaenepoel 2."Resource-Aware Speculative Prefetching in Wireless Networks" by N. J. Tuah, M. Kumar, and S. Venkatesh

Questions/ Comments Thank you for your time