SlideShare a Scribd company logo
WebQuilt
Capturing and Visualizing the Web Experience
Jason I. Hong
James A. Landay
Group for User Interface Research
EECS Department
University of California at Berkeley
World Wide Web 10
May 04 2001 2
Motivation
• Many websites have usability problems
­ 62% web shoppers gave up past month (Spool)
­ 39% failed in buying attempts (Creative Good)
• Two problems all web designers face
­ Understanding users' tasks
­ Understanding obstacles in completing tasks
• Many methods for understanding tasks
­ E.g. interviews, ethnographic observations,
surveys, focus groups
• Focus here is on understanding obstacles
May 04 2001 3
Understanding Obstacles Today
• Traditional usability tests
Extremely useful qualitative information
Lots of time, small websites, few people, local
• Server­side logging
Easy to collect, remote testing, lots of tools
Restricted access, little on tasks and problems
• Client­side logging
Can track everything, remote testing
Installation, platform­dependent, analysis tools
May 04 2001 4
Streamlining Current Practices
• Fast and easy to deploy on any website
• Compatible with range of OS and browsers
• Better tools for analyzing the data
May 04 2001 5
WebQuilt Approach
• Fast and easy to deploy on any website
• Compatible with range of OS and browsers
• Better tools for analyzing the data
Client Browser Web Server
Request
Response
May 04 2001 6
WebQuilt Approach
• Fast and easy to deploy on any website
• Compatible with range of OS and browsers
• Better tools for analyzing the data
WebQuilt
Log
ProxyClient Browser Web Server
May 04 2001 7
WebQuilt Approach
• Fast and easy to deploy on any website
• Compatible with range of OS and browsers
• Better tools for analyzing the data
May 04 2001 8
WebQuilt Usage
• Setup several tasks, recruit 20–100 people
• Email participants a URL that uses the proxy
• Ask them to complete the predefined tasks
• Collect lots of remote (or local) data
• Aggregate, view, and interact with data
• Find problems, fix, repeat
Evaluate
Design
Prototype
May 04 2001 9
Outline
Background and Motivation
 WebQuilt Architecture
 Usage Experience and Visualizations
 Summary and Future Work
