You are on page 1of 8

Tibco BW Interview questions

Posted on April 16, 2016 by Lijo Ouseph

1. What are the Types of Variables in TIBCO BusinessWorks?

Ans: There are 3 types of variables available in Tibco BusinessWorks. They are
i) Global variables
ii) Process variables
iii) Shared Variables

2. What are the Global variables and what is the use of Global variables?
Ans: these variables allow you to specify constants that can be used throughout the
project. The constants can be specified and changed while designing and testing
your project. You can also specify different values for each deployment of your
project.

3. What are the Process variables?


Ans: The Process Variables tab allows you to specify user-defined process variables
for the process definition. For example, there are predefined process variables
containing the process ID, project name, and other information.
Process variables are displayed in the Process Data panel of each activity’s Input
tab.

4. How can we assign the values to Process variables?


Ans: You can assign a value to the process variables with the Assign activity.

5. What is the difference between Deployment and Service level Global Variables?
Ans: Deployment: Select the deployment check box to make the variable visible and
we can change the value of Global Variable, when deploying using TIBCO
Administrator. If the check box is clear, the variable is not visible in TIBCO
Administrator.
• Service: Service indicates that the variable should be included when the Include
all service level global variables option is selected when building the enterprise
archive file. A variable that can be changeable on a per-service basis can be set
for each adapter service. This option is used for TIBCO adapter archives. TIBCO
ActiveMatrix BusinessWorks does not use this setting.

6. How can we change the value of Global variables in TIBCO Administrator?


Ans: 1. Select Respective application under the Application Management.
2. An application’s advanced tab to set application-specific variables.

7. What is the difference between Shared Variables and job shared variables?
Ans: Shared Varaibles: Shared Variables allow you to specify data for use across
multiple process instances. Because multiple process instances can access the same
variable.
Job Shared Variable:

A Job Shared Variable shared configuration resource allows you to store the data
for use by each process instance. A copy of the variable is created for each new
process instance. This resource is useful for passing data to and from sub-
processes without creating an input or output schema for the called process.

8) what is the use of service container?


Ans) in the latest version of TIBCO Active Matrix Business Works a new feature
called Service container is added. In this service container we can add number of
EAR files and run all the services simultaneously. With the Service container
feature we can add and upgrade processes without bringing down other running
processes.
9) In how any ways can we create EAR files.
Ans) we can build EAR files in 2 ways. One method is using the Enterprise Archive
pallete in the Tibco designer and adding the process archive we can build EAR file.
Other method is from the cmd prompt. We use the command appmanage and buildear.

10) What is Schema and why do we create schema.


Ans) Schema is used to create a XML schema file in which we add the variables which
we want to use in our designer process. We can create the elements under which we
can add the typed variables. The structure formed will be in the form of tree
structure.

11) What is the use of confirm activity.


Ans) Confirm activity is used to confirm the success of a activity that have
confirmable messages. For example if certain process starts on reception of a
message then if that process starts the confirm activity sends a confirm message to
the sender of the message.

12) What are the different modes of tibco BW installation.


Ans) There are 3 modes installation . They are a) GUI b) console c) silent

13) When we save a project what files are created under the saved project folder.
Ans) In that folder we see the Aeschema folder, all processes create in that
project and the vcrepo.dat file.

14) What are the contents of vcrepo.dat


Ans) This files contains the display name , RV encodings and description.

15) What is grouping activity?


Ans) Grouping activity is used to group certain activities used in the designer so
that we can loop those activities and iterate the group with conditions.

16) What is the condition for a process in order to build the EAR file.
Ans) We need to have a process starter.

17) How can we design exception handling?


Ans) The basic method is by routing the process to another sub process whenever
error occurs by using the error transition.

18) What is the use of Render XML pallet.


Ans) It is used to create a XML file by creating the tags used in the xml file.

19) What are the elements in the WSDL file.


Ans) In abstract WSDl file we have the information about the messages ( request,
reply) port type, operation. In concrete in addition to above we have the transport
information.

20) What is the use of global variables?


Ans) Global variables are useful in order to provide dynamic input at the run time.

