Complexity Theory

Book Review: Gamestorming

In the book, Gamestorming, Dave Grey, Sunni Brown, and James Macanufo have documented a wide variety of brainstorming games for use in problem-solving situations.  While I haven’t made my way that far into the games themselves yet, I appreciate the introductory material, which offers some structure around the game concepts.  First, the authors stress the difference between the goals of brainstorming games and critical thinking.  Critical thinking is largely about analyzing, reducing, simplifying, and eliminating alternatives – evaluating options to choose a path forward.  Brainstorming games are all about generating ideas – making space for creative discovery, cross-pollination of ideas among diverse people, and creating a ‘game world,’ in which new, unexpected ideas arise.

The authors define a starting point, A,  and an ending point, B, and the space between them is referred to as the Challenge Space.  In Gamestorming, the idea is to move from point A to point B, but not necessarily in a linear fashion, and they recommend having Fuzzy Goals.  Fuzzy Goals, they say, are emotional, sensory, and progressive.  Because the goals are not precise, “the way we approach the challenge space cannot be designed in advance, nor can it  be fully predicted.”  Experimentation, exploration, and trial and error represent approaches that are important to successful Gamestorming.

Gamestorming struck me as a useful practical and tactical tool, in that it’s packed full of various games to employ with any group that needs to generate ideas and solutions outside the context of their normal, structured, operating process.  It also represents a practice that works well with Complexity Theory.  Because ideas emerge from a system based on relationships and interaction between the people in the system, games like those described in the book could be invaluable tools that support the emergence of new ideas.  By getting people in a room together, and encouraging them to interact in new ways, you put them in an environment that is designed to foster unpredictable outcomes.

In many cases, especially in the business world, teams work to predict and to eliminate disruption caused by unplanned for events.  Complexity theory, though, tells us that unpredictable outcomes are not only inevitable, but can be harnessed if we approach them in an open-minded way.  This book is just one example of how we can apply complexity theory to practice.  I highly recommend the book, especially for those of us that sometimes need outside ideas to get us started along the path of creative thinking.

Book Review: Simply Complexity

Complexity science and complex adaptive systems have been studied in the hard sciences longer than in the social sciences or within the context of leadership and organizations, but people are catching on to the value they have to offer in the world of organizations.  In Simply Complexity, Neil Johnson does a great job of introducing complexity theory, and I like the simple examples he uses early in the book.  First, Johnson says, “At the heart of most real-world examples of Complexity, is the situation in which a collection of objects are competing for some kind of limited resource – for example, food, space, energy, power, or wealth.”  While this might trigger memories of your college economics courses, take a step back, and you’ll realize business is nothing, if not a competition for limited resources.  These limited resources are both within and outside your organization.  Inside, especially in the busted economy of the past few years, organizations tend not to have enough people to get the work done.  Outside, organizations are competing with others for customers and dollars.

To go a step further, though, complex adaptive systems can be thought of as multiple networks of agents that are connected and interact in various ways and are capable of learning and adapting.  The study of complexity itself can be thought of as the study of the emergent phenomena that arise out of those systems.  One of the key elements of complexity is that the system does not require a “controlling hand” in order for phenomena to emerge from the system.  The actions of the agents themselves will produce outcomes, and in fact, many of the outcomes the system produces couldn’t be created by an outside coordinator, even if someone were to try to replicate the outcome.  Johnson uses a simple example of a traffic jam to illustrate this principle of emergence.

Think of a daily commute.  The agents are the people in the vehicles, and they all have knowledge about the traffic situation.  That knowledge takes the form of memory, based on driving a particular route at a particular time of day in the past.  There may also be additional information available to the agents, such as the road conditions reported on the news.  Each of these agents needs to choose a path to drive to his or her destination.  They use the information available to them to make their best guess at what route will be most efficient.  In reality, they won’t know if they chose the best route until they see the actual traffic conditions on their way to wherever they are going.  Imagine that at least one major route has a traffic jam.

Johnson goes on to say, “Just think about the level of coordination and communication which some central controller would actually require in order to be able to recreate a particular traffic jam.  In other words, imagine the number of cell-phone calls he would have to make to ensure that all the drivers were on the same road at the same time, and in one particular pattern.  It simply couldn’t be done in a reliable way.”

One of the things that makes complexity complex(as opposed to complicated – a car engine is complicated, but not complex, because it can be explained by its component parts, and its function is predictable)  is the unpredictable nature of the emergent phenomena.  You can easily argue that certain traffic jams are predictable, and that’s true, but look at it another way.  Johnson explains,  “… the precise nature of the crowd-like phenomena which emerge will depend on how the individual objects interact and how interconnected they are.  It is extremely difficult, if not impossible, to deduce the nature of these emergent phenomena based solely on the properties of an individual object.”  If you were to try to predict a particular traffic jam based on examining only one driver and the information available to him or her, you’d be hard pressed to do so.

