Frontier A Directed Graph System for Web Navigation by Harish Vangavolu, Hayden Wood, Joseph Newman Seth Polsley, Tracy Hammond.

Slides:



Advertisements
Similar presentations
Internet Basics Instructors : Connie Hutchison & Christopher McCoy.
Advertisements

A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
LeadManager™- Internet Marketing Lead Management Solution May, 2009.
4.01 How Web Pages Work.
Google Chrome & Search C Chapter 18. Objectives 1.Use Google Chrome to navigate the Word Wide Web. 2.Manage bookmarks for web pages. 3.Perform basic keyword.
Copyright © 2012 Certification Partners, LLC -- All Rights Reserved Lesson 4: Web Browsing.
User Interface Design Yonsei University 2 nd Semester, 2013 Sanghyun Park.
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Lesson 4: Web Browsing.
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
User interface design. Recap User Interface GUI Characteristics (Windows, Icons, Menus, Pointing, Graphics) User Centered Design User Interface Design.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
User Group 2015 Version 5 Features & Infrastructure Enhancements.
The Internet & Web Browsers Business Webpage Design Kelly Seale.
Web Design Basic Concepts.
Presented by…. Group 2 1. Programming language 2Introduction.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
HTML Comprehensive Concepts and Techniques Intro Project Introduction to HTML.
Internet. Internet is Is a Global network Computers connected together all over that world. Grew out of American military.
IT 210 The Internet & World Wide Web introduction.
What is Web Design?  Web design is the creation of a Web page using hypertext or hypermedia to be viewed on the World Wide Web.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
CIT3100 – Internet Programming III Web Applications Lesson 1 (28 Sep 05) Fernando J. Maymí
MVC pattern and implementation in java
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
May 16 – 18, 2007 Copyright 2007, Data Access Worldwide May 16 – 18, 2007 Copyright 2007, Data Access Worldwide Build Great Web Application 'Fast and Easy'
Dynamic Web Pages (Flash, JavaScript)
Fall, Privacy&Security - Virginia Tech – Computer Science Click to edit Master title style Design Extensions to Google+ CS6204 Privacy and Security.
Windows Internet Explorer 9 Chapter 1 Introduction to Internet Explorer.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
REST.  REST is an acronym standing for Representational State Transfer  A software architecture style for building scalable web services  Typically,
Navigation Section 2. Objectives Student will knowhow to navigate through the browser.
Tutorial 1: Browser Basics.
Patterns, effective design patterns Describing patterns Types of patterns – Architecture, data, component, interface design, and webapp patterns – Creational,
Objective Understand concepts used to web-based digital media. Course Weight : 5%
Web software. Two types of web software Browser software – used to search for and view websites. Web development software – used to create webpages/websites.
Introduction to Web AppBuilder for ArcGIS: JavaScript Apps Made Easy
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Mir Farooq Ali Computer Science, Virginia Tech May 9, 2003 Building Multi-platform User Interfaces using UIML.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Quick overview of ASP.NET Ajax Ajax deep-dive Cover some key real-world problems Discuss solutions, patterns, opportunities Lots of demos And more of.
Digital Libraries1 David Rashty. Digital Libraries2 “A library is an arsenal of liberty” Anonymous.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Website design and structure. A Website is a collection of webpages that are linked together. Webpages contain text, graphics, sound and video clips.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
1 Isolating Web Programs in Modern Browser Architectures CS6204: Cloud Environment Spring 2011.
REST By: Vishwanath Vineet.
Web Browsing *TAKE NOTES*. Millions of people browse the Web every day for research, shopping, job duties and entertainment. Installing a web browser.
Web Technologies Lecture 6 State preservation. Motivation How to keep user data while navigating on a website? – Authenticate only once – Store wish list.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
Microsoft Office 2008 for Mac – Illustrated Unit D: Getting Started with Safari.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
GROUP PresentsPresents. WEB CRAWLER A visualization of links in the World Wide Web Software Engineering C Semester Two Massey University - Palmerston.
introductionwhyexamples What is a Web site? A web site is: a presentation tool; a way to communicate; a learning tool; a teaching tool; a marketing important.
The Internet & Web Browsers Business Webpage Design Created by Kelly Seale Adapted by Jill Einerson.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Tutorial 1 Getting Started with Adobe Dreamweaver CS5.
Objective % Select and utilize tools to design and develop websites.
Software Applications for end-users
Web software.
Objective % Select and utilize tools to design and develop websites.
Dynamic Web Pages (Flash, JavaScript)
Athabasca University School of Computing and Information Science
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Presentation transcript:

