Grin logo
de en es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Internet, New Technologies

Evaluation and comparison of ajax frameworks regarding applicability, productivity and technical limitations

Title: Evaluation and comparison of ajax frameworks regarding applicability, productivity and technical limitations

Master's Thesis , 2008 , 139 Pages , Grade: 1.0

Autor:in: Lukas Ostermaier (Author)

Computer Science - Internet, New Technologies
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

The rapidly growing popularity of Ajax has led to the publication of numerous frameworks in the last years. Not only big companies but also small development teams have developed their own Ajax frameworks or libraries. Consequently, finding the best framework for a specific project can be difficult and time-consuming. This thesis compares three of the most popular Ajax frameworks in order to facilitate the technology selection process.

The evaluation was carried out by implementing a tracking system for public transportation with particular focus on the applicability, productivity and technical limitations of each framework and Ajax in general. In addition, this thesis presents a general approach for the evaluation of arbitrary Ajax frameworks and points out particular issues that should be given special consideration when applying Ajax initially. The thesis concludes with a brief analysis of trends that may be relevant to the future development of Ajax.

Excerpt


Contents

1. Introduction

2. The Trend to Rich Internet Applications

2.1. What is a Rich Internet Application?

2.2. Architectural Overview of RIAs

2.3. Advantages and Disadvantages of RIAs

3. Technologies for Rich Internet Applications

3.1. Silverlight

3.2. Java/JavaFX

3.2.1. JavaFX

3.3. Flash/Flex

3.4. OpenLaszlo

3.5. AIR (Adobe Integrated Runtime)

3.6. XUL

3.7. Ajax

4. Ajax

4.1. Technical Overview

4.2. Pure Hype or real Business Value?

4.2.1. Creating Business Value

4.2.2. Time for Adoption

4.3. Challenges of Ajax Adoption

4.4. Types of Ajax Applications

4.5. Levels of Ajax Adoption

5. Ajax Frameworks

5.1. Requirements for Ajax Frameworks

5.2. Ajax Frameworks Overview

5.2.1. Ajax Toolkit Framework

5.2.2. TIBCO General Interface

5.2.3. eXtensible Ajax Platform

5.2.4. ASP.NET Ajax

5.2.5. Backbase Ajax 360

5.2.6. Direct Web Remoting

5.2.7. Dojo

5.2.8. Google Web Toolkit

5.2.9. JMaki

5.2.10. Prototype

5.2.11. Rico

5.2.12. Script.aculo.us

5.2.13. Spry

5.2.14. Yahoo! User Interface Library

5.3. Popularity of Ajax Frameworks

5.4. Categorization of Frameworks

5.4.1. Classification according to the Level of Adoption

5.5. Conclusion

6. Evaluation Procedure and Sample Application

6.1. Description of the Sample Application

6.1.1. Detailed Description of the Tracking System

6.1.2. Application specific Requirements for the Ajax Frameworks

6.2. Evaluation Procedure

6.2.1. Selection Criteria for the Ajax Frameworks

6.2.2. Selected Frameworks

6.2.3. Evaluation Criteria

6.2.4. Detailed Test Specification

7. Framework Evaluation

7.1. Adobe Spry Evaluation

7.1.1. Implementation of the Sample Application

7.1.2. General Aspects of the Framework

7.1.3. Developing Company and Community

7.1.4. History, Maturity, Outlook of the Framework

7.1.5. Costs of the Framework and Terms of License

7.1.6. Available Documentation and Support

7.1.7. Productivity of Development

7.1.8. Generated Traffic

7.1.9. Client-side Workload

7.1.10. Load and Response Times of the Application

7.1.11. Maintainability of the Application

7.2. Google Web Toolkit Evaluation

7.2.1. Implementation of the Sample Application

7.2.2. General Aspects of the Framework

7.2.3. Developing Company and Community

7.2.4. History, Maturity, Outlook of the Framework

7.2.5. Costs of the Framework and Terms of License

7.2.6. Available Documentation and Support

