Agile software development methods have emerged in recent years and have become increasingly

popular since the start of the century. While much research claims to study agile methods, the

meaning of agility itself in software development is yet to be fully understood. Agility is viewed by

some as the antithesis of plan, structure discipline and bureaucracy. This study aims to develop a

better understanding of agility, using the key concepts of Complex Adaptive Systems as a theoretical

lens. The study explores agility from several different angles, including autonomous team, stability

and uncertainty, and team learning. A multiple case study research method was employed. The

findings of the study emphasize that agility is manifested as stability and discipline, which are just as

desirable as flexibility, and context sharing is of the same value and importance as knowledge

sharing. In addition, the collective nature of learning is underlined.