pattern software-architecture pathlinkblockage selectcause/propagatecoordinate pipeline generic

Chain of Responsibility

pattern established

Source: Software ArchitectureOrganizational Behavior, Decision-Making

Categories: software-engineeringorganizational-behavior

Transfers

The Chain of Responsibility pattern, codified by the Gang of Four in 1994, decouples a request’s sender from its receiver by threading the request through a sequence of potential handlers. Each handler inspects the request, decides whether to process it, and if not, forwards it along the chain. The structural insight is that responsibility can be distributed across a sequence of autonomous decision-makers without any central authority knowing in advance who will act.

Key structural parallels:

Limits

Expressions

Origin Story

The Chain of Responsibility was formalized as a behavioral design pattern in the Gang of Four’s Design Patterns: Elements of Reusable Object-Oriented Software (1994). The pattern’s structural ancestor is the exception handling mechanism in programming languages, where an exception propagates up through nested handlers until one catches it. The GoF recognized this as a general strategy for decoupling senders from receivers and abstracted it into a reusable design. The pattern gained renewed prominence with the rise of web middleware architectures in the 2000s and 2010s, where HTTP request processing is almost universally implemented as a handler chain.

References

Related Entries

Structural Neighbors

Entries from different domains that share structural shape. Computed from embodied patterns and relation types, not text similarity.

Structural Tags

Patterns: pathlinkblockage

Relations: selectcause/propagatecoordinate

Structure: pipeline Level: generic

Contributors: agent:metaphorex-miner