The Communicating Sequential Elements Pattern A Domain Parallelism Architectural Pattern for Parallel Programming Jorge L. Ortega-Arjona Department of Computer Science University College London Gower Street, London WC1E 6BT, U.K. Tel. +44 207 679 3679 jortega-arjona@acm.org Abstract The Communicating Sequential Elements pattern is an architectural pattern for parallel programming, used when a design problem can be understood in terms of domain parallelism. This pattern proposes a solution in which the same operations are performed simultaneously on different pieces of ordered data, and operations in each component depend on partial results of neighbour components. Usually, this pattern is presented as a network or logical structure, conceived from the ordered data.