Sunday, January 4, 2015

Getting Started with TIBCO

Excuse my ENG.... [Not reviewed] [Old Scribbled Blog]

TIBCO is one of the software vendor, concentrate on EAI (Enterprise Application Integration) & SOA (Service Oriented Architecture) based software development tools. They released so many software tools built by them, by which software of the kind EAI and SOA can be developed. It basically uses the XML and Java as its core technology for most of its softwares. It has it's own JMS compliant Messaging Service called TIBCO EMS. And they have their own Messaging Service Product called RV (Rendezvous), it's been used in many industry for a long time and still it is used. Let me give a brief overview of some its products.

TRA - TRA stands for TIBCO Runtime Agent, it is basically a core for rest of the TIBCO products. It uses JRE (Java Runtime Environment) and adds some features over that.

HAWK
- This product is used to monitor/maintain the TIBCO softwares installed within a Network. Using this the deployed applications can be set to either FT/LB (Fault Tolerance/Load Balance) modes. In order to do this, we have to write HAWK rulebases.

EMS - EMS stands for Enterprise Messaging Service, it is JMS complaint messaging service, used to send XML based messages across the source and destination. Addition to the normal JMS features, EMS adds it's own features like FT/LB. Messages can be published either as Point-to-Point messages referred as Queue, or as Publish-Subscribe messages referred as Topic. There are serveral configuration files by which bridging/durability/routing can be configured. It has ACL - Access Control List by which the user/group privileges can be set and it can leveraged upto individual Queue/Topic messages. It can configure to work with any LDAP system. It can be configured over SSL if security is the concern. Also it has admin console thru' which the administrator can view/manage the messages at any point of given time. In the SOA design, this can act as ESB (Enterprise Service Bus).

Designer - Designer is the interface to user to develop solutions diagrammatically with less coding. As only the minimal coding is involved, TIBCO says to the industries ZERO coding when they advertise about their products. Basically designer allows the user to create custom processes, configurable items like JNDI config, EMS config etc., These configurable items can be used in the processes. Basically it has something called palettes, it performs the certain specific action, sometime it may require a pre-configured config palettes like JNDI config, EMS config. A process is nothing but set of palettes between the start and end. Each palette is linked by the transition (Success, Success With Condition, No Matching Condition, Error). And a process can call another process by using the 'Call Process' palette. Other than this there is one global XML kept commonly outside, there some pre-configured variables, also it is possible that we can create our own set of variables. These is referred as Global Variables. When we deploy an application, we can feed the values for the Globlal Variables, so it is like configuration or setting for the deployed solution. By default the designer doesn't give much palettes, when we install individual TIBCO products, those product related palettes will get added to the Designer. When we install the product BW (Business Works), we will getting the minimal set of palettes to work.

BW - BW stands for Business Works, when this product installed. People often try to find something under TIBCO Business Works to start the work at the first strike. So keep in mind, you will be getting BW, in the TIBCO Designer, because it adds everything as palettes in the TIBCO Designer. And again you won't getting all the palettes, some palettes are installed along with the other products. But with BW, the necessary working set of all the palettes will be avilable. This palettes can be viewed as groups by their logical resemblence/nature of the work. Some of the palettes are starter palettes, it can start the process its own.

Some of the palette groups can be found in Tibco Designer...
FTP-
General-
HTTP-
JDBC-
JMS-
Java-
Manual Work-
Parse-
Process-
Rendezvous-
SOAP-
SmartMapper Resources-
TCP-
WSDL-
Transaction-
XML Activities-
XML Tools-

RV- RV stands of Rendezevous. This TIBCO built Messaging service. It is been used since a long time in many industries as their ESB. It supports both Point-to-Point and Publish-Subscribe models just like TIBCO EMS.

Adapters - TIBCO and so many pre-built Adapters, by which so many industry standard applications can be connected directly. The application can be of type CRM, ERP... For example SAP, Siebiel. Generally adapters put the data in ESB (either in EMS or in RV). There is even adapter to read file.

Administrator - TIBCO administrator is TOMCAT based portlet application, in which the TIBCO designer solution can be deployed in the for EARs. Global Variable corresponds to the each EAR can be configured. For every modification, the solution has to be redeployed. TIBCO Adminsitrator is bit associated with hawk to effective usage. The solution deployed can be set to run in Fault Tolerance/Load Balancing Modes. This is done by the hawk. Generally hawk manages the TIBCO Administrators installed within a network. And agin it clubs based on the TIBCO domain.


BC - BC stands for Business Connect. This product is pre-built EAR and it is deployed on the administrator. This is mainly used for EDI data. It requires additional product to understand the specific EDI format. There is separate plugins for X12, Rosettanet, Edifact and so on. Also this yields some of the palettes, those are called private process calls. So the data gets in can reach the BC either using this private calls or by some other mechanism. BC allows to read data from FTP and it has Mailing facility, so the failure/success events can be notified to the concern people.

BE - BE stands for Business Events. This product yields some palettes for TIBCO Designer. This product is a rule engine. Based on some complex business metrics, rules can be set and based on that event can be triggered. This is very effective product for high level business user who rely on day to day business activities. Using GI, the results gathered can be published in representable format over the web.

GI - GI stands for General Interface. It is web portal designer for TIBCO products. Using this pages can be developed and can be put to view. This is kind of AJAX framework for TIBCO, AJAX based web components can be built. It also supports to call any web services. So effective web interface can be developed using this TIBCO product - GI.

iProcess - iProcess is BPM like tool. It has server and workspace. Server is where the BPM solution are put in and rules and flow are set. Workspace is where data are feeded and the Process queueing happening. iProcess uses the staffware to manage the BPM process in a network. It takes the responsibility of executing the BPM process.

BusinessStudio - BusinessStudio is the fully complaint BPM tool. By which any BPMN process model can be developed and solution can be simulated or set to run. This has the compatibility, so the iProcess processes can be in.

iProcessAnalytics - iProcessAnalytics is one of the BAM tool. Processes runs on iProcess can be analysed/monitored using this tool. This plots the graphs of different kind based the KPI's set. So it gives the brief idea about the business. So forecasting the business is possible.