May 04 2001 10
Overall Architecture
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
Log Files
Online
Offline
May 04 2001 11
Proxy
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
• Lies between browser and server
http://domain.com/webquilt?
replace=http://www.yahoo.com
• One log file per user session
• Currently use Java servlets
­ Important part is log file format
May 04 2001 12
Time
(ms)
From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
URL + Query
6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com
11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html
31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal
og.cgi
68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features
/phish
Log File Format
May 04 2001 13
Time From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
URL + Query
6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com
11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html
31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal
og.cgi
68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features
/phish
Time From
TID
To
TID
Parent
ID
HTTP
Response
6062 0 1 ­1 200
(ms)
Log File Format
May 04 2001 14
Time
(ms)
From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
URL + Query
6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com
11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html
31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal
og.cgi
68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features
/phish
Frame
ID
Link
ID
HTTP
Method
URL + Query
­1 ­1 GET http://www.google.com
Log File Format
May 04 2001 15
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Store
The Proxy at Runtime
May 04 2001 16
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
1. Process Client Request
Store
The Proxy at Runtime
May 04 2001 17
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
2. Retrieve Requested Document
Store
The Proxy at Runtime
May 04 2001 18
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
3. Process and return the page
Store
The Proxy at Runtime
May 04 2001 19
Start with:
<A HREF="computers.html">
End up with:
<A HREF="http://tasmania.cs.berkeley.edu/webquilt?
replace=http://www.yahoo.com/computers.html
&tid=1&linkid=12">
The Proxy at Runtime
May 04 2001 20
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
Client Browser Web ServerWebQuilt Proxy
Proxy Editor
Cached Pages WebQuilt Logs
WebProxy Servlet
1 2
3
4 5 HTTPClient
Package
4. Store the page 5. Log the transaction
Store
The Proxy at Runtime
May 04 2001 21
Additional Proxy Functionality
• Handling Cookies
­ Cookies only sent from browser back
to web server that put it there
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
User ID Domain Cookie
AAA yahoo.com xyzzy
AAA google.com asdfg
BBB yahoo.com abcde
May 04 2001 22
Additional Proxy Functionality
• Handling Cookies
­ Cookies only sent from browser back
to web server that put it there
• Handling Secure Socket Layer
­ Encrypts page requests and data
­ E.g. Shopping Carts, Financials
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
Client Browser Web Server
SSL
May 04 2001 23
Additional Proxy Functionality
• Handling Cookies
­ Cookies only sent from browser back
to web server that put it there
• Handling Secure Socket Layer
­ Encrypts page requests and data
­ E.g. Shopping Carts, Financials
­ Split into two SSL requests
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
ProxyClient Browser Web Server
SSL SSL
May 04 2001 24
Action Inferencer
• Takes a single log file and converts
into a list of actions
­ "Clicked on link" or "Hit back button"
• Inference because still must guess
­ Back and forward actions local
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
May 04 2001 25
Time From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
URL + Query
6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com
11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html
31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal
og.cgi
68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features
/phish
Re­Assembling User Actions
May 04 2001 26
From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
0 1 ­1 200 ­1 ­1 GET
2 ­1 200 ­1 ­1 GET
3 ­1 200 ­1 1 GET
4 ­1 200 ­1 2 GET
5 ­1 200 ­1 15 GET
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
Time
6062
11191
167525
31043
68772
1
2
3
2
1
2
3
4
5
Re­Assembling User Actions
May 04 2001 27
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Re­Assembling User Actions
May 04 2001 28
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Start 1
Re­Assembling User Actions
May 04 2001 29
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Start 1 2
Re­Assembling User Actions
May 04 2001 30
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Start 1 2 3
Re­Assembling User Actions
May 04 2001 31
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Start 1 2 3 4
Re­Assembling User Actions
May 04 2001 32
From
TID
To
TID
0 1
2 3
3 4
2 5
URL + Query
http://www.google.com
http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
http://www.phish.com/bios.html
https://www.phish.com/bin/catal
og.cgi
http://www.emusic.com/features
/phish
1
2
3
4
5
1
2
3
2
Start 1 2 3 4
5
Re­Assembling User Actions
May 04 2001 33
Start 1 2 3 4
5
Action Inferencer
May 04 2001 34
1 2 3 4 3 2Start 5
Start 1 2 3 4
5
Case 1
Link Back Link
Action Inferencer
May 04 2001 35
Start 1 2 3 4
5
1 2 3 4 3 2Start 1 2 5
Case 2
Link Back LinkFwd
Action Inferencer
May 04 2001 36
1 2 3 4 3 2Start 5
Start 1 2 3 4
5
Case 1 by default
(shortest path)
Action Inferencer
May 04 2001 37
Merger
• Combines multiple log files into a
single directed graph
­ Web pages are nodes
­ Actions are edges
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
May 04 2001 38
Graph Layout
• Assign (x,y) to all nodes
• Force­directed placement
­ Keep connected nodes close
­ Push unconnected nodes far apart
• Edge­weighted depth­first
­ Most traffic along top
­ Less followed paths below
­ Grid to help organize and align
• Plug­in new algorithms here
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
May 04 2001 39
Visualization
Proxy
Logger
Graph
Layout
Viz
Graph
Merger
Action
Inferencer
May 04 2001 40
May 04 2001 41
May 04 2001 42
May 04 2001 43
May 04 2001 44
May 04 2001 45
May 04 2001 46
May 04 2001 47
May 04 2001 48
May 04 2001 49
Future Work
• More sophisticated logging
­ Lower level events (e.g. AT&T WET)
­ Personalized web pages
• More sophisticated visualizations
­ More use of semantic zooming
­ Dynamic filtering
• Continue getting feedback from designers
­ Initiated interviews with web designers
­ Still need to do evaluations
May 04 2001 50
Take Home Ideas
• Need more tools for improving web site
usability
• Proxy logging
­ Logging where task is already known
­ Any website, any browser, remote testing
• Visualizing logged data
­ Aggregates large data sets
­ Interact with in a zooming interface
• Pluggable architecture
May 04 2001 51
Acknowlegements
• Special thanks to Jeff Heer, Tim Sohn,
and Sarah Waterson
Group for User Interface Research
EECS Department
University of California at Berkeley
Download WebQuilt at:
http://guir.berkeley.edu/webquilt
May 04 2001 52
Extra Slides
May 04 2001 53
Berkeley Website A
May 04 2001 54
May 04 2001 55
May 04 2001 56
May 04 2001 57
May 04 2001 58
May 04 2001 59
Casa de Fruta A
May 04 2001 60
May 04 2001 61
May 04 2001 62
May 04 2001 63
Casa de Fruta B
May 04 2001 64
May 04 2001 65
May 04 2001 66
May 04 2001 67
May 04 2001 68
Time From
TID
To
TID
Parent
ID
HTTP
Response
Fram
e ID
Link
ID
HTTP
Method
URL + Query
6062 0 1 -1 200 -1 -1 GET http://www.google.com
11191 1 2 -1 200 -1 -1 GET http://www.phish.com/index.htm
q=Phish&btnI=I
%27m+Feeling+Lucky
167525 2 3 -1 200 -1 1 GET http://www.phish.com/bios.html
31043 3 4 -1 200 -1 2 GET https://www.phish.com/bin/catal
og.cgi
68772 2 5 -1 200 -1 15 GET http://www.emusic.com/features
/phish
Log File Format
May 04 2001 69
In Case You're Feeling Evil…
• URLs can be of the form:
http://userid@domain/page.html
• Most web servers ignore the userid part, but…
http://www.yahoo.com@tasmania.cs…/…
• Can auto-track people's actions once they hit your
page without their knowledge or consent

More Related Content

What's hot

A Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowA Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to Know
Fishbowl Solutions
 
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection BoundarySPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
Jonathan Ralton
 
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike WatsonSharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
Joel Oleson
 
No Data Left Behind: A SharePoint 2013 Migration
No Data Left Behind: A SharePoint 2013 MigrationNo Data Left Behind: A SharePoint 2013 Migration
No Data Left Behind: A SharePoint 2013 Migration
Holly Plude
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
John Calvert
 
