Home // SERVICE COMPUTATION 2015, The Seventh International Conferences on Advanced Service Computing // View article


An Application of Stochastic Models To Monitoring of Dynamic Web Services

Authors:
Marcelo De Barros
Manish Mittal

Keywords: software testing; large-scale services; quality of services; markov chains; artificial neural networks; selenium; testing in production; monitoring; stochastic models

Abstract:
Web search engines are very dynamic in nature; not only are the backend and data powering the site evolving, but the frontend is always adapting to different browsers, devices and form-factors, and experiments are often running in production. In fact, when it comes to User Experience (UX), it is likely that users are always falling into some live experiment in production: variation of colors, fonts, typography, different Java Scripts and so on. Issues (software bugs) can occur on the live site for very particular contexts, where a context is defined as a particular configuration of browser, market and experiment. As an example, a JavaScript error can occur on a certain page, for certain types of queries, against a certain market on a particular browser. The problem that we’re trying to solve is to devise a probabilistic methodology to monitor and detect these particular software bugs in production environments by maximizing the chances of detecting the most relevant issues from the application users’ standpoint. For this purpose, we at the Microsoft Bing Experiences Team developed a concept of synthetic exploratory monitoring that can focus on the important features on the sites and pages, and use invariants (conditions that should always hold true, or always hold false, for specific contexts), such as security-related invariants, to detect potential anomalies in the current context. We make use of stochastic models to ensure maximum relevant coverage of contexts and devices. We use the power of the Selenium testing framework to drive end-to-end automation on browsers and devices, the notion of exploratory tests, and a set of heuristics and invariants (text-based and image-based) that can auto-detect problems on the live site in very particular contexts. We compare and contrast two machine–learning models: Markov Chains and Time-Based Artificial Neural Networks (ANNs). We implemented the idea explained in this paper to monitor large-scale web sites such as Bing Search Engine where alerts are generated automatically whenever the anomaly conditions are detected. The solution is easily expandable to other sites. We envision, as future work, moving this technology to the cloud that would allow easy customization of all parameters (browsers used, definition of the finite-state machine, heuristics and invariants). This paper explains the fundamental principles to create a stochastic monitoring model and demonstrates how to apply the principles to large-scale web sites and services. We will utilize Bing Search Engine to illustrate the techniques explained here.

Pages: 1 to 8

Copyright: Copyright (c) IARIA, 2015

Publication date: March 22, 2015

Published in: conference

ISSN: 2308-3549

ISBN: 978-1-61208-387-2

Location: Nice, France

Dates: from March 22, 2015 to March 27, 2015