Improving Rich Internet Applications through Software Refactoring

  • Author / Creator
    Ying, Ming
  • With the advent of Rich Internet Application (RIA) technologies which are crucial to Web 2.0 sites, Internet user experience has moved from the click-and-wait mode to a richer, faster and more interactive mode. Instead of refreshing the entire web page every time when a user requests a change, only updated information within the web page is modified. This allows RIAs to behave and feel more like desktop applications. Due to the evolving nature of RIAs, many efficiency issues need to be resolved before RIAs can behave like desktop applications. Ensuring the efficiency of RIAs is now an important issue. This is the reason why many web browsers advertise the speed of their JavaScript engines as one of the key features. Additionally, web application performance issues can affect corporate revenues because with every 1-second delay, customer satisfaction decreases . Two of the most popular RIA technologies are Adobe Flash and Ajax, and the efficiency of RIAs using both of these technologies can be improved. This dissertation introduces refactoring as a method to improve the efficiency of applications built using these platforms. Programmers using the techniques and tools introduced in this dissertation can greatly improve the efficiency and user experience of their applications. More specifically, the thesis introduces four techniques and tools. • A refactoring tool called ActionScript Refactoring Tool (ART) is introduced to improve the efficiency of Flash applications by rewriting ActionScript 3.0 code. • To aid programmers embed Flash programs effectively, a refactoring tool called FlashembedRT is introduced. This tool can refactor five popular markup-based Flash embedding methods to a JavaScript-based Flash embedding method called flashembed. • A refactoring approach to aid programmers transform their XML data structures into JavaScript Object Notation (JSON)-based structures to improve the efficiency of their applications is presented. A proof of concept tool called XtoJ shows that this transformation can be automated to help programmers rapidly access the efficiency gained when JSON is used. • A refactoring system called Form Transformation Tool (FTT) is proposed as a technique to help programmers convert traditional web forms into Web 2.0 Ajax-enabled forms.

  • Subjects / Keywords
  • Graduation date
  • Type of Item
  • Degree
    Doctor of Philosophy
  • DOI
  • License
    This thesis is made available by the University of Alberta Libraries with permission of the copyright owner solely for non-commercial purposes. This thesis, or any portion thereof, may not otherwise be copied or reproduced without the written consent of the copyright owner, except to the extent permitted by Canadian copyright law.
  • Language
  • Institution
    University of Alberta
  • Degree level
  • Department
  • Specialization
    • Software Engineering and Intelligent Systems
  • Supervisor / co-supervisor and their department(s)
  • Examining committee members and their departments
    • Karapetrovic, Stanislav (Department of Mechanical Engineering)
    • Horspool, Nigel (Department of Computer Science, University of Victoria)
    • Dick, Scott (Department of Electrical and Computer Engineering)
    • Reformat, Marek (Department of Electrical and Computer Engineering)