Domain object identified by persistent identity.

Architecture organized around shared data resources.

Pattern reliably publishing database changes as messages.

Pattern creating families of related objects.

Immutable object defined by its values.

Architecture processing data through sequential stages.

Pattern preventing duplicate message processing.

Pattern constructing complex objects step by step.

Model using a shared data repository for collaboration.

Deploying supporting functionality beside an application.