Integrating the Google Search Appliance with a WebCenter or Liferay Portal
Integrating the Google Search Appliance with a WebCenter or Liferay PortalIntegrating the Google Search Appliance with a WebCenter or Liferay Portal
Integrating the Google Search Appliance with a WebCenter or Liferay Portal
Fishbowl Solutions
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)
K.Mohamed Faizal
 
Deploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePointDeploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePoint
Denny Lee
 
Integrate External Data With The Business Data Catalog
Integrate External Data With The Business Data CatalogIntegrate External Data With The Business Data Catalog
Integrate External Data With The Business Data Catalog
Tom Resing
 
GSA Connector 3.0 Webinar - June 2013
GSA Connector 3.0 Webinar - June 2013GSA Connector 3.0 Webinar - June 2013
GSA Connector 3.0 Webinar - June 2013
Fishbowl Solutions
 
GSA Webinar - June 2, 2011
GSA Webinar - June 2, 2011GSA Webinar - June 2, 2011
GSA Webinar - June 2, 2011
Fishbowl Solutions
 
The Path through SharePoint Migrations
The Path through SharePoint MigrationsThe Path through SharePoint Migrations
The Path through SharePoint Migrations
Brian Caauwe
 
Advanced SharePoint Web Part Development
Advanced SharePoint Web Part DevelopmentAdvanced SharePoint Web Part Development
Advanced SharePoint Web Part Development
Rob Windsor
 
Data sources in share point 2010
Data sources in share point 2010Data sources in share point 2010
Data sources in share point 2010Kathy Hughes
 
Sps boston 2014_o365_power_shell_csom_amitv
Sps boston 2014_o365_power_shell_csom_amitvSps boston 2014_o365_power_shell_csom_amitv
Sps boston 2014_o365_power_shell_csom_amitv
amitvasu
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchRob Windsor
 
Share point 2010
Share point 2010Share point 2010
Share point 2010
Saurabh Parikh
 
SharePoint 2010 Application Development Overview
SharePoint 2010 Application Development OverviewSharePoint 2010 Application Development Overview
SharePoint 2010 Application Development OverviewRob Windsor
 
Peter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer WorkflowsPeter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer Workflows
SharePoint Saturday NY
 
A Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
A Real World Guide to Building Highly Available Fault Tolerant SharePoint FarmsA Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
A Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
Eric Shupps
 

What's hot (20)

A Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowA Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to Know
 
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection BoundarySPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
SPSNYC17 - The Wall: Overcoming SharePoint’s Site Collection Boundary
 
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike WatsonSharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
 
No Data Left Behind: A SharePoint 2013 Migration
No Data Left Behind: A SharePoint 2013 MigrationNo Data Left Behind: A SharePoint 2013 Migration
No Data Left Behind: A SharePoint 2013 Migration
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
 
Integrating the Google Search Appliance with a WebCenter or Liferay Portal
Integrating the Google Search Appliance with a WebCenter or Liferay PortalIntegrating the Google Search Appliance with a WebCenter or Liferay Portal
Integrating the Google Search Appliance with a WebCenter or Liferay Portal
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)
 
Deploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePointDeploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePoint
 
Integrate External Data With The Business Data Catalog
Integrate External Data With The Business Data CatalogIntegrate External Data With The Business Data Catalog
Integrate External Data With The Business Data Catalog
 
GSA Connector 3.0 Webinar - June 2013
GSA Connector 3.0 Webinar - June 2013GSA Connector 3.0 Webinar - June 2013
GSA Connector 3.0 Webinar - June 2013
 
GSA Webinar - June 2, 2011
GSA Webinar - June 2, 2011GSA Webinar - June 2, 2011
GSA Webinar - June 2, 2011
 
The Path through SharePoint Migrations
The Path through SharePoint MigrationsThe Path through SharePoint Migrations
The Path through SharePoint Migrations
 
Advanced SharePoint Web Part Development
Advanced SharePoint Web Part DevelopmentAdvanced SharePoint Web Part Development
Advanced SharePoint Web Part Development
 
Data sources in share point 2010
Data sources in share point 2010Data sources in share point 2010
Data sources in share point 2010
 
Sps boston 2014_o365_power_shell_csom_amitv
Sps boston 2014_o365_power_shell_csom_amitvSps boston 2014_o365_power_shell_csom_amitv
Sps boston 2014_o365_power_shell_csom_amitv
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
 
Share point 2010
Share point 2010Share point 2010
Share point 2010
 
SharePoint 2010 Application Development Overview
SharePoint 2010 Application Development OverviewSharePoint 2010 Application Development Overview
SharePoint 2010 Application Development Overview
 
Peter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer WorkflowsPeter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer Workflows
 
A Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
A Real World Guide to Building Highly Available Fault Tolerant SharePoint FarmsA Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
A Real World Guide to Building Highly Available Fault Tolerant SharePoint Farms
 

Viewers also liked

Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
Jason Hong
 
CANTINA: A Content-Based Approach to Detecting Phishing Web Sites, at WWW2007
CANTINA: A Content-Based Approach to  Detecting Phishing Web Sites, at WWW2007CANTINA: A Content-Based Approach to  Detecting Phishing Web Sites, at WWW2007
CANTINA: A Content-Based Approach to Detecting Phishing Web Sites, at WWW2007
Jason Hong
 
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
Jason Hong
 
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
Jason Hong
 
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
Jason Hong
 
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
Jason Hong
 
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
Jason Hong
 
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
Jason Hong
 
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
Jason Hong
 
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007Jason Hong
 
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
Jason Hong
 
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...Jason Hong
 
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
Jason Hong
 
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
Jason Hong
 
