Satisfying quality requirements in the design of a partition-based, distributed stock trading system

  • Authors:
  • Xiaohu Yang;Liping Zhao;Xinyu Wang;Ye Wang;Jie Sun;Albert Jerry Cristoforo

  • Affiliations:
  • College of Computer Science, Zhejiang University, Hangzhou, People's Republic of China;School of Computer Science, University of Manchester, Manchester, U.K.;College of Computer Science, Zhejiang University, Hangzhou, People's Republic of China;College of Computer Science, Zhejiang University, Hangzhou, People's Republic of China;College of Computer Science, Zhejiang University, Hangzhou, People's Republic of China;State Street Corporation, Boston, MA, U.S.A.

  • Venue:
  • Software—Practice & Experience
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Although quality requirements (QRs) have become a major drive in today's software development, there have been very few real-world examples in the literature that demonstrate how to meet these requirements. This paper presents such an example. Specifically, the paper describes the design of a partition-based distributed stock trading service system that satisfies a set of QRs related to resource utilization, performance, scalability and availability. The paper evaluates this design through detailed experiments and discusses some design alternatives and the lessons learned. Central to this design are a static load distribution strategy and a dynamic load balancing strategy. The first strategy is to achieve an initial balanced workload on the system's server cluster during the system initialization time, whereas the second strategy is to maintain this balanced workload throughout the system execution time. Together, these two strategies work in unison to ensure that the server resources are efficiently utilized; the user requests are processed with the required speed; the application is partitioned with sufficient room to scale; and the system is highly available. Copyright © 2011 John Wiley & Sons, Ltd. (The server we selected consists of one CPU of 2.4 GHz, G memory and one hard disk with the speed of 80 M bytes per second.)