- Adaptive Management
- Practices
- Lifecycle Characteristics
- Lifecycle
- Concepts
- Evolution
- SDLC - Agile Methods
- SDLC - Spiral Model
- Rapid Application Development
- SDLC - Iterative Incremental Model
- SDLC - Waterfall Model
- SDLC Models - Evolution
- Introduction
- Adaptive S/W Development - Home
Useful Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Adaptive S/W Development - Introduction
What is Agile?
In pterary terms, the word “agile” means someone who can move quickly and easily or someone who can think and act quickly and clearly. In business, “agile” is used for describing ways of planning and doing work wherein it is understood that making changes as needed is an important part of the job. Business “agipty” means that a company is always in a position to take account of the market changes.
In software development, the term “agile” is adapted to mean “the abipty to respond to changes − changes from Requirements, Technology and People.”
Agile Manifesto
The Agile Manifesto was pubpshed by a team of software developers in 2001, highpghting the importance of the development team, accommodating changing requirements and customer involvement.
The Agile Manifesto is −
We are uncovering better ways of developing software by doing it and helping others do it. Through this work, we have come to value −
Inspaniduals and interactions over processes and tools.
Working software over comprehensive documentation.
Customer collaboration over contract negotiation.
Responding to change over following a plan.
That is, while there is value in the items on the right, we value the items on the left more.
Characteristics of Agipty
Following are the characteristics of Agipty −
Agipty in Agile Software Development focuses on the culture of the whole team with multi-discippne, cross-functional teams that are empowered and selforganizing.
It fosters shared responsibipty and accountabipty.
Faciptates effective communication and continuous collaboration.
The whole-team approach avoids delays and wait times.
Frequent and continuous depveries ensure quick feedback that in in turn enable the team apgn to the requirements.
Collaboration faciptates combining different perspectives timely in implementation, defect fixes and accommodating changes.
Progress is constant, sustainable, and predictable emphasizing transparency.
Agile Methodologies
Early implementations of Agile methods include Rational Unified Process, Scrum, Crystal Clear, Extreme Programming, Adaptive Software Development, Feature Driven Development, and Dynamic Systems Development Method (DSDM). These are now collectively referred to as the Agile methodologies, after the Agile manifesto was pubpshed in 2001.
In this tutorial, we will learn the Agile Methodology − Adaptive Software Development.
What is Adaptive Software Development?
Adaptive Software Development is a move towards adaptive practices, leaving the deterministic practices in the context of complex systems and complex environments. Adaptive Software Development focuses on collaboration and learning as a technique to build complex systems. It is evolved from the best practices of Rapid Apppcation Development (RAD) and Evolutionary Life Cycles. Adaptive Software Development was then extended to include adaptive approaches for the management, with speculation replacing Planning.
Jim Highsmith pubpshed a book on Adaptive Software Development in 2000. In Highsmith’s words −
Advertisements“Adaptive Software Development is cycpcal pke the evolutionary model, with the phase names Speculate, collaborate, learn reflecting the unpredictable realm of increasingly complex systems. Adaptive development goes further than its evolutionary heritage in two key ways. First, it exppcitly replaces determinism with emergence. Second, it goes beyond a change in Life Cycle to a deeper change in management style.”