TIBCO Business Works Interview Questions and Answers

Q1 : What are the three scenarios where BW engine must be configured with database persistence instead of Local File?
A : The three scenarios are:

  • Shared Variables across BW engines.
  • Locking across groups in multiple BW engines.
  • Wait Notify across BW engines.

Q2 : What are the modes of TIBCO BW Installations?
A :

  • GUI mode
  • Console mode
  • Silent mode

Q3 : What are the TIBCO BW activities that can participate in transactions?
A : Not all TIBCO Business Works activities can participate in a transaction. Only the following types of activities have transactional capabilities:

  • JDBC activities
  • JMS activities
  • ActiveEnterprise Adapter activities that use JMS transports
  • EJB activities
  • TIBCO iProcess BusinessWorks Connector activities

Q4 : What all palettes you have worked in TIBCO BW? 
A : File palette, generall activities palette, jdbc palette, http palette, jms palette, parse palette, service palette, soap palette, wsdl palette.

Q5 : What are the different types of variables available in TIBCO?
A : There are three types of variables available in TIBCO. They are:

  • Global variables: Global variables are used for assigning constants a value which is used over a project
  • Process variables: Process variables are again of four types.

They are:

  • Activity output
  • Predefined process variables
  • Error variables
  • User-defined process variables.
  • Predefined process variables include $_GlobalVarialbes and $_ProcessContext
  • shared variables – User defined process variables could be defined as a process definition level and assigned a value by using an assign activity.

Q6 : What are different types of transaction groups supported in TIBCO BW? 
A : Iterate, repeat until true, repeat on error until true, critical section, transaction, pick first, while true.

Q7 : Can two queue receivers listen to the same queue? If yes, if the message arrives on the queue, when the receiver receives it?  
A : The queue which has made the connection first. First come first serve.

Q8 : What is the critical section in TIBCO Business works and what is it used for? 
A : Critical section is used to sync process instances so that only one process instance executes the grouped activities at any given time. Any concurrently running process instances that contain a corresponding critical section group wait until the process instance that is currently executing the critical section group completes. Particularly used for controlling access to shared variables. Critical section is one of the group actions. Others are iterating, repeat until true, repeat on error until true, while true, pick first and transaction. If we select critical section as the group, then we get two options. Single group and multiple groups.
Single Group
If you wish to synchronize process instances for a single process definition in a single process engine (only one ear(instance) is deployed), perform the following:

  1. Create a group around the activities you wish to synchronize.
  2. Specify Critical Section for the Group Action field.
  3. Specify Single Group for the Scope field.
  4. Only one process instance at any given time will execute the activities contained in the Critical Section group.

Multiple Groups
If you wish to synchronize process instances for multiple process definitions, or if you wish to synchronize process instances across multiple process engines, perform the following:

  1. Create a Lock shared configuration resource and specify a name for the resource.
  2. To perform the synchronization across multiple process engines, check the Multi-Engine field of the Lock resource. When the process instances are executed by the same process engine, locking is performed in memory. When the process instances are executed across multiple engines, the process engines must be configured to use a database for storage, and a database transaction is performed to ensure that only one process instance is executing the critical section group at any given time.
  3. Create a group around the activities you wish to synchronize.
  4. Specify Critical Section for the Group Action Field.
  5. Specify Multiple Groups for the Scope field.
  6. Use the Browse button in the Lock Object field to locate the Lock shared configuration resource you created in Step 1.
  7. Perform steps 3 to 6 for any process definitions you wish to synchronize. Make sure you specify the same Lock shared configuration object for all Critical Section groups.

Q9 : What is prefetch and failsafe?
A : Prefetch is fetching the messages from the server before receiver calls. Failsafe property enables to write persistence messages to the file with synchronous i/o calls.

Q10 : If there are hundred messages lying on the queue, what will you do and which activity will you use to retrieve one message at a time? 
A : JMS Queue receiver with confirm activity. Sequencing key in a misc tab of the configuration could also be used.

Q11 : Can you change the value of a global variable at runtime?
A : You can change the value of a global variable when you deploy your project in TIBCO Administrator training Banglore.
See the section on modifying runtime variables in TIBCO BusinessWorks Administration for more information on using the TIBCO Administrator.
You can also specify values for global variables when starting a process engine on the command line. To do this, specify the following as a command line argument when starting the process engine:
-tibco.clientVar.<variablePathAndName> <value>
where variablePathAndName is the name of the variable you wish to set, including the path to the variable if it is contained in a folder. Value is the value you wish to set the variable to.
For example, if you have a global variable named item1 contained in a folder named myGroup and you wish to set its value to 500, add the following argument to the command line when starting the process engine:
-tibco.clientVar.myGroup/item1 500

Q12 : What is SQL direct? What is it used for? 
A : SQL direct is used to execute command dynamically using the output of other activities. This activity allows you to execute commands which other activities in the JDBC don’t allow, like DDL command create table.

Q13 : What are the different modes of service invocation?
A : Services can be invoked in several ways.
A one-way operation is executed once and does not wait for a response.
A request-response operation is executed once and waits for one response. In a request-response service, communication flows in both directions. The complete interaction consists of two point-to-point messages—a request and a response. The interaction is only considered complete after the response has arrived.
Publication (notification) means an operation sends information on an as-needed basis, potentially multiple times.
Subscription means incoming information is processed on an as-needed basis, potentially multiple times.

Q14 : What activities are supported in JTA Transaction?
A : The Java Transaction API (JTA) UserTransaction type allows:

  • JDBC
  • JMS
  • ActiveEnterprise Adapter (using JMS transports)
  • EJB activities

to participate in transactions.

Q15 : When is a ‘Generate Error’ activity useful?
A : When you handle an error inside a called sub-processor group and want to re-throw the error to the caller (happens by default if you don’t handle the error in the called process)

Q16 : What are the resources that get included in the EAR file, created by the TIBCO Designer?
A : An EAR file can contain local project resources, Library Builder resources, and files as specified in Alias Library resources. In addition, the TIBCO Designer classpath may include references to other files that are included in the EAR file.

Q17 : If you have installed a particular version of TIBCO software e.g. TIBCO BW X.Y.Z, What are X, Y and Z number stands for?
A : Integration can be at different application layers:

  • X: Patch
  • Y: Major
  • Z: Minor

Q18 : What happens if I put a static value say ‘nitin’ in the sequencing key?
A : All the processes which have this key in their sequencing key field will be executed in the order they were created.

Q19 : How do you send a response from a web service?
A : We write to output to the queue from which we received the request.

Q20 : If there are five messages and prefetch property is set to 4 then what happens? 
A : Fetches 4 messages