Skip to content

Posts from the ‘TIBCO Developers Library’ Category


TIBCO Developers Library – What is BusinessWorks Performance Tuning?

TIBCO BusinessWorks Performance Tuning

The performance of software or applications installed in every system may vary according to some aspects involved like the efficiency of the program and the specifications of the system.

The program may function very well but if the resource of the computer where it is installed does not meet its minimum requirements then it will affect the functionality of the program and other applications that may be running on the system. It may also slow down the computer.

There are also instances when the computer’s resources are more than enough to be able to run applications. But the issue here is that the resources of the computer is not fully utilized. You may still be able to tune up your computer for better performance.

Upon a TIBCO consultant finishes the installation and uses the TIBCO BusinessWorks and its components, you may find your applications functioning very well, but what you do not know is that you can still be able to improve its performance. You may also have some negative issues depending on the computer that you are using, but don’t worry because there are ways to be able to modify some settings of the TIBCO BusinessWorks so that it may be able serve your needs.

What TIBCO component is used for optimizing TIBCO BusinessWorks performance?

TIBCO Administrator is used for optimizing TIBCO BusinessWorks components. TIBCO Administrator functions as a central server for administering different TIBCO components. This tool can also be used for creation, deployment and management of applications.

To be able to access TIBCO Administrator’s Interface, you need to use a web browser but before that, you should first make sure that the TIBCO Administrator service and the TIBCO Runtime Agent service for the domain that you will be using are both running.

Just for added information, TIBCO Runtime Agent (TRA) is needed so that you will be able to create projects using the TIBCO Designer and deploy and manage them using the TIBCO Administrator.

What is TIBCO ActiveMatrix BusinessWorks Engine?

TIBCO ActiveMatrix BusinessWorks Engine controls the execution of processes. These processes have activites to be executed and a set of resources. The BusinessWorks Engine also has other tasks such as management of connections, validation of data, managing and monitoring of different services, and configuring logs.

What changes in the settings can be done to optimize TIBCO BusinessWorks Performance?

We can modify parameters such as max jobs, flow limit, step count, activation limit, thread count, minProcessors, maxProcessors and accept count if we don’t want all of our process instances to be held in memory because generally, process instances created reside in the memory of the computer.

Specifying a value in the max jobs means that the number of process instances in the memory will not exceed this value. If the value set for the max jobs is already reached, then the process instances created will be held on the disk of the computer, but they will be moved back to the memory if the memory space is already sufficient.

If a value is set for the flow limit, then the number of process instances created will not exceed this value. If this value is reached then the creation of process instances is suspended but the process instances already in memory still continue to run. Creation of new process instances will resume if the number of currently running process instances is more or less half the value set for the flow limit.

The value for step count is the number of tasks that are executed successively by a thread before it is released. However, this may not be true all the time because of some exceptions when the job is blocked or the job is in a transaction. If the job is in a transaction and the step count has already been exceeded, then the thread will still not be released until the transaction is completed. On the other hand, if the process instance is in a blocked condition or is waiting for an event then that process instance will be paged out to disk, and the memory space it was consuming will be used to run other process instances.

Checking the option for activation limit means that if the process instance is in a blocked condition, it will still stay in the memory and will not be paged out to disk until it is completed. Having this option checked will greatly affect the performance of the engine because the process instances in the memory may be waiting for an event indefinitely.

The thread count determines the number of process instances that can be executed at the same time. The default value of this parameter is eight. Setting a different value for this parameter may be done in a trial and error manner because different values have different pros and cons. If the throughput is satisfactory but the system’s resources are not fully used, then you can set this parameter to a higher value; however, take note that if you specify a value that is too high it may cause CPU thrashing behavior. On the other hand, if you set a value that is too low, it will increase the use of memory but the throughput will be lowered and some of the system’s resources may not be utilized.

For processes that use HTTP connection, we can modify the minProcessors, maxProcessors, and acceptCount parameters. The minProcessors which has a default value of ten determines the number of threads that are initially created when the HTTP server starts. Setting a high value for minProcessors may block some CPU resources because a large number of threads that may not be necessary are created.

The maxProcessors which has a default value of 75 determines the maximum number of threads that can be created by the HTTP server. Setting a high value for this parameter can increase concurrency of executing process instances but the throughput for the process executions may decrease. On the other hand, if the value for maxProcessors is low, then there is an increased throughput but the number of processes executed concurrently will also be limited.

The acceptCount parameter which defaults to 100 determines the maximum number of connection requests that are accepted when all the processors of HTTP are already running. When the value set for this parameter is reached then all incoming requests are discarded. If you set a low value for maxProcessors, then you can set a higher value in acceptCount so that connection requests will not be rejected.