21) What is custom activity?


Ans) Custom activity is useful when we want others to use our process and not allow
them to view the contents of the process. We can add this process into our MY
Pallete section. We can directly use this process by dragging it into our process.

22) In web service in how many ways can we create connections.


Ans) 2 ways. HTTP and JMS.

23) How does the file poller activity works.


Ans) This is a starter activity which starts the process whenever there is update
for the file that is specified.

24) What is the use of project template?


Ans) In project template we can save our standard processes that we want to use in
future. These processes are generally the ones which have the commonly used
activities.

25) What is the optimum maximum number of connections in JDBC?


Ans) 10

26) What is sub process and what is its use?


Ans) Whenever we call a process from another process , the called processbecomes
the subprocess. Sub process helps in reducing the complexity of the design by
assigning the activity in other process.

27) What is TRA.


Ans) Tibco Runtime Agent is the main frame work for all the tibco softwares. It
provides the runtime agent and monitoring agent. All the libraries required by the
designs are provided by TRA.

28) What are the process variables that are available to all activities as inputs.
Ans) global variables and process context.

29) What are break points?


Ans) Break points are used to check the inputs and outputs of each activity during
testing the design so that we can debug our design. We can place the check points
for all activities on input and output side.

30) What re the encoding techniques in WSDL?


Ans ) Encoded and literal.

31) What are the conditions in transitions?


Ans) Success, Success with condition, Success with no condition and error.

32) What are the different variables in BW?


Ans) Global variables, Shared variables, process variables and job shared
variables.

33) What is the inspector activity does?

Ans: the inspector activity is used to obtain the output of any activity or all the
activities and process variables.
Scenario: You can use the inspector activity to write the output of any activity or
process variable in the current process. Activities and process variables in a
subprocess are not available to the Inspector activity (but the output of a Call
Process activity can be written using the Inspector activity). If you wish to
obtain the output from one or more activities or process variables in a subprocess,
place the Inspector activity in the process definition of the subprocess.

34)Can you tell me at least four starter activities and when they get executed?
Ans:

Adapter subscriber, adap request response server :-When ever a message comes
into a destination queue or network, listens to a request from a adapter and sends
a response back to that adapter
File poller :- polls for any changes that occur in the file and with any change
grabs the whole file.
Timer:- receive notification Starts a process on the time specified ex: before
JDBC QUERY, starts a process on receiving of data from a notify activity.
http receiver :-Starts a process based on a request from http server.
Jms queue receiver, jms topic subscriber :- Starts a process when ever a new
message comes into the specified queue, starts a process when ever there is a new
message in the specified topic.
Receive mail :- The Receive Mail process starter polls a POP3 mail server for
new mail. When new mail is detected and retrieved, the Receive Mail process starter
starts a new process for the process definition it resides in and passes the mail
data to the next activity in the process flow.
Rv subscriber:- The Rendezvous Subscriber process starter creates a process
when a TIBCO Rendezvous message on the given subject is received.
Rmi server :- The RMI Server process starter registers the specified remote
object name with the specified registry server and then creates process instances
to handle incoming requests for the object. The process definition acts as the
implementation of the specified object.
Soap event source :- The SOAP Event Source process starter creates a process
instance for incoming SOAP requests. SOAP is a standard protocol for invoking web
services. This allows you to create a web service using process definitions.
At runtime, a client can retrieve the WSDL file for a process containing this
process starter using an HTTP request. Once the WSDL is retrieved, the client can
perform a SOAP request to invoke the web service.
Tcp receiver The TCP Receiver process starter starts a new process when a
client requests a TCP connection.

35) What is the purpose of JMS Queue receiver activity and Queue sender activity?
Ans: Starts a process when ever a new message comes into the specified queue.
A queue sender activity sends messages into the specified queue.

