Enterprise Software Service Emulation: Constructing Large-Scale Testbeds
Abstract
Constructing testbeds for systems which are interconnected with large networks of other software services is a challenging task. It is particularly difficult to create testbeds facilitating evaluation of the non-functional qualities of a system, such as scalability, that can be expected in production deployments. Software service emulation is an approach for creating such testbeds where service behaviour is defined by emulate-able models executed in an emulation runtime environment. We present (i) a meta-modelling framework supporting emulate-able service modelling (including messages, protocol, behaviour and states), and (ii) Kaluta, an emulation environment able to concurrently execute large numbers (thousands) of service models, providing a testbed which mimics the behaviour and characteristics of large networks of interconnected software services. Experiments show that Kaluta can emulate 10,000 servers using a single physical machine, and is a practical testbed for scalability testing of a real, enterprise-grade identity management suite. The insights gained into the tested enterprise system were used to enhance its design.
Keywords
Cite
@article{arxiv.1605.06729,
title = {Enterprise Software Service Emulation: Constructing Large-Scale Testbeds},
author = {Cameron Hine and Jean-Guy Schneider and Jun Han and Steve Versteeg},
journal= {arXiv preprint arXiv:1605.06729},
year = {2016}
}
Comments
International Workshop on Continuous Software Evolution and Delivery (CSED'16), ICSE 2016 Austin, USA