I’ll close with Johnson’s well-written and more complete example:

“It is 6 p.m. You are leaving work – and the only thing on your mind is to get home quickly. But which route should you take? It turns out you have a choice. But so does everyone else. And this is the point: the best route is the one which is the least crowded – but it is the collective decisions of everyone else which determine which of the possible routes this turns out to be. In effect you are not deciding between routes home – instead you are trying to out-guess everyone else. In other words,  you are trying to out-guess the crowd in the competition for space on the road. Of course, everyone else is trying to do the same.”

While Johnson’s book is not particularly written for business, it is full of examples of complex adaptive systems, and does a great job at making the principles of complexity understandable.  I highly recommend the book.  It gives a strong foundation of understanding which will allow you to take what complexity has to offer and visualize how your own organization is a complex adaptive system (in fact, it probably has multiple complex adaptive systems contained within it).

Complexity Theory and Agile Methodologies

I spent the latter part of my time in my Master’s program researching complexity theory and the implications it might have on leadership and product/software development.  As I did my research, I learned that the principles of complexity theory are very well aligned with those of Agile development methodologies, despite the fact that Agile methodologies seem to have been developed with few, if any, formal ties to Complexity Theory (CT) or Complex Adaptive Systems (CAS).  I drew two key conclusions from my work.

1 – Those that recognized the need for new planning and management paradigms in creating great software did so largely based on their own common sense.  They weren’t reading about theory and then attempting to apply it.  They were simply experimenting with new approaches that worked because they represented reality better than their predecessors.

2 – The fact that Agile methodologies have become so prevalent and have been so successful in software development lends credence to the tenets of Complexity Theory.

Complex Adaptive Systems (CAS)

CAS are open systems that constantly adapt, and interactions and relationships between interdependent agents are considered more important to generating emergent knowledge than are the individual agents, or nodes in the network that describes the system.  Cause and effect are non-linear, and multiple structures, behaviors and influences may create significant changes in a Complex Adaptive System.  In many cases, output, or effects, become causes, and a very tangled relationship between input and output exists.

The agents in a CAS interact together and are adaptable, in that they can learn from individual experience, and be influenced both by other agents within the system, and by other pressures, internal to or external from the system.  Feedback loops in the form of direct individual experience and memory, and observation of interactions between other agents contribute to the constant adaptation of both the agents and the system as a whole.

A Complex Adaptive System does not require a controlling mechanism to direct the generation of output, and, in fact, the output of a CAS cannot be directed by a single controlling mechanism.  Emergence occurs naturally, as a result of the interplay between agents.  The nature of a Complex Adaptive System, defined by its adaptability, non-linear cause and effect, and organic evolution without a controlling mechanism all combine to make it complex and irreducible to its component parts.

Agents within a Complex Adaptive System are influenced by a myriad of things: other agents, outside information, pressures from inside and outside the organization, previous personal history, and the emergence of subgroups of agents within the CAS. These influences may cause one agent to respond one way, while another agent responds differently.  Those responses go on to influence both other agents, and the original agents themselves, as outcomes from what may be considered small changes spark new changes or die out.  It’s easy to imagine within a network of many agents that adaptation is impossible to control and the outcomes that emerge are difficult to predict.

Waterfall vs. Agile

Traditional methodologies are often referred to as “Waterfall” methodologies because they rely heavily on execution of a pre-defined and commonly understood sequential series of phases that make up the life-cycle of software development project.  These phases at a high level include planning, development, testing, and deployment, and a project goes through each of these phases only one time throughout its life.  A Waterfall approach relies on top-down, bureaucratic, command-and-control methods of leadership.  It uses front-loaded planning activities which aim to solidify the requirements early for a given software development project.  It can be cumbersome and inflexible, creating conditions in which adaptation and innovation are difficult, if not impossible, to achieve mid-stream while software development is underway.  For some, the Waterfall approach is viewed as too cumbersome and inflexible to keep pace with the demands of modern software applications and their end users.

Change, however, is inherent to the software industry, and customers, users, and development team members themselves often refine ideas as time passes, generate new ideas based on feedback and experience gained throughout the project development timeline.   They are constantly exposed to new approaches to feature functionality by virtue of their membership in the software industry.  This brings them in close contact to other products that may be wholly unrelated to the product or project in development, but which may offer relevant and valuable ideas that could positively impact their development efforts were there mechanisms that allowed for change throughout all phases of the project.

