# Agile Software Development and Complex Adaptive Systems: Intro

DevFeed: [Agile Software Development and Complex Adaptive Systems: Intro](<https://devfeed.tech/articles/agile-software-development-and-complex-adaptive-systems-intro-30410.md>)

Original publisher: [Read original article](<https://www.mdubakov.com/posts/software-development-cas/>)

Published: 2008-11-22T15:41:57Z

Content type: opinion

Language: en

Sources: [Blog by Michael Dubakov](<https://devfeed.tech/sources/blog-by-michael-dubakov.md>)

Topics: [Agile](<https://devfeed.tech/topics/agile.md>), [Development](<https://devfeed.tech/topics/development.md>), [Software Engineering](<https://devfeed.tech/topics/software-engineering.md>)

Tags: [agile](<https://devfeed.tech/tags/agile.md>), [opinion](<https://devfeed.tech/tags/opinion.md>), [software](<https://devfeed.tech/tags/software.md>), [software-development](<https://devfeed.tech/tags/software-development.md>)

## AI overview

An introduction to a planned series examining agile software development through the lens of Complex Adaptive Systems. The author argues that software development shares key properties with such systems and may help explain why agile practices work.

## Source excerpt

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