Loading ...
Sorry, an error occurred while loading the content.

Re: [scrumdevelopment] Living Metaphor - Pattern Languages

Expand Messages
  • Hal Macomber
    Hi Mike, One of these days I hope we meet. I encourage you to go on with your research and your book. Let s accept your 7 points. Let s consider a usual
    Message 1 of 2 , Apr 11, 2003
    • 0 Attachment

      Hi Mike,

      One of these days I hope we meet.  I encourage you to go on with your research and your book.

      Let's accept your 7 points.  Let's consider a usual situation:

      Projects occur over an extended timeframe with sub-teams whose membership  varies to some degree through time.  Those sub-teams are often part of different organizations (internal or external) that have their own goals and have other matters of import that also change over the life of the given project.

      1. We must acknowledge that people already-always act in accord (or not) with an unarticulated set of patterns that are both personal and social that we find manifested thru repeated action (habits).
      2. Can we identify a minimum set of patterns (rules) that can enable these somewhat disparate groups to act in accord towards the fulfillment of the project goals?
      3. Can we conceive of a taxonomy of mechanisms (like a scrum, sprint, etc) that support an adjustmest from the habitual to another set of patterns?

      My background is doing projects in high-tech, power generation, software, and construction.  I've found that in spite of our best efforts to introduce locally-identified best practice for project delivery, the elasticity of current patterns is far too robust.  As one colleague puts it, "As long as I keep the blow torch on the fuse it stays lit."  Still, I think this whole line of investigation is on the right track.


       Mike Beedle <beedlem@...> wrote:

      (Posted to several other mailing lists before.  Sorry
      if you already seen this stuff.)

      These are some of the conclusions of my research
      project "Living Metaphor".  More at:

         (unfortunately the server may be
         down for maintenance a few hours tonight.)

      (I am thinking of submitting some of this content
      to one or more of the aLife, agents, OnWard!, or
      Feyerabend conferences and workshops but I would
      like to hear comments from others on these ideas.)

      1) Patterns

      As defined by Alexander "Each pattern is a three-
      part rule, which expresses a relation between a
      certain context, a problem, and a solution."

      He also says that:
      "The pattern is, in short, at the same time a thing,
      which happens in the world, and the rule which tells
      us how to create that thing, and when we must create
      it. It is both a process and a thing; both a
      description of a thing which is alive, and a
      description of the process which will generate that
      thing (p. 247)."

      From this perspective, patterns are similar to
      the genes encoded in the DNA that are waiting to
      be activated by an appropriate proteinic context.  And
      as with genes, when the correct context is found,
      patterns are triggered and generate structure.

      As in genetics, part of the resulting
      context, and initial context of other patterns,
      is the structure generated by the pattern.  In
      biological systems the resulting context/initial
      context for other genes to be active is the
      existing generated structure and the generated
      proteinic substrate.

      The main difference from organic systems is that
      in systems where there are humans that enforce
      the patterns (rules), or in software systems where
      the patterns are enforced by the software, the
      patterns can be enforced at any level of structure,
      not only at the equivalent "cellular level".

      Also, most systems created and/or maintained by
      humans do not have the same level of dynamic
      complexity as organic systems do.  For example,
      there is limited or no self-organization,
      autocatalysis, metabolic (self-regulation), or
      autonimic functions.

      However, it would be perhaps desirable to have the
      above dynamic characteristics present in
      man-made systems to more closely resemble
      the properties of living systems.

      2) Pattern Languages

      Pattern languages are "concurrent rule systems"
      that generate structure by the application of
      one or more sequences of patterns.

      In this regard, pattern languages play the same role
      upon systems that DNA plays in organic systems.

      In organic systems one or more genes may be
      active in a single cell, and other cells will also
      have independent and different activations.

      Similarly, in systems where human intervention is
      required to enforce the patterns in the pattern
      language, all of the rules' contexts need to be
      periodically and concurrently evaluated, to guarantee
      that all triggered patterns are executed at any one

      This requirement makes applying pattern languages
      hard because in a system there might be one or
      more concurrent processes that evaluate patterns
      simultaneously.  Yet, at any one time, the existing
      local generated structure must be part of the
      initial context for every pattern.   (This is another
      way of saying �the solution introduces new
      problems� i.e. the BART experiment.)

      The executed patterns in turn generate
      the correct structure for the system - adapting and
      providing self-organizing mechanisms for
      the system as time goes by.

      3) Sequences

      Sequences of patterns are formed by the execution
      of rules linked in a network of "contexts" and
      "resulting contexts".

      In general, and depending on pattern context:

      a) patterns execute in *any order* that conforms to
      the structure of "context and "resulting contexts"
      dictated by the pattern language. i.e. a sequence
      may be started in a low, medium or high level

      However, most pattern languages tend
      to form a proto-skeleton and then fill in the details,
      just as an embryo emerges into a living form.

      b) a pattern, or a subsequence or patterns,
      may be executed many times (in iteration or
      recursion).  More on this in Self-Organization below.

      c) different patterns may be triggered given external
      parameters or conditions.  The pattern language,
      through its "morphological completeness" clause
      will provide paths to generate different structures,
      akin to the generation of different cell types.
      Also, similar patterns need not be contained exactly
      in one another.  There might be overlapping structure.
      (A city is not a tree.)

      d) several sequences might be executing for the
      same system at any one time.

      e) as in rule systems, a sequence may be
      partially executed and then wait for a temporal
      or structural condition that may activate the
      execution of the sequence.  etc.

      4) Emergent Structure

      As patterns in a pattern language generate structure,
      the emergent structure together with other local
      conditions defines the context of where other
      patterns apply.

      This is akin to morphogenesis -- the embryo _and_
      the localized proteinic substrate determines
      what proteins are next generated by the ribosomes
      as guided by the triggering of active genes, and
      this in turns determines cell differentiation
      over time.

      5) Self-Organization

      In dynamical systems some patterns can form sequences
      of patterns that form autocatalytic chains,
      akin to the organic proteinic self-organizing
      autocatalytic chains in cellular processes and/or
      metabolic functions.

      These self-organizing chains contribute in many ways
      to the system:

      a) it provides dynamical inertia to the system.  More
      on this on
      Stability below.
      b) contributes to the adaptation of the system, as per
      Stu Kauffman�s conclusions: adaptation depends on
      self-organization and natural selection.  See �The
      Origin of Order�.

      6) Stability

      The stability of the generated system
      strongly depends on the amount of
      structure controlled by the pattern language,
      and in the strength of the pattern sequences
      in either autocatalytic or simple sequence form.

      This is akin to how a living system is able to
      maintain metabolism and continued structure
      embedded in a soup of bacteria, viruses, other
      living organisms, and chemicals that do not
      directly contribute to the living form.

      7) Adaptation

      A important adaptive feature is the introduction of
      new patterns into the system.  This provides the
      ability to generate new structures that allow the
      system to adapt to new situations, but in addition,
      it may also contribute to the formation of new
      autocatalytic (self-organizing) mechanisms, that
      stabilize the system over time.

      Subscribe to Reforming Project Management
      Enter your email address:

      Don't miss a posting! Forward to a friend.
    Your message has been successfully submitted and would be delivered to recipients shortly.