Adaptive Software Development (ASD)
According to the developer of the ASD methodology, James A. Highsmith III, even complex systems can be designed using simple basic rules. According to Highsmith, a software development team is a complicated system in which several people work together to develop a solution. It is generally assumed that such complex systems also require complex rules in order to function at all. However, Highsmith disputes this and claims that a few simple basic rules are sufficient. According to him, software development should be fun and the best software tends to emerge by chance. He refers to this phenomenon as ‘emergence’, which is one of the most important characteristics of adaptive software development.
‘Emergence’ is synonymous with the realisation of new ideas, problem solving and creativity. To prevent a project from becoming disorganised, ASD provides a framework with just enough guidelines to ensure that emergence is not suppressed. The focus of the method is more on the results and their quality (component orientation) than on the tasks to be fulfilled or the process required to achieve the goal (task orientation). This is achieved through adaptive development cycles. The basis for each cycle is the waterfall model with the following phases:
- Plan (Plan)
- Build
- Delivery (Implement)
These traditional phases are replaced in ASD by the terms:
- Speculate (Speculate)
- Collaborate
- Learn
Adaptiver Entwicklungslebenszyklus (BQI Research, nach Highsmith)
Speculate: In this phase, the entire overarching planning of the process and the objectives of the development cycles takes place. The framework conditions of the project are defined in the project mission, which already sets out a rough framework for the end product. The entire development is managed in such a way that the project mission can also be realised.
Collaborate: The cycles planned in the Speculate phase are implemented and realised here. Emphasising the importance of teamwork, several components are developed simultaneously. The descriptions of the individual components are constantly refined in order to document new information immediately.
Learn: If further cycles are to be integrated, this can only take place in this phase. Further cycles are referred to here as the ‘learning loop’. The basis for this is quality assurance, which focuses on the functionality of the developed software. Quality assurance can only take place in the presence of the customer.
Assessment BQI Research
ASD only scores very well in quality management (QM). Disciplines such as integration (INT), maintenance (W) and operation (B) are not covered at all. Project and requirement management (PM/RM), system design (SD), implementation (IMP) and testing (T) are weak.
- Awareness and dissemination are low
- Specialised tool support exists
- The method is not normalised/standardised or certified.
- No licensing required
- Support is available.