1
By : Mostafa Arab 
2
 Why SOA ? 
 What is Service? 
 Drivers for services 
 What is SOA 
 Loose Coupling 
 Service Types 
 Service Composition 
 Process Services 
 SOA Building Blocks 
 ESB 
 BPM 
 BPMS life cycle 
 BPMS Architecture 
 BPMS Integration 
 BPM & SOA? 
 EA & BPM & SOA 
Agenda 
3
Why SOA 
 Organizations need to adapt and respond rapidly to customer demands, 
put new products and services in the market before competitors do : 
Need to be agile 
 SOA makes it easier to bridge this gap : by creating a more flexible architecture 
 Lower cost for changes 
 Lower side effects after changes 
4
 SOA is about Services 
 So What is Service? 
What is Service 
 service is something useful a provider does for a consumer 
 an economic term to describe the goods and services that 
 organizations and people produce 
 sell to one another 
 buy from each other 
 Can be simple or complex 
5
 Without Service 
What is Service 
6
 With Service 
What is Service 
7
What is Service 
8
 Flexibility 
Drivers for services 
 Services are small building blocks with a limited and clear set of capabilities 
 easier to support the changing requirements 
 preventing domino effects for changes in software 
 Standardization 
 Services are frequently provided using open standards 
 hiding the underlying technical complexity and details 
 more vendor-independent 
 Open standards such as REST, SOAP, WSDL, WS-*, XML 
9
 Cost reduction 
Drivers for services 
 Reusing a service is cheaper than building, maintaining, and hosting duplicate 
functionality 
 Shorter time to market 
 By reusing services, functionality can be realized faster, thus diminishing the time 
to market 
 Increase in quality 
 Because more consumers use a service, it is better tested 
 There is no data duplication, so the data quality increases as well. 
10
What is SOA 
 SOA is an architecture approach for defining, linking, and integrating reusable 
business services that 
 have clear boundaries 
 and are self-contained with their own functionalities 
(http:/www.ibm.com/developerworks/webservices/tutorials/ws-soa-ibmcertified/ws-soa-ibmcertified.html/) 
 SOA fits best for 
 Centralized business functions used by multiple entities 
 Integration with partners 
 The existence of old technologies that are still working 
11
What is SOA 
 What factors contribute to SOA's most popular capability: business agility enablement? 
 Loose coupling 
 Enables real-time business capabilities because it removes the hard connections that impede the 
