A method to generate executables for a business process execution language server includes: defining a process definition that defines a sequence of activities to be performed without specifying computer code used to implement the executables; binding each activity in the sequence to an action within a data type that is representative of a service associated with the corresponding activity; binding each data type to an instance of the corresponding data type that is representative of the service and a provider of the service; and generating the computer code based on the bindings.