An agile enterprise rapidly adapts to changing business requirements by adapting or conceiving business processes (BPs) in response to normal or disruptive business events (BEs). This paper stresses out the role of service-orientation, service-oriented architecture (SOA), and web services along with the principles of abstraction, separation of concerns, and specialisation in modelling and implementing BPs. A BP is treated as a dynamic abstraction that specifies a state reflecting the control flow and data flow. This abstraction consists of a set of specialised services having separated concerns, namely controller service, and worker services. Shared, discoverable, reusable enterprise assets known as business objects (BOs) realise the latter. BOs encapsulate activities and data; and play the role of service units. Changes in the BP in terms of business functions and rules are solely reflected in the state, the controller service adapts to the state changes, which allows a dynamic composition of software solutions supporting changing BPs