Agile Development Methodology
| Agile SCM Agile Source Code Agile Continuous Integration | DefinitionAgile attempts to minimize risk by developing software in short iterations.This development methodology is about adaptability. Because of the chaotic nature of software development, it may be impossible to control or to predict. |
HistoryHistorically, development processes were created to alleviate this chaos by making the process more predictive through defining formal roles and phases.However, these phases did not eliminate the chaos, and in fact, probably added to it because they were not built to deal with changes once past a particular phase. For instance, it was not easy to get updated requirements or definitions about an issue now that the project was in the testing phase and supposedly done with the requirements/definition phase. This chaos is caused by customers changing their requirements or, not having them defined at the start of the next phase. In addition, because of the changes in the system, the bugs that occur during the development process are not predictive. Things were tweaked in the predictive methodology to accommodate the need for clarification about the requirements. For example, a pre-release would be shipped to give customers a peak at the new product. This gave them the ability to review the release andone last shot at making any corrective action. However, if a major change was required, it couldcause a long delay in the release of the actualproduct. So, a movement from a Predictive process model to an Adaptive process model that could better handle moving requirements and non predictive bugs. A development process that embraced this chaotic and non predictive emerged.... The Agile Manifesto Customer satisfaction by rapid, continuous delivery of useful software Working software is delivered frequently (weeks rather than months) Working software is the principal measure of progress Even late changes in requirements are welcomed Close, daily, cooperation between business people and developers Face-to-face conversation is the best form of communication Projects are built around motivated individuals, who should be trusted Continuous attention to technical excellence and good design Simplicity Self-organizing teams Regular adaptation to changing circumstances SCM ImplementationBy implementing wise SCM patterns the team using a fast and nimble development process has ability to deliver the benefits to their customers.Agile SCM

|