The eQoSystem project seeks to simplify the development and management of business processes deployed on a distributed Service Oriented Architecture (SOA).

The target architecture is an enterprise system with distributed services coordinated by application workflows or business processes. Declarative goals, specified in Service Level Agreements (SLA), are used to assist in the development of such applications, and to automate the monitoring, deployment, and resource provisioning tasks.

SOA Development Process


The complexity of developing and maintaining these processes is addressed by systematic SOA development cycles that identify the roles and specialities required by participants at each stage of the development cycle.

While tools exist to assist in this process, the development, administration and maintenance of a business process still requires much manual effort that can be automated. In particular, the business process' non-functional goals, often expressed as Service Level Agreements (SLA), need to be manually considered at each stage of the development process. For example, completion time requirement for a process will influence decisions in the development, deployment and resource provisioning, and monitoring of the process.

In eQoSystem, the SLAs are captured and formalized early in the development process in a machine-understandable form. This allows the system to interpret, infer, automate various tasks. For example, an SLA on the required throughput of a process can automatically activate the instrumentation and generate the rules necessary to monitor the process throughput.


The eQoSystem architecture consists of several layers that together realize a distributed workflow execution engine that adapts itself based on goals or SLAs. The system builds on the PADRES distributed messaging and coordination infrastructure.


Benefits of SLA Integration

The integration of SLAs into development tools in a formal manner provides improves the development cycle.

  • Simplicity: Non-technical managers can specify goals without detailed knowledge of the implementation technologies.
  • Flexibility: The requirements and implementation technologies can be independently changed.
  • End-to-end specification: Requirements captured in the tools can be enforced and monitored throughout the development cycle.
  • Adaptive efficiency: The system can allocate resources to meet changing requirements.

Several tactics can be utilized to achieve the last point above.

  • Dynamic service selection: Discover services with capabilities that satisfy goals.
  • Monitoring: Only monitor the business events related to goals, and feed back measurements to support runtime adaptations.
  • Distributed execution: Move portions of a process to strategic locations, and allocate resources in a fine-grained manner.
  • ESB adaptation: Reconfigure the ESB topology to satisfy goals.


Guoli Li, Vinod Muthusamy, and Hans-Arno Jacobsen. A Distributed Service Oriented Architecture for Business Process Execution. ACM Transcations on the Web, 2010. [Paper]

Vinod Muthusamy, Hans-Arno Jacobsen, Tony Chau, Allen Chan, and Phil Coulthard. SLA-Driven Business Process Management in SOA. CASCON, November 2009, Toronto, Canada. [Paper]

Songlin Hu, Vinod Muthusamy, Guoli Li, and Hans-Arno Jacobsen. Transactional Mobility in Distributed Content-Based Publish/Subscribe Systems. ICDCS, 2009, Montreal, Canada. [Paper]

Wei Yan, Songlin Hu, Vinod Muthusamy, Hans-Arno Jacobsen, and Li Zha. Efficient Event-based Resource Discovery. Distributed Event-Based Systems, July 2009. [Paper]

Vinod Muthusamy, Hans-Arno Jacobsen. SLA-Driven Distributed Application Development. Workshop on Middleware for Service Oriented Computing, December 2008, Leuven, Belgium. [Paper]

Tony Chau, Vinod Muthusamy, Hans-Arno Jacobsen, Elena Litani, Allen Chan, and Phil Coulthard. Automating SLA Modeling. CASCON, October 2008. [Paper]

Songlin Hu, Vinod Muthusamy, Guoli Li, and Hans-Arno Jacobsen. Distributed Automatic Service Composition in Large-Scale Systems. Distributed Event-Based Systems, July 2008. [Paper]


The eQoSystem project is a collaboration between the Middleware Systems Research Group at the Unviersity of Toronto and the IBM Centers for Advanced Studies in Toronto.

Project members include:

  • Hans-Arno Jacobsen , University of Toronto
  • Vinod Muthusamy, University of Toronto
  • Phil Coulthard, IBM Toronto
  • Allen Chan, IBM Toronto
  • Elena Litani, IBM Toronto
  • Tony Chow, IBM Toronto