What modifications in the Java Virtual Machine can we do to optimize the BW engine’s performance?

Java Virtual Machine (JVM) is a set of applications that use a virtual machine to execute other computer programs. For an overview, a virtual machine is an application that has the functionality of running other applications just like a real computer. In TIBCO, the BusinessWorks engine is running in a JVM.

You can configure the heap size for the engine by setting a minimum and maximum value. These values determine the amount of memory to be used by the engine. You can also enable garbage collection so that resources in the system that are no longer in use can be deleted.

What are the characteristics of activities in BusinessWorks and how will it affect the engine’s performance?

There are two types of activities in BusinessWorks. They can either be blocking or non-blocking activities. This is determined based on how the activity functions with the thread.

Blocking activities are activities that are executed using the engine thread. This type of activity may affect the engine’s performance because if this activity is waiting for an event then the engine thread will also be waiting for the activity to resume from its waiting state.

Non-blocking activities are activities that are executed using a private thread. This kind of activity does not affect the engine’s performance because when the activity is processing, it switches to its own private thread. When it is done with its process, it will be fetched by the engine thread that is currently running.

What are other factors that may affect the BW engine’s performance?

The other factors that may affect the BW engine’s performance are the following:

o If you are using enterprise messaging, then the number of incoming messages and the rate of its creation in the messaging server may affect the engine’s performance.

o If your application is connected to other third party applications, then the other applications efficiency in processing may also affect the engine’s performance.

o If your computer has other applications currently running or it is performing some update on your system, it will also affect the BW engine’s performance.

Using TIBCO makes developers very productive because it is easy to use and the development of applications and business processes takes a less amount of time. Furthermore, it adds other useful features and it can still be tuned up for better performance.

NOTE: This article was written by one of the TIBCO Certified Professionals of Xmarter, Inc., a technology consulting firm that specializes in delivering business solutions using TIBCO technology. To schedule a technical interview with the consultants, send an email to


TIBCO Developers Library – What is TIBCO Business Studio?

Businesses need to have a flow of their working environment. Without this workflow, it will be hard for them to manage and understand how their company works. Business modeling is essential to every business and one business modeling tool stands out with so many features that will entice company to use it. TIBCO Business Studio is one the TIBCO iProcess Suite software, which has been developed to enhance productivity in every company.

What is TIBCO Business Studio?

TIBCO Business Studio™ is an eclipse-based business modeling tool that lets you model and simulate business processes. It is an easy to use and easy to understand tool since the software follows the Business Process Modeling Notation (BPMN) standard in modeling business process flow. It is similar to creating a business flow chart.

Each element in the flow chart is configured to function as the analyst desires. Before deploying the business model, the analyst has the chance to simulate his created business model. This will test the effectiveness of the process based on the estimated input and cost requirement included as you simulate the process. This will give you a chance to remodel and improve the process you created. You can also easily deploy and manage your business process using this tool. You can save your business process as a XPDL file that can be used by TIBCO iProcess Engine for the execution of the business model.

What are its features?

TIBCO Business Studio™allows you to create business processes in an eclipse-based environment that offers many working perspective such as Modeling and Simulation perspective. It follows the BPMN modeling standards that are understandable to all business analysts. Both the model process and the process documentation can be created in this tool. This tool lets you simplify complex business flow and allows you to integrate new business process into your existing business processes. This tool also supports XPDL format and it can import business processes from various modeling tools.

What is XPDL?

XML Process Definition Language (XPDL) is a standardized format proposed by Workflow Management Coalition (WfMC) for different business workflow modeling products in order to exchange process workflow information. This is the mostly used format for all business modeling products. This format handles all the business process graphics and transitions. TIBCO Business Studio™ supports this format.

Who should use TIBCO Business Studio?

Business process modeling is normally a job suited for a business analyst. Business analysts make sure that the needs of the client to discover problems and create solutions to their business workflow are met. Then, the business process that has been approved by the business analyst is passed on to the business developers for the implementation of the business process. TIBCO Business Studio™ software makes business analysts and developers increase their productivity because it cuts the boundary of both users in developing and implementing workflow. It lets users coordinate the development process like never before. But this tool is not just for business analyst. This tool can be used by anyone working on modeling and simulating business process because of user friendly environment.

What is BPMN?

Business Process Modeling Notation (BPMN) is the standard format in creating business processes workflow. TIBCO Business Studio™ follows this standard because this is easily understood by all business users. This standard lessens the gap between the business analysts and the developers.

