Sign In

Communications of the ACM

The business of software

The Chaos Machine


View as: Print Mobile App ACM Digital Library In the Digital Edition Share: Send by email Share on reddit Share on StumbleUpon Share on Hacker News Share on Tweeter Share on Facebook
The Chaos Machine, illustrative photo

Credit: Ricky Romero

Modern software projects can be quite complex. There are many interacting variables and many feedback loops where an action effects an action that changes the first action. If the loops provide negative feedback they will tend to correct ineffective behavior and poor results but sometimes we may attempt solutions that actually accelerate the problems. A classic case of this is when a project experiences schedule difficulties and throws additional staff at the problem, which often causes even worse slippage. In many cases, ill-informed attempts to control projects can actually result in considerable turmoil, even chaos.

Back to Top

The Chaos Machine

At a workshop on the management of modern technology projects to an audience of about 20 telecomm project managers, I addressed how projects and management have changed over the years. By way of a metaphor, I unveiled the "Chaos Machine."


Comments


CACM Administrator

The following letter was published in the Letters to the Editor of the April 2016 CACM (http://cacm.acm.org/magazines/2016/4/200162).
--CACM Administrator

I appreciated Phillip G. Armour's use of coupled pendulums as an analogy for software project management in his The Business of Software column "The Chaos Machine" (Jan. 2016) but would like to set the record straight on a few technical points. Chaos is already being exhibited when Armour's machine performs smoothly, in the sense future behavior is inherently unpredictable. What happened when the machine made a hop was not that it "hit a chaos point" but apparently some "resonance disaster" that caused it to exceed the range of operation for which it was built. Moreover, "turbulence" is not an appropriate description in this context, as it describes irregular movement in fluid dynamics. Chaotic behavior does not require three variables. The most basic instancethe double pendulum, with one rod hanging from the end of another rodinvolves only two variables. And the technological solution for chaos is "control," which applies to software project management as well. Setting a project in motion, even one as simple as a single pendulum, then leaving it unattended, is not a good idea. A good case in point for how an unattended project can become chaotic is the construction of the new Berlin airport.

Gnter Rote
Berlin, Germany

------------------------------------------
AUTHOR'S RESPONSE

Rote's point is well taken. The word "chaos" in general usage simply connotes disorder and unmanageability, and I was using that meaning rather than a more formal characterization something beyond both my skill and my intent. Showing the device generated a lot of interesting discussion in the workshop which was the point. And as Rote graciously acknowledges, it was an analogy for software-project management rather than a physics experiment.

Phillip G. Armour
Deer Park, IL


Displaying 1 comment

Log in to Read the Full Article

Sign In

Sign in using your ACM Web Account username and password to access premium content if you are an ACM member, Communications subscriber or Digital Library subscriber.

Need Access?

Please select one of the options below for access to premium content and features.

Create a Web Account

If you are already an ACM member, Communications subscriber, or Digital Library subscriber, please set up a web account to access premium content on this site.

Join the ACM

Become a member to take full advantage of ACM's outstanding computing information resources, networking opportunities, and other benefits.
  

Subscribe to Communications of the ACM Magazine

Get full access to 50+ years of CACM content and receive the print version of the magazine monthly.

Purchase the Article

Non-members can purchase this article or a copy of the magazine in which it appears.