36) What are acknowledgement modes and where do you set them and what is the
applicability of each mode?
Ans:
The acknowledge mode for incoming messages. Can be one of the following:
• Auto — the message is automatically acknowledged when it is received.
• Client — the message will be acknowledged at a later point by using the Confirm
activity. If the message is not confirmed before the process instance ends, the
message is redelivered and a new process instance is created to handle the new
incoming message. Ensure that your process definition confirms the message when
using this acknowledge mode.
• TIBCO EMS Explicit Client Acknowledge — this mode behaves exactly the same as the
Client mode, except the session is not blocked and one session can handle all
incoming messages.
• Dups OK — the message is acknowledged automatically when it is received. JMS
provides this mode for lazy acknowledgement, but TIBCO BusinessWorks acknowledges
messages upon receipt.
• Transactional — this mode is used when a transaction that can process JMS
messages is included in the process definition. The message is acknowledged when
the transaction commits.

37) What is a check point activity and confirm activity?


Ans: A checkpoint saves the current process data and state so that it can be
recovered at a later time in the event of a failure. If a process engine fails, all
process instances can be recovered and resume execution at the location of their
last checkpoint in the process definition. The Confirm activity confirms any
confirmable messages received by the process instance. For example, if a process is
started because of the receipt of an RVCM message, the Confirm activity can send a
confirmation message to the publisher of the RVCM message

38) What happens if you use check point activity first and confirm next?
ans:
In the case of confirmable messages , you must consider the consequences of
performing a checkpoint before or after a Confirm activity. If the checkpoint is
taken before the Confirm activity, then a crash occurs after a checkpoint but
before a confirm, the original message is resent. In this case, the restarted
process can no longer send the confirmation. However, a new process is started to
handle the resent message, and you can implement your process to handle the
restarted and new processes appropriately. If the checkpoint is taken after a
Confirm activity, there is potential for a crash to occur after the Confirm but
before the checkpoint. In this case, the message is confirmed and therefore not
redelivered. The process instance is not restarted, because the crash occurred
before the checkpoint. You must consider the type of processing your process
definition performs to determine when a checkpoint is appropriate if your process
definition receives confirmable messages.

39) What is the potential problem with JMS Queue requestor?


Ans:
When we specify a reply to queue there is a chance of other processes sending
messages to the same queue and the jms queue requestor interpreting that as the
actual response and sending this wrong message to the client.

40) What is the other JMS activity you would use to address the problem?
Ans:
Get jms queue message. This incorporates a message ID to identify the true message.

41) What are the activities you used to publish the messages from BW process to
network on RV?
Ans: publish rv message activity (along with the shared resource – rv transport).

42) What is the transition in BW?


Ans: to move the data from one activity to another or when conditions exist on the
data.

43) What are the different kinds of condition types you can have in transition?
Explain Them
Ans:
a)Success :- Take this transition unconditionally. That is, always transition to
the activity the transition points to, if the activity completes successfully.
This is the default condition for transitions.
b)Success with condition :- Specify a custom condition using XPath. If the activity
completes successfully, and the condition you create evaluates to true, the
transition is taken to the activity it points to.
You can type in an XPath condition, and you can use the XPath formula builder to
drag and drop XPath expressions and data into the condition. See Chapter 9, XPath
for more information about specifying XPath conditions and using the XPath formula
builder.
c)Success if no matching condition :- Take this transition when the activity
completes successfully, but only if no other transitions are taken. This is useful
when multiple transitions with conditions are drawn to other activities. This
condition type can be used to handle any cases not handled by the conditions on the
other transitions.
d)Error :- Take this transition if there is an error during processing of the
activity.

44) What is Generate Error activity? What the applications of it ?


Ans:This activity generates an error and causes an immediate transition to any
error transitions. If there are no error transitions, the process instance halts
execution. This activity is useful in a group or in a called process. If you would
like to catch and raise your own error conditions, you can use this activity to do
so.
45) What are the shared variables and process variables?
Ans:
Process variables: Process variables are data structures available to the
activities in the process. You can define your own process variables and assign
values to them in your process definition. Process variables are defined on the
Process Variables tab of the Process Definition resource. And assigning values to
these kind of variables is done using the assign activity.
Shared variables: A Shared Variable resource allows you to share data across
process instances. All process instances can read and update the data stored in a
shared variable. This type of shared variable is useful if you wish to pass data
across process instances or if you wish to make a common set of information
available to all process instances.