What are the benefits of using TIBCO Business Studio?

TIBCO Business Studio™ will increase your working productivity because of the easy-to-use working environment and the superb simulation capabilities that let you test your process efficiency. It is flexible and can easily adapt to changes in business trends because you can easily integrate new application into your existing and already proven business workflow. It minimizes the difficulty of the collaboration among the analysts and the developers. It supports the mostly used standards such as BPMN, UML and XPDL, which make it easy for you to use this tool and these standards lower the development cost.

How to build business process using TIBCO Business Studio?

Building business process model is really easy using Business Studio. You are provided with Modeling Perspective in your working environment. You first create a Project Package that includes a process package. In the process package, you will see there the data field, participants and processes. You can then create new business processes using this package. You use the existing activities, gateways and events in creating your business workflow. These are like objects that can be dragged and dropped from the palettes panel into the design panel and they are configured according to their functions. It is so much easy since BPMN standard is being followed. It is similar to creating a flow chart of your business workflow.

How to simulate a business process?

Simulation is performing an imitation of the real thing in order to gather the information and assumptions you need. Simulating business process execution before deployment using Business Studio is a big advantage for business analysts since you will be making assumptions of events from reality and you will be provided with certain outputs. You will be using these outputs to revise and improve your business processes. In your working environment, you are provided with Simulation Perspective where you can do simulation of your business processes. You can create simulations that will give you results for a number of case completed with the average cost, workers’ time utilization and information like how many times a certain activity has been executed. Another feature is that it can display results in graphical notations and you can even compare results from different events you used as inputs.

How to make your process executable?

You can make your process executable by exporting it to a XPDL file and through the use of the TIBCO iProcess Engine. Easy modeling that conforms to a standard protocol and a very helpful simulation capability are the things Business Studio offers. TIBCO Business Studio is the best tool for companies that aim to manage and improve their business workflow.

NOTE: This article was written by one of the TIBCO Certified Professionals of Xmarter, Inc., a technology consulting firm that specializes in delivering business solutions using TIBCO technology. To schedule a technical interview with the consultants, send an email to


TIBCO Developers Library – What is TIBCO BusinessConnect?

TIBCO BusinessConnect

Real-time capability is the most important factor for businesses today. It links the proceedings of personnel, applications and partners through fast and efficient communication. It makes information available anytime and anywhere. It is flexible to the changes that may happen anytime, which will optimize the business activities accordingly. TIBCO makes sure that these capabilities are within our reach. TIBCO BusinessConnect lets you experience optimized business flow, integrated application and a secure communication across all your trading partners.

What is TIBCO BusinessConnect?

TIBCO BusinessConnect is business-to-business (B2B) communication software that enables different companies to establish a secure transaction using dissimilar internal systems. It is integrated with the TIBCO BusinessWorks platform. It uses a web-based administration tool called TIBCO Administrator for easy configuration of server settings, hosts, business partners, security settings, and business protocols. Internal applications that communicate to the BusinessConnect server can be easily created using TIBCO Designer. BusinessConnect enables business partners to exchange documents with reliable security capabilities and non-repudiation support.

What is non-repudiation?

Non-repudiation means a proof of existence of a certain transaction. This feature will really benefit the companies because transactions are recorded with digital signatures and timestamp, which prove that a transaction has taken place. Neither the host nor the partner company can deny that a transaction took place. All transaction records are saved on the database, and you can use a third party application to connect to BusinessConnect for this feature.

What are the protocols supported by BusinessConnect?

BusinessConnect supports popular B2B protocols such as RosettaNet, chemXML, UCCnet, ebXML, cXML, xCBL, EDI, and EDI – HIPAA. Upon installation, BusinessConnect is bundled with the EZComm protocol. It supports transports such as HTTP(S), FTP(S), SMTP, FILE, AS1 and AS2. It also supports data format like XML, MIME, S/MIME, SOAP and EDI, as well as multiple security standards, such as PKCS and Java Keystore.

What is a business protocol?

A business protocol is a standard used by the BusinessConnect server for the communication of two business partners. BusinessConnect has an Operation Editor that lets you configure your selected protocol.

How do you set-up a B2B connection?

You will be using the TIBCO Administrator to set-up a B2B Connection. First, you have to deploy the BusinessConnect engine on the TIBCO Administrator. It can be a Single Server Mode or Dual firewall DMZ Mode, and you have to select the type of transport and port number you wish to use before the deployment of the engine. Then, select and configure what type of business protocol that fits your company’s needs. The configuration of the protocol depends on the type of protocol you use. Next, you have to create host and partner participants. Use these host and partner in creating business agreements. Lastly, you can create private processes. Private processes are internal processes that are connected to the BusinessConnect server, and send and receive information being passed over the public processes.