Modern development methodologies, which fall under the umbrella term of “Agile” methodologies, began to appear around the year 2000, and have proliferated in the decade since.  The defining characteristics of Agile methodologies include an inherent flexibility based on a highly iterative approach, where the least amount of planning necessary to understand a software feature is done as late as possible before that feature is built, and then it is immediately tested with end users.  This approach is repeated over and over throughout the software development life-cycle, and thus the end product can be seen as something that evolves based on increasing knowledge of the team, which consists of developers as well as users of the system.

Complexity and Agile

While Agile methodologies have become more and more popular over the past decade, critics believe that Agile approaches lack structure and discipline, and lesser quality deliverables may be produced as a result.  Agile development consists largely of a set of principles and somewhat standardized techniques that have evolved in practice more than they have been developed in theory or by research.  Some scholars believe this weakens the merit of the methodologies.  Agile methodologies are also more difficult to employ when working with distributed teams, especially those that cross time zones and cultures, because the approach relies heavily on frequent communication.

Despite these potential drawbacks to the use of agile methodologies, viewing agile approaches through the lens of complexity science adds value to the discussion.  For instance, iterative software releases managed on a frequent basis are principally aligned with the CAS concepts of adaptation and evolution.  The agile process that includes frequent testing and input from stakeholders maps to the CAS principle of feedback loops, and the more loosely structured environment found in agile teams aligns with CAS concepts of distributed control.

Supporters of Agile methodologies view software requirements themselves as dynamic and changing, and believe they are better suited to adapt to these changing requirements by employing a process that allows for and embraces change throughout the cycle of development.  Supporters of traditional software development methodologies take the stance that non-technical end users don’t necessarily know their requirements and need direction from developers, while Agile supporters believe neither the customers nor the developers know the full requirements of a system, and they must generate that knowledge together in order to arrive at the best possible solution.

Book Review: The Web of Inclusion

Sally Helgesen’s The Web of Inclusion, published in 1995, is by no means a new book on leadership, but it still holds many lessons that apply in today’s business environment.  Billed as ‘A new architecture for building great organizations,’ Helgesen focuses largely on formal organizational structure and the role of individuals in that structure.  She presents the concept of a web as preferable to the highly structured org charts that served industrial-age business better than they serve today’s knowledge-based organizations.  Viewing an organization as a web, connections cross traditional departmental boundaries, and these non-traditional connections and the idea of flexibility are both central to the success of modern businesses.

The world we live in today can be viewed in more complex terms and is changing more rapidly than ever before, often in a manner that is unpredictable.  Helgesen describes her notion of a ‘web of inclusion’ “both as a pattern, a model for coherently ordering people and their tasks; and as a process, a way of thinking and acting, of behaving and solving problems as they arise” (p. 19).  The web represents a flatter structure, with primary leadership residing at the central point of a roughly circular structure, with lines representing connections radiating outward from the center, and larger concentric circles also moving outward and representing other sets of connections between people in the organization.

Additional characteristics of a real-life web hold a central place in Helgesen’s philosophy, as well.  The web is organic and ever-changing.  She believes the organic nature of a web is better suited to human function in general, providing an environment that is more comfortable for people to reside in.  Individual resources can be shifted from one place on the web to another with the focus remaining on task, not on hierarchical position.  A web is also fairly open at its edges, allowing for better flow of information at the edges of the organization, and from outside the organization.  Empowering individuals that hold positions on the “front line” can eliminate bureaucracy and allow employees to act more quickly and effectively to benefit the customers and partners with which they interact.

The primary principles Helgesen focuses on when examining the web from the perspective of process include: 1) Webs operate by means of open communication across levels, 2) Webs blur distinctions between conception and execution, 3) Webs create lasting networks that redistribute power in the organization, 4) Webs serve as a vehicle for constant reorganization, 5) Webs embrace the world outside the organization, 6) Webs evolve through a process of trial and error. (pp. 24-31).

After describing what her concept of the web is, she goes on to share five detailed case studies of organizations that illustrate one or more of the characteristics of a web of inclusion, and analyzes their success based on these principles.  The book is an easy read, and the case studies are engaging and interesting.  Helgesen writes with an energy and excitement that quickly draw the reader in.  For a business title, this book reads more like a novel, especially in the case studies, and I found it difficult to put down.

In a future post, I will look at how Helgesen’s concept of a web of inclusion aligns with the core principles of Complexity Leadership Theory, which relies on viewing organizations as Complex Adaptive Systems.

Helgesen, S. (1995). The Web of Inclusion. New York: Doubleday.