46) What is XPATH?


Ans: isa XML based path language used to navigate the XML document and manipulate
the data

47) What is name space in XSD?


Ans: A name conflict will occur when two different documents use the same element
names. So each element is given a unique namespace.

48)What are the different types of queues?


a. Static-created by the user
b. Dynamic- created by the sender/receiver application at run time.
c. Temporary- created by receiver to submit the response to EMS server/Sender to
get the messages.

49) What are message selectors?


a. Message selectors are used to filter messages based on expression syntax. This
reduces the processing overhead from the application.

50) What is a Home Queue and what is a Routed Queue in EMS routes?
a. Home Queue: The global queue sitting in the EMS server, where Route is being
created.
b. Routed Queue: the global queue sitting in the EMS server where the queue name is
referring to route.

51) What is the EMS maximum message size?


a. The maximum message size is 512 MB.

52) What are the delivery modes supported by EMS server?


a. EMS supports 2 delivery modes
i. Persistent
ii. Non-persistent
iii. Reliable.

53) What are the message types supported by EMS?


a. Text
b. XML
c. Bytes
d. Stream
e. Simple
f. Object
g. ObjectRef
h. Map

54) What are the wildcard characters supported by EMS?


a. * – means that any token can be in place of *.
b. > – matches any destination name i.e., it matches one or more trailing elements.
You can subscribe to wildcard topics but can’t publish.
You can neither send nor receive from wildcard queue names

55) What is the default storage limit for destinations?


a. Setting the flowControl property on a destination but specifying no value causes
the server to use a default value of 256KB.

56) What is the syntax to create bridges?


a. Create bridge bridge_name source=destination_type:name
target=destination_type:name

57) How do avoid/stop creation of dynamic queues/topics?


a. By deleting the parent queue “>”

58) What are the components installed when you install TRA?
a. TIBCO designer
b. Java Runtime Environment
c. TIBCO Hawk Agent
d. TIBCO Rendezvous
e. TIBCO Domain Utility
f. TIBCO Wrapper etc.

59)Explain TIBCO Hawk Agent?


a. It is an autonomous process that resides on each computer on which TRA is
installed. Hawk Agent uses a set of rules called rulebases to configure system
management, status and automation tasks.

60) What is the use of TIBCO Wrapper utility


a. It allows deployment of a TIBCO product or TIBCO Adapter SDK based custom
adapter as a service.

61) What protocol does RV uses to communicate with in a subnet and outside the
subnet?
a. UDP within a subnet
b. TCP outside subnet.

62) What is the use of secured queues and topics?


a. Setting ‘secure’ property to queues/topics can restrict unauthorized users from
publishing/sending and subscribing/receiving the messages.

63)What is the Global variable used for pointing the certificate location?

%%BW_GLOBAL_TRUSTED_CA_STORE%%
64)If your project has 10 adapters and 10 processes how may minimum number of
shared archives, process archives, and adapter archives you need to place in an
enterprise archive resource?

1-shared archive, 1-process archive, and 10-adapter archives


Note: one adapter archive resource can hold only one adapter where as one process
archive can hold many number of processes.

65)When do you use client Ack mode and Client ExplicitAckMode?

By holding Client ack to the end of the process, one will block that session. This
means one will slow down the rate at which TIBCO BusinessWorks pulls messages from
the JMS server, which will have to hold messages for a longer period of time.
With TIBCO Enterprise Message Service Explicit Ack, a single session is used to
receive all messages. This mode allows for more efficient resource utilization, and
provides more even load distribution across multiple engines.

66)What is the use of FTP quote activity?

The FTP Quote activity sends an arbitrary FTP command to the FTP server. You can
determine which FTP commands are supported by using the Available Commands button
on the FTP Connection shared configuration resource. FTP commands vary by operating
system and by FTP version and configuration, so you should determine which commands
are available on the remote server before using this activity.

67)What is the difference between FTP delete file and Remove file activity?

The FTP Delete File activity issues an FTP delete or mdelete command to remove one
or more files from the remote server.
The Remove File activity removes the specified file. This activity can also remove
empty directories.

You might also like