7.2.7. Productivity of Development

7.2.8. Generated Traffic

7.2.9. Client-side Workload

7.2.10. Load and Response Times of the Application

7.2.11. Maintainability of the Application

7.3. ASP.NET Ajax Evaluation

7.3.1. Implementation of the Sample Application

7.3.2. General Aspects of the Framework

7.3.3. Developing Company and Community

7.3.4. History, Maturity, Outlook of the Framework

7.3.5. Costs of the Framework and Terms of License

7.3.6. Available Documentation and Support

7.3.7. Productivity of Development

7.3.8. Generated Traffic

7.3.9. Client-side Workload

7.3.10. Load and Response Times of the Application

7.3.11. Maintainability of the Application

7.4. Overall Comparison

7.4.1. Analysis of the Features and general Aspects

7.4.2. Developing Company and Community Analysis

7.4.3. History, Maturity and Outlook Analysis

7.4.4. Cost and License Analysis

7.4.5. Analysis of the available Documentation

7.4.6. Analysis of the Productivity of Development

7.4.7. Traffic Analysis

7.4.8. Client-side Workload Analysis

7.4.9. Load and Response Time Analysis

7.4.10. Analysis of Maintainability Aspects

8. Further Issues and Outlook

8.1. Standardisation

8.2. Reverse Ajax

8.3. Offline Ajax

8.4. Mobile Ajax

9. Conclusion

A. Detailed PCTS Specification

A.1. Use Case Description

A.2. Design Overview

B. Detailed Evaluation Results

Research Objectives and Topics

This thesis investigates the selection and efficient application of Ajax frameworks for Rich Internet Applications (RIAs), focusing on how these frameworks improve business value and developer productivity. The research evaluates three prominent frameworks by implementing a web-based public transportation tracking system to compare their commercial applicability, performance, and technical constraints.

  • Architectural evolution from traditional web applications to Rich Internet Applications.
  • Technical analysis of the Ajax concept and the role of various Ajax frameworks.
  • Detailed implementation and performance evaluation of Adobe Spry, Google Web Toolkit (GWT), and ASP.NET Ajax.
  • Comparative metrics regarding developer productivity, generated network traffic, and client-side system load.
  • Best practices for framework selection and an outlook on future Ajax development trends.

Excerpt from the Book

2.1. What is a Rich Internet Application?

A Rich Internet Application is something between a web application and a desktop application and combines the benefits of both approaches. Desktop applications are highly responsive and interactive and certainly have advantages when it comes to graphics (especially vector graphics) as well as audio and video applications. There is no need to load data from a remote machine as the application is installed locally and therefore it is reacting immediately to the user’s actions. The drawbacks of desktop applications are obviously that they depend on the underlying platform and distribution and maintenance costs are much higher.

A traditional web application based on HTML has its strengths where a desktop application has its weaknesses: They are highly available through the web and are by far easier maintainable as they do not require any updates or patches to be shipped. Furthermore web applications are platform independent since they are based on standards like HTML and are running within a browser. However, they also have some disadvantages: They are by far not as responsive and interactive and not very well-suited for visualizing or manipulating complex data or charts. A quite disturbing mannerism of web applications is that for each task a new page has to be loaded [Deb06].

Rich Internet Applications attempt to combine the advantages of both types of applications and to eliminate their disadvantages. They combine ‘the reach of Web applications with the richness of desktop applications’ [Bac07]. The main benefits of RIAs are described in the following list:

• Rich Internet Applications provide a rich user interface which is not downloaded repeatedly as in traditional web applications. This user interface provides interactive UI controls in order to support increased interactivity (e.g. sortable lists, drag & drop, tree views, etc.) and make the application more feel like a desktop application.

Summary of Chapters

1. Introduction: Outlines the rise of Ajax and Web 2.0, identifying the difficulty in choosing suitable frameworks for specific projects and establishing the research focus.

2. The Trend to Rich Internet Applications: Defines Rich Internet Applications (RIAs) by contrasting them with traditional web and desktop applications, highlighting the benefits and drawbacks of this hybrid model.

