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.
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."
The following letter was published in the Letters to the Editor of the April 2016 CACM (http://cacm.acm.org/magazines/2016/4/200162).
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.
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