ability to change 
 Reuse ( (استفاده مجدد 
 Makes processes more consistent because they depend on the same reused components 
 Decreases the impact of change because it's done in a central location and reflects on all concerned 
parties 
 Helps decrease the cost of integration because the component has already been integrated 
 Lets you publish once but consume many times 
 Extensibility ( (توسعه پذیری 
 Makes SOA solutions available to all sizes of organizations 
 Makes it easier to add or change partners 
12
What is SOA 
Loose Coupling 
 Coupling can be "low" (also "loose" and "weak") or "high" (also "tight" and "strong") 
 Loose coupling is an approach to interconnecting the components in a system or 
network so that those components depend on each other to the least extent practicable 
 Coupling refers to the degree of direct knowledge that one element has of another 
 The goal of a loose coupling architecture is to reduce the risk that a change made 
within one element will create unanticipated changes within other elements 
13
What is SOA 
Loose Coupling 
14
What is SOA 
15 
 Reuse
What is SOA 
Service Types 
 Service composition means the creation of new services from combining existing 
services 
 services can be divided into 
 Elementary services: The smallest possible components that qualify as services. For 
example, a service that can be used for zip code lookups 
 Composite services: Services that result from combining two or more other services into 
one service that provides more value. Composite services are executed in a single 
transaction and their execution time is relatively short. An example is a service to book a 
hotel and flight together 
 Process services: Longer running services that can take a couple of hours, days, or even 
more to complete and span multiple transactions. An example is a service for ordering a 
book online. The entire process (order, pay, ship, deliver) involves multiple transactions 
and takes a couple of hours at least 
16
 service composition 
What is SOA 
Service Composition 
 Aggregation: Combining two or more services into larger ones is fairly straightforward 
(for example invoke the service operation A, then service operation B, then service 
operation C). Service aggregation involves short-running services 
 Orchestration: Combining several services into a flow or process that is more complex in 
nature and contains decision logic and different execution paths. Orchestration involves a 
central component such as a BPM platform that manages the orchestration of services. 
Service orchestration involves longer-running services 
17
What is SOA 
Process Services 
 Process services are services that use other services to execute their flow, like 
composite services 
 The difference between process services and composite services 
 Duration: Process services are long-running processes that can take hours, days, weeks, 
or even longer, while composite services are short-lived services that take at most a couple 
of minutes to complete 
 Transactions: Process services can span multiple steps, or transactions; composite 
services are executed within a single transaction. 
 State: Due to their complexity and duration, process services are required to maintain 
state between the different service operations that are invoked 
18
What is SOA 
Process -Service 
19
SOA building blocks 
20
 Enterprise Service Bus 
 Component that exposes the services to consumers and can also contain the implementation of 
composite services ( Aggregated ) 
 Business Process Management 
 Component to design, monitor, change, host and execute business processes 
 Business rules 
 Component to host, create, and monitor business rules 
 Registry and repository 
 The registry and repository are used to describe services and events and important metadata and 
artifacts for consumers to improve use of services 
 …… 
SOA Building Blocks 
21
SOA building blocks 
 services can be combined into larger Services by using 
 Enterprise Service Bus 
Aggregated into composite services in a straightforward fashion 
 Business Process Management 
Strictly orchestrated into process services using Business Process Management (BPM) tooling 
 Case Management 
Flexibly combined into process services using Case Management tooling 
22
SOA building blocks 
ESB 
 Common functionalities that an ESB should include are 
 Validation: The ESB can validate the incoming requests and/or the outgoing responses to the 
specified interface. 
 Composite services: Elementary services can be aggregated into composite services using an ESB. 
 Routing: Services are hidden behind the ESB and not directly visible to consumers. When a 
request from a service consumer is received, the ESB routes it to the correct service provider 
 Transformation: An ESB exposes services in a data format and protocol that is suited for service 
consumers. It provides transformation of protocols and data between service consumers and service 
providers 
23
SOA building blocks 
ESB 
24
SOA building blocks 
ESB 
25
SOA building blocks 
BPM & BPEL 
 BPM deals with the management and improvement of your business processes 
 BPEL (Business Process Execution Language) is an XML-based language that allowsWeb 
services in a service-oriented architecture (SOA) to interconnect and share data 
 BPEL provides a relatively easy and straightforward way to compose several Web services 
into new composite services called business processes 
26
SOA building blocks 
BPMS life cycle 
27
BPMS Architecture 
28 
Design & 
Simulation 
Services 
Monitoring 
Services 
Process 
Registry 
Rules 
Engine 
Orchestration 
(Workflow) 
Engine 
Integration 
Services 
Content / Data 
Repositories
 BPM application will seldom access just one source of information 
 Need to link the Orchestration Engine with other sources of data and services 
 May require variety of integration techniques: 
 EAI (Enterprise application integration) 
 message brokers with Common Object Request Broker Architecture and COM+ 
 using common databases and data standards implemented with the Extensible Markup Language (XML) 
 Middleware 
 message queueing 
 … 
 ESB 
 BPM to BPM 
BPMS Architecture 
BPMS Integration 
29
BPMS Architecture 
30 
Before BPMS After BPMS 
CRM 
Financial 
Systems
BPM & SOA? 
 Business process management (BPM) is a management science that focuses on improving corporate 
performance by managing and optimizing a company's business processes.(The Ultimate Guide to 
Business Process Management: Everything You Need to Know and How to Apply It to Your 
Organization, Theodore Panagacos) 
 BPMS is BPM Suite (Software or System) 
 BPMS is the identification of the software that handles the management of business processes 
31
BPM & SOA? 
 If we use BPM as a management science : 
 There is no need to use SOA or any integration methods 
 If we use it as a software (or suite) : 
 We should use SOA or other integration method to integrate 
it with other softwares but SOA is more suitable and flexible 
32
EA & BPM & SOA 
33
با تشکر 
34
References 
1. SOA Made Simple 
Lonneke Dikmans , Ronald van Luttikhuizen 
Copyright © 2012 Packt Publishing 
2. http://www.ibm.com/developerworks/webservices/tutorials/ws-soa-ibmcertified/ 
ws-soa-ibmcertified.html 
3. http://en.wikipedia.org/wiki/Coupling_(computer_programming)

Bpm soa

  • 1.
  • 2.
  • 3.
     Why SOA?  What is Service?  Drivers for services  What is SOA  Loose Coupling  Service Types  Service Composition  Process Services  SOA Building Blocks  ESB  BPM  BPMS life cycle  BPMS Architecture  BPMS Integration  BPM & SOA?  EA & BPM & SOA Agenda 3
  • 4.
    Why SOA Organizations need to adapt and respond rapidly to customer demands, put new products and services in the market before competitors do : Need to be agile  SOA makes it easier to bridge this gap : by creating a more flexible architecture  Lower cost for changes  Lower side effects after changes 4
  • 5.
     SOA isabout Services  So What is Service? What is Service  service is something useful a provider does for a consumer  an economic term to describe the goods and services that  organizations and people produce  sell to one another  buy from each other  Can be simple or complex 5
  • 6.
     Without Service What is Service 6
  • 7.
     With Service What is Service 7
  • 8.
  • 9.
     Flexibility Driversfor services  Services are small building blocks with a limited and clear set of capabilities  easier to support the changing requirements  preventing domino effects for changes in software  Standardization  Services are frequently provided using open standards  hiding the underlying technical complexity and details  more vendor-independent  Open standards such as REST, SOAP, WSDL, WS-*, XML 9
  • 10.
     Cost reduction Drivers for services  Reusing a service is cheaper than building, maintaining, and hosting duplicate functionality  Shorter time to market  By reusing services, functionality can be realized faster, thus diminishing the time to market  Increase in quality  Because more consumers use a service, it is better tested  There is no data duplication, so the data quality increases as well. 10
  • 11.
    What is SOA  SOA is an architecture approach for defining, linking, and integrating reusable business services that  have clear boundaries  and are self-contained with their own functionalities (http:/www.ibm.com/developerworks/webservices/tutorials/ws-soa-ibmcertified/ws-soa-ibmcertified.html/)  SOA fits best for  Centralized business functions used by multiple entities  Integration with partners  The existence of old technologies that are still working 11
  • 12.
    What is SOA  What factors contribute to SOA's most popular capability: business agility enablement?  Loose coupling  Enables real-time business capabilities because it removes the hard connections that impede the ability to change  Reuse ( (استفاده مجدد  Makes processes more consistent because they depend on the same reused components  Decreases the impact of change because it's done in a central location and reflects on all concerned parties  Helps decrease the cost of integration because the component has already been integrated  Lets you publish once but consume many times  Extensibility ( (توسعه پذیری  Makes SOA solutions available to all sizes of organizations  Makes it easier to add or change partners 12
  • 13.
    What is SOA Loose Coupling  Coupling can be "low" (also "loose" and "weak") or "high" (also "tight" and "strong")  Loose coupling is an approach to interconnecting the components in a system or network so that those components depend on each other to the least extent practicable  Coupling refers to the degree of direct knowledge that one element has of another  The goal of a loose coupling architecture is to reduce the risk that a change made within one element will create unanticipated changes within other elements 13
  • 14.
    What is SOA Loose Coupling 14
  • 15.
    What is SOA 15  Reuse
  • 16.
    What is SOA Service Types  Service composition means the creation of new services from combining existing services  services can be divided into  Elementary services: The smallest possible components that qualify as services. For example, a service that can be used for zip code lookups  Composite services: Services that result from combining two or more other services into one service that provides more value. Composite services are executed in a single transaction and their execution time is relatively short. An example is a service to book a hotel and flight together  Process services: Longer running services that can take a couple of hours, days, or even more to complete and span multiple transactions. An example is a service for ordering a book online. The entire process (order, pay, ship, deliver) involves multiple transactions and takes a couple of hours at least 16
  • 17.
     service composition What is SOA Service Composition  Aggregation: Combining two or more services into larger ones is fairly straightforward (for example invoke the service operation A, then service operation B, then service operation C). Service aggregation involves short-running services  Orchestration: Combining several services into a flow or process that is more complex in nature and contains decision logic and different execution paths. Orchestration involves a central component such as a BPM platform that manages the orchestration of services. Service orchestration involves longer-running services 17
  • 18.
    What is SOA Process Services  Process services are services that use other services to execute their flow, like composite services  The difference between process services and composite services  Duration: Process services are long-running processes that can take hours, days, weeks, or even longer, while composite services are short-lived services that take at most a couple of minutes to complete  Transactions: Process services can span multiple steps, or transactions; composite services are executed within a single transaction.  State: Due to their complexity and duration, process services are required to maintain state between the different service operations that are invoked 18
  • 19.
    What is SOA Process -Service 19
  • 20.
  • 21.
     Enterprise ServiceBus  Component that exposes the services to consumers and can also contain the implementation of composite services ( Aggregated )  Business Process Management  Component to design, monitor, change, host and execute business processes  Business rules  Component to host, create, and monitor business rules  Registry and repository  The registry and repository are used to describe services and events and important metadata and artifacts for consumers to improve use of services  …… SOA Building Blocks 21
  • 22.
    SOA building blocks  services can be combined into larger Services by using  Enterprise Service Bus Aggregated into composite services in a straightforward fashion  Business Process Management Strictly orchestrated into process services using Business Process Management (BPM) tooling  Case Management Flexibly combined into process services using Case Management tooling 22
  • 23.
    SOA building blocks ESB  Common functionalities that an ESB should include are  Validation: The ESB can validate the incoming requests and/or the outgoing responses to the specified interface.  Composite services: Elementary services can be aggregated into composite services using an ESB.  Routing: Services are hidden behind the ESB and not directly visible to consumers. When a request from a service consumer is received, the ESB routes it to the correct service provider  Transformation: An ESB exposes services in a data format and protocol that is suited for service consumers. It provides transformation of protocols and data between service consumers and service providers 23
  • 24.
  • 25.
  • 26.
    SOA building blocks BPM & BPEL  BPM deals with the management and improvement of your business processes  BPEL (Business Process Execution Language) is an XML-based language that allowsWeb services in a service-oriented architecture (SOA) to interconnect and share data  BPEL provides a relatively easy and straightforward way to compose several Web services into new composite services called business processes 26
  • 27.
    SOA building blocks BPMS life cycle 27
  • 28.
    BPMS Architecture 28 Design & Simulation Services Monitoring Services Process Registry Rules Engine Orchestration (Workflow) Engine Integration Services Content / Data Repositories
  • 29.
     BPM applicationwill seldom access just one source of information  Need to link the Orchestration Engine with other sources of data and services  May require variety of integration techniques:  EAI (Enterprise application integration)  message brokers with Common Object Request Broker Architecture and COM+  using common databases and data standards implemented with the Extensible Markup Language (XML)  Middleware  message queueing  …  ESB  BPM to BPM BPMS Architecture BPMS Integration 29
  • 30.
    BPMS Architecture 30 Before BPMS After BPMS CRM Financial Systems
  • 31.
    BPM & SOA?  Business process management (BPM) is a management science that focuses on improving corporate performance by managing and optimizing a company's business processes.(The Ultimate Guide to Business Process Management: Everything You Need to Know and How to Apply It to Your Organization, Theodore Panagacos)  BPMS is BPM Suite (Software or System)  BPMS is the identification of the software that handles the management of business processes 31
  • 32.
    BPM & SOA?  If we use BPM as a management science :  There is no need to use SOA or any integration methods  If we use it as a software (or suite) :  We should use SOA or other integration method to integrate it with other softwares but SOA is more suitable and flexible 32
  • 33.
    EA & BPM& SOA 33
  • 34.
  • 35.
    References 1. SOAMade Simple Lonneke Dikmans , Ronald van Luttikhuizen Copyright © 2012 Packt Publishing 2. http://www.ibm.com/developerworks/webservices/tutorials/ws-soa-ibmcertified/ ws-soa-ibmcertified.html 3. http://en.wikipedia.org/wiki/Coupling_(computer_programming)