Frontier A Directed Graph System for Web Navigation by Harish Vangavolu, Hayden Wood, Joseph Newman Seth Polsley, Tracy Hammond

The Perfect Browser Browses the web Finds jobs Gives you the news Plays cat videos Fast Rendering HTML Running JavaScript Delivers useful content Site prediction and search Support for 3 rd party extensions Bookmark and history

The Perfect Browser Browses the web Finds jobs Gives you the news Plays cat videos Fast Rendering HTML Running JavaScript Delivers useful content Site prediction and search Support for 3 rd party extensions Bookmark and history

The Perfect Browser Browses the web Finds jobs Gives you the news Plays cat videos Fast Rendering HTML Running JavaScript Delivers useful content Site prediction and search Support for 3 rd party extensions Bookmarks and history

Why you need web history Go back to recent pages Find sites visited long ago Back and Forward (Chrome) History

Why you need web history Go back to recent pages Find sites visited long ago Back and Forward (Chrome) History

Why you don’t need history Recent pages are easy to remember Better prediction You bookmark important pages You can search the keywords

Why you don’t need history Recent pages are easy to remember Better prediction You bookmark important pages You can search the keywords

Web History Today History Stack View of History (Chrome) Time of Visit View of History (Firefox)

Information is Power View of History (Chrome) As a user you can: See websites by date Sort sites by domain Search for key words As a coder you can: Export HTML elements as raw data Group open tabs and display as folders Rewrite the interface

Information is Power As a user you can: See websites by date Sort sites by domain Search for key words As a coder you can: Export HTML elements as raw data Group open tabs and display as folders (TooManyTabs for Chrome) Rewrite the interface Better History By Roy Kolak

Related Works Issue Based Information System By Jeff Conklin Vizter: Visualizing Online Social Networks By Jeffrey Heer Contextual Web History using Visual and Contextual cues to improve Web Browser History By SS Won, J. Jin, J. I. Hong

Frontier More than just history Modern and easy More than just an extension

Rethink Storage Rebuild history as adjacency list Better at representing context Supports existing features + more Compressed, more accessible

Frontier More than just history Modern and easy More than just an extension

Enhanced Navigation Extended back/forward controls Shows all back/forward links from history of current page Page navigation menu

Frontier More than just history Modern and easy More than just an extension

It’s a Platform

Design in Information Quick View App (Site Specific) Detailed Quick View App (Site Specific) Full App (All information)

User Study Evaluation Sampling individuals from: CS background Non-CS background Provided pre and post evaluation questionnaires. Sentiment is largely that graph abstraction is intuitive and mirrors users’ mental model of page relationships (28 users studied to date).

Ethical Concerns Data is kept from advertisers We keep data local Users and data are not associated

Thanks to JavaScript Chrome extension APIs jQuery d3.js Materialize.js...and more as needed HTML5/CSS3 Scalable Vector Graphics (SVG) Git (version control)

Future Work Use MVC Framework (AngularJS) Design API for app development Establish Message Passing Protocol for inter-app communication Port to other browsers

What is Frontier Novel rethinking of browser history Solution with minimal performance impact Simple and intuitive controls Growing browser platform Retrieve Traverse Apply

