Many of today's business activities are long running applications. These activities involve cooperative efforts by many partners. Different partners interacting with each other at the same time maintain their autonomy. In such an environment, the traditional transaction model becomes too restrictive due to its rigorous ACID property. A workflow model may relax ACID property to meet the application requirement. Many workflow models exist and different models are suitable for the requirements of different kinds of applications. Designing a workflow model that is strong enough to capture the main characteristics of an application but weak enough to be supported efficiently by the underlying system is a challenging problem. The objectives of this research include the design of workflow models that can better fit the requirement of business applications and their efficient implementations.