Social Cybersecurity , or, A Computer Scientist's View of HCI and Theory, at ...
Social Cybersecurity, or, A Computer Scientist's View of HCI and Theory, at ...Social Cybersecurity, or, A Computer Scientist's View of HCI and Theory, at ...
Social Cybersecurity , or, A Computer Scientist's View of HCI and Theory, at ...
Jason Hong
 
Smartening the Crowd: Computational Techniques for Improving Human Verificati...
Smartening the Crowd: Computational Techniques for Improving Human Verificati...Smartening the Crowd: Computational Techniques for Improving Human Verificati...
Smartening the Crowd: Computational Techniques for Improving Human Verificati...
Jason Hong
 
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
Jason Hong
 
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
Jason Hong
 
The Privacy and Security Behaviors of Smartphone, at USEC 2014
The Privacy and Security Behaviors of Smartphone, at USEC 2014The Privacy and Security Behaviors of Smartphone, at USEC 2014
The Privacy and Security Behaviors of Smartphone, at USEC 2014
Jason Hong
 
How to Analyze the Privacy of 750000 Smartphone Apps
How to Analyze the Privacy of 750000 Smartphone Apps How to Analyze the Privacy of 750000 Smartphone Apps
How to Analyze the Privacy of 750000 Smartphone Apps
Jason Hong
 

Viewers also liked (20)

Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
Toss ‘N’ Turn: Smartphone as Sleep and Sleep Quality Detector, at CHI 2014
 
CANTINA: A Content-Based Approach to Detecting Phishing Web Sites, at WWW2007
CANTINA: A Content-Based Approach to  Detecting Phishing Web Sites, at WWW2007CANTINA: A Content-Based Approach to  Detecting Phishing Web Sites, at WWW2007
CANTINA: A Content-Based Approach to Detecting Phishing Web Sites, at WWW2007
 
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
Applying the Wisdom of Crowds to Usable Privacy and Security, CMU Crowdsourci...
 
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
A Study of Firefighting in the Coming Age of Ubiquitous Computing, 2002
 
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
Privacy Risk Models for Designing Privacy-Sensitive Ubiquitous Computing Syst...
 
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
Rethinking Location Sharing: Exploring the Implications of Social-Driven vs. ...
 
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
A Framework of Energy Efficient Mobile Sensing for Automatic Human State Reco...
 
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
Achieving Behavioral Change, for ISSA 2011 in San Francisco Feb 2011
 
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
Gurungo: Coupling Personal Computers and Mobile Devices Through Mobile Data T...
 
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007
User Interfaces and Algorithms for Fighting Phishing, Cylab Seminar talk 2007
 
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a...
 
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...
Making Sense of Cyberspace, keynote for Software Engineering Institute Cyber ...
 
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
Wave to Me: User Identification Using Body Lengths and Natural Gestures, at C...
 
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
Big Data for Privacy, at NSF Workshop on Big Data and Privacy, April 2015
 
Social Cybersecurity , or, A Computer Scientist's View of HCI and Theory, at ...
Social Cybersecurity, or, A Computer Scientist's View of HCI and Theory, at ...Social Cybersecurity, or, A Computer Scientist's View of HCI and Theory, at ...
Social Cybersecurity , or, A Computer Scientist's View of HCI and Theory, at ...
 
Smartening the Crowd: Computational Techniques for Improving Human Verificati...
Smartening the Crowd: Computational Techniques for Improving Human Verificati...Smartening the Crowd: Computational Techniques for Improving Human Verificati...
Smartening the Crowd: Computational Techniques for Improving Human Verificati...
 
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
Privacy, Ethics, and Big (Smartphone) Data, at Mobisys 2014
 
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
Mining Smartphone Data to Classify Life-Facets of Social Relationships at CSC...
 
The Privacy and Security Behaviors of Smartphone, at USEC 2014
The Privacy and Security Behaviors of Smartphone, at USEC 2014The Privacy and Security Behaviors of Smartphone, at USEC 2014
The Privacy and Security Behaviors of Smartphone, at USEC 2014
 
How to Analyze the Privacy of 750000 Smartphone Apps
How to Analyze the Privacy of 750000 Smartphone Apps How to Analyze the Privacy of 750000 Smartphone Apps
How to Analyze the Privacy of 750000 Smartphone Apps
 

Similar to WebQuilt: Capturing and Visualizing the Web Experience at WWW10

JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at ScaleJUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
C2B2 Consulting
 
Web Performance First Aid
Web Performance First AidWeb Performance First Aid
Web Performance First Aid
Alan Seiden
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performance
Patrick Meenan
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
John McCaffrey
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Perficient, Inc.
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud Developers
Brian Huff
 
SPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst PracticesSPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst Practices
Scott Hoag
 
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
Andreas Grabner
 
