Why does SOA need BPEL? The answer, according to Active Endpoints' Principal Architect Mike Pellegrini, is orchestration. The Business Process Execution Language isn't for creating Web services, it is for creating higher-level abstractions on top of those services.
BPEL is the Web services orchestration standard from OASIS defining a portable execution format.
BPEL is considered "programming in the large," Pellgrini explained, because it deals with higher-level constructs such as flow control and looping, processes that are long running (for instance, a request for a loan approval might be routed to the accounting department and sit there for days before being approved or denied), fault tolerance (it can be set up to start an alarm process if accounting does not respond to the loan request within a week), and it uses compensation instead of transactions (a transaction can't be kept open for the length of time needed in a long-running process, so, if a stage of a process fails, it has to be "fixed," not just rolled back).