Lodestone: A Streaming Approach to Behavior Modeling and Load Testing
Chester Parrott, Doris L. Carver · 2020
It is evident that our technologically-dependent society rightly expects systems engineers to produce systems having increasing levels of security, performance, efficiency, and reliability. In addition, such systems must be able to handle sudden massive amounts of usage as well as withstand cyber-attacks such as Distributed Denial of Service (DDoS). As such, we must convolve academic and industrial data science approaches to provide theory, systems, and working technologies that can catalyze and propel engineers, developers, and technical professionals of various disciplines toward the ultimate goal of consistent delivery of quality systems. Tools and processes exist for improving the quality-oriented posture of the systems engineering industry; in practice, the most perpetual form of software testing continues to be the rote repetition of test cases through either manual testing or scripted automation of those same manual tests. We describe Lodestone: a real-time data science approach for generating workload in software systems. This real-time approach to load testing uses streaming log data to generate and dynamically update user behavior models, cluster them into similar behavior profiles, and instantiate distributed workload of software systems. We show that Lodestone outperforms Markov4JMeter on JMeter through a qualitative comparison of key feature parameters as well as experimentation based on shared data and models.