Best Practices to SharePoint Architecture Fundamentals NZ & AUS
Best Practices to SharePoint Architecture Fundamentals NZ & AUSBest Practices to SharePoint Architecture Fundamentals NZ & AUS
Best Practices to SharePoint Architecture Fundamentals NZ & AUS
guest7c2e070
 
DockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring DockerDockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring Docker
Docker, Inc.
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
A Look at New Features in DNN 7.3
A Look at New Features in DNN 7.3A Look at New Features in DNN 7.3
A Look at New Features in DNN 7.3DNN
 
SenchaCon Roadshow Irvine 2017
SenchaCon Roadshow Irvine 2017SenchaCon Roadshow Irvine 2017
SenchaCon Roadshow Irvine 2017
Speedment, Inc.
 
Shopzilla - Performance By Design
Shopzilla - Performance By DesignShopzilla - Performance By Design
Shopzilla - Performance By Design
Tim Morrow
 
10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today
Chris Love
 
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Bill England
 
Optimising Web Application Frontend
Optimising Web Application FrontendOptimising Web Application Frontend
Optimising Web Application Frontendtkramar
 
Avtar's ppt
Avtar's pptAvtar's ppt
Avtar's pptmak57
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance Websites
Parham
 
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache TomcatCase Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
VMware Hyperic
 

Similar to WebQuilt: Capturing and Visualizing the Web Experience at WWW10 (20)

JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at ScaleJUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
 
Web Performance First Aid
Web Performance First AidWeb Performance First Aid
Web Performance First Aid
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performance
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud Developers
 
SPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst PracticesSPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst Practices
 
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
 
Best Practices to SharePoint Architecture Fundamentals NZ & AUS
Best Practices to SharePoint Architecture Fundamentals NZ & AUSBest Practices to SharePoint Architecture Fundamentals NZ & AUS
Best Practices to SharePoint Architecture Fundamentals NZ & AUS
 
DockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring DockerDockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring Docker
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
 
A Look at New Features in DNN 7.3
A Look at New Features in DNN 7.3A Look at New Features in DNN 7.3
A Look at New Features in DNN 7.3
 
SenchaCon Roadshow Irvine 2017
SenchaCon Roadshow Irvine 2017SenchaCon Roadshow Irvine 2017
SenchaCon Roadshow Irvine 2017
 
Shopzilla - Performance By Design
Shopzilla - Performance By DesignShopzilla - Performance By Design
Shopzilla - Performance By Design
 
10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today
 
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
 
Optimising Web Application Frontend
Optimising Web Application FrontendOptimising Web Application Frontend
Optimising Web Application Frontend
 
Avtar's ppt
Avtar's pptAvtar's ppt
Avtar's ppt
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance Websites
 
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache TomcatCase Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache Tomcat
 

Recently uploaded

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 

Recently uploaded (20)

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 

