jargon

Comparison

Blackboard patternvsPipes and filters

Blackboard pattern

several independent components read from and write to one shared workspace, and no one of them owns the answer.

An architecture for problems with no deterministic solution path: independent knowledge sources contribute partial results to a shared structure until a solution emerges, coordinated by a control component. Speech recognition and sensor fusion are the traditional cases. It is in this corpus because it appears in architecture exams and reading lists, and because its shared mutable centre is a useful contrast with pipes and filters.

Full entry →

Pipes and filters

each stage takes one thing and returns another, knows nothing about its neighbours, and you reordered two of them safely.

Decomposing processing into independent stages connected by a uniform channel, so each stage transforms and passes along. Unix pipelines, compilers, ETL jobs and stream processors are all this shape, and its virtue is that stages compose, reorder and parallelise because they share only the data format. The constraint is that shared format: anything a stage needs that the pipe does not carry has to be smuggled, and that is where the design breaks down.

Full entry →

Related comparisons