IEEE Software

 blog   twitterlinkedin

The Agile Theater Project

The Agile Theater Project was conceived in 2003 as a vehicle for providing training and consulting to software engineers, both individually and in teams, in fundamental techniques of communication and interaction. The project involves an ongoing collaboration between an expert in software engineering and in particular agile development methodologies, and a professional theatrical director and communications consultant, specializing in improvisational theater.

Since 2003, the Agile Theater has been presented both in industrial environments (for example, in a department responsible for developing aerospace-related information systems and in a leading manufacturer of cellular telephones) and in research environments (for example, at the National Research Centers in Pisa, Italy). 

The multidisciplinary metaphor comes naturally to software engineering. After all, software applications tend to be inherently multidisciplinary, reflecting characteristics both of the software engineering domain and the domain for which the application is written, from banking to music to nuclear power engineering. Thus it is equally natural to turn to other disciplines for insight into our own discipline. A particularly interesting example of the multidisciplinary metaphor was a project in requirements and design engineering at Eurocontrol, the European Air Traffic Control Authority. The principal investigators Suzanne Robertson of the Atlantic Systems Guild and Neil Maiden of the City University of London invited experts from a variety of different domains - from oriental textiles to screenwriting - to provide novel perspectives that can lead to more creative approaches to software-related issues.

Agile methods place particular emphasis on human-related aspects of software development. These points summarize the key characteristics of agile teams as described in the agile manifesto:

  • communication
  • managing change
  • individuals and interactions
  • role playing
  • self-organizing teams
  • self-adjusting team behavior

They could just as easily be a description of the characteristics of an improvisational theater team. Agile coaches teach these principles to software developers regularly, just as theatrical instructors do with their own students, but with a slight difference: theatrical instructors have been doing it for thousands of years. With such a mature, consolidated body of technique and wisdom available, why not go directly to the source?

The Agile Theater Seminars

Improvisational theater is a bit like psychiatry: it can take time to obtain results. A full course of theatrical instruction can last months and years. But part of the purpose of the Agile Theater is simply to make software engineers aware of what is involved in a methodical approach to learning communication technique. We configure a half or full-day tutorial that offers a layered set of modules, each of which rests upon the previous and builds up from individual to full team interaction. The classic Stanislavsky method for improvisational theater is employed throughout the course: the decomposition of reality into its components, and reassembling them into a meaningful new reality.  A typical full tutorial has this type of structure: 

Introduction

  •  Dealing with the uncertain: the confluence of improvisational theater and agile methods

Fundamental techniques of communication

  •  Concentration
  •  Use of the voice
  •  Body language

Improvisation as a technical tool – the individual

  •  Deepening understanding: out-of-context improvisational spikes
  •  Scenario: the stutterer

Building blocks of communication – working in pairs

  •  Story development: exploration and conflict resolution
  •  Alternating leading roles
  •  Creating the all-important dialogue
  •  Scenario: the restaurant

The dynamics of team communication

  •  Simplicity: using the means at your disposition
  •  Finding your personal role
  •  Searching for metaphor
  •  Achieving collective ownership
  •  Scenario: Going off to war

Wrap-up

  •  Putting it all to work
  •  The daily routine
  •  Opportunities and pitfalls on the way to agile theater

The first module deals with fundamental techniques of communication; many software engineers aren’t even aware of their existence, much less their importance. In particular, concentration is essential for sustained performance and attuning oneself to the signals arriving from others in the group. This is hinted at in discussions of XP, but addressed explicitly here.

The second module deals with the individual, using improvisation as a technical tool for exploring specific human characteristics or situations in detail. For example, the participants explore working with and transforming imaginary objects in a coherent way. An analogy is drawn to the so-called spikes of XP.

The third module introduces principles of human interaction through working in pairs. After preliminary work on the dynamics of pair interaction, including exchange of leader roles, some first improvisational scenarios are introduced (including conflict creation and resolution) and the results analyzed by the theatrical / communications instructor.

The fourth module deals with the full dynamics of team communication, introducing important issues of team cohesion; issues that are reflected, for example, in the XP principle of collective ownership.

See also the article The Agile Theater from the magazine Computer Programming.