CAS Simulation as a Java Applet

During my Certified ScrumMaster classes we run a series of simulations to experience the behaviour of a Complex Adaptive System (CAS). We do this by having all class participants behave as agents in the system who continuously adjust their position in a container (the room) relative to two other randomly selected agents. These two other agents are known as your “best friend” and your “worst enemy” (only for the purpose of these simulations of course)!

On a course earlier this month, one of the participants was sufficient intrigued by the simulations that he decided to spend the evening after day 1 of the course coding up the simulation as a Java Applet! That participant is Paul Kelcey and you will find his simulation over here at his website.

Complete Adaptive System Simulation - Java Applet

Thanks very much to Paul for doing this. It’s fun to watch and confirms the behaviour that we experience for ourselves during a Scrum course.

Of course, as effective as a Java applet is in running a simulation with a large number of agents, it’s not the same as experiencing it for yourself with a room full of people. If you have yet to experience this, you can see a little of what these simulations look like in the following videos taken of the exercise as run by it’s creator Joseph Pelrine.

Thanks to Derek W. Wade for making these videos available.

All of this may seem quite abstract and not particularly useful to you until you start looking at the project ecosystem that you work in as a Complex Adaptive System. Socially complex. If this is the case, then it follows that ScrumMasters need to understand the nature of such an environment in order to be able to work effectively with it.

As Derek Wade notes in his blog post on this, we shouldn’t take this exercises to mean that you can simply dish out rules and expect everyone to follow them. People aren’t machines (or ants). Following such rules involves a genuine shift in behaviours and habits by those involve. This is where team building, regular reflection and coaching are so important in succeeding with agile in this – the age of complexity.

You can find an interview with Joseph discussing Complex Adaptive Systems and its application in an agile work environment over at InfoQ.