WebQuilt: Capturing and Visualizing the Web Experience at WWW10

  • 1. WebQuilt Capturing and Visualizing the Web Experience Jason I. Hong James A. Landay Group for User Interface Research EECS Department University of California at Berkeley World Wide Web 10
  • 2. May 04 2001 2 Motivation • Many websites have usability problems ­ 62% web shoppers gave up past month (Spool) ­ 39% failed in buying attempts (Creative Good) • Two problems all web designers face ­ Understanding users' tasks ­ Understanding obstacles in completing tasks • Many methods for understanding tasks ­ E.g. interviews, ethnographic observations, surveys, focus groups • Focus here is on understanding obstacles
  • 3. May 04 2001 3 Understanding Obstacles Today • Traditional usability tests Extremely useful qualitative information Lots of time, small websites, few people, local • Server­side logging Easy to collect, remote testing, lots of tools Restricted access, little on tasks and problems • Client­side logging Can track everything, remote testing Installation, platform­dependent, analysis tools
  • 4. May 04 2001 4 Streamlining Current Practices • Fast and easy to deploy on any website • Compatible with range of OS and browsers • Better tools for analyzing the data
  • 5. May 04 2001 5 WebQuilt Approach • Fast and easy to deploy on any website • Compatible with range of OS and browsers • Better tools for analyzing the data Client Browser Web Server Request Response
  • 6. May 04 2001 6 WebQuilt Approach • Fast and easy to deploy on any website • Compatible with range of OS and browsers • Better tools for analyzing the data WebQuilt Log ProxyClient Browser Web Server
  • 7. May 04 2001 7 WebQuilt Approach • Fast and easy to deploy on any website • Compatible with range of OS and browsers • Better tools for analyzing the data
  • 8. May 04 2001 8 WebQuilt Usage • Setup several tasks, recruit 20–100 people • Email participants a URL that uses the proxy • Ask them to complete the predefined tasks • Collect lots of remote (or local) data • Aggregate, view, and interact with data • Find problems, fix, repeat Evaluate Design Prototype
  • 9. May 04 2001 9 Outline Background and Motivation  WebQuilt Architecture  Usage Experience and Visualizations  Summary and Future Work
  • 10. May 04 2001 10 Overall Architecture Proxy Logger Graph Layout Viz Graph Merger Action Inferencer Log Files Online Offline
  • 11. May 04 2001 11 Proxy Proxy Logger Graph Layout Viz Graph Merger Action Inferencer • Lies between browser and server http://domain.com/webquilt? replace=http://www.yahoo.com • One log file per user session • Currently use Java servlets ­ Important part is log file format
  • 12. May 04 2001 12 Time (ms) From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method URL + Query 6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com 11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky 167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html 31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal og.cgi 68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features /phish Log File Format
  • 13. May 04 2001 13 Time From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method URL + Query 6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com 11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky 167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html 31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal og.cgi 68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features /phish Time From TID To TID Parent ID HTTP Response 6062 0 1 ­1 200 (ms) Log File Format
  • 14. May 04 2001 14 Time (ms) From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method URL + Query 6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com 11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky 167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html 31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal og.cgi 68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features /phish Frame ID Link ID HTTP Method URL + Query ­1 ­1 GET http://www.google.com Log File Format
  • 15. May 04 2001 15 Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Store The Proxy at Runtime
  • 16. May 04 2001 16 Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package 1. Process Client Request Store The Proxy at Runtime
  • 17. May 04 2001 17 Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package 2. Retrieve Requested Document Store The Proxy at Runtime
  • 18. May 04 2001 18 Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package 3. Process and return the page Store The Proxy at Runtime
  • 19. May 04 2001 19 Start with: <A HREF="computers.html"> End up with: <A HREF="http://tasmania.cs.berkeley.edu/webquilt? replace=http://www.yahoo.com/computers.html &tid=1&linkid=12"> The Proxy at Runtime
  • 20. May 04 2001 20 Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package Client Browser Web ServerWebQuilt Proxy Proxy Editor Cached Pages WebQuilt Logs WebProxy Servlet 1 2 3 4 5 HTTPClient Package 4. Store the page 5. Log the transaction Store The Proxy at Runtime
  • 21. May 04 2001 21 Additional Proxy Functionality • Handling Cookies ­ Cookies only sent from browser back to web server that put it there Proxy Logger Graph Layout Viz Graph Merger Action Inferencer User ID Domain Cookie AAA yahoo.com xyzzy AAA google.com asdfg BBB yahoo.com abcde
  • 22. May 04 2001 22 Additional Proxy Functionality • Handling Cookies ­ Cookies only sent from browser back to web server that put it there • Handling Secure Socket Layer ­ Encrypts page requests and data ­ E.g. Shopping Carts, Financials Proxy Logger Graph Layout Viz Graph Merger Action Inferencer Client Browser Web Server SSL
  • 23. May 04 2001 23 Additional Proxy Functionality • Handling Cookies ­ Cookies only sent from browser back to web server that put it there • Handling Secure Socket Layer ­ Encrypts page requests and data ­ E.g. Shopping Carts, Financials ­ Split into two SSL requests Proxy Logger Graph Layout Viz Graph Merger Action Inferencer ProxyClient Browser Web Server SSL SSL
  • 24. May 04 2001 24 Action Inferencer • Takes a single log file and converts into a list of actions ­ "Clicked on link" or "Hit back button" • Inference because still must guess ­ Back and forward actions local Proxy Logger Graph Layout Viz Graph Merger Action Inferencer
  • 25. May 04 2001 25 Time From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method URL + Query 6062 0 1 ­1 200 ­1 ­1 GET http://www.google.com 11191 1 2 ­1 200 ­1 ­1 GET http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky 167525 2 3 ­1 200 ­1 1 GET http://www.phish.com/bios.html 31043 3 4 ­1 200 ­1 2 GET https://www.phish.com/bin/catal og.cgi 68772 2 5 ­1 200 ­1 15 GET http://www.emusic.com/features /phish Re­Assembling User Actions
  • 26. May 04 2001 26 From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method 0 1 ­1 200 ­1 ­1 GET 2 ­1 200 ­1 ­1 GET 3 ­1 200 ­1 1 GET 4 ­1 200 ­1 2 GET 5 ­1 200 ­1 15 GET URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish Time 6062 11191 167525 31043 68772 1 2 3 2 1 2 3 4 5 Re­Assembling User Actions
  • 27. May 04 2001 27 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Re­Assembling User Actions
  • 28. May 04 2001 28 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Start 1 Re­Assembling User Actions
  • 29. May 04 2001 29 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Start 1 2 Re­Assembling User Actions
  • 30. May 04 2001 30 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Start 1 2 3 Re­Assembling User Actions
  • 31. May 04 2001 31 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Start 1 2 3 4 Re­Assembling User Actions
  • 32. May 04 2001 32 From TID To TID 0 1 2 3 3 4 2 5 URL + Query http://www.google.com http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky http://www.phish.com/bios.html https://www.phish.com/bin/catal og.cgi http://www.emusic.com/features /phish 1 2 3 4 5 1 2 3 2 Start 1 2 3 4 5 Re­Assembling User Actions
  • 33. May 04 2001 33 Start 1 2 3 4 5 Action Inferencer
  • 34. May 04 2001 34 1 2 3 4 3 2Start 5 Start 1 2 3 4 5 Case 1 Link Back Link Action Inferencer
  • 35. May 04 2001 35 Start 1 2 3 4 5 1 2 3 4 3 2Start 1 2 5 Case 2 Link Back LinkFwd Action Inferencer
  • 36. May 04 2001 36 1 2 3 4 3 2Start 5 Start 1 2 3 4 5 Case 1 by default (shortest path) Action Inferencer
  • 37. May 04 2001 37 Merger • Combines multiple log files into a single directed graph ­ Web pages are nodes ­ Actions are edges Proxy Logger Graph Layout Viz Graph Merger Action Inferencer
  • 38. May 04 2001 38 Graph Layout • Assign (x,y) to all nodes • Force­directed placement ­ Keep connected nodes close ­ Push unconnected nodes far apart • Edge­weighted depth­first ­ Most traffic along top ­ Less followed paths below ­ Grid to help organize and align • Plug­in new algorithms here Proxy Logger Graph Layout Viz Graph Merger Action Inferencer
  • 39. May 04 2001 39 Visualization Proxy Logger Graph Layout Viz Graph Merger Action Inferencer
  • 49. May 04 2001 49 Future Work • More sophisticated logging ­ Lower level events (e.g. AT&T WET) ­ Personalized web pages • More sophisticated visualizations ­ More use of semantic zooming ­ Dynamic filtering • Continue getting feedback from designers ­ Initiated interviews with web designers ­ Still need to do evaluations
  • 50. May 04 2001 50 Take Home Ideas • Need more tools for improving web site usability • Proxy logging ­ Logging where task is already known ­ Any website, any browser, remote testing • Visualizing logged data ­ Aggregates large data sets ­ Interact with in a zooming interface • Pluggable architecture
  • 51. May 04 2001 51 Acknowlegements • Special thanks to Jeff Heer, Tim Sohn, and Sarah Waterson Group for User Interface Research EECS Department University of California at Berkeley Download WebQuilt at: http://guir.berkeley.edu/webquilt
  • 52. May 04 2001 52 Extra Slides
  • 53. May 04 2001 53 Berkeley Website A
  • 59. May 04 2001 59 Casa de Fruta A
  • 63. May 04 2001 63 Casa de Fruta B
  • 68. May 04 2001 68 Time From TID To TID Parent ID HTTP Response Fram e ID Link ID HTTP Method URL + Query 6062 0 1 -1 200 -1 -1 GET http://www.google.com 11191 1 2 -1 200 -1 -1 GET http://www.phish.com/index.htm q=Phish&btnI=I %27m+Feeling+Lucky 167525 2 3 -1 200 -1 1 GET http://www.phish.com/bios.html 31043 3 4 -1 200 -1 2 GET https://www.phish.com/bin/catal og.cgi 68772 2 5 -1 200 -1 15 GET http://www.emusic.com/features /phish Log File Format
  • 69. May 04 2001 69 In Case You're Feeling Evil… • URLs can be of the form: http://userid@domain/page.html • Most web servers ignore the userid part, but… http://www.yahoo.com@tasmania.cs…/… • Can auto-track people's actions once they hit your page without their knowledge or consent

