25.07.2014 Views

Analysis and Testing of Ajax-based Single-page Web Applications

Analysis and Testing of Ajax-based Single-page Web Applications

Analysis and Testing of Ajax-based Single-page Web Applications

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.4 Experimental Design<br />

In this section we first present our research questions. Later we describe our<br />

proposed approach, <strong>and</strong> the independent <strong>and</strong> dependent variables which we<br />

will use to conduct the experiment <strong>and</strong> come to answers to our questions.<br />

4.4.1 Goal <strong>and</strong> Research Questions<br />

We set up our experiments in order to evaluate several dependent variables<br />

using the GQM/MEDEA 5 framework proposed by Bri<strong>and</strong> et al. (Bri<strong>and</strong> et al.,<br />

2002). First, we describe the goal, perspective <strong>and</strong> environment <strong>of</strong> our experiment:<br />

Goal. To obtain a rigorous underst<strong>and</strong>ing <strong>of</strong> the actual performance trade<br />

<strong>of</strong>fs between a push-<strong>based</strong> <strong>and</strong> a pull-<strong>based</strong> approach to <strong>Ajax</strong> data delivery.<br />

Perspective:. In particular, we aim at an automated, repeatable experiment,<br />

in which as many (combinations) <strong>of</strong> the factors that influence performance<br />

(such as the number <strong>of</strong> users, the number <strong>of</strong> published messages, the intervals<br />

between messages, etc.) can be taken into account.<br />

Environment. The experiments are targeted at distributed environments,<br />

particularly those with UNIX/Linux nodes. Further relevant factors <strong>of</strong> these<br />

systems will be described in Section 4.5.2.<br />

We have formulated a number <strong>of</strong> questions that we would like to find<br />

answers for in each approach. Our research questions can be summarized as:<br />

RQ1 How fast are state changes (new messages) on the server propagated to<br />

the clients?<br />

RQ2 What is the scalability <strong>and</strong> overall performance <strong>of</strong> the server?<br />

RQ3 To what extent is the network traffic generated between the server <strong>and</strong><br />

clients influenced?<br />

RQ4 How reliable is each approach? Are there messages that are missed or<br />

abundantly received on the clients?<br />

4.4.2 Outline <strong>of</strong> the Proposed Approach<br />

In order to obtain an answer to our research questions, we propose the following<br />

steps:<br />

1. creating two separate web applications, having the same functionality,<br />

using each push library (one for Cometd <strong>and</strong> one for DWR), consisting<br />

<strong>of</strong> the client <strong>and</strong> the server parts,<br />

5 Goal Question Metric/MEtric DEfinition Approach<br />

Chapter 4. Performance <strong>Testing</strong> <strong>of</strong> Data Delivery Techniques for <strong>Ajax</strong> 83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!