Jump to content

Adaptive architecture

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by SimonP (talk | contribs) at 17:17, 26 September 2013 (no longer an orphan). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Adaptive architecture is a system which changes its structure, behaviour or resources according to demand. The adaptation made is usually [always?] to non-functional characteristics rather than functional ones.

Something of a misnomer, because the thing that adapts is the working system, rather than the (more abstract) architecture which defines the adaptability that is required of that system.

Adaptive software architecture: Used by programmers in relation to a program. An adaptive algorithm "is an algorithm which changes its behavior based on the resources available. For example… in the C++ Standard Library, the stable partition [program] acquires as much memory as it can get (up to what it would need at most) and applies the algorithm using that available memory."

Adaptive infrastructure architecture: Used by infrastructure engineers in relation to the configuration of processors. The computing resources used by applications (the partition size, or the number of servers in a cluster, or the share of a processor, or the number of processes) are configured so that they shrink or grow with demand.

Adaptive business architecture: Could also be used (for example) in connection with a workflow system that assigns human resources to a task or service to match the demand for that task or service. Or an organisation structure that flexes in response to business changes.

See also