What is the difference between Single Server Mode and Dual firewall DMZ Mode?

Single Server Mode offers a minimal but secure and reliable security that can be deployed in your system. The Dual firewall DMZ Mode is a more secure deployment setting because you can place your DMZ behind your firewall. This means that you have a double security of data exchange since you have your firewall and DMZ securely check the data being exchanged. You can even add another firewall as your second firewall behind the DMZ for a more secure communication.

What are Hosts and Partners?

The host and the partner are the two elements that participate in the exchange of data. They are referred to as participants. The host is your company. It is configured to reflect your company unit and connected to your BusinessConnect B2B gateway. The partner is your partner company. It is configured to reflect your partner company unit and it is connected to its own B2B gateway. It’s a huge advantage for TIBCO BusinessConnect users because BusinessConnect is capable of integrating applications even if the other company is using a different B2B solution, as long as requirements are met, such as using the same protocol.

What is a business agreement?

In order for the two trading partners to exchange data and perform business deals, the host and partner must establish an electronic B2B deal. This deal is called a business agreement in BusinessConnect. To configure the business agreement, you have to select the host and partner involved in the deal. Then, select the protocol common to both parties, and configure the security. You can even select the validity dates for the deal.

What are private and public processes?

A private process is an internal process in your company, which sends and receives data from your BusinessConnect server and communicates to the server using Rendezvous messaging. You can create a private process using TIBCO Designer. BusinessConnect is bundled with the BusinessConnect Plug-in which you can use to easily create business processes in TIBCO Designer. A public process is the one responsible for the exchange of data of both BusinessConnect servers across the Internet. It includes both BusinessConnect servers and the medium that connects these servers.

How is the transaction being conducted?

When you send a transaction to a BusinessConnect server, the transaction is sent via Rendezvous Certified Messaging (RVCM). The server listens to a subject name and waits for the message to arrive. A message is considered valid if it conforms to structure specified in the agreement between participants. That certain message is encrypted by the server before the server sends it to the partner company. The message is then received by the partner’s BusinessConnect server. The partner’s BusinessConnect server decrypts the message and sends it to an RVCM subject name. The internal process of the partner company listens to that RVCM subject name, waiting for the message to arrive. When the message arrives, the data is processed and the partner company sends a response back to the host company via RVCM going through the servers.

The host subject names are called Initiator Request and Initiator Response while the partner subject names are called Responder Request and Responder Response. The host sends a request, and waits for a response. The partner waits for the request, and sends the response after processing the request.

BusinessConnect is a great tool for reliable business-to-business communication. It supports numerous protocols and easy to configure, making it a powerful tool to integrate your trading partners.

NOTE: This article was written by one of the TIBCO Certified Professionals of Xmarter, Inc., a technology consulting firm that specializes in delivering business solutions using TIBCO technology. To schedule a technical interview with the consultants, send an email to


TIBCO Developers Library – What is a TIBCO File Adapter?

Different application vendors have their own format and way on how to expose data. Thus, integrating their applications into your own enterprise can be a great challenge. This is why TIBCO developed adapters to provide a bridge and gateways between an application and the TIBCO environment. The TIBCO File Adapter is one of the adapters that TIBCO has developed and this lets you integrate file system into the TIBCO integration environment.

What is TIBCO File Adapter?

TIBCO File Adapter is a gateway between the file system and the TIBCO Messaging. Data coming from a text file is being processed by a file adapter in order to be published in real-time to the TIBCO Environment. The file adapter can also subscribe to the messages published it to the TIBCO environment, process these messages and write the output to a file.

Because it uses a no coding approach, the File Adapter does not require developers to have a programming skill. Developers just have to make use of the design-time components because once you install TIBCO File Adapter, design-time components are automatically integrated into the TIBCO Designer or TIBCO Business Studio. It provides an easy-to-use interface that allows you to quickly configure adapter-specific features and validate some of the adapter’s configurations.

The advantage of using the file adapter is that it can handle large files. It provides configuration options for performance tuning. Even though you are using one or more adapter services or you want to cater large files, still File Adapter can perform optimally.

What are the services supported by the TIBCO Adapter for Files?

The TIBCO Adapter for Files supports only two services: the publication and subscription services. The Publication Service parses the contents of the text file and then processes and publishes them in real-time to the TIBCO Environment. The Subscription service, on the other hand, subscribes and receives messages from the TIBCO Environment and then processes those messages and writes them to a text file.

