Dabei handelt es sich um ein Standard-Architektur-Pattern einer Softwareanwendung. Daten werden schrittweise verarbeitet. Jeder Schritt der Datenverarbeitung (Daten werden bereinigt, ergänzt, transformiert, etc.) wird hierbei als Filter bezeichnet, die Daten werden über Pipes von Verarbeitungsschritt zu Verarbeitungsschritt transportiert.
Charakteristisch ist etwa, dass je Verarbeitungsschritt nur ein (1) Eingabekanal existiert. Damit grenzt sich Pipes and Filters ab von einem Architekturpattern wie Tee-and-Join-Pipeline, wo mehrere Eingabekanäle zugelassen sind; das erlaubt etwa, dass Daten in Abhängigkeit zu den Daten eines zweiten/dritten/n-ten Datenstroms verarbeitet werden.