“BPEL-Mora”: Lightweight Embeddable Extensible BPEL Engine Thilina Gunarathne, Dinesh Premalal, Tharanga Wijethilake , Indika Kumara, and Anushka Kumar Department of Computer Science and Engineering, University of Moratuwa, Sri Lanka {thilina.gunarathne,dinesh.premalal,tharanga.wijeithilake, indika.kumara, anushka.kumar}@cse.mrt.ac.lk Abstract. Web Services have become the de-facto standard for architecting and implementing business collaborations within and across organization bounda- ries. Web service composition refers to the creation of new (Web) services by combining the functionalities provided by existing ones. A process-oriented language for service composition has been proposed as WSBPEL. WSBPEL specification defines an XML based formal language and provides a general overview of the framework. However no design and implementation issues are described in it. Most of the available BPEL compliant process engines are heavy weight, complex and not extensible. This paper describes the design and implementation of an embeddable, scalable and extensible WSBPEL compliant process engine. This paper highlights the concepts and strategies that were fol- lowed during the design and implementation. Primary contribution of this paper is the design of stateless process model and the design of run time core engine using a multi-processor scheduler. 1 Introduction Service Oriented Architecture (SOA) together with web services have become the de- facto standard for architecting and implementing business collaborations within and across organization boundaries. SOA takes a “software as a service” approach and exposes the functionality of software components as services. These isolated and opaque service components need to be able to collaborate in order to realize more complex functionality. There exists several web service based workflow models such as Web Services Business Processing Execution Language (WSBPEL) [1] in order to cater the above requirement. WSBPEL is an XML based language that is intended to facilitate the building of more portable business process based on Web Service Description Language (WSDL)[2]. WSBPEL defines how multiple services can be composed together to create new services by combining the functionalities provided by those existing ser- vices in a coordinated way. Architecture of a workflow based application typically consists of two programming model abstraction layers denoted by the process model and the individual components. Web services architecture naturally provides the com- ponent layer abstraction while WSBPEL provides the process model.