Wednesday, September 2, 2020

BPEL - IQA

 Q) What Is BPEL?

Ø  BPEL stands for Business Process Execution Language.

Ø  it is one of the component of SOA Suite tool.

Ø  BPEL is a XML based language used to design business process/flows.

Ø  We perform service orchestration in BPEL.

Ø   BPEL stands for Business Process Execution Language, it is one of the component of SOA Suite tool. BPEL is a XML based language used to design business process/flows. We perform service orchestration in BPEL.

Ø  We design a business process that integrates a series of discrete services into an end-to-end process flow.

Ø  BPEL is a sub-set of the Business Process Management discipline.

Ø  BPEL bridges the gap between BPM and SOA.

Ø  BPEL does what BPM cannot do on its own

i.e. execute/orchestrate processes across department/functional systems in a standard way while at the same time providing

Visibility & Control to the Business Process Owner 

Business Process Execution Language (BPEL) is:

Ø   A mark-up language for orchestrating services into an end-to end process flow

Ø   Built on top of XML-related specifications

Ø   Executed by a BPEL engine that can process the BPEL XML source

Main Usage Patterns for BPEL Components

• BPEL is good for creating components that:

– Call upon multiple services, especially asynchronous and longrunning ones

– Provide complex, externalized decision logic 

• The BPEL component works closely with:

– Mediator

– Business Rule service components

 – Human Task components

– Notification service 

What Are Different Parts Of BPEL?

Below are different parts of BPEL

1.  Service Interface: A WSDL describing the functionality of the BPEL process.

 The service interface provides the end user a way to interact with the BPEL process component using Service Interface / Service Binding.

2.    Activities: units of work. The actual elements that make up the BPEL process flow or sequence of instructions to be executed.

3.    Partner links: also called Reference bindings.

 A partner link describes the roles played for the interaction between the BPEL process and the service it invokes.

Wire

Connection between service & binding component and within service & binding components know as wire.

I.e. this enable us to graphically connect the components in a SOA composite application.

There are two types of request

Inbound: something which is coming from outer world toward us.

It will be always implicit (we need not to be initiated)

Outbound: where we r sending

It will be always explicit (need to be initiated)

Q) What all BPEL templates are available in SOA Suite tool?

 Primarily we have three types of BPEL template in SOA Suite tool.

1. Synchronous BPEL Template

2. Asynchronous BPEL Template

3. OneWay BPEL Template 

Q) What all versions available of BPEL?

 We have two versions of BPEL : 1.1 and 2.0. 

Q) What is Synchronous BPEL process?

BPEL process is known as synchronous when it accept request and provide immediate response. 

Q) What is default timeout time set for synchronous BPEL process?

 Default setting is 30 seconds that means synchronous BPEL process needs to complete the process within 30 seconds and if it exceeds this limit then it throw time out error. 

Q) Can we have handle Synchronous BPEL timeout error with error handlers?

 No, we cannot handle timeout error with error handlers. 

Q) What all activities we get when we generate BPEL using synchronous template?

 When we generate synchronous BPEL process then by default we get “Receive” and “Reply” activity.

“Receive” activity is used to receive the request message and “Reply” activity is used to send the response back. 

Q) Can we have multiple reply activities in one synchronous BPEL process?

 Yes, we can have more than 1 reply activity in synchronous BPEL process. 

Q) What is Asynchronous BPEL process?

 BPEL process is known as asynchronous when it accept the request and provide response after some time. 

Q) Do we have time limit in asynchronous BPEL process for processing?

No, there is no time limit in asynchronous BPEL process to complete the processing. 

Q) What all activities we get when we generate BPEL using asynchronous template?

 When we generate asynchronous BPEL process then by default we get “Receive” and “CallBack” activity. “Receive” activity is used to receive the request message and “CallBack” activity is used to send the response back. 

Q) What is OneWay BPEL process?

 OneWay BPEL process accept the request message but does not give response. 

Q) What all activities we get when we generate BPEL using oneway template?

When we generate oneway BPEL process then by default we get “Receive” activity. “Receive” activity is used to receive the request message. 

Q) How many types of variables we can have in BPEL?

In BPEL, we can have three types of variables.

1. Simple Types: E.g. String, Int, double, float etc.

2. Element Type: Based upon schema element

3. Message Type: Based upon WSDL message 

Q) All the variables in BPEL are global in nature?

This depends how we define the variable, if we define the variable at BPEL level then it becomes global, but if we define variable at scope level then it becomes local. Global variables can be accessed anywhere in the BPEL process but local variables can only be accessed in that scope only. 

Q)  Which activity we use in BPEL for parallel processing?

 We use Flow & FlowN activities for parallel processing in BPEL.

1. Flow activity: It is used when we want to perform two different operations/logic in parallel and we know about those steps that at design time.

2. FlowN activity: It is used to process same type of messages in parallel and used when we don’t know how many messages we can receive at design time. 

Q) What is Pick activity?

Pick activity is used when we following scenario.

1. When we invoke asynchronous reference from BPEL and we need response back in certain time frame and if we got response after that time then we need to throw exception.

2. When we want to have multiple entry point for any composite. E.g. our process can be initiated by JMS queue and it is also initiated by File polling. 

Q) How many branches we have in Pick activity?

We have two branches in pick activity.

1. OnMessage: This is similar to “Receive” activity. This is used when we want to receive the message from source or reference service. (Based on Operation)

2. OnAlarm: In this branch we set the time i.e. used to set expiry time. On certain amount of time we want one branch or flow will be executed.


No comments:

Post a Comment

SOA Overview Part-1

  Middleware It provides a mechanism for the process to interact with other processes running on multiple network machines. Advantages...