BPEL merupakan sebuah bahasa yang mendeskripsikan proses eksekusi business process melalui web service. BPEL menggunakan XML untuk mendefinisikan komposisi fungsi-fungsi web service yang akan dieksekusi.

Web service yang digunakan untuk memproses business process sendiri dapat disusun dalam dua cara :

  1. Orchestration

Di dalam orkestrasi, terdapat sebuah proses terpusat yang mengatur semua web service yang terlibat. Web service tidak perlu tahu bahwa sebenarnya ia terlibat dalam bagian dari business process yang lebih tinggi tingkatannya karena hanya proses terpusat yang yang mengetahui hal ini.

  1. Choreography

Pada koreografi, proses tidak dijalankan secara terpusat. Setiap web service yang terlibat dalam koreografi mengetahui kapan harus mengeksekusi opreasi dan dengan siapa web service tersebut akan berinteraksi. Susunan koreografi mempunyai fokus pada pertukaran pesan. Semua web service pada susunan ini harus tahu business process apa yang sedang dijalankan, operasi apa yang dieksekusi, pesan apa yang akan dipertukarkan, dan kapan waktunya web service harus berjalan.