CSL General Event Calendar

CSL General Event Calendar

skip to events

calendar tabs

  •  All 
  • Grid
  • Month
  • Week
  • Day
  • (Selected tab) Detail

Event Detail Information

Event Detail Information

CRHC Seminar: Why Do Web Applications Fail and What Can Be Done About It?

Speaker Professor Karthik Pattabiraman - Univ. of British Columbia
Date Mar 26, 2012
Time 2:30 pm  
Location 469-A Coordinated Science Lab
Sponsor CRHC
Contact Carol Wisniewski
Views 2162

Center for Reliable and High Performance Computing

 

Title:  Why Do Web Applications Fail and What Can Be Done About It?

 

Speaker:  Professor Karthik Pattabiraman

Electrical and Computer Engineering

University of British Columbia

 

Date:  Monday, March 26, 2012

Time:  2:30 p.m.

Location:  469-A Coordinated Science Lab

 

Abstract:  JavaScript is today the de-facto client-side programming language for modern web applications. However, JavaScript is notorious for its difficult-to-analyze constructs and "laissez-faire" programming style, which makes it challenging to build robust and reliable web applications. Along with performance and security, reliability is a key factor that can make or break a web application. While there have been significant efforts to study (and improve) the former two entities, reliability of JavaScript applications has received little attention so far from the research community. This talk will present two directions to assess and improve the operational reliability of JavaScript-based web applications.

 

In the first part of this talk, I will present our recent results on studying the reliability of web applications in the wild. We use error messages printed to the JavaScript console of popular websites to understand the characteristics of the errors and their root causes. We also categorize the messages and study their correlations with the static and dynamic characteristics of the web application. Our study is carried out using the Firefox web browser and involves fifty of the top 100 Alexa most-visited websites. We find that JavaScript errors abound even in well-tested, mature web applications, and that they can often be surprisingly difficult to find through traditional testing and analysis techniques.

 

In the second part of the talk, I will present our work on JavaScript fault-localization, which is an essential step in understanding and improving web applications' reliability. We find that about 80% of Javascript bugs occur as a result of interactions between JavaScript and the Document Object Model (DOM). We describe a trace-based technique to localize DOM-JavaScript interaction faults, and show that we can localize over 90% of DOM-JavaScript errors with it.

 

This is joint work with Frolin Ocariza Jr. (UBC), Ali Mesbah (UBC) and Ben Zorn (MSR).

 

Biography:  Bio: Karthik Pattabiraman received the MS and PhD degrees from the University of Illinois at Urbana-Champaign (UIUC) in 2004 and 2009. After a post-doctoral stint at Microsoft Research in Redmond, he joined the University of British Columbia (UBC) in Vancouver as an assistant professor of electrical and computer engineering. Karthik's research interests include programming languages, compilers and runtime systems for building fault-tolerant and secure applications. He is also interested in web applications' reliability. Karthik was awarded the William Carter award for best student paper at the International Conference on Dependable Systems and Networks (DSN), 2008.