This is a standard architecture pattern of a software application. Data is processed step by step. Each step of data processing (data is cleaned, supplemented, transformed, etc.) is called filter, and the data is transported from processing step to processing step via pipes.

It is characteristic that only one (1) input channel exists for each processing step. This distinguishes Pipes and Filters from an architecture pattern such as Tea-and-Join Pipeline, where multiple input channels are allowed; this allows data to be processed in dependence on the data of a second/third/nth data stream.


The author is a manager in the software industry with international expertise: Authorized officer at one of the large consulting firms - Responsible for setting up an IT development center at the Bangalore offshore location - Director M&A at a software company in Berlin.