Adaptive software development (ASD) is a software development process that grew out of the work by Jim Highsmith and Sam Bayer on rapid application development (RAD). It embodies the principle that continuous adaptation of the process to the work at hand is the normal state of affairs.
Part of a series on
Software development
Core activities
Data modeling
Processes
Requirements
Design
Construction
Engineering
Testing
Debugging
Deployment
Maintenance
Paradigms and models
Agile
Cleanroom
Incremental
Prototyping
Spiral
V model
Waterfall
Methodologies and frameworks
ASD
DevOps
DAD
DSDM
FDD
IID
Kanban
Lean SD
LeSS
MDD
MSF
PSP
RAD
RUP
SAFe
Scrum
SEMAT
TDD
TSP
OpenUP
UP
XP
Supporting disciplines
Configuration management
Documentation
Software quality assurance
Project management
User experience
Practices
ATDD
BDD
CCO
CI
CD
DDD
PP
SBE
Stand-up
TDD
Tools
Compiler
Debugger
Profiler
GUI designer
UML Modeling
IDE
Build automation
Release automation
Infrastructure as code
Standards and bodies of knowledge
CMMI
IEEE standards
ISO 9001
ISO/IEC standards
PMBOK
SWEBOK
ITIL
IREB
OMG
Glossaries
Artificial intelligence
Computer science
Electrical and electronics engineering
Outlines
Outline of software development
v
t
e
Adaptive software development replaces the traditional waterfall cycle with a repeating series of speculate, collaborate, and learn cycles. This dynamic cycle provides for continuous learning and adaptation to the emergent state of the project. The characteristics of an ASD life cycle are that it is mission focused, feature based, iterative, timeboxed, risk driven, and change tolerant. As with RAD, ASD is also an antecedent to agile software development.
The word speculate refers to the paradox of planning – it is more likely to assume that all stakeholders are comparably wrong for certain aspects of the project’s mission, while trying to define it. During speculation, the project is initiated and adaptive cycle planning is conducted.
Adaptive cycle planning uses project initiation information—the customer’s
mission statement, project constraints (e.g., delivery dates or user descriptions), and
basic requirements—to define the set of release cycles (software increments) that
will be required for the project.
Collaboration refers to the efforts for balancing the work based on predictable parts of the environment (planning and guiding them) and adapting to the uncertain surrounding mix of changes caused by various factors, such as technology, requirements, stakeholders, software vendors. The learning cycles, challenging all stakeholders, are based on the short iterations with design, build and testing. During these iterations the knowledge is gathered by making small mistakes based on false assumptions and correcting those mistakes, thus leading to greater experience and eventually mastery in the problem domain.[1]
^"Messy, Exciting, and Anxiety-Ridden: Adaptive Software Development". Archived from the original on 2017-10-04. Retrieved 2007-05-18.
and 24 Related for: Adaptive software development information
Adaptivesoftwaredevelopment (ASD) is a softwaredevelopment process that grew out of the work by Jim Highsmith and Sam Bayer on rapid application development...
development method, adaptivesoftwaredevelopment and being sympathetic to the need for an alternative to documentation driven, heavyweight software development...
Rapid application development (RAD), also called rapid application building (RAB), is both a general term for adaptivesoftwaredevelopment approaches, and...
agile development or adaptivesoftwaredevelopment. Code reuse GRASP (object-oriented design) Inheritance (object-oriented programming) List of software development...
American software engineer and author of books in the field of softwaredevelopment methodology. He is the creator of AdaptiveSoftwareDevelopment, described...
Lean softwaredevelopment is a translation of lean manufacturing principles and practices to the softwaredevelopment domain. Adapted from the Toyota Production...
from improvisational theatre and performance art, to agile, adaptivesoftwaredevelopment and smart mobs. The new avant-garde is no longer concerned with...
softwaredevelopment, with a long-standing combination of the two terms iterative and incremental having been widely suggested for large development efforts...
Adaptive learning, also known as adaptive teaching, is an educational method which uses computer algorithms as well as artificial intelligence to orchestrate...
while adaptive technology is specifically designed for disabled people. Consequently, adaptive technology is a subset of assistive technology. Adaptive technology...
cases, a wider array of adaptive systems such as artificial intelligence and machine learning. Neural network simulators are software applications that are...
The Adaptive Communication Environment (ACE) is an open source software framework used for network programming. It provides a set of object-oriented C++...
Software evolution is the continual development of a piece of software after its initial release to address changing stakeholder and/or market requirements...
Crowdsourcing softwaredevelopment or software crowdsourcing is an emerging area of software engineering. It is an open call for participation in any task...
Software testing is the act of checking whether software satisfies expectations. Software testing can provide objective, independent information about...
HashiCorp, Inc. is an American software company with a freemium business model based in San Francisco, California. HashiCorp provides tools and products...
features of the Adaptive Platform is service-oriented communication since the Platform is based on the Service - Oriented Architecture. Adaptive AUTOSAR is...
Free software, libre software, or libreware is computer software distributed under terms that allow users to run the software for any purpose as well as...
rewarding than new development. As such, it is a common target for outsourcing or offshoring. Usually, the team developing the software is different from...
the principles of Agile softwaredevelopment and Lean Management to various management processes, particularly product development. Following the appearance...
Adaptive management, also known as adaptive resource management or adaptive environmental assessment and management, is a structured, iterative process...