Editor's Notes

  1. Web usability is a serious problem Two problems web designers face in trying to improve the usability of a website First is understanding the task, that is what people want to do on a website An example task could be something like &quot;I want to purchase an mp3 player and spend less than $500&quot; Understanding obstacles in completing the task For example, I might not be able to find an mp3 player on an ecommerce website because I thought it would be in the &quot;music&quot; section instead of the &quot;electronics&quot; section You really need to understand both Could know that my task is to buy an mp3 player, but this isn&apos;t useful if you don&apos;t know what problems are preventing me from successfully completing the task On the other hand, you might know that the problem is that I&apos;m abandoning lots of shopping carts, but this isn&apos;t useful if you don&apos;t know my task. Instead of trying to buy an mp3 player, maybe I was doing a price comparison or was just showing someone a feature your website has in the shopping cart Knowing both the task and the obstacles are important in designing websites that people find both useful and usable Lots of methods for understanding tasks out there Our focus is on understanding obstacles
  2. Traditional Usability Tests A usability specialist recruits and schedules several participants, and then brings them into a usability lab Asks them to complete a few predefined tasks Observes what stumbling blocks people come across Follows up with interviews and surveys Takes a lot of time to schedule participants, run tests, and then analyze data Furthermore, while usability tests are extremely useful, they don&apos;t scale well if you want to test a large website. You would have to bring in hundreds of users to cover all the possible tasks that a large website supports. Consequently, traditional usability tests tend to use only a few dozen people at most, and only cover small portions of a website Server-Side Logging This just means analyzing the log file generated by the web server Easy to collect data for large numbers of people, automatically down by most web servers You can also do remote testing, that is people can surf from their home computers instead of having to be brought into a usability lab Also, there are lots of tools available, at least 90 research and commercial tools out there today Restricted access (can&apos;t do a competitive analysis) / organizational bureacracy (can&apos;t get access to server logs) Also, most tools give you information that is fairly useless in terms of usability. Knowing that 90% of my visitors come from a &quot;.com&quot; domain doesn&apos;t tell me how to improve the website There are some newer tools that provide information about at user needs at a statistical level, such as the information scent project at Xerox PARC, but in these cases, the users&apos; tasks and goals are still ambiguous Client Side Logging End-users download special software, such as a modified web browser or a custom-made web browser, to capture all transactions The advantage to this approach is that you can track literally everything, including keystrokes and mouse movement Also, client-side logging allows for remote testing, making it easier to scale up to many users However, there are two downsides to this approach First, it requires special software to be installed, which people may be unwilling or unable to do Can severely limit usability test participants to experienced users, which may not be representative of the target audience Second, the special software is usually platform dependent, meaning that it only works for a specific operating system or web browser This limits the overall reach of the logging software Lastly, there aren&apos;t a lot of analysis tools here for aggregating the data It&apos;s easy to collect gigabytes of data using client-side logging, but it&apos;s not easy to understand it
  3. To address the first two issues, we created a proxy logger. So here&apos;s how HTTP works today.
  4. We introduce a level of indirection here with the web proxy, having all transactions transparently go through a web proxy and logging those transactions. Traditionally, proxies are used for things like caching and for firewalls. What we&apos;ve done here is to use a web proxy for usability purposes, and later on I&apos;ll talk a little more about some of the special features we&apos;ve added to make the logging more useful for usability analysis
  5. To address the third issue, we created a visualization system that aggregates all of the user logs and displays it in an interactive visualization. So here&apos;s a screenshot of the current visualization, but we&apos;ll get back to this again towards the end of the talk.
  6. Talk about iterative design, why it&apos;s important WebQuilt focuses on the Evaluate part of iterative design
  7. Only online part is the proxy, that is the only part that is running when participants go through their tasks Offline parts are for designers, can be done anytime Components can be replaced in case anyone has a better algorithm
  8. Some browsers have a proxy field that can be set internally within the browser WebQuilt uses a URL based approach for proxies instead of having end users set a field in their web browser We chose this approach, again because we thought novices would be unwilling or unable to do this Instead, the WebQuilt proxy is URL-based This approach has been done by others, there&apos;s nothing new here
  9. Time is the time in milliseconds since starting the session The next two fields are the &quot;From Transaction ID&quot; and the &quot;To Transaction ID&quot; Transaction IDs represent the Nth page that a person has requested So a transaction ID of 1 means that this is the first page that a person requested, 2 means the second page that a person requested, etc The FromTID represents the page that a person came from The ToTID represents the current page that the person is at The transaction IDs are used to recreate what a person did in terms of page requests and going backwards and forwards The ParentID specifies the frame parent of the current page. This number is the TID of the frameset to which the current page belongs, or –1 if the current page is not a frame The HTTP response field is just the response from the server, such as &quot;200 ok&quot; and &quot;404 not found&quot;
  10. The Frame ID field indicates which frame in an enclosing frameset the current page is in. A frame ID of 0 indicates the first frame in the frameset, 1 is the second, and so on. The LinkID field specifies which link was clicked on according to the Document Object Model. In this representation, the first link has a LinkID of 0, the second one has a value of 1, and so on. This technique is useful if there are redundant links, as it lets us identify exactly which link a person used. Multiple links to the same page but… Link not being used because below the fold Or link not being used because it&apos;s a graphic image but people don&apos;t know that they can click on it
  11. In the first phase, an HTTP request is received from the client by the proxy All WebQuilt parameters, such as the destination URL and link ID are extracted and saved The proxy also collects other data that is saved in the log file, such as the transaction IDs and parent ID
  12. In the next phase, the proxy attempts to retrieve the actual document The rest of the data needed for the log entry is also stored at this time, including the HTTP response code and final destination URL in case of server redirects
  13. Before the downloaded page is sent back to the client, it has to be edited so that all the links are redirected to use the proxy again We first check if the content type of the page is text/html If it isn&apos;t, then we just pass it through without any modifications If it is, then we first add or update the &lt;BASE&gt; tag so that all relative links and images work correctly Then we go through the entire document and update all page hyperlinks, frames, and form actions to go through the proxy again Thus, once a person starts to use the proxy, all of the links thereafter will automatically be rewritten to continue using the proxy We also add transaction ID tags and Link ID tags to each of the links, as well as any parent ID and Frame ID parameters
  14. In case you&apos;re feeling particularly insidious you can do something like: http://www.yahoo.com/computers.html@tasmania.cs.berkeley.edu/webquilt?replace=http://www.yahoo.com/computers.html&amp;tid=1&amp;linkid=12
  15. Saves a local copy of the web page to a cache And then writes to the log
  16. Have to have some additional functionality in order for proxy to work correctly with existing websites One feature is handling cookies How cookies are done today In WebQuilt, we store the cookie in the proxy, keyed off of the User ID and the domain
  17. Also have to handle SSL
  18. Reassemble what a person did
  19. WebQuilt assumes this case by default But if there is a better algorithm, then someone can just plug it in here
  20. Berkeley website Colors used to indicate average amount of tie before traversing a link Colors closer to yellow mean short amounts of time, on the order of a few seconds Colors closer to red mean longer amounts of time, on the order of a hundred seconds Thicker lines mean more people traversed a link
  21. Casa de Fruta Task was to find a specific item and add it to the shopping cart
  22. Shopping task, add items and then check out
  23. Shopping task, add items and then check out
  24. Reassemble what a person did
  25. In case you&apos;re feeling particularly insidious you can do something like: http://www.yahoo.com/computers.html@tasmania.cs.berkeley.edu/webquilt?replace=http://www.yahoo.com/computers.html&amp;tid=1&amp;linkid=12