O'Reilly Open Source Convention
Books Safari Bookshelf Conferences O'Reilly Network

Arrow Home
Arrow Registration
Arrow Speakers
Arrow Keynotes
Arrow Tutorials
Arrow Sessions
Arrow At-a-Glance
Arrow Wiki
Arrow BOFs
Arrow Events
Arrow Exhibitors
Arrow Sponsors
Arrow Hotel/Travel
Arrow Venue Map
Arrow See & Do
Arrow Tips for
Arrow Press
Arrow Mail List



Controlling and Testing Distributed Systems with Ruby
Richard Kilmer, Founder, InfoEther, Inc.

Track: Ruby
Date: Thursday, July 29
Time: 10:45am - 11:30am
Location: Meadowlark


UltraLog is a Defense Advanced Research Projects Agency (DARPA) sponsored research project focused on creating survivable large-scale distributed agent systems capable of operating effectively in very chaotic environments. The project is pursuing the development of technologies to enhance the security, robustness, and scalability of large-scale, distributed agent-based systems operating in chaotic wartime environments. The UltraLog application executes across several hundred high-end rack-mounted Linux servers. The agent framework is written in Java and named Cougaar. Distributed systems such as Cougaar are hard to build, but many overlook how difficult it is to test and evaluate these systems.

This presentation will examine ACME, a Ruby framework developed with the intent of controlling and testing the UltraLog system. The ACME framework uses a Jabber communications backplane and a pluggable platform service that executes within each machine to control the execution of the Java multiagent software framework. ACME also controls the hardware environment to simulate network and systems loads and failures. The experiments conducted using the ACME framework utilize the full power of Ruby including networking, object-orientation, platform scripting, and code generation, which creates over half a million lines of dynamically executing Ruby source code. Ruby enables a high-level scripting environment, which provide systems integration and testing personnel the ability to fully exercise the capabilities and limits of the distributed multiagent system under test. This presentation will show that Ruby excels as a language for testing systems, from the simplest to the most complex.

O'Reilly Home | Privacy Policy

© 2004, O'Reilly Media, Inc.