References Paulsami, Prabakar, and Bikram Singh Gill. "Hierarchical model for web browser navigation." U.S. Patent No. 8,433, Apr Kellar, Melanie, Carolyn Watters, and Michael Shepherd. "The impact of task on the usage of web browser navigation mechanisms." Proceedings of Graphics interface Canadian Information Processing Society, Khoury, Raymes, Tim Dawborn, and Weidong Huang. "Visualising web browsing data for user behaviour analysis." Proceedings of the 23 rd Australian Computer-Human Interaction Conference. ACM, Mills, Chris. "Chrome and Firefox Users Make Better Employees." Gizmodo. N.p., 18 Mar Web. 20 Mar Shipman III, Frank M., and Catherine C. Marshall. "Spatial hypertext: an alternative to navigational and semantic links." ACM Computing Surveys (CSUR) 31.4es (1999): 14.

Special Thanks to Dr. Tracy Hammond Cassandra Odoula CHItaly

Software Architecture Message passing architecture Partition functionality into separate software components Communicate through Chrome runtime’s message passing infrastructure Better modularity because software components encapsulate their state Privileged access in one component does not leak to others UI

Back End Query web session. Build core data structure. Service requests from front end. Provide vertices and edges to visualization. Broker request for privileged objects. Frontier Architecture Adjacency List

Digraph Pros Simple construction and clean implementation Edges and vertex ids not ambiguous Convey relationships between page content more concisely (referring links, cycles, …) Fewer nodes -> less occlusion Cons Traversal/transition type info is not visualized Not necessarily important to users Force directed layout computationally expensive for larger graphs

Hypertree Pros Explicit representation of document transition types (forward/back buttons, refresh, typed in, …) Visually appealing D3.js cluster layout Cons Node is generated every time a URL is visited More nodes -> Visual occlusion More complicated data structure Edge and vertex multisets Transition type ambiguity chrome.history API limitations

Graph structure principles Two possible implementation strategies: Hypertree explicitly represent page transitions traversal-centric approach Digraph (with cycles) Represent relationships between content

Software Architecture Functional Programming Lambda functions and lexical closures Graph manipulation and event handlers Higher-order functions (map, reduce, …) Declarative programming style Simplifies testing

Challenges UI Simple, intuitive frontend that improves Chrome navigation Performance Produce efficient JavaScript implementations of graph construction and layout Security Do not to leak sensitive user information Prevent malicious sites from performing code injection

Vocabulary Session: Activity of a user within the browser during a specified period of time. Forward Link: An outgoing hyperlink from one web page to another website logged within the session. Back Link: An incoming hyperlink from one web page to another website logged within the session.

Software Architecture Chrome Extension Architecture Frontier Architecture

chrome://history Build graphics container Inject node data into d3.js Transform layout to SVG Early build of graph structure

The State of the Web Browser features have remained relatively unchanged since the late 90’s. Features are representative of 90’s tech., where interactive visualization was too demanding of computers at that time (history, navigation, JavaScript rendering). Web history should reflect new model of navigation…more INTERACTIVITY!

Agenda A graph based solution to web browsing Principles and tools Chrome extension development

“Not all those who wander are lost” -J.R.R. Tolkien

The Target Market Who it’s for: Users who frequently use the back and forward utility of a browser. Users who frequent the history page in search of previously visited web pages.

A Note on Graphs In mathematics, computer science, biology it is the principal tool used to model the pairwise relationship of entities. Search Engines Social Networking Network communication Internet activity across the globe

User Studies Sampling individuals from: CS background Non-CS background Providing pre and post evaluation questionnaires. Sentiment is largely that graph abstraction is intuitive and mirrors users’ mental model of page relationships. Time spent to complete a task doesn’t necessarily indicate deeper understanding. We provide more insight into page level relationships that aren’t currently available in browsers today.

Introduction Current browsers do not integrate visualization into their interface Graph theory is prominently featured in modeling of web page relationships Hyperlink graphs Social network graphs Our project uses graphs to provide insight into browsing the web Graph visualization of Twitter during Arab Spring