Our Client wanted one thing: the ability to manage and test their existing application. We were given carte blanche with regards to the solution. This latitude allowed the development team to really employ its creative juices in finding the most elegant answer.
The final product produced by The Software Practice allows the client the ability to bring hundreds of virtual machines around the world online. These machines automatically download and install the latest versions of our software and run specific test scheduled by the user. To complement this, we built a console application that allows developers to run tests from right within the command line interface.
Once the tests are complete, a dashboard allows the client to monitor and track the results. This helps them gauge any performance issues in CPU usage and memory throughput.
Further ability to search and isolate virtual machines that are underperforming over a period of time is an especially powerful feature. Since our testing platform produces a detailed log, it is extremely straightforward to the client to get to the root of the problem.
For example the be able to isolate which machines over the past 10 days have had a consistent CPU load of over 50% and have failed the following test
The application needed to run on a variety of OSes (Mac, Linux and Windows) and cloud providers (AWS, Rackspace).
A further hurdle we faced involved conceptualizing a decentralized system. This was required so application and system logs could be extracted from hundreds of virtual machines around the world and siphoned real time into our reporting tool. This would allow engineers to quickly isolate issues.
Finally, the interface needed to be simple enough to allow end-users to quickly identify failing test cases.
The creative space afforded to the development team led to an elegant yet simple solution which allows users to collaborate and produce extremely reliable test results. It may not be possible to quantitatively measure the impact this product has had. However, the feedback from the client thus far has been unequivocal in its endorsement of our work. The product delivers.
I worked with Khasali and The Software Practice to design and develop a cloud-based arbitrary task execution framework for helping test a custom peer-to-peer file sharing application. They were solid communicators and had the technical chops to take an idea and see it through to delivery. Absolutely recommend them!