Composability

From Wiki @ Karl Jones dot com
Jump to: navigation, search

Composability is a system design principle that deals with the inter-relationships of components.

Description

A highly composable system provides recombinant components that can be selected and assembled in various combinations to satisfy specific user requirements.

In information systems, the essential features that make a component composable are that it be:

  • self-contained (modular): it can be deployed independently – note that it may cooperate with other components, but dependent components are replaceable
  • stateless: it treats each request as an independent transaction, unrelated to any previous request. Stateless is just one technique; managed state and transactional systems can also be composable, but with greater difficulty.

It is widely believed that composable systems are more trustworthy than non-composable systems because it is easier to evaluate their individual parts.

See also

General

Examples

Related concepts

External links


Software engineering