What are the two types of the File Adapter Operation Mode?

File Adapter has two Operation Modes: the Record Transfer Mode and the Simple File Transfer Mode. In Record Transfer Mode, the adapter defines and uses schemas and integrates the file system into the TIBCO ActiveEnterprise. However, if you just want to transfer the files across the machines, then the adapter can be configured to operate in Simple File Transfer mode.

Both the publication and the subscription services use these operation modes. The operation that you choose dictates the steps in configuring the publication and the subscription services.

In Publication and Subscription formats, what is the difference between the MInstances and MBusinessDocuments?

There are two types of formats that are supported by file adapters while exchanging data between TIBCO applications and these are MInstances and MBusinessDocuments.

MInstances is an entity that TIBCO applications exchange with each other. MInstances is created after the file adapter parses the input file and identifies the schema associated with the publication service. After creating the MInstances, it will be published to the TIBCO Environment.

The MBusinessDocuments, on the other hand, is a facility for grouping MInstances and it serves as a container for MInstances. The attributes of MBusinessDocument can be used if you want a higher throughput from the publication service.

In configuring the publication, the publication service has an option to choose between two formats while the subscription service automatically uses the format of the received message.

What are the schemas supported by the Record Transfer Mode?

The Record Transfer Mode uses schemas such as Read, Wire and Write Schemas. The Read Schema refers to the schema used by the publication service. It is used in interpreting the contents of the file using the rules and relations being described by this schema. After interpreting the contents, it also generates and turns the content into a canonical format known as the Wire Schema, which is used to publish the data.

The Write Schema, on the other hand, is the schema used by the subscription service in receiving messages in canonical format. This schema is generated by a TIBCO ActiveEnterprise-compliant application from the existing wire schema. It is also used for interpreting and processing received data using rules and relations implemented by this schema before the subscription service writes the messages into a file.

How file records are classified?

File Records are classified into two categories: the Delimited file record and the Positional file record. To interpret lines in the record, the Delimited file record uses delimiters. These delimiters can be a single or multiple characters. Examples of delimiters are commas, pound signs or any other character.

The Positional file records use well-defined field lengths to interpret lines in the record. You can use line or record length or a constant field value; for example, the constant line length.

In configuring a Publication service, what are the types of life cycle used?

In configuring a Publication service, you can select whether it will operate repeatedly (Repeating) or it will execute only once (Once-only) after processing the files. If you configure more than one service in the adapter instance, the first service cannot use Once-only as a publication service life cycle. However, when you select Repeating as the Publication Service life cycle, you must specify a polling method. The publication service uses polling method as a triggering mechanism to start processing files.

What are the triggering methods used in the publication service?

To trigger a publication service, the File Adapter can use either a timer or a message. The Timer method of triggering can be used for both the transport types: the JMS and RV. The timer method uses parameters such as Polling Interval to set the amount of time until the next scanning of file is repeated.

Using a message as a triggering method depends on the transport type. A TIBCO Rendezvous message can be used to trigger the publication service if you select TIBCO Rendezvous as a transport type but if you select JMS as a transport type, then a JMS message sent to a topic can be used to trigger the publication service.

What are the File Recognition Methods used for Publication Service?

The adapter provides options to selectively recognize input files that need to be processed for publication. The File Recognition Methods are used to search input file in the input directory. It uses three methods: By file name, By prefix + extension and By trigger. In By file name, the adapter only looks for the file that exactly matches the value given in the File Name Field. By prefix-extension uses the File Prefix and File Extension fields to search for a certain input file. The By trigger, on the other hand, uses the fields such as the File Prefix, File Extension, and Trigger File Extension fields to search and process files.

How do you deploy a File Adapter?

After configuring and testing the File Adapter Services in the TIBCO Designer, create an Enterprise Archive (EAR) file. Use the Enterprise Archive resource in your designer, configure it so that it will contain all information about the adapter instances and use it to build an EAR file. Using TIBCO Administrator, upload the EAR file, and then deploy it to the machine that you want. Start the file adapter and then you can monitor it now by using the built-in monitoring tools provided by TIBCO Administrator.

After enumerating some points that can help you start learning TIBCO File Adapter, it is now up to you to further explore its capabilities in order to appreciate more of its benefits. File Adapter is such a powerful and efficient tool to integrate your file system into the TIBCO environment because of its no-coding approach and easy-to-use design-time components.

NOTE: This article was written by one of the TIBCO Certified Professionals of Xmarter, Inc., a technology consulting firm that specializes in delivering business solutions using TIBCO technology. To schedule a technical interview with the consultants, send an email to