El lenguaje CCS fue propuesto (""A Calculus of Communicating Systems"") por Robin Milner para ejemplificar su idea de un álgebra para representar simbólicamente los procesos que conforman un sistema de software paralelo, su proposición fue hecha poco antes que la de CSP de Tony Hoare (""Communicating Sequential Processes""), formando ambos lenguajes los ejemplos por excelencia de lo que es un álgebra de procesos.