Your SlideShare is downloading. ×
What (Else) Can Agile Learn From Complexity
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

What (Else) Can Agile Learn From Complexity


Published on

How can complexity science be applied to software development? This presentation shows you which scientific concepts can be mapped to agile software …

How can complexity science be applied to software development? This presentation shows you which scientific concepts can be mapped to agile software development.

Published in: Business, Technology, Education

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. What (Else) Can Agile Learn from Complexity? What (Else) Can Agile Learn from Complexity? Jurgen Appelo version 3 image by BotheredByBees Jurgen Appelo version 3
  • 2. Jurgen Appelo writer, speaker, entrepreneur...
  • 3. Get my new book for FREE!
  • 4. QDD (Quote-Driven Discourse) Misquotation is, in fact, the pride and privilege of the learned. A widely-read man never quotes accurately, for the rather obvious reason that he has read too widely. Hesketh Pearson (1934) Common Misquotations “ ”
  • 5. Let’s start!Let’s start!
  • 6. Agile Software Development An ant colony, the brain, the immune system, a Scrum team, and New York City, are self-organizing systems. Ken Schwaber Agile Software Development with Scrum “ ”
  • 7. Agile Software Development At the heart of complex adaptive systems theory’s relevance to software development is the concept of emergence, and the factors leading to emergent results. Jim Highsmith Adaptive Software Development “ ”
  • 8. Agile Software Development Scrum is not a methodology, a defined process or set of procedures. It's an open development framework. The rules are constraints on behavior that cause a complex adaptive system to self- organize into an intelligent state. Jeff Sutherland Shock Therapy (presentation) “ ”
  • 9. The Evolution of Complexity Science image by Brian Castellani
  • 10. Are software projects complex systems? Can we apply complexity science to management? image by practicalowl
  • 11. Beware!! Abuse of Science 1. To use scientific terminology without bothering much about what the words actually mean. 2. Importing scientific concepts without giving the slightest empirical or conceptual justification. 3. Displaying superficial erudition by shamelessly throwing around terms where they are irrelevant. 4. Exhibiting a veritable intoxication with words, with a superb indifference to their meaning. Sokal, A. and Bricmont, J. (1998) Intellectual Impostures: Postmodern Philosophers’ Abuse of Science “ ”
  • 12. Complexity vs. Management Not unexpectedly, the complexity gurus are most upset with how complexity science terms are loosely, if not metaphorically, defined and tossed in managerial discourse – one [guru] goes as far as to suggest that the books offer many insights for managers, but one should simply black out all references to complexity science. Maguire, S. and McKelvey, B. (1999) “Complexity and Management: Moving from fad to firm foundations” “ ”
  • 13. Compromise: Loose Application The word “culture” in business culture was (successfully) borrowed from anthropology. The word “strategy” in business strategy was borrowed from the military. (In fact, the science of game theory borrowed the word for evolutionary stable strategies!) Loose application (borrowing and bending) of terminology across disciplines is more than just the invention of metaphores. The terms actually have meaning. Van Uden, J. (2005) “Using complexity science in organization studies: a case for loose application”
  • 14. Snowden, D. and Stanbridge, P. (2004) “The Landscape of Management: Creating the context for understanding social complexity”
  • 15. humans involved, not mechanics complex, not ordered Snowden, D. and Stanbridge, P. (2004) “The Landscape of Management: Creating the context for understanding social complexity”
  • 16. Example: Self-Organization Self-organization is a process of attraction and repulsion in which the internal organization of a system, normally an open system, increases in complexity without being guided or managed by an outside source. Self-Organization Are self-organizing teams really self-organizing? “ ”
  • 17. Example: Emergence Emergence is the arising of novel and coherent structures, patterns and properties during the process of self-organization in complex systems. Corning, P.A. (2002) “The Emergence of Emergence: Now What?” Is emergent design really emergent? “ ”
  • 18. Software Projects Scope Features Qualities People Tools Resources Parts Artifacts Product
  • 19. Yes, we can apply complexity to management Yes, software projects are complex systems image by Peter Kaminsky
  • 20. Darkness Principle Each element in the system is ignorant of the behavior of the system as a whole [...] If each element ‘knew’ what was happening to the system as a whole, all of the complexity would have to be present in that element. Richardson, K.A. (2002) “Systems theory and complexity: Part 1” “ ”
  • 21. Traditional Monitoring and Control fails (no project manager can know everything) image by Okko Pyykkö
  • 22. The Law of Requisite Variety If a system is to be stable the number of states of its control mechanism must be greater than or equal to the number of states in the system being controlled. Variety (Cybernetics) “ ”
  • 23. Traditional Management fails (one manager is less complex than a group) image by flattop341
  • 24. Boundaries and Conditions Self-organization requires that the system is surrounded by a containing boundary. This condition defines the "self" that will be developed during the self-organizing process. Eoyang, G. and Conway D.J. (1999) “Conditions That Support Self-Organization in a Complex Adaptive System” “ ”
  • 25. image by Robbie W T Agile Management is a crucial part of Agile (Defining boundaries and conditions)
  • 26. Hierarchy Principle Complex natural phenomena are organized in hierarchies wherein each level is made up of several integrated systems. Skytner, L. (2001) “General Systems Theory: Ideas and Applications” NJ: World Scientific “ ”
  • 27. image by Mountain Goat Software Example: Scrum of Scrums managed self-organized Hierarchies are not a problem, they are natural Managed (imposed) hierarchies are the problem
  • 28. Patches Take a conflict-laden task in which many parts interact, and divide it into a quilt of non-overlapping patches. Try to optimize within each patch. As this occurs […] a good solution in one patch will change the problem to be solved in adjacent patches. Kaufman, S. (1995) At Home in the Universe “ ”
  • 29. image adapted from Mountain Goat Software Example: Patches of Scrums An ecosystem of teams instead of a hierarchy
  • 30. Group Size There is a particular number of decision-makers that stands out from the trend as being truly, spectacularly bad, tending with alarmingly high probability to lead to deadlock: eight. Buchanan, M. (2009) “Explaining the curse of work” “ ”
  • 31. image by Jayel Aheram Good team size = 7 +/- 2 (except 8) (5 might be perfect)
  • 32. Specialization In more complex organisms – from eukaryotic protists to social mammals – specialization among the parts (or division of labor) produces many advantages for various wholes. Corning, P.A. (2002) “The Emergence of Emergence: Now What?” “ ”
  • 33. Specialization is not a problem, it is natural Managed (imposed) specialization is the problem image by Ali
  • 34. Power Laws Scale-free networks are ubiquitous in nature due to the adaptive properties of robustness and fast communication associated with power-law degree distributions. Mitchell, M. (2009) Complexity: A Guided Tour “ ”
  • 35. Power laws exhibit scale invariance You can’t estimate size of next unknown issue size of issues frequency of issues high chance of small issues low chance of large issues
  • 36. Prediction of velocity includes an (impossible) estimate of the size of unknown problems image by cod gabriel
  • 37. Dependence on Context A project cannot be viewed independent of its surrounding context […]. An understanding of the context is in itself not sufficient to prescribe a method […]. Rather, the method to manage the project is embedded in the context and one must allow the emergence of such a method through interaction between the actors and the environment. Pundir, A.K., Ganapathy, L. And Sambandam, N. (2007) “Towards a complexity framework for managing projects” “ ”
  • 38. ScrumButs are natural and necessary Management methods must emerge Standard methods must be customized
  • 39. Fitness Landscapes The environment is not out there, separate from us. We can help to create the environment. […] The Spanish have phrase […]: “My friend, there is no road. You make the road as you walk.” Dent, E.B. (1999) “Complexity Science: A Worldview Shift” “ ”
  • 40. The environment responds to released software Success can only be known after deployment image by neona
  • 41. ? linear improvement stuck on local optimum or walk through the valley (linear) retrospectives may stop working
  • 42. image by Kevin N. Murphy mixing practices from two sources Crossover
  • 43. non-linear improvement finding higher peaks by mixing prior high performers Switch from linear to non-linear retrospectives (Replace multiple practices at a time)
  • 44. moderately connected system (several optimums) sparsely connected system (one optimum) intensively connected system (no real optimum)
  • 45. If you can’t replace a practice, tool, or person, you shouldn’t even add them in the first place image by wilhei55
  • 46. disturbances enable the system to find deeper valleys (inverted landscape, lower = better) Noise
  • 47. image by Hamed Saber The Butterfly Effect Small changes, BIG consequences
  • 48. Incompressibility There is no accurate representation of the system which is simpler than the system itself. In building representations of open systems, we are forced to leave things out, and since the effects of these omissions are nonlinear, we cannot predict their magnitude. Cilliers, P. (2005) “Knowing complex systems” Managing Organizational Complexity: Philosophy, Theory And Application “ ”
  • 49. Because of the butterfly effect, we cannot predict the consequences of leaving something out Consequence: a variety of imperfect methods image by woodleywonderworks
  • 50. Models All models are wrong, but some are useful. Box, G. and Draper, N. (1969) Evolutionary Operation: A Statistical Method for Process Improvement “ ”
  • 51. The Software Cultivator Managing Agile Organizations (2010) ? Jurgen Appelo My Book
  • 52. Disclaimer I might have used scientific terminology without really understanding what the words actually mean. I might have imported scientific concepts without giving sufficient justification. I might have thrown around scientific terms where they are irrelevant. And I might have an intoxication with words...
  • 53. image by -bast- But I hope to have inspired you... Q & A
  • 54. @jurgenappelo
  • 55.
  • 56. This presentation was inspired by the works of many people, and I cannot possibly list them all. Though I did my very best to attribute all authors of texts and images, and to recognize any copyrights, if you think that anything in this presentation should be changed, added or removed, please contact me at