This website comes with 5 case studies that can be run on Linux (only) hosts. The URL for the public GitHub repository that holds the case study code and schema code generator is:
https://github.com/talborough/testingComplexSystems
NOTE: The code is deliberately "in flux". Also, I am accepting Case Studies for inclusion in this website. I will help prepare the material and you can add your photo and "About" if desired.
The URL above can be browsed or cited in a “git clone” command.
The 3 case studies are:
- Case Study 1 — The goal is to show how gDS works. The program performs some very basic operations with gDS, including some concurrent operations.
- Case Study 2 — The goal is to present a self-contained program with the “look and feel” of a real test platform.
- Case Study 3 — This sets up a real “system under test” and a test platform to match it. It focuses on tracking the configuration changes a complex system makes as it operates: losing and gaining hosts, performing software upgrades and downgrades, and handling system faults.
- Case Study 4 - This is a successful experiment to see if an AI instance can be "taught" how to use gDS. It uses the Windsurf AI IDE. An "instruction file" is fed to Windsurf telling it about a gDS application. After Windsurf stands up and populates the tables the user can issue English queries against them and the correct Python code is generated to satisfy the queries.
- Case Study 5 - The basis of many test platforms is code that manages connections between a single Linux "test host" and the many Linux hosts comprising the system under test. The Paramiko library is a relatively capable and popular library but it is not thread safe. It is simple however to use it in a way that provides a connection per thread and Case Study 5 explores how to do so using gDS and Windsurf.