3. Technologies for Rich Internet Applications: Surveys major RIA technologies including Silverlight, Java/JavaFX, Flash/Flex, OpenLaszlo, AIR, XUL, and the fundamental concepts of Ajax.

4. Ajax: Examines technical foundations, business value, challenges of adoption, different application types, and hierarchical levels of Ajax integration.

5. Ajax Frameworks: Establishes mandatory and desirable requirements for frameworks, provides an overview of various popular toolkits, and explains categorization methods.

6. Evaluation Procedure and Sample Application: Details the design of the Public Conveyance Tracking System (PCTS) used as the test subject and outlines the specific criteria and testing environments for comparative evaluation.

7. Framework Evaluation: Contains the core research, providing an in-depth analysis of Spry, GWT, and ASP.NET Ajax regarding implementation, performance, and maintenance, followed by an overall comparative analysis.

8. Further Issues and Outlook: Discusses standardization efforts, reverse Ajax, offline capabilities, and mobile Ajax trends.

9. Conclusion: Summarizes findings, noting that no single "best" framework exists and that the choice depends on project-specific requirements and team expertise.

Keywords

Ajax, Rich Internet Applications, RIA, Framework, Web 2.0, JavaScript, Adobe Spry, Google Web Toolkit, ASP.NET Ajax, Performance, Productivity, Web Development, Browser Compatibility, Data Serialization, UI Widgets

Frequently Asked Questions

What is the core focus of this master's thesis?

The thesis evaluates and compares different Ajax frameworks to help developers select the most suitable technology for their specific projects, focusing on applicability, productivity, and technical limitations.

Which specific Ajax frameworks are evaluated in this work?

The research conducts a detailed implementation and performance evaluation of three frameworks: Adobe Spry, Google Web Toolkit (GWT), and ASP.NET Ajax.

What is the primary objective of the sample application implemented?

The "Public Conveyance Tracking System" (PCTS) serves as a standardized, mashup-style test environment to objectively measure development effort, network traffic, and system resources across the three chosen frameworks.

How is the productivity of the different frameworks measured?

Productivity is analyzed by tracking development time, total lines of code (LOC), initial learning effort, and the number of bugs encountered and fixed during the implementation of the PCTS.

What are the main performance metrics used to compare the frameworks?

The thesis evaluates performance through generated network traffic (XML vs. JSON), client-side CPU workload, memory usage, and response times during user interactions.

What defines the different levels of Ajax adoption mentioned in the text?

The adoption levels range from the "Snippet Level" (manual coding) to the "Full Framework Level" (tight backend integration), providing a hierarchy for companies to assess their organizational Ajax maturity.

Why does the author conclude that the choice of data format is critical?

The evaluation demonstrates that JSON is significantly more efficient than XML regarding network traffic and processing speed, making it the preferred choice for data-heavy applications.

How does the author assess the maintainability of applications developed with these frameworks?

Maintainability is assessed by considering the integration of IDE tools, the availability of automated debugging/testing facilities, and the complexity of switching from one framework to another.

Excerpt out of 139 pages  - scroll top

Details

Title
Evaluation and comparison of ajax frameworks regarding applicability, productivity and technical limitations
College
Vienna University of Technology  (Department of Distributed and Multimedia Systems)
Grade
1.0
Author
Lukas Ostermaier (Author)
Publication Year
2008
Pages
139
Catalog Number
V88969
ISBN (eBook)
9783638036948
ISBN (Book)
9783638934299
Language
English
Tags
Evaluation Comparison Ajax Frameworks Applicability Productivity Technical Limitations Costs Benefits Advantages Disadvantages
Product Safety
GRIN Publishing GmbH
Quote paper
Lukas Ostermaier (Author), 2008, Evaluation and comparison of ajax frameworks regarding applicability, productivity and technical limitations, Munich, GRIN Verlag, https://www.grin.com/document/88969
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  139  pages
Grin logo
  • Grin.com
  • Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint