Show all posts
9 years ago

Agile Software Development and Complex Adaptive Systems: Intro

There are quite many agile processes in the world already. We have Extreme Programming, Scrum, Crystal, DSDM, Feature Driven Development, Lean. Some of them are famous, some are maybe dying. The point is, we have plenty of agile processes. In general this is not too bad. We've got alternatives, they move agile forward and solve real problems. On the other hand, I feel the lack of information on the roots of agile processes. Most articles available are missing the point on my opinion.

Why iterative development works? Why agile manifesto is the truth? Why traditional project management techniques miserably fail on software development projects? Somehow many people feel the right direction. They have a background that guides their decisions. We feel that agile manifesto brings real value. We has proven this in practice after all! But I personally feel that there is something deep and cool behind most of agile practices. Something that will explain why this all works.

While reading Jeff's post about Scrum roots, I found a reference to Complex Adaptive Systems. I went digging into more details. I read a lot about CAS and related things and there were many "a-ha" moments. There are so many parallels between CAS and Software Development. It is pretty obvious that Software development is a Complex Adaptive System itself. It has almost all basic properties of CAS and it is interesting to read, for example, about adaptation in various CAS and think about its application to the software development and agile principles.

I believe that a deep understanding of Complex Adaptive Systems will shed some light to the real roots of agile development and will answer important questions. With this knowledge in hand it will be easier to see why this works and why that failed. It will be easier to make decisions and create a better software faster.

However, I am not sure how interesting this will be to the people 🙂 In the next several posts I will write on why software development is CAS, describe important properties of CAS and apply them to software development (adaptation, feedback, self-organization, emergence, edge of chaos, non linearity, etc). Let's see how it goes, maybe we'll find something interesting 😉

  • Tom Looy, Tacit Knowledge PM

    Michael – I think the topic of complex adaptive systems and software development are very interesting!

    I look forward to reading your upcoming posts.

  • shamsmi

    promising start, waiting for the next post 🙂

  • Harshal

    Bingo ! Fantastic post and hit on head of the nail.
    Thanks for bringing it.

  • Tom Looy, Tacit Knowledge PM

    Michael – I think the topic of complex adaptive systems and software development are very interesting!

    I look forward to reading your upcoming posts.

  • FlippApps developers

    The turn around time was absolutely amazing.

  • real estate investing

    I have been following you blog for quite some time now…..I just wanted to say how excited and happy I am for you. I can’t wait to see what you come up with.

Try for free

Account url: *.tpondemand.com
How many people would be using Targetprocess?
  • Myself
  • 2–20
  • 21–100
  • 101–1000
  • 1000+
By clicking 'Log into Targetprocess' you agree to our Terms of service and Privacy policy