CPSC 641: Performance Issues in High Speed Networks

Professor Carey Williamson

January 2009

Assignment 2: E-Commerce Site Modeling (15 marks)

Due Date: Thursday, February 12, 2009 (3:00pm)

The purpose of this assignment is to gain experience with system optimization problems, performance evaluation methodologies, experimental design, quantitative methods, graph plotting, and interpretation of results. You will evaluate several pricing strategies for an on-line e-commerce site, and assess the sensitivity of the system to different configuration parameters and workload characteristics.

E-Commerce Scenario

A fictional on-line music store is considering changing its pricing strategy in order to increase revenue. The store has a repository of M songs stored on its Web server, and can sell digital copies of songs to customers based on requests received. On average, they receive C customer requests per day. For simplicity, we will assume that they sell exactly one song to each customer.

In the past, the music store has used flat pricing. That is, every song has the same fixed price P. Thus the total daily revenue is R = C * P.

They are now considering tiered pricing, with three tiers (levels). In particular, a proportion p of the songs are designated as popular, a proportion q as ordinary, and a proportion r as unpopular, where p + q + r = 1. Assume for example that p = q = r = 1/3. Customers that purchase a popular song pay a premium price P + D, where D is the difference in price that is paid. Customers that purchase an ordinary song pay the regular price P. Customers that purchase an unpopular song pay a discount price P - D, where D is the same as above, with 0 <= D <= P. With this marketing scheme, the store can claim that the average price of a song in the repository is still P. Note, however, that the average revenue per sale is larger, since popular songs (by definition) are sold more often than unpopular songs.

The tiered pricing scheme has several configuration parameters. The most obvious is D, the difference between premium and regular price (which is the same as the difference between regular and discount price). The other parameters are p, q, and r, with the obvious constraint that p + q + r = 1.

Workload Model

There are also some interesting workload issues to consider. In the past, the music store has assumed uniformly distributed requests. That is, an arriving customer is equally likely to select any of the songs in the repository, uniformly at random, and independently. However, some recent workload characterization work at the store has shown that requests are non-uniformly distributed amongst the songs. In fact, the requests follow a Zipf-like distribution. This observation has been the key motivation for the new pricing strategy.

In a classic Zipf distribution, the popularities of the requested objects follow an interesting power-law relationship. If the items are sorted into monotonically decreasing order by popularity, then the popularity of the second-most popular item is one-half of that of the most popular item. Similarly, the popularity of the third-most popular item is one-third of that of the most popular item, and so on. In general, the popularity of the k-th most popular item is 1/k of the popularity of the most popular item. This distribution is widely observed in human behaviour (e.g., usage of English words, library books borrowed, movies rented from Blockbuster, paper citations).

In a Zipf-like distribution, there is still a power-law relationship for the item popularities, but the exponent of the distribution is some general value s (s >= 0), rather than the simple case s = 1. Mathematically stated, the popularity of the k-th most popular item is 1/(k**s) of the popularity of the most popular item. This distribution is widely observed in computer systems (e.g., files accessed, disk space used, Web sites visited, Web pages visited).

Evaluation Tasks

Your task is to apply one or more performance evaluation methodologies to study this pricing problem, and to make informed decisions about pricing strategies for the on-line music store, and their quantitative impacts on revenue. You can tackle this assignment using any combination of mathematical analysis, simulation, and/or experimental implementation (your choice). Have fun!

For the default configuration of the online music store, assume the following system parameter settings, unless specified otherwise:
M = 1,000; C = 100,000; P = $1.00; D = $0.20; p = q = r = 1/3.

  1. (1 mark) Determine the total daily revenue for flat pricing assuming uniformly distributed requests. Determine the total daily revenue for flat pricing assuming a Zipf distribution for requests (s = 1). Comment on your results and observations.
  2. (2 marks) Assume tiered pricing with D = $0.20. Determine the total daily revenue assuming a Zipf distribution (s = 1) for requests. Comment on your results and observations.
  3. (2 marks) Assuming a Zipf distribution (s = 1) for requests, plot a graph showing the daily revenue results (on the vertical axis) for tiered pricing as a function of D (on the horizontal axis), where D ranges from $0.00 (flat pricing) to $1.00 (maximum value) in steps of $0.10. Comment on your results and observations.
  4. (3 marks) Assuming tiered pricing and a Zipf-like distribution (s >= 0) for requests, plot a graph showing the daily revenue results (on the vertical axis) as a function of D (on the horizontal axis), where D ranges from $0.00 to $1.00 in steps of $0.10. Plot one line for each value of s, with s ranging from 0 to 2 in steps of 0.5. Comment on your results and observations.
  5. (3 marks) Assuming tiered pricing, a Zipf distribution (s = 1) for requests, and r = 0.5, plot a graph showing the daily revenue results (on the vertical axis) as a function of D (on the horizontal axis), where D ranges from $0.00 to $1.00 in steps of $0.10. Plot one line for each value of p, with p ranging from 0 to 0.5 in steps of 0.1. Comment on your results and observations.
  6. (4 marks) Using the workload and system parameters indicated for this assignment, construct one additional experiment of your own choosing. Plot a graph showing the daily revenue results as a function of your chosen parameter(s). Comment on your results and observations.

Assignment Submission

When you are finished, please submit your assignment solution in hardcopy form to your instructor, on or before the stated deadline.