Composability

Composability is a system design principle that deals with the inter-relationships of components. A highly composable system provides 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.

Simulation theory
In simulation theory, current literature distinguishes between Composability of Models and Interoperability of Simulation. Modeling is understood as the purposeful abstraction of reality, resulting in the formal specification of a conceptualization and underlying assumptions and constraints. Modeling and simulation (M&S) is, in particular, interested in models that are used to support the implementation of an executable version on a computer. The execution of a model over time is understood as the simulation. While modeling targets the conceptualization, simulation challenges mainly focus on implementation, in other words, modeling resides on the abstraction level, whereas simulation resides on the implementation level. Following the ideas derived from the Levels of Conceptual Interoperability model (LCIM), Composability addresses the model challenges on higher levels, interoperability deals with simulation implementation issues, and integratability with network questions. Tolk proposes the following definitions: Interoperability allows exchanging information between the systems and using the information in the receiving system. Composability ensures the consistent representation of truth in all participating simulation systems of the federation.

Examples

 * Composable operations
 * Minimal structured control flow
 * Universal composability

Related concepts

 * Function composition
 * Object composition
 * Principle of compositionality