You are on page 1of 126

TIBCO™ BusinessWorks

Concepts
Software Release 2.0.0
November 2002
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH
EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY
(OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE.
THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY
ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND
CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED
SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT,
THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING
DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE
TIBCO BUSINESSWORKS CONCEPTS DOCUMENT). USE OF THIS DOCUMENT IS SUBJECT TO
THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE
ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright
laws and treaties. No part of this document may be reproduced in any form without the written
authorization of TIBCO Software Inc.
Technologies described herein are covered by existing patents and pending patent applications.
TIBCO technology is protected under US patent number 6,003,011.
TIB, TIBCO, Information Bus, The Power of Now, TIBCO Rendezvous, TIBCO AlertServer, TIBCO
Adapter SDK, TIBCO AdapterAdministrator, TIBCO Repository, and TIBCO Hawk are either
registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other
countries.
EJB, J2EE, JMS and all Java-based trademarks and logos are trademarks or registered trademarks of
Sun Microsystems, Inc. in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property of
their respective owners and are mentioned for identification purposes only.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL
ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE
CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO
SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)
AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.
Copyright © 2001-2002 TIBCO Software Inc. ALL RIGHTS RESERVED.
TIBCO Software Inc. Confidential Information
| iii

Contents

Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
TIBCO BusinessWorks Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Other Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Conventions Used in This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Typeface Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
How to Contact TIBCO Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Chapter 1 Business Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1


The Challenge of Application Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Integration Benefits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Integration Platform Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Business Integration Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Addressing the Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Example Scenario Runtime Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
The TIBCO BusinessWorks Integration Platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
TIBCO BusinessWorks Key Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
TIBCO Administration Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Design-Time Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Run-Time Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
TIBCO BusinessWorks Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Business Process Modelling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Schemas and Data Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Manual Activities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Deployment Configuration and Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Run-Time Management and Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chapter 2 TIBCO BusinessWorks Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Phase 1: Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

TIBCO BusinessWorks Concepts


iv
| Contents
Phase 2: Domain Setup and Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Planning the Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Installing TIBCO BusinessWorks Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Planning and Configuring User Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Phase 3: Services Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Adapter Configuration Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Web Services Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Services Used by the Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Phase 4: Process Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Activities Used by the Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Phase 5: Deployment Configuration and Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Phase 6: Production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Chapter 3 Phase 1: Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39


Step 1: Define and Delimit the Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Step 2: Identify Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Step 3: Identify Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Shared Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Services and Corresponding Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
ManualWork Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Transitions and Conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Step 4: Describe Business Events and Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Step 5: Design Business Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Step 6: Consider Domain Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Chapter 4 Phase 2: Domain Setup and Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


TIBCO Administration Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
TIBCO Administration Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
TIBCO Run-Time Agent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Installing TIBCO BusinessWorks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Installation Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Installing Adapters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Chapter 5 Phase 3: Services Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55


Introduction: TIBCO BusinessWorks Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Service Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Invocation Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Service Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Adapter Service Configuration Steps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Step 1: Installing the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Step 2: Setting up the Design-Time Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

TIBCO BusinessWorks Concepts


Contents v
|
Step 3: Configuring the Run-Time Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Step 4: Accessing the Adapter Service From the Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Chapter 6 Phase 4: Business Process Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Business Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Process Design Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Step 1: Define Shared Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Step 2: Create Process Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Step 3: Add a Process Starter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Step 4: Add Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Step 5: Optionally, Add Manual Work Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Step 6: Create Transitions Between Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Step 7: Perform Mapping and Transformation for Each Activity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Step 8: Optionally, Group Activities As Needed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Step 9: Test the Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Chapter 7 Phase 5: Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
TIBCO BusinessWorks Project Phases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Deployment Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Step 1: Create and Populate the Administration Domain. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Assign Software to Different Hardware Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Authorize Users for Different Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Step 2: Create and Test Your Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Step 3: Add Deployment Configuration Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Step 4: Deploy Your Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
What Happens When You Deploy A Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Deploying and Undeploying Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Chapter 8 Phase 6: Production. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Monitoring and Management Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
User Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Authorization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Domain Monitoring and Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Inventory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Deployment Monitoring and Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Business Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

TIBCO BusinessWorks Concepts


vi
| Contents

Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

TIBCO BusinessWorks Concepts


Figures vii
|

Figures

Figure 1 TIBCO BusinessWorks communication throughout the enterprise . . . . . . . . . . . . . . . . . . . . . . . . . 2


Figure 2 Example scenario components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Figure 3 Example scenario run-time implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Figure 4 TIBCO BusinessWorks components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 5 Components of a TIBCO administration domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 6 TIBCO Designer main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 7 TIBCO BusinessWorks project and resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 8 Resources in project tree and design panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 9 Process instances created from a process definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Figure 10 Example scenario data flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 11 Adapter data flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 12 Example process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Figure 13 XML files conforming or not conforming to XSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Figure 14 Components Option in TIBCO Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Figure 15 Domain setup for example program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 16 Installing TIBCO BusinessWorks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Figure 17 Installing an adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Figure 18 Adding an adapter to the project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Figure 19 Adding a service to an adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Figure 20 Adding activities that access adapter services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Figure 21 Business process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Figure 22 Shared resources in your project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Figure 23 Adding process definitions to your project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figure 24 Adding a process starter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Figure 25 Adding activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Figure 26 Project development phases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Figure 27 TIBCO administration domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Figure 28 Adding a deployment configuration to the project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

TIBCO BusinessWorks Concepts


viii
| Figures
Figure 29 Adding a process engine to the deployment configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Figure 30 Adding recovery options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Figure 31 Communication inside a TIBCO administration domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Figure 32 Machines Option in TIBCO Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Figure 33 Inventory Option in TIBCO Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Figure 34 Components Option in TIBCO Administrator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Figure 35 Viewing Process Definition information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

TIBCO BusinessWorks Concepts


| ix

Preface

This preface gives some information on the TIBCO™ documentation set, related
documentation, and on conventions used in TIBCO manuals.

Topics

• Related Documentation, page x


• Conventions Used in This Manual, page xi
• How to Contact TIBCO Customer Support, page xii

TIBCO BusinessWorks Concepts


x
| Preface

Related Documentation

TIBCO BusinessWorks Documentation


In addition to this manual, the following documents are part of the TIBCO
BusinessWorks documentation set:
• TIBCO BusinessWorks Quick Start This manual steps you through a very
simple example of designing, deploying, and monitoring a TIBCO
BusinessWorks process.
• TIBCO BusinessWorks Business Process Design Guide This manual describes
how to create, edit, and test business processes using TIBCO BusinessWorks.
• TIBCO BusinessWorks Business Palette Reference This manual describes each of
the palettes available in TIBCO BusinessWorks.
• TIBCO BusinessWorks Installation Read this manual for information on
installing one or more components of TIBCO BusinessWorks and setting up a
TIBCO BusinessWorks domain.
• TIBCO BusinessWorks Release Notes Read the release notes for a list of new
and changed features. This document also contains lists of known issues and
closes issues for this release.

Other Documentation
TIBCO BusinessWorks is bundled with other products. You will therefore find the
documentation for those products useful:
• TIBCO Designer documentation. TIBCO Designer is an easy to use graphical
user interface for design-time configuration of TIBCO applications. TIBCO
Designer includes online help for each palette.
• TIBCO Administrator documentation. TIBCO Administrator is the
monitoring and managing interface for new-generation TIBCO products such
as TIBCO BusinessWorks.
• TIBCO Adapter product documentation

TIBCO BusinessWorks Concepts


Conventions Used in This Manual xi
|

Conventions Used in This Manual

This manual uses the following conventions.

Typeface Conventions
This manual uses the following typeface conventions:

Example Use
monospace This monospace font is used for program output and code example listings
and for file names, commands, configuration file parameters, and literal
programming elements in running text.

monospace bold This bold monospace font indicates characters in a command line that you
must type exactly as shown. This font is also used for emphasis in code
examples.

Italic Italic text is used in three ways:


• In code examples, file names, etc., for text that should be replaced with an
actual value. For example: "Select homedir/runexample.bat".
• For document titles
• For emphasis

Bold Bold text indicates actions you take when using a GUI, for example, click
OK, or choose Edit from the menu.
Submenus and options of a menu item are indicated with an angle bracket,
for example, Menu>Submenu.

Warning. The accompanying text describes a condition that severely affects


the functioning of the software.

Note. Be sure you read the accompanying text for important information.

Tip. The accompanying text may be especially helpful.

TIBCO BusinessWorks Concepts


xii
| Preface

How to Contact TIBCO Customer Support

For comments or problems with this manual or the software it addresses, please
contact TIBCO Product Support at:
http://support.tibco.com
Entry to this site requires a username and password. If you do not have a
username, you can request one. You must have a valid maintenance or support
contract to use this site.

TIBCO BusinessWorks Concepts


|1

Chapter 1 Business Integration

TIBCO BusinessWorks is a scalable, extensible, and easy to use integration


platform that allows you to develop, deploy, and run integration projects. TIBCO
BusinessWorks includes a graphical user interface (GUI) for defining business
processes, an engine that executes the process, and a web-based GUI for
monitoring and managing run-time components.
This chapter discusses what is required of an integration platform, and how
TIBCO BusinessWorks meets these requirements.

Topics

• The Challenge of Application Integration, page 2


• Business Integration Scenario, page 4
• The TIBCO BusinessWorks Integration Platform, page 8
• Architecture, page 12
• TIBCO BusinessWorks Features, page 19

TIBCO BusinessWorks Concepts


2
| Business Integration

The Challenge of Application Integration

Application integration is one of the most pressing challenges of today’s


enterprise. An enterprise may need to integrate back-office systems with the
Internet, a purchase order management system with the customer service
management system, or any of the above with legacy or ERP (Enterprise Resource
Planning) systems.
An integration platform should allow you to design the business process, that is,
the flow of data. The business process should transparently receive and send data
throughout the enterprise and beyond.

Integration Benefits
The integrated enterprise works seamlessly. Different departments and groups
share communications and can together respond quickly to customer needs. With
less time spent on administrative and manual tasks, employees become more
productive and the integrated system yields a significant return on investment.
This return increases as the company grows.
The illustration below shows how TIBCO BusinessWorks connects to applications
of different types, databases, trading partners and exchanges, etc. This capability
allows you to use TIBCO BusinessWorks to integrate all aspects of your
enterprise.

Figure 1 TIBCO BusinessWorks communication throughout the enterprise

.NET J2EE

Trading Legacy and custom


partners applications

Exchanges Mainframes

EJB, CORBA, ERP applications (SAP


File, database R/3, Siebel, etc.)

TIBCO BusinessWorks Concepts


The Challenge of Application Integration 3
|

Integration Platform Requirements


To be successful, your integration platform must meet the following
requirements.
• Short deployment cycle—The integration project must be ready to go to
production within a realistic timeframe and deploying from development to a
running project must go smoothly.
• Scalability and extensibility—The project must be scalable (respond to
increasing demand) and extensible (allow integration of new applications or
addition of new business processes). Extensibility also means that the project
must be flexible and adaptable so you can potentially adapt it to multiple
departments in the same company.
• Ease of use—Integration projects are often developed by outside companies
or consultants. When the project is complete, the company itself becomes
responsible for maintenance and updates, and employees usually face a steep
learning curve. If the integration platform is easy to use, the project can be
developed in house. Cost of ownership is greatly reduced because the
expertise is already there.

TIBCO BusinessWorks Concepts


4
| Business Integration

Business Integration Scenario

To illustrate some of the functionality available as part of TIBCO BusinessWorks,


the rest of this manual uses a simple example scenario presented in this section.
The section starts with a problem definition, then discusses the run-time
implementation. Individual aspects of the integration project are discussed in
later chapters.

Problem Definition
EasyWare Incorporated is a manufacturer of computer hardware. So far, the
department responsible for purchase order management has received orders by
telephone and has manually entered them into a PeopleSoft Order Management
system. The customer service department uses the information in the PeopleSoft
system as well, but finds that not all information they need is available there. An
additional concern is that shipping information is not included in the Order
Management system. As a result, customers do not receive notification when
items are shipped and customer service representatives must access the shipping
information in a two-step process: first extracting the Order ID from the
PeopleSoft system, then extracting the shipping information from the shipping
log using the Order ID.
Because a high volume of sales cannot be handled efficiently with this setup, and
because currently information available to the customer service department is
incomplete, customer satisfaction becomes an issue. Management decides to
make the following changes:
• Make order entry possible via a secure web server outside the firewall which
communicates with an application server that supports JMS.
• Add a Siebel customer service system that receives information about each
purchase order.
• Before order fulfillment, require approval by a credit check specialist for
orders over $10 000.
• Before the order is entered into the Siebel system, add information about
shipping date and time to each item. The information should be retrieved
interactively from the shipping company’s web site via the Internet.
Customer service representatives can then have easy access to all ordering
information.

TIBCO BusinessWorks Concepts


Business Integration Scenario 5
|

Addressing the Challenge


The challenge faced by EasyWare is to add the new capabilities to the business
process while, at the same time, reducing complexity for the end user. After
careful deliberation, the IT department decides to prepare a prototype using
TIBCO BusinessWorks.

Design
The goal of the integration project allow EasyWare to receive orders either by
telephone—with direct access to PeopleSoft as before—or from an application
server. The PeopleSoft Order Management system continues to be used, but data
can be entered manually as before or can arrive from the Internet via the
application server. In addition, the system must integrate with the Siebel
customer service system.
This results in the following components of the integration project:
• At the center is the business process, which interacts with the different
services using the appropriate messaging protocol.
• A PeopleSoft adapter enters the web order into the PeopleSoft system and
receives an order from the PeopleSoft system that includes an Order ID. This
part of the process is a request-response service.
• A ManualWork activity sends the order to the credit check specialist. The
process is on hold until approval has been made.
• The business process accesses the shipping schedule by connecting to the
shipper’s web site using SOAP.
• A Siebel adapter enters the complete order, including the PeopleSoft Order ID
and the shipping information, into the Siebel system.
Figure 2 shows the components that are needed.

TIBCO BusinessWorks Concepts


6
| Business Integration

Figure 2 Example scenario components

Siebel Peoplesoft
(Customer (Order
Service) Management)

WWW
Adapter Adapter Internet

Order Entry

Application Server

Business Process
Internet

Shipping Schedule
SOAP Service
Credit check
manual step

Example Scenario Runtime Implementation


At run-time, the project would proceed as follows (numbered steps match the
numbers in Figure 3):

1. Orders arrive from the distributors on the Internet.


2. The orders are processed by a customized order capture system built on top of
an application server.
3. A TIBCO BusinessWorks JMS Queue Receiver activity receives the incoming
order document.
4. TIBCO BusinessWorks transforms the order, which was supplied in XML to a
format PeopleSoft expects and the PeopleSoft adapter submits the order to the
PeopleSoft Order Management system.
5. The PeopleSoft system accepts or rejects the order. When it accepts the order, it
includes an Order ID.
6. If the order amount is greater than $10 000, the order is sent out for credit
check. When the credit check is not successful, the customer is informed
immediately and the order placed on indefinite hold. Otherwise, if approval
arrives, the process continues.

TIBCO BusinessWorks Concepts


Business Integration Scenario 7
|

7. TIBCO BusinessWorks checks the shipping schedule using a web service


activity and adds the ship date to the order.
8. TIBCO BusinessWorks sends the information about the order, including the
Order ID and the shipping information, to a Siebel adapter. The Siebel adapter
adds a new customer service record to the Siebel system.

Figure 3 Example scenario run-time implementation

Siebel Peoplesoft WWW


(Customer (Order 1
Service) Management) Order Entry

Sales order Internet


Sales order
+ ID
5 4 2
Adapter Adapter
Application
Server

JMS
3
RV

RV

Messaging system

7
RV

6
Business process SOAP
(coordinator) Internet

Credit check
Shipping Schedule
manual step

TIBCO BusinessWorks Concepts


8
| Business Integration

The TIBCO BusinessWorks Integration Platform

This section introduces the TIBCO BusinessWorks integration platform by


discussing the following topics:
• TIBCO BusinessWorks Key Components
• TIBCO Administration Domain

TIBCO BusinessWorks Key Components


TIBCO BusinessWorks key components work together as follows:
• The TIBCO Designer graphical user interface (GUI) supports adapter
configuration, process design, deployment configuration, and deployment of
the integration project in one easy to use interface. You can use TIBCO
Designer in test mode to incrementally verify your design during
development. Rapid development and deployment are the results.
• The TIBCO BusinessWorks engine runs the business processes in test mode
and at run-time.
• TIBCO Administrator supports security administration as well as monitoring
and management of processes and machines. TIBCO Administrator consists
of the TIBCO Administration Server and the web browser based TIBCO
Administrator GUI.
• The TIBCO Runtime Agent (TRA) runs on each machine and executes
scripts, sends alerts, and performs recovery as specified.
• Optionally, TIBCO BusinessWorks interacts with TIBCO InConcert in its
implementation of ManualWork activities.
TIBCO BusinessWorks was designed using a plug-in architecture. As a result,
plug-in modules can be added to TIBCO BusinessWorks.
The illustration below shows how the components work together.

TIBCO BusinessWorks Concepts


The TIBCO BusinessWorks Integration Platform 9
|

Figure 4 TIBCO BusinessWorks components

TIBCO Designer GUI Runtime environment TIBCO Administrator GUI

TRA TRA

Machine1: Machine2:
PeopleSoft Siebel
subscriber publisher
Process Process
De

engine 1 engine 2
plo

proc1 proc3

Man r and
y

proc2 proc4

age
ito
... ...

Mon
TIBCO Administration Server

Development Runtime

TIBCO Administration Domain


The TIBCO administration domain combines the benefits of a distributed
run-time environment with centralized design-time deployment, and run-time
monitoring and management. This section discusses the TIBCO administration
domain, the associated security implementation, and how you monitor and
manage the domain.

Administration Domain Overview


A TIBCO administration domain is a collection of users, machines, and TIBCO
BusinessWorks components that a TIBCO Administration Server monitors and
manages. There is only one Administration Server for each administration
domain. Components within an administration domain can communicate with
systems outside the domain, but the administration domain is the administrative
boundary of an enterprise integration project.
Note that when the Administration Server goes down, all process engines and
adapters continue to run.
Figure 5 illustrates an administration domain and its contents.

TIBCO BusinessWorks Concepts


10
| Business Integration

Figure 5 Components of a TIBCO administration domain

Domain

Machine A Machine B Machine C


3
3 3
TIBCO Administration
Server Process Engine Siebel Adapter
1
2 2
User & Access
Information 4
PeopleSoft
Adapter
Projects 2
5
Machine &
Component
Information

A TIBCO administration domain consists of these elements, numbered


correspondingly in Figure 5:

1. TIBCO Administration Server—Each administration domain has one and


only one TIBCO Administration Server.
2. Components—Component software includes the TIBCO BusinessWorks
engine and adapters.
3. Machines—Each TIBCO administration domain contains one or more
machines. A machine can be added to an administration domain when a
TIBCO BusinessWorks component or adapter is installed. By default, all
machines within an administration domain are expected to be in the same
network subnet. You can, however, set up your system to use TIBCO
Rendezvous rvrd and can then use TIBCO BusinessWorks across subnets.
4. User and Access Information—User and authorization information is
specified with the TIBCO Administrator GUI and stored in the domain data
store. See Security below.
5. Projects—A project is created and deployed with the TIBCO Designer GUI.
Once deployed, the project becomes visible in the TIBCO Administrator GUI
and its components can be started, stopped, and monitored from there. See
Projects on page 15.

TIBCO BusinessWorks Concepts


The TIBCO BusinessWorks Integration Platform 11
|

Security
The TIBCO Administration Server supports centralized authentication and
authorization. Using the TIBCO Administrator GUI, users with full
administrative privileges can define which users should have access to which part
of the system.
• Authentication—The verification of the identity of a person or process.
• Authorization—Permission to view or execute. An administrator gives users
access rights to the functionality of the product they need. For example, access
rights are given to view or to write to projects at design time from TIBCO
Designer or to view or to manage modules from the TIBCO Administrator
console. The TIBCO Administration Server controls that access.
TIBCO BusinessWorks supports authentication and authorization for both data
stores and components (process engines or adapters) in the administration
domain. For example, only authorized users may create and save a server-based
project to the domain data store. Only authorized users may start or stop process
engines or adapters. This fine-grained user authorization scheme allows you to
customize the system to your company’s needs.

Monitoring and Managing the Domain


The TIBCO Administrator GUI allows you to monitor and manage the different
elements of the administration domain if you are authorized to do so.
• View, add, and delete users and assign access privileges to each user.
• Monitor and manage the machines in the administration domain.
• Monitor deployments. This includes viewing component status and
throughput and looking at traces, which can also be exported to a file.
• Manage deployments. This includes stopping and starting process engines
and adapters.

TIBCO BusinessWorks Concepts


12
| Business Integration

Architecture

This section explains the TIBCO BusinessWorks architecture at design time and
run-time. It discusses these topics:
• Fundamentals
• Design-Time Architecture, page 14
• Run-Time Architecture, page 17

Fundamentals
The TIBCO BusinessWorks architecture is based on the following set of
fundamentals:
• Support for Standards on page 12
• Integrated Development Environment on page 13
• Extensibility and Scalability on page 13

Support for Standards


Your integration platform must support standards for several reasons. A
standards-based integration platform supports you best as you add applications
to your enterprise or need to communicate with new business partners. Standards
are essential as you are planning for the future of the project because standards
facilitate updates. Some the applications you use may already be using standards,
and integration development will be faster and easier. Support for standards also
removes dependency on one company’s services and makes applications from
different companies interact more easily.
TIBCO BusinessWorks supports the most widely used standards for the different
aspects of an integration project:
• J2EE Compliant—JMS, EJB, JNDI
• Protocols—Web services (SOAP, WSDL), HTTP, HTTPS
• Messaging—JMS, TIBCO Rendezvous
• Data Description—Native support for DTD, XSD, and TIBCO AE Schema
• Data Representation and Expressions—Native support for XML, XPath
• Data Transformation—XSLT
TIBCO BusinessWorks also supports a plug-in for B2B interactions.

TIBCO BusinessWorks Concepts


Architecture 13
|

Integrated Development Environment


Your integration project must be supported by an integrated development
environment that spans all phases of the project. With TIBCO BusinessWorks, the
process design, deployment, and run-time environment are tightly integrated
even though the run-time environment supports a distributed architecture.

1. At design time, you use TIBCO Designer to configure services, such as


adapters, and design your business processes.
2. You can use the TIBCO Designer in test mode to debug the process definitions
in your integration project.
3. You can use the TIBCO Designer deployment palettes to deploy processes to
process engines and to deploy adapter services to adapters on the individual
machines.
When you deploy the project, the TIBCO BusinessWorks TRA component
sends scripts and other information about the processes to be run to the
individual machines. The TRA also updates the TIBCO Administration Server
with information about the new configuration, that is, which process runs on
which engine and which service accesses which adapter instance.
4. Optionally, you can configure manual activities using TIBCO Designer. When
you deploy the project, that information is then used by InConcert. The users
authorized to handle the manual activities can be specified in TIBCO
Administrator, then exported to TIBCO InConcert.
5. You can start the processes using the TIBCO Administrator GUI. You can then
monitor and manage all processes using TIBCO Administrator.

Extensibility and Scalability


As your enterprise grows, new applications are added and volume of data
increases. Scalability to support higher volume and extensibility to support
additional applications or a larger number of process engines or adapter instances
become paramount.
TIBCO BusinessWorks has been designed to be extensible and scalable. Working
in a distributed fashion, you deploy the different adapter services and business
processes on different machines in the administration domain. When the business
process applications’ volume increases, you add machines to the domain. As you
acquire new applications for your enterprise, you install the appropriate adapters
into the domain. You configure the adapter, modify your process definition, then
deploy the adapter service on the machine of your choice.

TIBCO BusinessWorks Concepts


14
| Business Integration

Design-Time Architecture
At design time, you work with the TIBCO Designer GUI to configure adapter
services and design business processes. You design a business process by
dragging activities (e.g. Read File or Send Mail) into the design window and
joining the activities using transitions. The TIBCO Designer test mode allows you
to debug the business process.
You can provide input, add breakpoints, supply values for variables, and so on.
See the TIBCO Designer User’s Guide for more information.

TIBCO Designer Layout


The TIBCO Designer main window has four panels, which contain the
design-time components of an integration project. The TIBCO Designer GUI is
discussed in more detail in the TIBCO Designer User’s Guide.

Figure 6 TIBCO Designer main window

Project tree
panel
Design panel

Palette panel

Configuration
panel

TIBCO BusinessWorks Concepts


Architecture 15
|

Projects
A project consists of resources that contain the functionality needed for your
integration. This includes services (producers and consumers of information), any
business logic that may be applied to that information, and deployment
information.
In TIBCO Designer, you click the project folder to display the project’s resources.
The ProcessNewComputer project, shown in the project tree panel in Figure 7,
consists of several components:
• A JMS shared resource (JMS Connection)

• Two process definitions (ProcessOrder and ProcessSoap)


• A shared resource used by the SOAP activity (ShippingSchedule)
• A Siebel adapter and a PeopleSoft adapter (SBLAccount and PSoft_ReqRep)
• A deployment configuration for the project (Deployment Configuration)

For a description of the example scenario that was used as the basis for this
project, see Business Integration Scenario on page 4.

Figure 7 TIBCO BusinessWorks project and resources

ProcessNewComputer project

TIBCO BusinessWorks Concepts


16
| Business Integration

Resources
Resources are the components of a project. A TIBCO Designer resource
corresponds to an object in a TIBCO application, such as an FTP activity, a process
definition, or a specific adapter instance.

Figure 8 Resources in project tree and design panel


i

Resources Resources
in project tree in design
panel

Palettes
Context-sensitive palettes organize resources into related groups. Which palette is
displayed depends on the currently opened resource and on your preferences.
You drag and drop resources from the palette into the design panel to add them to
your project. The main window shown in TIBCO Designer Layout on page 14 has
eight palettes in the palette panel.

Deployment
The Deployment palette allows you to add a deployment configuration to the
project tree. You can assign different processes to different process engines and
and adapter services to adapters installed on machines in the administration
domain. Afterwards, you can deploy the project from TIBCO Designer and the
appropriate information is sent to each machine.

TIBCO BusinessWorks Concepts


Architecture 17
|

Run-Time Architecture
When the integration project is deployed, the different process engines and
adapters are ready to run on the machines in the administration domain.
You start each component individually from the TIBCO Administrator GUI. After
all adapters and process engines have been started, process instances are created
by process starters. A process starter could be, for example, a File Poller or an
Adapter Subscriber activity waiting for incoming data. When data arrives, the
process starter creates a process instance using the process definition to which it
belongs, and the activities in the process are executed in sequence.
In Figure 9, a JMS Queue Receiver activity creates an instance of the process
definition to which it belongs each time it receives input.

Figure 9 Process instances created from a process definition

Process
Definition 1
Process Instance 1-1
JMS Queue State Process Instance 1-2
Receiver State Process Instance 1-3
State

Event Source Engine

While different process instances are running, any alerts that were scheduled
during deployment configuration are sent to the specified recipient by the TIBCO
Administration server. In addition, the TIBCO Administrator GUI allows
monitoring of the running project at different levels of detail, and can collect
tracing information for later analysis.
For the example discussed in this manual, the process engine could perform these
tasks:
• Receive data from an application server via JMS, data from a PeopleSoft Order
Management System via the appropriate adapter, and data from a shipping
service via SOAP.
• Enter data into a PeopleSoft Order Management system and data into a Siebel
customer service system via the appropriate adapters.
• Send certain orders out for credit approval and receive approval or refusal.
All components are monitored and managed via TIBCO Administrator, which
also provides security and repository management. Users can access TIBCO
Administrator using the TIBCO Administrator GUI.

TIBCO BusinessWorks Concepts


18
| Business Integration

Figure 10 Example scenario data flow

Siebel PeopleSoft
Customer Order
Service Management

Adapter Adapter
Publication Subscription
Service Service

Business Process Shipping Information


Web Service

Credit Check
ManualWork actvity Administration Server
Security Repository Monitoring
InConcert

TIBCO BusinessWorks Concepts


TIBCO BusinessWorks Features 19
|

TIBCO BusinessWorks Features

This section discusses some TIBCO BusinessWorks features.


• Messaging
• Adapters
• Business Process Modelling
• Schemas and Data Mapping
• Deployment Configuration and Management
• Run-Time Management and Monitoring

Messaging
To support your integration project at run-time, you need a messaging system
that can reliably handle the volume of messages that will be sent and received.
The system should have these characteristics:
• Guaranteed delivery and fault tolerance—Message delivery must be
guaranteed, and the system must be fault tolerant. If a message cannot be
delivered because the recipient was unavailable, the messaging system must
queue that message and continue to operate. The queued message must then
be redelivered as appropriate.
• Distributed architecture—A distributed, loosely coupled system is much
more likely to support the fault-tolerance you require than a monolithic
system that depends on one centralized server.
• High throughput—High throughput without performance degradation is
needed. Requirements vary throughout the day and throughout the business
year, and you cannot afford performance degradation at the time when
business increases.
• Scalability—As your business grows, you want to be able to update your
business integration in a simple and cohesive way. Furthermore, you want to
be able to connect your integration project with other departments using a
similar system. The messaging system must support this scalability.
TIBCO BusinessWorks is based on messaging standards with proven track
records. Supported protocols include TIBCO Rendezvous, JMS, and HTTP.

TIBCO BusinessWorks Concepts


20
| Business Integration

Adapters
Business information is distributed among different business applications (such
as SAP R/3 or PeopleSoft) or available from databases or files. Adapters help
make this information available to the business process by "adapting" the
applications to a common messaging system.

What are Adapters?


Adapters translate information into the appropriate format:
• Adapters receive information from a source application and publish it to the
business process in a shared format.
• Adapters subscribe to information from a business process and translate it to a
format the target application can understand.
• Adapters can also be set up to work in a client/server mode (using remote
operations.)
The illustration below shows how a Siebel customer service system
communicates with the business process using an adapter publication service and
the business process communicates with the PeopleSoft Order Management
system using an adapter subscription service.

Figure 11 Adapter data flow


I

Siebel PeopleSoft
Customer Order
Service Management

Adapter Adapter
Publication Subscription
Service Service

Business Process

In TIBCO BusinessWorks, adapters provide services to activities inside the


business process.

TIBCO BusinessWorks Concepts


TIBCO BusinessWorks Features 21
|

Adapter Features
Companies in a wide range of industries have successfully used TIBCO adapters
to integrate different packages and custom applications. TIBCO BusinessWorks
includes second-generation adapters that are based on the same technology but
have the following new features:
• Easy Configuration With Design-Time Adapter—All adapters included with
TIBCO BusinessWorks use a unified GUI that simplifies adapter
configuration. A Design-Time Adapter allows you to directly access the
source application from the TIBCO Designer GUI and specify the data the
business process needs.
• Easy Inclusion in Business Processes—The business process can
communicate with adapters by using activities found in the adapter palette.
These activities interact with each of the standard adapter services. For
example, the Publish to Adapter activity sends a message to an adapter
subscription service.
• Easy Deployment and Monitoring—When you are ready to deploy your
project, the TIBCO Designer deployment palette allows you to assign each
adapter to its own machine. At run-time, the TIBCO Administrator GUI
monitors each adapter in its own panel. You can therefore easily see if one of
the adapters is a bottleneck in the business process flow.

TIBCO BusinessWorks Adapters


A fully integrated TIBCO BusinessWorks adapter can be installed into a TIBCO
administration domain and later monitored and managed from the TIBCO
Administrator GUI. TIBCO BusinessWorks fully integrates with the following
adapters:
• Technology adapters—Includes adapters that access files or databases.
• Application adapters—Includes adapter for PeopleSoft, SAP R/3, Siebel, and
others.
Other TIBCO Adapters can be loaded into TIBCO Designer and configured using
the Generic Adapter Configuration resources. These adapters can then be used in
process design and run as part of the integration project. They cannot, however,
be installed into the administration domain or monitored and managed via
TIBCO Administrator.
For more information, see Phase 3: Services Configuration on page 55.

TIBCO BusinessWorks Concepts


22
| Business Integration

Business Process Modelling


The business processes describe the actual flow of data inside the enterprise. In
TIBCO BusinessWorks, you use the TIBCO Designer GUI to design and test your
processes. Features include:
• Configuration of adapter services.
• A complete set of commonly used activities such as File Read, File Write,
and File Create, a set of email activities, timers, FTP activities, etc.
• A transformation tool that lets you map the output of one activity to the input
of subsequent activities.
• Conditional transitions supporting XPath syntax.
• Grouping of activities.
• An easy-to-use design-time process debugger.
See Phase 4: Business Process Design on page 65, and the TIBCO BusinessWorks
Process Design Guide.
The illustration below shows a simple process that is part of the example scenario
in the design window.

Figure 12 Example process

Schemas and Data Mapping


Different applications in your enterprise use different data representations. For
example, a purchase order in a PeopleSoft system differs from a purchase order in
a Siebel customer service system. TIBCO BusinessWorks allows you to view and
manipulate the data coming from and going into each service or activity using
XML schemas.

TIBCO BusinessWorks Concepts


TIBCO BusinessWorks Features 23
|

This section first gives a brief introduction to schema (Understanding Schemas),


then discusses "Schemas in TIBCO BusinessWorks."

Understanding Schemas
The example below shows a simplified XSD (XML Schema Definition) that
includes an Order ID element restricted to integer data. Incoming XML
documents that use integers for the Order ID are allowed, while an alphanumeric
Order ID is rejected.

Figure 13 XML files conforming or not conforming to XSD

XSD

<?xml version = "1.0" encoding = "UTF-8"?>


<schema xmlns = "http://www.w3.org/2000/10/XMLSchema"
targetNamespace = "http://www.tibco.com/namespaces/AESchema"
...
<element name = "OrderID" type = "integer">
...

XML XML XML

<?xml version="1.0" <?xml version="1.0"


<?xml version="1.0"
encoding="UTF-8"?> encoding="UTF-8"?>
encoding="UTF-8"?>
<oderid>350187 <oderid>ACME25
<oderid>345</orderid>
</orderid> </orderid>

Schemas are especially useful if you are deploying a complex system. Schemas are
used by the running application but are not included in the code. The use of
schemas makes it possible to enforce that outgoing and incoming data strictly
comply with the prespecified data description.

Schemas in TIBCO BusinessWorks


In the TIBCO Designer GUI, you can define the schema for adapters and view and
manipulate the schema for each activity in the business process.
For business process activities, you can view the available process data and define
the input schema for each activity. The process data is the list of available data for
that activity. The input schema (required or optional) defines input values for an
activity.

TIBCO BusinessWorks Concepts


24
| Business Integration

You can map the process data to the input data using a drag and drop interface.
You can specify conditional mapping using XPath, and you do not need detailed
knowledge of XPath for simple conditions. See Step 7: Perform Mapping and
Transformation for Each Activity on page 75 (Chapter 6).
Data mapping is discussed in detail in the TIBCO BusinessWorks Process Design
Guide.

Manual Activities
TIBCO BusinessWorks includes a ManualWork palette with activities that you can
add to your business processes when the process requires user interaction for
completion. In our example, orders under $10 000 were processes automatically.
For orders over 10 000, an additional credit check is required.
In that case, the order is assigned to a pool of users for approval. One user accepts
the request, and approves or rejects it. If no one accepts the request, the manual
approval times out, and then the status of the request is checked. If no errors were
returned, then the work is still in the users’ queue, so the process waits for the
completion of the manual work. If errors were reported in the manual work, the
work is marked as not approved and the process completes.
TIBCO BusinessWorks allows you to:
• assign a task to a pool of users,
• check the status of the task,
• change the status of the task,
• download documents associated with a task,
• or wait for the completion of a task.
The ManualWork palette works with TIBCO InConcert. Users and groups are
defined either in TIBCO InConcert or TIBCO Administrator (and then later
exported to TIBCO InConcert). An activity that assigns work creates a TIBCO
InConcert job. The job can be viewed and modified using TIBCO BusinessWorks
web interface to manual tasks.

Deployment Configuration and Management


The TIBCO Designer deployment palette allows you to perform deployment
configuration and deploy your project. You perform deployment configuration
with the TIBCO Designer’s easy to use drag and drop interface as follows:

1. Identify the machines that implement the integration project.


2. Assign services and process engines to these machines.

TIBCO BusinessWorks Concepts


TIBCO BusinessWorks Features 25
|

3. Specify failure recovery options.


4. Specify alert conditions and recipients.
5. Deploy the project, which means prepare it to run.
This is discussed in more detail in Phase 5: Deployment on page 79.
TIBCO BusinessWorks supports a distributed deployment environment, in which
different processes run on different machines. You then monitor and manage the
processes using a web-browser based GUI that you access remotely. TIBCO
BusinessWorks combines the advantages of running in a distributed environment
without a single point of failure with the advantage of monitoring and managing
the different components in a centralized fashion.
TIBCO BusinessWorks allows you to deploy multiple engines as part of a
fault-tolerant group. The engines in the group should be configured for
JDBC-based checkpointing. At runtime, both engines are started and one runs in
standby mode. If required, the engine running in standby mode can take over if
the primary engine experiences problems.

Run-Time Management and Monitoring


After your integration project has been deployed, management and monitoring
are key factors for its success. Facilities must include a notification mechanism,
some auto-correction upon failure (for example, restarting a machine or process),
and an interface that allows comprehensive access to the current state of the
project. Only authorized users should have access to management functions.
The TIBCO Administration Server supports security, run-time monitoring, and
process and system management via the TIBCO Administrator GUI. This includes
the following features:
• User authorization and authentication.
• Component management, including starting and stopping adapter instances
and process engines.
• End-to-end business process monitoring.
— Track components such as adapter services or process engines.
— Create customized logs that could include number of business processes,
throughput, and so on.
• Systems management.
— Monitor system performance, processes, and network status.
— Receive alerts if parts of the project are overloaded or if a failure occurred.
— Automatically restart failed processes.

TIBCO BusinessWorks Concepts


26
| Business Integration

• Tracing.
— Specify which information you want to view (info, debug, after a certain
time, etc.).
— From any machine in the administration domain, view any log file,
regardless of the machine on which the associated component is running.
The screen below shows the TIBCO Administrator Components option. Each
deployed component in the domain is displayed. Privileged users can view
additional information or stop or start the component.

Figure 14 Components Option in TIBCO Administrator

See Phase 6: Production on page 91 for more information.

TIBCO BusinessWorks Concepts


| 27

Chapter 2 TIBCO BusinessWorks


Methodology

A TIBCO BusinessWorks integration project is developed in phases. Having a


well-defined methodology helps new users come up to speed quickly and allows
different developers to work together more easily.
This chapter gives an overview of TIBCO BusinessWorks methodology.

Topics

• Introduction, page 28
• Phase 1: Analysis, page 29
• Phase 2: Domain Setup and Installation, page 30
• Phase 3: Services Configuration, page 33
• Phase 4: Process Design, page 35
• Phase 5: Deployment Configuration and Deployment, page 37
• Phase 6: Production, page 38

TIBCO BusinessWorks Concepts


28
| TIBCO BusinessWorks Methodology

Introduction

TIBCO BusinessWorks components are designed to support development in


phases and to let you seamlessly move from one phase to another.
• Using TIBCO Designer, you configure services, for example, an adapter
service.
• You can then access the adapter service from activities inside the business
process.
• After you’ve configured adapter services and business processes, you can use
TIBCO Designer to assign adapter services to adapters and processes to
process engines. You assign each adapter and process engine to a machine in
the administration domain and deploy the project to the run-time
environment.
• You can then start and the adapters and process engines using the TIBCO
Administrator GUI and manage and monitor them from there.
Following the phases in sequence results in a fast deployment that closely meets
the specifications. Note that as a rule, you perform analysis, installation, and
services configuration only once, then iterate through the other phases until you
have arrived at the optimal configuration.
This section gives an overview of each phase, using examples from the example
scenario as appropriate (see Business Integration Scenario on page 4). A more
detailed discussion for each phase is then given in a separate chapter.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

TIBCO BusinessWorks Concepts


Phase 1: Analysis 29
|

Phase 1: Analysis

Problem definition and analysis is the critical first phase in an integration project.
Because the TIBCO BusinessWorks graphical user interface is so easy to use, it is
tempting to start development right away. However, detailed problem analysis
results in a faster over-all development process. By clearly identifying and
analyzing the problem, you avoid pursuing dead-end design paths and the steps
to solve the problem become apparent.
As a rule, it makes sense to start with a business analysis that includes a problem
definition, which states your project’s goals clearly. An engineering analysis goes
a step further and identifies the components of the integration project, the process
flow, error handling, etc.

The analysis should include consideration of expansion possibilities. In the


example scenario, one could consider expansion to include direct communication
with a business partner. Because of the TIBCO BusinessWorks distributed
architecture, most expansions are straightforward.

TIBCO BusinessWorks implicitly supports analysis and design by offering a set of


objects representing services and activities as the basis for the project flow. The
design team can use these objects during project design. See Phase 1: Analysis on
page 39 (Chapter 3).
Here are some questions that are commonly asked during analysis:
• What are the services my business process will access? In the example, the
process is accessing two adapter services (PeopleSoft and Siebel), the web
service that supplies shipping information, and an application server.
• What are the transports being used? In the example, the adapter services are
accessed using TIBCO Rendezvous. The web service is accessed via SOAP.
The application service is accessed via JMS.

TIBCO BusinessWorks Concepts


30
| TIBCO BusinessWorks Methodology

Phase 2: Domain Setup and Installation

A TIBCO administration domain is the set of software and hardware resources


used by your integration project. See TIBCO Administration Domain on page 9
for an overview.
This section gives an overview of planning the administration domain setup and
installing the components.

Domain setup is different during development and during deployment testing


and production.
• During development, each developer may install an Administration Server
and set up an administration domain on their machine and develop and test
the project there.
• During deployment testing and production, one TIBCO Administration
Server manages the project and the ACL (Access Control List). Only
authorized users can create and save projects or start and stop processes.

Planning the Domain


When you install a TIBCO BusinessWorks component, you must specify the
administration domain to which a machine belongs. Before installing the
software, you should therefore determine what resources should belong to a
administration domain. Ask yourself these questions:
• For development environments, do I need to share work with other
developers? If so, all machines that need to share work should be part of the
same administration domain. If not, this machine can have its own
administration domain.
• What machines do I need to run my project? By default, all machines within
an administration domain are expected to be in the same network subnet. You
can, however, set up your system to use TIBCO Rendezvous rvrd and can
then use TIBCO BusinessWorks across subnets.
• Which components (adapters or process engines) should run on which
machine?
• Where should I run my TIBCO Administration Server?
• Who are the users that need to make changes to the project? For which
component does each user need to make changes (e.g. start or stop an
adapter)?
• Who are the users that need to view information about the running project?
Which component(s) does each user need to view?

TIBCO BusinessWorks Concepts


Phase 2: Domain Setup and Installation 31
|

• How will the project handle load balancing and fail-over? While the current
release of TIBCO BusinessWorks does not explicitly support load balancing
and fail-over, you should plan your administration domain to support those
features when they become available in the near future. This includes both
architecture of your project and cost projections as the project grows.
The illustration below shows a possible administration domain setup for the
example scenario:
• The TIBCO Administration Server runs on machine 1.
• The PeopleSoft and Siebel adapters run on machine 2.
• The process engine runs on machine 3.
• The PeopleSoft and Siebel systems run outside the administration domain.

Figure 15 Domain setup for example program

PeopleSoft system Process engine

PeopleSoft adapter
Siebel adapter

TIBCO Administration
Siebel system
Administration Domain Server

Installing TIBCO BusinessWorks Components


A flexible installer allows you to install one or more TIBCO BusinessWorks
components on each machine following these steps:

1. Install the TIBCO Administration Server and specify the administration


domain name, and the administration user and password.
2. Install other TIBCO BusinessWorks components such as process engine(s) or
TIBCO Designer instances into the administration domain.
3. Install adapters into the administration domain.

TIBCO BusinessWorks Concepts


32
| TIBCO BusinessWorks Methodology

The administration domain is used by the different TIBCO BusinessWorks


components. From TIBCO Designer, you can select any of machine in the
administration domain and include it in a deployment configuration. From
TIBCO Administrator, authorized users can monitor machines, components
(adapters and process engines), and process instances in the administration
domain.

Planning and Configuring User Access


It may also be useful at this stage to plan which users should be allowed access to
which components. You add users to the administration domain and specify
access privileges for each user via the TIBCO Administrator GUI.

TIBCO BusinessWorks Concepts


Phase 3: Services Configuration 33
|

Phase 3: Services Configuration

TIBCO BusinessWorks uses different types of services that can be accessed from
within the process:
• Adapter services are configured using TIBCO Designer and the Design-Time
Adapter (DTA). The services can then be accessed from the TIBCO
BusinessWorks process.
• Web services can be configured from TIBCO BusinessWorks or externally, and
accessed using the SOAP Request-Reply activity.
This section gives an overview of adapter configuration see Phase 3: Services
Configuration on page 55, for more information. It then discusses the services
used by the example.

Adapter Configuration Overview


Adapters services send data to and receive data from your business process. Data
can come, for example, from an application such as PeopleSoft, SAP R/3, and so
on, from a legacy source, from a database, or from the Internet. The following
service types are supported:
• Adapter publisher service—Sends data from the source application to the
business process.
• Adapter subscriber service—Receives data from the source application and
sends them to the business process.
• Adapter client service—Acts as a client in a request-response interaction.
• Adapter server service—Acts as a server in a request-response interaction.
When designing and implementing the integration project, you must identify the
adapter services precisely. This includes connection parameters such as the names
of the host application, their location, and so on.
You then configure a service with the appropriate adapter and save it as part of
your project. To configure an adapter first provide connection information. A
Design-Time Adapter (DTA) allows you to access the metadata provided by the
adapter at design time. Each type of adapter has its own DTA. Only one DTA
needs to run in a network, even if several users access different adapter instances
of that adapter type. With configuration complete, you save the adapter service
configuration. The adapter service can then be used by the activities in your
business process and later be invoked at run-time. For example, a Publish to
Adapter activity expects an adapter subscriber service that receives the data
being published.

TIBCO BusinessWorks Concepts


34
| TIBCO BusinessWorks Methodology

For more introductory information, see Phase 3: Services Configuration on


page 55. The User’s Guide for each adapter contains detailed set-up information
for that adapter.

Web Services Overview


TIBCO BusinessWorks can function both as a server and a client in a web services
interaction.
For additional information, see the SOAP palette activities and the WSDL file
activity in the TIBCO BusinessWorks Process Design Guide.

Services Used by the Example


The example needs to access four services from which it retrieves or to which it
sends information:
• The application server is configured externally. It is accessed via a JMS Queue
Receiver.

• To access the PeopleSoft Order Management system, you configure a


PeopleSoft request-response adapter. The adapter is accessed via an Invoke
an Adapter Request-Response Service activity.

• To access the Siebel customer service system, you configure a Siebel adapter
subscriber service. A Publish to Adapter activity can then connect the
process to the adapter subscriber service.
• The Shipping web service is configured externally. It is accessed via a SOAP
Request Reply activity.

TIBCO BusinessWorks Concepts


Phase 4: Process Design 35
|

Phase 4: Process Design

The flow of business data in your enterprise can be captured by business


processes. This section starts with an overview. It then briefly discusses the
activities used in the example scenario. See Phase 4: Business Process Design on
page 65 (Chapter 6) for more information.

Overview
The TIBCO Designer GUI supports defining business processes with these major
elements:
• Each process has a starting and ending point.
• Activities are added to the process. Activities can access data from an adapter
service, manipulate the data, and send the data elsewhere. Examples include
sending email, querying a database, or adding content to a file.
• The process can choose from different execution paths depending on certain
criteria. For example, if the amount of a purchase order exceeds a certain
number, you could add an additional credit check.
• Activities can be grouped. Grouping allows you to create loops. These loops
can be used, for example, to have one error condition for the group, or to
group activities as transactions that commit to a database only when all
activities in the group are completed.
• Most processes have one main process, which starts with a process starter
activity. Different activities, for example, a SOAP Event Source activity or a
Receive Mail activity can function as process starters. An process can call
different subprocesses as it executes.
• If the business process requires user interaction, for example, approval of
certain orders, it is possible to use the activities in the Manual Work palette.
Manual Activities interact with TIBCO InConcert and allow a pool of users to
accept outstanding tasks. For additional information, see the TIBCO
BusinessWorks Palette Reference.
An integral part of process design must be testing. TIBCO Designer includes a test
mode that allows you to run any of the processes in your project at design-time.
You can set breakpoints and provide required input as needed. You can also see
the values of variables as they are passed through the different activities in the
process.

TIBCO BusinessWorks Concepts


36
| TIBCO BusinessWorks Methodology

Activities Used by the Example


The example includes all the services (see Services Used by the Example on
page 34). In addition
• A Send Mail activity sends an email to the customer if shipping the order is
delayed.
• A Manual Work activity handles the credit check approval.

TIBCO BusinessWorks Concepts


Phase 5: Deployment Configuration and Deployment 37
|

Phase 5: Deployment Configuration and Deployment

The TIBCO administration domain supports a simple installation and


deployment paradigm:
• During installation, you install all components into the same administration
domain. After you have installed the TIBCO Administration Server, any
machine on which you install a TIBCO BusinessWorks core component or an
adapter can be added to the administration domain. The component or
adapter is then visible and accessible at design-time via the TIBCO Designer
GUI and at run-time via the TIBCO Administrator GUI.
• Deployment configuration is performed using TIBCO Designer and includes
these tasks:
— Assign processes and adapter services to different process engines and
adapters installed on the machines in the administration domain.
— Specify startup options for each component (command-line process starter
or NT service).
— Specify recovery options and alerts for engines and adapters.
— If desired, set up your deployment for fault tolerance. Specify more than
one process engines, which should be running on different machines and
use JDBC for checkpointing. The secondary engines will run in standby
mode until they are needed.
• When deployment configuration is complete, you deploy the project. As part
of that process, startup scripts and other information about the different
components are sent to the machines to which the components were assigned.
The project data store (repository) and the TIBCO Administration Server are
updated with the new deployed components.
Phase 5: Deployment on page 79 (Chapter 2), discusses deployment in more
detail.

TIBCO BusinessWorks Concepts


38
| TIBCO BusinessWorks Methodology

Phase 6: Production

In the production phase, your project’s components are running on the different
machines in the administration domain. Recovery is performed automatically as
previously specified as part of the deployment configuration.
Authorized users can monitor the administration domain, all machines, and all
processes, using the web browser based TIBCO Administrator GUI. TIBCO
Administrator can be used for these tasks:
• User Management—Manage the ACL, for example, create users for the
administration domain and assign them permissions to perform certain
activities. Change the ACL as needed.
• Domain Monitoring—View the machines in the administration domain and
their CPU and disk usage. View a domain inventory of all TIBCO products
installed in the administration domain.
• Deployment Monitoring and Management—View the status of components
and generate tracing information. Start and stop process engines and
adapters.
Phase 6: Production on page 91, gives an overview of the most important
components of the GUI. For detailed information, see the TIBCO BusinessWorks
Administrator’s Guide.

TIBCO BusinessWorks Concepts


| 39

Chapter 3 Phase 1: Analysis

During the analysis phase, the different departments participating in the


integration project must come to a clear understanding of the requirements.
This chapter gives a brief introduction to elements of the analysis phase that
typically require special attention.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

Topics

• Step 1: Define and Delimit the Problem, page 40


• Step 2: Identify Processes, page 41
• Step 3: Identify Components, page 42
• Step 4: Describe Business Events and Objects, page 45
• Step 5: Design Business Processes, page 46
• Step 6: Consider Domain Setup, page 47

TIBCO BusinessWorks Concepts


40
| Phase 1: Analysis

Step 1: Define and Delimit the Problem

The ultimate success or failure of your business integration depends on how clear
you are about the problem you are trying to solve. You can only succeed if you
understand the scope of the problem, the components involved, and the
deployment parameters.
Before you start, it is therefore critical that you have a definition of the problem
that is as clear and precise as possible.
For example, a working definition of the example scenario could be the following:

1. EasyWare receives orders for computer hardware. The goal is to allow


customers to place orders through a web site, and to allow later expansion for
other ways to place orders.
2. Each order is processed by a customized order capture system built on top of
an application server.
3. The business process receives the incoming order document via JMS.
4. Each order is automatically entered into the PeopleSoft Order Management
system. Conversion to PeopleSoft format is required.
5. When the PeopleSoft Order Management system acknowledges acceptance of
the order, it includes an ID for the order.
6. Next, the business process checks the shipping schedule, which is available
from an external vendor’s web site.
7. If shipping is delayed, an email is sent to the customer.
8. Otherwise, the order is sent and all order information, including the generated
Order ID and the shipping information, is entered into a Siebel system. The
Siebel system creates a new customer service record based on the information.

TIBCO BusinessWorks Concepts


Step 2: Identify Processes 41
|

Step 2: Identify Processes

A clean design of a complex process consists of a main process that calls


subprocesses as needed. The problem defined above lends itself to the creation of
a process for each task that is performed.

1. The main process listens for incoming data from the application server. When
a purchase order arrives, the main process calls the other processes in
sequence.
2. The AddtoOrderMgmt process enters the order into the PeopleSoft Order
Management system. It returns the purchase order and the Order ID to the
main process.
3. The CheckShippingSchedule process accesses the web site of the shipping
company and sends an email to the customer if shipping is delayed. This
process could also update the status of the order in the Order Management
system.
4. The AddtoCustMgmt process enters the order, including the Order ID
generated by PeopleSoft and the shipping information, in the company’s
Siebel customer service system.
You can use TIBCO Designer to create the four processes and have the main
process call the other processes in the appropriate sequence.

TIBCO BusinessWorks Concepts


42
| Phase 1: Analysis

Step 3: Identify Components

After you have identified the processes, you must understand the components of
the process. This section discusses some potential components.
• Shared Resources
• Services and Corresponding Activities
• Transitions and Conditions
• Mapping
• Exceptions

Many components are activity resources. A complete list of all activities is


included in the TIBCO BusinessWorks Process Design Guide. You can also access
documentation for an activity from TIBCO Designer using the What is This
option from the right-button menu of the corresponding resource’s menu.

Shared Resources
Some activities use shared resources. For example, a WSDL File shared resource is
used by SOAP activities and a JDBC Connection shared resource is used by JDBC
activities.

Services and Corresponding Activities


The business process uses services to retrieve or send data. There are two kinds of
services:
• Adapter services—The source and target applications your enterprise uses
cannot directly talk to each other or to TIBCO BusinessWorks. To enable this
communication, you can use TIBCO adapters. Adapters can be configured
using TIBCO Designer.
• Web services—Web services are external to TIBCO BusinessWorks but are
supported by several activities that are part of TIBCO BusinessWorks.
The example discussed in this manual requires the following activities:
• An application server sends the incoming orders over JMS. The business
process uses a JMS Queue Receiver activity that receives the order.
• A PeopleSoft adapter receives a request and sends data back to the process.
For the problem at hand, a request-response adapter service is well suited.

TIBCO BusinessWorks Concepts


Step 3: Identify Components 43
|

The business process uses an Invoke an Adapter Request-Response


Service activity to interact with the adapter.

• A web service provided by the shipping company is invoked through a SOAP


Request Response activity.

• A Siebel subscriber adapter service receives the order from a Publish to


Adapter activity and enters the order, including the Order ID assigned by
PeopleSoft, into the Siebel customer service system.
Other activities include a Send Mail activity that sends an email to the customer
if shipping is delayed.

ManualWork Activities
The activities in the ManualWork palette are useful for automated business
processes that have a few steps which require user interaction. In many cases, the
Assign Work activity is appropriate for implementing the interaction. Other
activities in the palette include, for example, a Modify Work activity that allows
administrators to perform actions on a work item.
In order to use the activities in the Manual Work palette, TIBCO InConcert must
have been installed and users must have been created with TIBCO Administrator
and exported to InConcert.
See Step 5: Optionally, Add Manual Work Activities on page 72 for some
additional information. For a detailed discussion, see the TIBCO BusinessWorks
Palette Reference.

Transitions and Conditions


Transitions go from each activity in the process to the next activity. Each activity
must have at least one incoming and at least one outgoing transition. Each activity
can potentially be called from several other activities or can conditionally call
several activities.
For example, if a credit check were included in a business process, the result of the
credit check outcome could determine the next activity. A negative credit check
could result in an email to the customer. A positive credit check could result in a
different email and placement of the order.

TIBCO BusinessWorks Concepts


44
| Phase 1: Analysis

Mapping
For each activity in the process there is an appropriate input. For example, the
Send Mail activity needs input that includes information about the customer and
the Order ID. At times, the output of one activity directly maps into the input of
the next activity in the process. Very often, however, an activity requires a subset,
or a superset of the incoming process data, or data may need to be modified.
To give each activity the appropriate input, TIBCO BusinessWorks lets you map
the process data to the input of the activity. For example, the Send Mail activity
uses the customer email address and the Order ID but ignores the shipping
address which is also part of the order.

Exceptions
As you analyze your business problem, you should include as much information
about exceptions as possible. For the employees of your company, graceful
exception management will result in a noticeable increase in productivity. If
exception handling is flawed, integration automation might actually result in
decreased productivity because a lot of time is spent on dealing with exceptions.
If exceptions are included in your initial design, you can make them part of the
business process, and ultimately deliver a more robust system faster.
Decide on exception handling standards across business phases to make it easier
to identify exceptions and understand how they are related.

TIBCO BusinessWorks Concepts


Step 4: Describe Business Events and Objects 45
|

Step 4: Describe Business Events and Objects

Early in the analysis, you identified the business objects and events. At this stage
of the analysis, you must describe the events and objects in more detail. This
includes:
• Know the required data format at each place in the process (and how to get it).
• Know the required data content (and how to get information that is not
directly available).
• Understand what appropriate actions in case of a business or system-level
error could be.

TIBCO BusinessWorks Concepts


46
| Phase 1: Analysis

Step 5: Design Business Processes

After you have identified and described the components of the process, you can
prepare the actual design of the business process. This includes:
• Activities involved. For example, the purchase order is received from a JMS
Queue Receiver activity and a Publish to Adapter activity sends the
purchase order to a PeopleSoft adapter subscriber service.
• Data flow. Data flow includes both flow of data for the non-exception case and
for exception cases. Data flow may involve mapping, that is, putting the value
from one field into another. It could also involve transformation, that is,
translating data from one format to another. For example, PeopleSoft may
store phone numbers in a 10-digit format, while Siebel may use parentheses or
dashes as part of the phone number.
Part of massaging the data for each system requires transformation. You can
set up transformation using the mapper included with TIBCO Designer.
Custom java activities can be used to perform more complex transformation.
• Exception flow. After you have identified the possible exceptions, you
determine what the system should do in case of an exception.

TIBCO BusinessWorks Concepts


Step 6: Consider Domain Setup 47
|

Step 6: Consider Domain Setup

After you’ve completed the design of your business process, you should consider
the domain setup required to support it. For example:
• What hardware is required to run the project? Is security an issue that might
influence platform choice?
• What TIBCO software components to you expect to install?
— How many versions of TIBCO Designer and the TIBCO BusinessWorks
engine during design time.
— How many versions of the TIBCO BusinessWorks engine at runtime? If you
want to run in fault tolerant mode, you should plan on appropriate
hardware resources to support it.

TIBCO BusinessWorks Concepts


48
| Phase 1: Analysis

TIBCO BusinessWorks Concepts


| 49

Chapter 4 Phase 2: Domain Setup and


Installation

TIBCO BusinessWorks allows you to progress from project design to deployment


and production with minimal configuration and setup. To guarantee that the
transitions will be trouble-free, it is important that you understand setup of a
TIBCO administration domain and installation of different TIBCO products into
the administration domain.
This chapter gives an overview of domain setup and installation. For more
information, see TIBCO BusinessWorks Administrator’s Guide.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

Topics

• TIBCO Administration Domain, page 50


• Installing TIBCO BusinessWorks, page 52
• Installing Adapters, page 54

TIBCO BusinessWorks Concepts


50
| Phase 2: Domain Setup and Installation

TIBCO Administration Domain

A TIBCO administration domain is a set of hardware and software resources.


TIBCO Administration Domain on page 9 gives an overview of a domain’s
elements.
Understanding the domain before installing the software is important because the
domain is set up during installation. Typically, the set-up depends on the phase of
the project:
• During early stages, each developer typically installs the complete TIBCO
BusinessWorks package, including the TIBCO Administration server, on one
machine and develops and tests the project there.
• Later, for final testing and production, the development team uses one TIBCO
Administration Server which manages different components (engines and
adapters) running on different machines.
The advantage of an administration domain is that the components of your
integration project automatically know about each other. They can be monitored
as a group. Security, that is, access to both processes and data stores, is shared
across the administration domain.
The administration domain is managed by a TIBCO Administration Server, which
is assisted by a TIBCO Runtime Agent running on each machine in the domain.

TIBCO Administration Server


The TIBCO Administration Server manages the administration domain. The
server is installed only on one machine in the environment and can be accessed
with the browser-based TIBCO Administrator GUI.
The Administration Server’s main responsibilities are the following:
• Enforce security for the domain. TIBCO BusinessWorks supports both
authentication and authorization of users that want view access or full access
to the run-time components.
• Manage storage for server-based projects.
• Manage registration, that is, add deployed projects and machines to a domain.
• Send appropriate information to each machine’s TIBCO Runtime Agent when
a project is deployed, and pick up alerts sent by those Runtime Agents.
• Start an stop process engines and adapters.
• Manage engines or adapters running in fault-tolerant mode if fault-tolerant
setup has been performed.

TIBCO BusinessWorks Concepts


TIBCO Administration Domain 51
|

TIBCO Run-Time Agent


When you install a TIBCO BusinessWorks component or a fully integrated TIBCO
ActiveEnterprise adapter on a machine, a TIBCO Runtime Agent (TRA) is
automatically installed. The TRA has two main functions:
• Supplies an agent that is running in the background on each machine.
— The agent is responsible for starting and stopping processes that run on a
machine according to the deployment information.
— The agent monitors the machine. That information is then visible via
TIBCO Administrator.
• Supplies the run-time environment, that is, all shared libraries including
third-party libraries.

TIBCO BusinessWorks Concepts


52
| Phase 2: Domain Setup and Installation

Installing TIBCO BusinessWorks

When you install TIBCO BusinessWorks, you must first install the administration
component on one machine to establish a TIBCO administration domain.

When you install TIBCO BusinessWorks components, such as TIBCO Designer, on


a second machine, be sure to deselect the administrative component. If you install
two Administration Servers into the same domain, failures at design-time and
run-time will result.

After that, you can install design-time components, run-time components, and
adapters. During installation, you assign the machine on which you install the
component or adapter to the domain.

Each time you install either a TIBCO BusinessWorks component or a fully


integrated adapter on a machine, the TRA is installed automatically on that
machine.

During installation, you are prompted for the name of the domain. You can either
join an existing domain, and install components there, or create a new domain. If
you want to create a new domain, you must install an Administration server on
the machine from which you create it. The following diagram illustrates this.

Figure 16 Installing TIBCO BusinessWorks

Install
No Install
Admininistration
component
Server
Install Admininistration
software domain exists?

No
Yes

Yes Add
Install
Want to join? component to
component
domain

TIBCO BusinessWorks Concepts


Installing TIBCO BusinessWorks 53
|

Installation Components
When you install TIBCO BusinessWorks, you are prompted to choose one or more
of the following components:

Administration Component
The administration component consists of the TIBCO Administration Server and
the tomcat engine. When you install the administration component, you are
prompted for the name of the administration domain and the name and password
for the administration user.

Each machine can belong to only one TIBCO administration domain. If you install
two TIBCO Administration Servers on one machine and attempt to create two
separate domains on that machine, failures at design-time and run-time will
result.

Design-Time Component
When you select the design-time component during installation, the TIBCO
Designer GUI is installed. The GUI allows you to configure adapters and business
processes and to deploy projects. Selecting the design-time component also
installs TIBCO Designer Process Design and Deployment palettes.

Runtime Component
When you select the run-time component, the TIBCO BusinessWorks engine is
installed.

TIBCO BusinessWorks Concepts


54
| Phase 2: Domain Setup and Installation

Installing Adapters

The TIBCO BusinessWorks process engine can work together with any TIBCO
adapter. Each adapter is shipped separately. There are two types of integration
between adapters and TIBCO BusinessWorks:
• Fully integrated adapters can be installed into a TIBCO administration
domain. They are configured with a custom TIBCO Designer palette. At
run-time, the adapter interacts with the running process and can be monitored
using TIBCO Administrator.
• Any TIBCO adapter can be configured using the TIBCO Designer Generic
Adapter palette and can interact with TIBCO BusinessWorks at run-time.

When you install a fully integrated adapter, you can choose to install it
stand-alone or as part of a TIBCO administration domain. If you select to join a
domain, you are prompted for the domain name, user, and password.

You must install a TIBCO Administration Server and that server must be running
before you install the adapter into an administration domain.

When you install a fully integrated adapter, you have the option of installing
TIBCO Designer as part of the installation. The illustration below shows how you
must install TIBCO BusinessWorks to create an administration domain if none
exists or if you do not want to join the one that is currently available. It also shows
that you can run the adapter in standalone mode if desired.

Figure 17 Installing an adapter

Yes
Install TIBCO
No Want to create BusinessWorks
one?
Install Administration No
adapter domain exists? Run standalone
Yes

Yes Install Add adapter to


Want to join?
adapter domain

No

Run standalone

TIBCO BusinessWorks Concepts


| 55

Chapter 5 Phase 3: Services Configuration

The first phase in the actual business integration development is configuration of


adapter services. Adapters ensure that the different applications in your
enterprise can communicate in real time.

1. Analysis 2.Domain Setup 5. Process Design 6. Deployment 7. Production


3.Configuration
Define & analyze Install software & Implement & test Deploy to Manage & monitor
Configure adapters
problem configure domain business processes runtime engine deployments

Topics

• Introduction: TIBCO BusinessWorks Services, page 56


• Step 1: Installing the Adapter, page 59
• Step 2: Setting up the Design-Time Adapter, page 60
• Step 3: Configuring the Run-Time Adapter, page 62
• Step 4: Accessing the Adapter Service From the Process, page 63

TIBCO BusinessWorks Concepts


56
| Phase 3: Services Configuration

Introduction: TIBCO BusinessWorks Services

In TIBCO BusinessWorks, services are responsible for publishing or subscribing


to business data in a decoupled yet reliable manner. The business process receives
data from a service and routes data to a service. Examples of services are could be
a SendPurchaseOrder activity or a RequestShippingInformation activity.
TIBCO BusinessWorks supports web services for interaction with the Internet and
adapter services for interaction with files, databases, or different ERP (Enterprise
Resource Planning) applications.
Enterprise integration platforms typically use a tightly coupled architecture,
where all components of a business process are running on one server. If any
component in the system changes, the system no longer works. If the server goes
down, all components of the business process stop.
In contrast, a service-centric architecture supports self-contained services. Each
service is configured separately and can be deployed on a different machine. If
one machine goes down, all other parts of the process can still run. Service
descriptions are stored with the TIBCO Administration Server. The business
process coordinates the services in the appropriate way. For example, a process
could contain a Publish to Adapter activity that accesses an adapter subscriber
service.
This loosely-coupled architecture makes it easy to change individual components
as needed.

Service Characteristics
The following characteristics are associated with a service:
• Service interface, for example WSDL/SOAP or AE Services
• Transport, for example, HTTP, JMS, TIBCO Rendezvous
• Data syntax, for example, XML or ActiveEnterprise message format
• Data schema, for example DTD or XSD schema

Invocation Modes
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

TIBCO BusinessWorks Concepts


Introduction: TIBCO BusinessWorks Services 57
|

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.
Publication and subscription are driven by events, usually the arrival or creation
of data. Communication is in one direction (publisher to subscribers).

Service Types
TIBCO BusinessWorks includes both web services and adapter services. Web
services are accessed by SOAP activities. Adapter services are accessed by
activities available in the TIBCO Designer ActiveEnterprise Adapter palette
that you can add to your business process.

Web Services
TIBCO BusinessWorks supports Web Services Description Language, or WSDL.
WSDL is an XML-formatted language used to describe a Web service's capabilities
as collections of communication endpoints capable of exchanging messages.
You can use TIBCO BusinessWorks both to set up a web services server or to set
up a web services client. The activities you need are included in the SOAP palette.

Adapter Services
Adapter services allow your business process to publish data or subscribe to data
used by the enterprise. A publication service sends data to the business process, a
subscription service receives data from the business process.
Adapter services allow you to communicate with enterprise applications or
interact with other incoming and outgoing data. They include:
• Technology adapters— Allow publication to and subscription from files and
databases.
• Enterprise application adapters—Allow you to interact with enterprise
applications such as Siebel, SAP R/3, and PeopleSoft.

TIBCO BusinessWorks Concepts


58
| Phase 3: Services Configuration

Adapter Service Configuration Steps


Configuring an adapter service consists of these steps, discussed in this chapter:
• Step 1: Installing the Adapter on page 59
• Step 2: Setting up the Design-Time Adapter on page 60
• Step 3: Configuring the Run-Time Adapter on page 62
• Step 4: Accessing the Adapter Service From the Process on page 63

TIBCO BusinessWorks Concepts


Step 1: Installing the Adapter 59
|

Step 1: Installing the Adapter

Different business processes have to connect to different enterprise applications.


TIBCO BusinessWorks therefore does not include adapters in its base package.
Instead, you install the adapter you need separately and add it to the TIBCO
administration domain during installation. Adapter installation therefore consists
of these steps:

1. Install TIBCO BusinessWorks. As part of the installation, specify the name of


the TIBCO administration domain and specify the administrative user and
password for the administration domain.
You must establish the TIBCO administration domain and it must be running
and accessible before you install the adapter.

A TIBCO administration domain is a set of hardware and software resources.


The administration domain is set up to include one or more machines. See
TIBCO Administration Domain on page 50.
2. Install the adapter. During installation, specify the (already existing) TIBCO
administration domain and the administrative user and password.
After installation, a palette for that adapter becomes available from TIBCO
Designer the next time you start it.

TIBCO BusinessWorks Concepts


60
| Phase 3: Services Configuration

Step 2: Setting up the Design-Time Adapter

The TIBCO Designer GUI allows you to connect with the source or target
application for the adapter at design time using a design-time adapter. After you
have established design-time connection parameters, you can use the TIBCO
Designer GUI to specify schema information from the adapter.
To set up the design-time adapter, follow these steps:

1. Launch the TIBCO Designer GUI.


The appropriate adapter palettes should now be included.
2. Select the adapter palette and drag an adapter resource from the palette panel
into the design panel and name the adapter service.
Figure 18 shows how you would drag a Siebel Adapter Configuration
into the design panel. The adapter service has been named SiebelPublisher.

Figure 18 Adding an adapter to the project

Drag the adapter


resource into the
design panel

3. Specify connection information for the application you want to access so your
design-time adapter can connect.
4. In the project tree panel, double-click the adapter, then select its Adapter
Services folder to open it.

In the palette panel, the Services palette is displayed.

TIBCO BusinessWorks Concepts


Step 2: Setting up the Design-Time Adapter 61
|

5. Drag an adapter service, for example, a publisher service, from the palette
panel into the design panel.
The configuration panel is updated to allow you to configure the service.

Figure 19 Adding a service to an adapter

Drag the adapter


service into the
design panel

6. From a command prompt, start the design-time adapter.


7. Specify the data the adapter should publish or subscribe to interactively.
8. Save the adapter.

TIBCO BusinessWorks Concepts


62
| Phase 3: Services Configuration

Step 3: Configuring the Run-Time Adapter

With the design-time adapter running, you can configure the run-time adapter.
You configure each adapter service separately using the tabs in the configuration
panel as follows:
• Specify run-time connection information using the Runtime Connection tab.
You can either specify the same information as that used by the design-time
adapter, or different information. For example, you can specify a different host
machine or user name or password.
• Define adapter services and choose schema from the pop-up list provided via
the design-time adapter.
The exact process for defining services may vary slightly depending on the
adapter you are using.
• Specify tracing information if desired. TIBCO Designer allows you to specify
simple tracing to a file or standard out using the configuration panel directly.
You can also specify advanced tracing, such as tracing to a network sink.
If your adapter uses advanced features, such as Advisory activities, you can
configure them using the Advanced folder of the adapter.
For additional information about adapter configuration, see the documentation
for that adapter, available via Help > Help For from TIBCO Designer.

TIBCO BusinessWorks Concepts


Step 4: Accessing the Adapter Service From the Process 63
|

Step 4: Accessing the Adapter Service From the Process

After you have configured the adapter service, you can access it from the process
definition. Creating a process is explained in Phase 4: Business Process Design on
page 65. Once a process is part of your project, you can access adapters as follows:

1. Select the process definition, then open the ActiveEnterprise Adapter


palette.

Figure 20 Adding activities that access adapter services

2. Drag the activity that accesses the service you need into the design panel. You
have the following choices:
— Publish to Adapter—Publishes data from the process to an adapter,
which subscribes to data coming from the process and passes the data to
the target application. In the example above, a Publish to Adapter
activity interacts with a Siebel subscriber.
— Adapter Subscriber—Subscribes to incoming data published by the
adapter.
— Invoke an Adapter Request-Response Service—Communicates (as a
client) with an adapter request-response service.

TIBCO BusinessWorks Concepts


64
| Phase 3: Services Configuration

— Adapter Request-Response Server—Starts a process based on the


receipt of a request from an adapter.
— Respond to Adapter Request—Sends a response to an adapter for a
previously received request.
— Wait for Adapter Message—Waits for the receipt of a message from the
publication service of the specified adapter.
— Wait for Adapter Request—Waits for the receipt of a request from a
request-response invocation service.
3. Specify the adapter information in the configuration panel.
4. Save your project.

TIBCO BusinessWorks Concepts


| 65

Chapter 6 Phase 4: Business Process Design

This chapter discusses business process design. Using the TIBCO Designer GUI,
you create your business process using predefined activities and add conditions
and mapping as appropriate.
Business process design is discussed in more detail in the TIBCO BusinessWorks
Process Design Guide.
You can also display information about each resource by choosing its What is
This right-button menu command in TIBCO Designer.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

Topics

• Introduction, page 66
• Step 1: Define Shared Resources, page 68
• Step 2: Create Process Definitions, page 69
• Step 3: Add a Process Starter, page 70
• Step 4: Add Activities, page 71
• Step 5: Optionally, Add Manual Work Activities, page 72
• Step 6: Create Transitions Between Activities, page 74
• Step 7: Perform Mapping and Transformation for Each Activity, page 75
• Step 8: Optionally, Group Activities As Needed, page 76
• Step 9: Test the Process, page 77

TIBCO BusinessWorks Concepts


66
| Phase 4: Business Process Design

Introduction

In an integrated enterprise, business processes manage the flow of information


between different data sources and destinations. The business processes receive
information, process it if needed, and hand it off as appropriate.

Business Processes
In many companies, the business rules that tie enterprise applications together are
handled by custom-written code or even by manual processes. TIBCO
BusinessWorks allows you to establish this data flow using activities available in
the TIBCO Designer process design palettes. You design the process using
predefined activities and can execute your process without writing a lot of custom
code.
The following diagram illustrates a business process flow that describes the
business rules between the various systems in an enterprise.

Figure 21 Business process flow

Process Order Manage Order Entry


IF arrived, THEN IF arrived, THEN
IF order ID returned, THEN return order ID
IF shipping available, THEN ...
SHIP ORDER
ELSE hold order & send email
update Cust Mgmt system
Manage Shipping
Update Cust. Mgmt System IF request, THEN
IF schedule < 2 days
IF order, THEN THEN return OK
enter order IF schedule > 2 days
enter order ID THEN return HOLD
enter shipping information

TIBCO BusinessWorks Concepts


Introduction 67
|

Process Design Steps


Process design consists of a number of steps discussed in this chapter.
• Step 1: Define Shared Resources on page 68
• Step 2: Create Process Definitions on page 69
• Step 3: Add a Process Starter on page 70
• Step 4: Add Activities on page 71
• Step 5: Optionally, Add Manual Work Activities on page 72
• Step 6: Create Transitions Between Activities on page 74
• Step 7: Perform Mapping and Transformation for Each Activity on page 75
• Step 8: Optionally, Group Activities As Needed on page 76
• Step 9: Test the Process on page 77
The steps discussed in this chapter do not necessarily have to be performed in this
order. For example, you could define shared resources as needed or add
transitions each time you add an activity

TIBCO BusinessWorks Concepts


68
| Phase 4: Business Process Design

Step 1: Define Shared Resources

Shared resources allow activities to share information. For example, you can
define a JDBC Connection resource, then use it in any of the JDBC activities in
your business process.

You may also choose to define the process and create shared resources as needed.

Shared resources are available in the Shared Configuration palette and include
Rendezvous Transport, JDBC Connection, JMS Connection, and so on.
To define a shared resource, follow these steps:

1. In the palette panel, select the Shared Configuration palette.


2. Drag and drop the icon for the resource you need from the palette panel to the
design panel.
3. Name the resource and specify its configuration information in the
configuration panel, then click Apply.
You can now use the shared resource in any activity that requires it.
For example, the JMS Queue Receiver activity the example uses to connect to the
application server requires a JMS Connection shared resource.

Figure 22 Shared resources in your project

TIBCO BusinessWorks Concepts


Step 2: Create Process Definitions 69
|

Step 2: Create Process Definitions

In TIBCO Designer, you create process definitions by dragging Process Definition


resources from the palette panel to the design panel. You name each process
definition and give the process a description, then add activities to the process.

Figure 23 Adding process definitions to your project

For simple business processes, activities are added in sequence, then transitions
are added as appropriate.
For complex business processes, it makes sense to design a main process and
several subprocesses. Using subprocesses makes your process easier to
understand and debug. Subprocesses also potentially allow reuse of business
process components.
Our example program includes several different processes:
• In the main process, which is called ProcessOrder, a JMS Queue Receiver
waits for input. When it arrives, the main process first interacts with the Order
Management system, then calls the ShippingSchedule process:
• The ShippingSchedule process retrieves information about the shipping
schedule from the Shipping web site and adds shipping information to the
order. It sends an email to the customer if shipping is delayed, otherwise
enters the order into the Siebel system right away.

TIBCO BusinessWorks Concepts


70
| Phase 4: Business Process Design

Step 3: Add a Process Starter

A process starter waits for input from an external process and creates a process
instance each time the input arrives. For example, the process could be waiting for
a document that arrives from an application server using JMS. A process starter
could also be polling a directory and start whenever a file is added.
To add a process starter, follow these steps:

1. Choose the process to which you want to add the process starter
2. Select the palette for the process starter in the palette panel.
In our example, the JMS Queue Receiver is the process starter.
3. Drag the process starter into the design panel.
The process starter activity replaces the default Start activity.
4. Specify configuration information, then click Apply.

Figure 24 Adding a process starter

Note that the default Start activity that is included with each process you
instantiate is not a process starter. A Start activity must be called explicitly from
another process.

TIBCO BusinessWorks Concepts


Step 4: Add Activities 71
|

Step 4: Add Activities

Activities are the individual units of work within a process definition. Activities
are generally operations that interface to external systems, but activities can also
perform internal processing.
When you select a process definition, activities become available on the various
TIBCO Designer palettes. Each palette has a set of activities that can be performed
for that palette. For example, the ActiveEnterprise Adapter palette has
activities that can publish messages to a specified adapter or invoke an operation
by way of an adapter. The JMS palette includes activities such as JMS Queue
Sender and JMS Queue Receiver.

A general-purpose Java Code activity allows you to write and execute standard
Java code to perform custom processing within your process definition.
To add an activity to the process definition in TIBCO Designer, follow these steps:

1. Select the appropriate palette. If the palette is not visible, make sure you have
selected the appropriate parent resource and make sure the palette has not
been closed.
2. Drag the activity into the design panel.
3. Select the activity and specify configuration information about it, for example,
the originator and address for a Send Mail activity.

Figure 25 Adding activities

TIBCO BusinessWorks Concepts


72
| Phase 4: Business Process Design

Step 5: Optionally, Add Manual Work Activities

The activities in the Manual Work palette are useful for automated business
processes that have a few steps that require user interaction. This could include
handling of unexpected situations or other activities such as credit approval or
handling of customers from abroad if the company usually deals with local
customers. The functionality is implemented by two shared configuration
resources and four activities:

Shared Configuration Resources


• Workflow Schema—The data associated with a ManualWork task. This is the
data a user needs to complete the task. The user can change any of the data
associated with a task. A workflow schema supports string, int, date, and
document data types.
• Workflow Connection— The connection to the TIBCO InConcert workflow
server. This server is used to track and manage manual tasks.

Manual Work Activities


• Assign Work—Creates a new task (with associated data) and assigns it to the
specified pool of users. A user then acquires the task, views the data supplied
by the activity, and completes the work.
The process definition can either wait for the user to complete the work or it
can continue processing and later query for the status of the task.
• Download Document—Manual work schemas can contain elements to hold
documents. An example of a document is a loan application that must be
attached to a credit request. The document may be any type, for example,
Microsoft Word, PDF, and so on.
Documents can be uploaded or downloaded to a manual work task by way of
the web interface TIBCO BusinessWorks provides for managing manual work
tasks. This activity allows you to download a document from an existing
manual work task into a process variable.
• Get Work Status—Retrieves the current status of a task that was previously
created with the Assign Work activity. Normally you use this activity to
determine if the task has been completed or if there are any errors.

TIBCO BusinessWorks Concepts


Step 5: Optionally, Add Manual Work Activities 73
|

• Modify Work—This activity allows administrator users to change the status of


an existing task created with the Assign Work activity to one of the following:
— Update — modifies the data associated with an uncompleted task
— Complete — completes the task
— Reassign — reassigns the task to a pool of users
• Wait for Completion—Waits for the completion of the task for the specified
period f. This is useful if the timeout for the Assign Work activity has passed
and you wish to wait for an additional amount of time.

TIBCO BusinessWorks Concepts


74
| Phase 4: Business Process Design

Step 6: Create Transitions Between Activities

You use transitions to connect activities to form a process flow. A transition is


represented by an arrow between two activities. Arrows are unidirectional, and
you cannot draw a transition to a previously executed activity. Control flow in a
process definition must proceed sequentially beginning with the starting activity
and ending with the End activity.

Conditions
A transition can optionally specify a condition. The condition determines whether
a transition is taken when an activity completes processing. After an activity
completes, all transitions whose conditions are met are taken. You can have
transitions from one activity to many other activities.
For example, if the shipping schedule indicates a delay in shipping the order, you
want to notify the customer and enter the information into the customer service
system. If it does not, you just enter the information into the customer service
system.

Adding Transitions
To add transitions, click the transition tool on the menu bar to draw transitions
between activities. You use XPath syntax to define conditions.
If your process definition includes cyclical subprocesses (loops), you can group
them using the GUI.

TIBCO BusinessWorks Concepts


Step 7: Perform Mapping and Transformation for Each Activity 75
|

Step 7: Perform Mapping and Transformation for Each Activity

As data flow through your business process, different activities require different
components of the data. On the Input tab of each activity, TIBCO Designer
displays the available process data and the activity’s input represented as schema
trees.
• The process data is the list of available data items within the process at the
point where the activity is located (an activity has access to all output data
from any activity that is executed before it in the process definition).
• The activity input is the list of input values that are required or optional for
the activity.
For each activity, you map the process data to the activity input.
Each item in the activity input schema has an expression field for specifying the
contents of the item. You can conditionally map the process data to the input
using XPath expressions. You do not need detailed knowledge of XPath to create
simple expressions. For the most part, you can drag and drop items from the
process data schema to the activity input schema, and the correct XPath
expression appears automatically.
When you specify the input schema for an activity, the specification is represented
internally as Extensible Stylesheet Language Transformation (XSLT) code.
Normally, you do not need to examine the XSLT code generated by the mappings.
However, if you are familiar with XSLT and you wish to see the actual code, you
can right-click on any node in the input schema and choose Copy from the popup
menu. Then open a blank text document and choose Paste. The XSLT is displayed
in your text document.
For example, when the ShippingSchedule process fails, an email is sent upon
return to the main process. The email address information could be mapped from
the original order to the mail activity’s input fields.

TIBCO BusinessWorks Concepts


76
| Phase 4: Business Process Design

Step 8: Optionally, Group Activities As Needed

Groups are used to specify related sets of activities. Grouping allows you to create
loops. The main uses of groups are the following:
• Create a set of activities with only one condition for the group. This allows
instead of trying to individually catch errors on each activity. This type of
group is similar to a try...catch block in Java.
• Create sets of activities that are to be repeated. You can repeat the activities
once for each item in a list, until a condition is true, or if an error occurs.
• Create sets of activities that participate in a transaction. Activities within the
group that can take part in a transaction are processed together or rolled back,
depending upon whether the transaction commits or rolls back.

TIBCO BusinessWorks Concepts


Step 9: Test the Process 77
|

Step 9: Test the Process

Once the process definition is complete, you can perform preliminary testing
from TIBCO Designer. In test mode, a TIBCO BusinessWorks engine is started to
perform the processing specified in the process definition.
The TIBCO BusinessWorks testing environment allows you to step through your
process models and find sources of errors. Entering the testing environment starts
a TIBCO BusinessWorks engine. The engine starts process instances based on the
process definitions stored in your project. The testing environment displays the
running process definitions and highlights the currently executing activity.
Testing a process definition typically involves these steps:

1. Select the process definition you wish to test in the project panel.
2. Click the Start Test Mode icon on the toolbar. This starts a TIBCO
BusinessWorks engine that will execute the processes.
Once the engine is started, the test mode icon displays on the toolbar to let
you know you are in test mode. Once you are in test mode, you cannot change
your process definition. You must exit test mode to make changes.
3. Set breakpoints in the process definition at points where you wish to stop a
running process and examine its state.
4. If necessary, supply input data to the process starter.
5. Click the Start/Resume Testing icon to create a process instance from the
displayed process definition.
6. Start a process by creating an event that the process starter is expecting. For
example, if the process starter is listening for a TIBCO Rendezvous message,
publish a message on the expected subject.
7. If your started multiple process instances, select the desired process instance
from the list of processes in the toolbar. Examine the process data by selecting
any of the activities in the process. The activity’s current data is displayed on
the Input and Output tabs.
8. Use the toolbar buttons (Pause Testing, Step to Next Activity, Step Into
SubProcesses, Stop Testing, Start/Resume Testing) to either continue through
the process instance or to stop the current process instance.
When your process definition operates as expected, you can go on to deployment,
the next step in your integration project, which is discussed in Phase 5:
Deployment on page 79 and, in more detail, in the TIBCO BusinessWorks
Administrator’s Guide.

TIBCO BusinessWorks Concepts


78
| Phase 4: Business Process Design

TIBCO BusinessWorks Concepts


| 79

Chapter 7 Phase 5: Deployment

For the success of your integration project, ease of deployment is at least as


important as ease of design. Because TIBCO BusinessWorks uses the TIBCO
administration domain and allows you to perform deployment configuration
from the TIBCO Designer GUI, deployment is a relatively simple task.
This chapter gives an overview of the deployment of a TIBCO BusinessWorks
integration project. For more information, see the TIBCO BusinessWorks
Administrator’s Guide.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

Topics

• Introduction, page 80
• Step 1: Create and Populate the Administration Domain, page 83
• Step 2: Create and Test Your Project, page 85
• Step 3: Add Deployment Configuration Information, page 86
• Step 4: Deploy Your Project, page 89

TIBCO BusinessWorks Concepts


80
| Phase 5: Deployment

Introduction

When you have completed and tested the first prototype of your integration
project in the development environment, you are ready to deploy it to a testing
environment.
In a traditional business integration project, domain configuration is a
labor-intensive process that is likely to require multiple iterations before all
components are in place. The administrator must tweak the configuration files for
different components on different machines. To optimize the configuration,
administrator must manually keep a record of the different configurations that
were tested.
TIBCO BusinessWorks, in contrast, allows you to use the TIBCO Designer GUI to
create a deployment configuration and then deploy the project.
• You use the TIBCO Designer GUI to assign process engines and adapters to
the different machines in the administration domain.
• You then click the Deploy button and TIBCO Designer saves the project and
sends scripts and other information to each machine that has been assigned a
component.

TIBCO BusinessWorks Concepts


Introduction 81
|

TIBCO BusinessWorks Project Phases


When process design is complete and all testing from the TIBCO Designer GUI
results in success, the project is ready for deployment.
The illustration below shows how a project moves through the development and
deployment phases.

Figure 26 Project development phases

1 2 3 4
Services Process Deployment
Design Deployment
Configuration Configuration

project with project with project with


adapters adapters adapters, deployed
and processes, project
processes and
deployment
info

1. Using TIBCO Designer, the developer configures adapter services and saves
the project with configured adapters. Different adapters could potentially be
configured by different developers and included in one project.
2. Using TIBCO Designer, the developer configures activities for the business
process(es) and saves the project, which now includes process definition(s).
The built-in test mode is used for preliminary testing and debugging of the
business process(es).
3. Using TIBCO Designer, the developer prepares the deployment configuration
by assigning each adapter and each business process engine to a machine in
the administration domain.
4. From TIBCO Designer, the developer deploys the project. The TIBCO
Administration Server sends all necessary information to the individual
machines. All components now become visible in the TIBCO Administrator
GUI (but are not started).
At this stage, the developer moves from the TIBCO Designer development GUI to
the TIBCO Administrator run-time GUI and performs these tasks:

1. From TIBCO Administrator, the developer starts each component (adapter


and process engine). As a result, all process starters are waiting for the events
that cause them to create process instances.

TIBCO BusinessWorks Concepts


82
| Phase 5: Deployment

2. Each time an event arrives that triggers a process starter, the TIBCO
BusinessWorks engine creates a process instance, which uses the associated
process definition to process the incoming data.
3. Using TIBCO Administrator, the developer can monitor the different
processes running on the different machines.
If appropriate, the project can be modified and saved from TIBCO Designer. In
that case, redeployment is not required. Instead, you stop and start the modified
process to have the changes take effect. If you make changes in the deployment
configuration, you undeploy the project and redeploy it from TIBCO Designer.

Deployment Steps
The rest of this chapter discusses all steps required for a successful deployment in
more detail:
• Step 1: Create and Populate the Administration Domain on page 83
• Step 2: Create and Test Your Project on page 85
• Step 3: Add Deployment Configuration Information on page 86
• Step 4: Deploy Your Project on page 89

TIBCO BusinessWorks Concepts


Step 1: Create and Populate the Administration Domain 83
|

Step 1: Create and Populate the Administration Domain

A project is always deployed to machines in one administration domain. A


TIBCO administration domain is a set of hardware and software resources. The
administration domain is set up when TIBCO BusinessWorks is installed to
include one or more machines. During development, projects are saved inside the
domain.

A project cannot be deployed to machines in two different TIBCO administration


domains, and a machine cannot belong to two different TIBCO administration
domains (just as it cannot belong to two network domains).

Assign Software to Different Hardware Resources


Software components include the TIBCO BusinessWorks components (TIBCO
Designer, TIBCO Administrator, TIBCO BusinessWorks engine) and adapters
integrated with TIBCO BusinessWorks.
• During development and early testing, you may decide to install all software
components on one machine. You can then deploy the project from TIBCO
Designer onto your own machine and perform early testing there.
• When you are ready for production testing, you should set up a TIBCO
administration domain that is similar to the administration domain you
expect to use during production. You may decide to run the TIBCO
Administration Server on one machine, the adapters on a second machine,
and the business processes on a third machine. The number of machines you
choose depends on the processing power your project needs, and can be
changed as business increases.

TIBCO BusinessWorks Concepts


84
| Phase 5: Deployment

The picture below illustrates a sample TIBCO administration domain.

Figure 27 TIBCO administration domain

Domain

Machine Machine
Machine C
A B
TIBCO TIBCO
TIBCO Adapter
BusinessWorks Administration
for Siebel
Engine Server

TIBCO Adapter
for PeopleSoft TRA TRA

TRA

Authorize Users for Different Tasks


The second part of administration domain configuration is user management. A
user with full administrative privileges can create users and authorize them for
different components of the system.
TIBCO BusinessWorks supports authentication and authorization for both data
stores and components (business processes or adapters) in the administration
domain. That means:
• Only authorized users may access or save a server-based project to the
domain data store from the TIBCO Designer GUI.
• Only authorized users may view, start, or stop process engines or adapters
from the TIBCO Administrator GUI.

TIBCO BusinessWorks Concepts


Step 2: Create and Test Your Project 85
|

Step 2: Create and Test Your Project

You create and test your project using the TIBCO Designer GUI, as discussed in
the previous chapters.
It is recommended you save your project as a server-based project; it is then
administered by the TIBCO Administration Server and available throughout the
administration domain. You must save your project as a server-based project for
deployment.
When you are satisfied with your project and want to test it in a distributed
environment, you can prepare a deployment configuration using the TIBCO
Designer deployment palette.

TIBCO BusinessWorks Concepts


86
| Phase 5: Deployment

Step 3: Add Deployment Configuration Information

After you have created and tested the project, you must assign each component
(adapter or business process) to a machine. You do so using the TIBCO Designer
Deployment palette.

1. Using TIBCO Designer, drag a Deployment Configuration resource from


the Deployment palette into the design panel.
2. Select the Deployment Configuration resource. From the Deployment
palette, drag a Machine resource into the design panel.
The Administration Server updates the configuration panel so all machines in
the administration domain become selectable from a pop-up menu.
3. Choose a machine from the pop-up menu and click Apply.
When you drag a machine into the design panel, its characteristics are
displayed in the configuration panel. This information helps you decide
which processes to assign to which machine.

Figure 28 Adding a deployment configuration to the project

If other machines are registered in your administration domain, you can add
additional Machine resources the same way.

TIBCO BusinessWorks Concepts


Step 3: Add Deployment Configuration Information 87
|

4. Select an adapter or process engine from the project tree and assign it to a
machine by dragging it into the design panel.

Figure 29 Adding a process engine to the deployment configuration

5. For each adapter or process engine, you can select a startup type (automatic,
manual, or disabled) if you run the component as a service. You can also
specify recovery options. For example, you could specify that on first failure, a
process should just be restarted. On second failure, the process should be
restarted and an email should be sent.
6. Optionally, you can set up the deployment in Fault-Tolerant mode:
— Set up process engines on multiple machines.
— Set up a JDBC Recovery Storage for each engine.
— Specify which engine should be the primary and secondary servers.
Fault-tolerant setup is discussed in the TIBCO BusinessWorks Palette Reference
and also available via online help.

TIBCO BusinessWorks Concepts


88
| Phase 5: Deployment

Figure 30 Adding recovery options

7. Save your project, which now includes configuration information.


You are now ready to deploy your project.

TIBCO BusinessWorks Concepts


Step 4: Deploy Your Project 89
|

Step 4: Deploy Your Project

After you have configured the deployment configuration, you deploy the project
from TIBCO Designer.
Select the deployment configuration and click the Deploy icon in the TIBCO
Designer toolbar.

What Happens When You Deploy A Project


When you click the Deploy icon, TIBCO BusinessWorks performs these tasks:
• TIBCO BusinessWorks saves the project as a server-based project.
• TIBCO BusinessWorks registers the deployed project with the Administration
Server. As a result:
— An icon for this deployment becomes visible from the TIBCO
Administrator GUI.
— In the TIBCO Administrator GUI, the machines in the domain are updated
to show the components that were deployed.
— Monitoring for the state of each component starts.
• TIBCO BusinessWorks prepares and distributes to each machine:
— A startup script to launch the process on that machine.
— Rulebases that describe the error recovery and alert behavior.

DO NOT modify the script and other files. If you do, your deployment may
become inconsistent.

After this information has been sent to each machine, you can start the project
components from the TIBCO Administrator GUI.

TIBCO BusinessWorks Concepts


90
| Phase 5: Deployment

Deploying and Undeploying Projects


A deployed project can be monitored and managed from TIBCO Administrator.
You can a undeploy project to remove it from the display. Before you uninstall or
reinstall TIBCO BusinessWorks, you must stop all TIBCO BusinessWorks
processes and must undeploy all projects. To undeploy a project:

1. Select the Deployment Configuration for the project in TIBCO Designer.


2. Click the Undeploy icon in the toolbar.

You do not need to undeploy and redeploy a project unless you have made
changes to the deployment configuration changed the authorized user of a
component. Just save the project from TIBCO Designer and stop and start the
component in which the change was made.

TIBCO BusinessWorks Concepts


| 91

Chapter 8 Phase 6: Production

During the production phase, you monitor and manage TIBCO BusinessWorks
deployments. The TIBCO Administration Server and the TIBCO Administrator
GUI together support your deployed TIBCO BusinessWorks products at run-time.
This chapter gives an overview of available functionality.

Analysis Domain Setup Services Process Design Deployment Production


Define & analyze Install software & Configuration Implement & test Deploy to Manage & monitor
problem configure domain Configure adapters business processes runtime engine deployments

Topics

• Introduction, page 92
• User Management, page 94
• Domain Monitoring and Management, page 95
• Deployment Monitoring and Management, page 98

TIBCO BusinessWorks Concepts


92
| Phase 6: Production

Introduction

After the integration development team has configured and deployed the
integration project, you can use the TIBCO Administrator GUI for monitoring and
management.
This chapter gives an overview of the architecture and of the user management,
administration domain monitoring and management, and deployment
management options. For more detailed information, see the TIBCO
BusinessWorks Administrator’s Guide.

Architecture
TIBCO Administrator consists of the TIBCO Administration Server and the
TIBCO Administrator GUI. The Administration Server includes an application
server component for HTTP communications and a repository server component
for data store management. All three server components run as a single process.
The Administration Server interacts with each machine in the administration
domain via the TIBCO Runtime Agent (TRA) running on that machine.
• The Administration Server receives information about CPU and memory
usage, alerts, and the process instances and components running on each
machine and makes them available via the TIBCO Administrator GUI.
• The TIBCO Administrator GUI allows users to start and shut down
components. Start and shutdown commands are sent from the Administration
Server to the appropriate TRA, which in turn starts or stops the process.
The illustration below shows an administration domain with 3 machines in the
domain.
• The first machine runs the Administration Server, which contains an
embedded Repository Server for managing data stores. Machines outside the
administration domain can view the TIBCO Administrator GUI using a web
browser. Each user sees only the components for which s/he is authorized.
• The second machine runs two adapters. The adapters are started via the
TIBCO Administrator GUI. The information entered in the GUI is sent by the
Administration Server to the TRA on the machine running the adapter. The
TRA starts and stops the adapter and also sends information about
component and machine status to the Administration Server for access via the
GUI.
• The third machine runs a process engine. Just like the adapters, the process
engine is managed by the Administration Server via the TRA.

TIBCO BusinessWorks Concepts


Introduction 93
|

Figure 31 Communication inside a TIBCO administration domain

Process
Administrator GUI Engine

WWW

HT Repository TRA
TP Server
Administrator GUI
Administration
HTTP Server
WWW

Adapter 1 TRA

Adapter 2

Monitoring and Management Options


At run-time, TIBCO Administrator allows you to remotely access all deployments
in your administration domain. Depending on your security privileges, you may
be able to perform one or more of the following tasks.
• User Management—Add users and passwords to the administration domain
for authentication, then give each user view or execute privileges for TIBCO
Administrator GUI elements or project repositories (data stores).
• Domain Monitoring and Management—View the status of machines and
components running on machines in the domain. Start and stop components
as needed.
• Deployment monitoring—Monitor the status of each deployment component
(process engine and adapter) and process instance and the status of the
machines executing them. View trace files and throughput.
• Deployment management—View all running components and stop and
restart them as needed.
These aspects of monitoring and management are supported by TIBCO
Administrator, which includes the TIBCO Administration Server and the TIBCO
Administrator GUI.

TIBCO BusinessWorks Concepts


94
| Phase 6: Production

User Management

The TIBCO Administrator User Management module allows authorized users to


specify security options for a TIBCO administration domain. Security has two
components:
Authentication. Specify users and passwords.
Authorization. Give users access to individual components in the TIBCO
administration domain.
By default, the administrative user for the administration domain has privileges
to create users and assign privileges. That user can create additional users with
the same full access privileges if appropriate.

TIBCO Administrator also allows you to export users to TIBCO InConcert for
manual activities management.

Roles
TIBCO Administrator allows you to create a roles tree and assign users to one or
more roles. You can then perform authorization on a per-role basis.
This capability is critical, for example, if a large number of users need read access
to information about running projects but only a few users should be authorized
to start and stop the project.

Authorization
TIBCO Administrator allows privileged users to authorize users for GUI Access
or Data Access (or both).
• GUI access is given on a per-tab basis. For each tab you can select in the
TIBCO Administrator GUI, you can specify which users are allowed read or
write privileges.
• Data access is given on a per-data store basis. A repository data store is
associated with each project. You can set various levels of access (read, write,
variables) for data stores of each deployed project and for the system data
store.

TIBCO BusinessWorks Concepts


Domain Monitoring and Management 95
|

Domain Monitoring and Management

The Domain module allows you to monitor and manage the administrative
domain. You have these choices:
Machines—Lets you view the machines in the domain, any alerts for each
machine, and processes running on each machine.
Inventory—Lets you view the currently installed TIBCO products and product
versions.
Components—Lets you view deployed components and associated information
and start and stop components

Machines
The Machines option allows privileged users to view all domains in the
administration domain. Privileged users can monitor all machines, services, and
processes in the administration domain at the same time. This allows
administrators to see overloaded or underutilized machines and potentially
reassign processes to different machines.
Information for machines includes Max uptime and operating system. Alerts are
included at each level of the display, so the administrator knows with one glance
that, for example, one part of your system is experiencing a problem.
Privileged users can select individual machines to view additional, more detailed
information such as virtual memory usage, CPU usage, etc., all TIBCO processes
running on the machine, or all processes running on the machine. Here’s an
example screen for a domain that includes only one machine:

Figure 32 Machines Option in TIBCO Administrator

TIBCO BusinessWorks Concepts


96
| Phase 6: Production

Inventory
The Inventory option allows privileged users to view all installed TIBCO
products in the administration domain and product version, when and where the
products were installed, etc. Here’s an example screen for a domain that includes
only one machine:

Figure 33 Inventory Option in TIBCO Administrator

Components
The Components option allows privileged users to view each component
deployed in the administration domain and includes information about the
component, such as its status and Fault-Tolerant Group (if any).
Privileged users can also stop and start components.
Components include, for example TIBCO BusinessWorks process engines or
TIBCO Adapter instances deployed to the TIBCO administration domain.

TIBCO BusinessWorks Concepts


Domain Monitoring and Management 97
|

Figure 34 Components Option in TIBCO Administrator

TIBCO BusinessWorks Concepts


98
| Phase 6: Production

Deployment Monitoring and Management

The TIBCO Administrator deployment module allows privileged users to


monitor and manage components on a per-deployment basis. The module
displays a separate icon for each deployment. In each deployment, you can
choose from these options:
Business Processes—Allows you to view process engines and associated active
(running) processes.
Components—Allows you to view component details and set up tracing.

Business Processes
The Business Processes option of each deployment allows you to select the
process engine and each process definition associated with the engine. If you
select the engine, you can view all active processes. If you select a process
definition, you can view the activities in the process definition and information
about them. Here’s a simple example:

Figure 35 Viewing Process Definition information

Components
Allows you to view component details and set up tracing.
TIBCO Administrator tracing facilities allow for detailed analysis and provide
debugging and throughput information. You can configure tracing to include or
exclude selected activities. You can also save tracing information to a log.

TIBCO BusinessWorks Concepts


| 99

Glossary

A projects in a domain from the TIBCO


Administrator console.
ActiveEnterprise
One of the three product families from TIBCO
Software Inc. The other two are ActivePortal™
and ActiveExchange™ (see www.tibco.com for
C
details).
Activity Condition
An activity is a specific task in a business process A condition can be used to control the flow of
definition. Examples are sending e-mail, writing activities in a process diagram. Conditions are
a file, sending information to an SAP adapter, specified on transitions to determine whether to
querying a database. In TIBCO Designer, each take the transition to the next activity or not.
activity is represented by a resource and can be Condition types include: always, XPath which
added to the process definition from its palette. allows you to specify a custom condition using
See also Process Definition. an XPath expression, and otherwise.
Adapter Configuration Panel
Adapters make it possible to communicate and In TIBCO Designer, the configuration panel
update business information that originates from allows you to fill in values for the fields in the
diverse sources and resides on diverse host objects of your project, and to perform mapping.
systems within an organization. TIBCO
BusinessWorks adapters interact with enterprise CRM
applications such as PeopleSoft, SAP R/3, Customer Relationship Management system.
OracleApps and Siebel, as well as databases or One of the applications in your enterprise.
files.
Administration Domain
Consists of a set of machines on which TIBCO
D
software components are deployed, a set of
deployed projects, and a single database for Deployment
authentication and authorization. During the deployment phase of your
When you install TIBCO BusinessWorks, you integration project, you assign the various
specify a TIBCO Administration Domain. The project components (process and services) to the
domain initially contains one or more machines. physical locations where they will run for test or
Later, the domain contains the services and production purpose. For example, after
process engines running on those machines. production deployment, the adapter service
Multiple projects can be in the same domain. instances, and other process instances will be
You can monitor the components of all deployed distributed across the production platform.

TIBCO BusinessWorks Concepts


100
| Glossary

Design panel Process definition


In TIBCO Designer, you drag resources from the Specifies the business process flow using
palette panel into the design panel to create activities. A process definition is just a special
instances of that resource for your business type of activity; you can therefore use a process
process definition. definition as an activity.
DTD Process instance
Document Type Definition. A non-XML schema Running instance of a process definition
file that contains a formal description of the
Process starter
vocabulary and structure of the elements in an
Starts a process based on an external event, e.g.
associated XML file. DTDs serve the same
arrival of a file or a message from an adapter.
function as XML schema documents (XSDs). A
DTD may also provide some content Project
information. The DTD for an XML document is A TIBCO BusinessWorks project is a collection of
the combination of the internal and external all the components of your EAI solution. This
subsets described by the document type includes components like business processes,
declaration. adapter services, machines, engine instance(s).
You create and save projects using TIBCO
Designer and later deploy the project.
Project tree panel
G One of the panels in TIBCO Designer. The
project tree shows a hierarchy of all objects
Activity Group
(adapters, activities, etc.) in your project.
A grouping of activities in a process definition.
Some groups specify process control logic.

R
M Resource
In TIBCO Designer, resources are the objects you
Machine
can drag and drop into the design panel.
A computer on which TIBCO Software
components are installed. Each machine may
belong to only one TIBCO Administration
Domain.
S
Service
P A TIBCO BusinessWorks service retrieves,
generates, and processes business data in a
Palette decoupled yet reliable manner. The business
A TIBCO Designer palette is a collection of process receives data from a service and sends
resources that you can use to populate your data to a service. Associated with a service is a
project. For example, use an adapter palette to service interface, transport, data syntax, and data
add an adapter and a publisher to a project. schema.

TIBCO BusinessWorks Concepts


Glossary 101
|

SOAP W
Simple Object Access Protocol. SOAP is a
lightweight protocol for the exchange of WSDL Web Services Definition Language.
information in a decentralized, distributed WSDL is an XML format for describing network
environment. It is an XML based protocol that services as a set of endpoints operating on
consists of three parts: an envelope that defines a messages containing either document-oriented
framework for describing what is in a message or procedure-oriented information. The
and how to process it, a set of encoding rules for operations and messages are described
expressing instances of application-defined abstractly, and then bound to a concrete network
datatypes, and a convention for representing protocol and message format to define an
remote procedure calls and responses. (See endpoint. Related concrete endpoints are
http://www.w3.org/TR/SOAP/) combined into abstract endpoints (services). (See
http://www.w3.org/TR/wsdl)

T
X
Tab
A related set of entities and functions that are XPath
visible when you select one tab in the TIBCO
XPath is a scripting language developed by the
Administrator GUI. As components are
World Wide Web Consortium (W3C) for
installed, additional tabs become available.
addressing parts of XML documents. It provides
TIBCO Administrator basic manipulation functions for strings,
TIBCO Administrator is a browser-based numbers and Booleans. TIBCO Designer uses
interface for monitoring and managing TIBCO XPath as the language for defining conditions
deployments, their security, and administration and transformations. A complete description of
domains. TIBCO Administrator organizes the XPath is available at
information using tabs. http://www.w3.org/TR/xpath.
TIBCO Designer XSD
A GUI tool that allows you design your XML Schema Definition. An XSD file defines the
integration project. You use TIBCO Designer for structure and elements in a related XML file. The
adapter configuration, process design, and suffix of an XSD document is .xsd.
deployment.
XSLT
Transition XML Stylesheet Language Transformation. XSL
Transitions indicate the flow of processing. In Transformations (XSLT) is a standard way to
TIBCO Designer, a transition is represented by describe how to transform (change) the structure
an arrow between activities. Each activity in a of an XML (Extensible Markup Language)
process definition must have a transition to it, or document into an XML document with a
the activity is not executed when the process different structure. XSLT is a recommendation of
executes. the World Wide Web Consortium

TIBCO BusinessWorks Concepts


102
| Glossary

TIBCO BusinessWorks Concepts


TIBCO Software Inc. End User License Agreement 103
|

TIBCO Software Inc. End User License Agreement


READ THIS END USER LICENSE AGREEMENT CAREFULLY. BY that number of Customer’s employees as are permitted under the level
DOWNLOADING OR INSTALLING THE SOFTWARE, YOU AGREE of Support purchased (contacts are changeable upon 48-hours prior
TO BE BOUND BY THIS AGREEMENT. IF YOU DO NOT AGREE TO written notice to TIBCO). Each contact may contact TIBCO for
THESE TERMS, DO NOT DOWNLOAD OR INSTALL THE problem resolution during TIBCO’s published support hours
SOFTWARE AND RETURN IT TO THE VENDOR FROM WHICH IT corresponding to the level of Support fees paid.
WAS PURCHASED. RETURNS BY THE ORIGINAL PURCHASER
WITHIN THIRTY (30) DAYS OF THE PURCHASE DATE WILL Upon notice from a contact of a Software problem which can be
RECEIVE A FULL REFUND. reproduced at a TIBCO support facility or via remote access to
Customer’s facility, TIBCO shall use reasonable efforts to correct or
Upon acceptance, the following shall govern your use of the Software circumvent the problem according to its published support objectives.
except to the extent all or any portion of the Software (a) is subject to a TIBCO reserves the right to make changes only to the most currently
separate written agreement, (b) includes a separate “click-on” license available version. TIBCO will use reasonable efforts to support the
agreement as part of the download or installation process, or (c) is previously released version of the Software for a maximum of six
provided by a third party under the terms set forth in an addendum at months. Software may be transferred to another site or operating
the end of this Agreement, in which case the terms of such addenda system only upon written notice to TIBCO and subject to TIBCO’s
shall control over inconsistent terms with regard to such portion(s). transfer policies and fees then in effect. Software may be transferred
without notice or additional cost from one machine to another at the
License Grant. The Software is the property of TIBCO or its licensors same site if the second machine runs the same operating system
and is protected by copyright and other laws. While TIBCO continues software and otherwise there is no increase in the Permitted
to own the Software, TIBCO hereby grants to Customer a limited, Instances.
non-transferable, non-exclusive, license to use the number of
Permitted Instances set forth in the Ordering Document, in TIBCO shall have no obligation to support the Software (i) for use on
machine-readable, object code form and solely for Customer’s internal any computer system running other than the operating system
business use. software for which the Software is approved (as set forth in the
Software documentation) and licensed hereunder, or (ii) if Customer
Restrictions. Customer agrees not to (a) make more copies than the has modified the Software in breach of this Agreement. TIBCO shall
number of Permitted Instances plus a reasonable number of backups; have no obligation to modify any version of the Software to run with
(b) provide access to the Software to anyone other than employees, any new versions of any operating system, or any other third party
contractors, or consultants of Customer; (c) sublicense, transfer, software or hardware. If Customer purchases Support for any
assign, distribute to any third party, pledge, lease, rent, or Software, Customer must purchase the same level of Support for all
commercially share the Software or any of Customer’s rights under copies of the Software for which it is licensed.
this Agreement; (d) use the Software for purposes of providing a
service bureau, including, without limitation, providing third-party Support may be extended for one year periods on the anniversary of
hosting, or third-party application integration or application service each Purchase Date at the standard amounts set forth in its price list,
provider-type services, or any similar services; (e) use the Software in for as long as TIBCO offers Support. Customer may reinstate lapsed
connection with ultrahazardous activities, or any activity for which support for any then currently supported Software by paying all
failure of the Software might result in death or serious bodily injury to Support fees in arrears and any applicable reinstatement fee.
Customer or a third party; or (f) directly or indirectly, in whole or in part, Upgrades, patches, enhancements, bug fixes, new versions and/or
modify, translate, reverse engineer, decrypt, decompile, disassemble, new releases of the Software provided from time to time under
make error corrections to, create derivative works based on, or Support shall be used only as replacements to existing Permitted
otherwise attempt to discover the source code or underlying ideas or Instances, and shall not be deemed to increase that number, and use
algorithms of the Software. thereof shall be governed by the terms of this Agreement, except for
the first paragraph of the Limited Warranty and any right of return or
Beta and Evaluation Licenses. Notwithstanding the foregoing, if the refund.
Software is being provided for demonstration, beta testing, or
evaluation purposes, then Customer agrees (a) to use the Software Consulting Services. Customer may request additional services
solely for such purposes, (b) that the Software will not be used or (“Services”) either in an Ordering Document, or by a separate mutually
deployed in a production environment, and (c) that such use shall executed work order, statement of work or other work-request
automatically terminate upon the earlier of thirty days from the date document incorporating this Agreement (each, a “Work Order”).
Customer receives the right to install the Software, or Customer’s Unless otherwise expressly agreed to in a Work Order, all Services
receipt of notice of termination from TIBCO. and any work product therefrom shall be (a) performed on a time and
materials basis, plus meals, lodging, travel, and other expenses
Additional Licenses. If Customer desires to increase the number of reasonably incurred in connection therewith, (b) deemed accepted
Permitted Instances, Customer may request the same by submission upon delivery, and (c) exclusively owned by TIBCO (except for
of an additional Ordering Document and upon acceptance by TIBCO, confidential information of Customer identified to TIBCO in the
Customer shall be permitted to deploy such additional Permitted Ordering Document), including all right, title and intellectual property
Instances, all of which shall otherwise be subject to the terms of this or other right or interest therein. Each Work Order is intended to
Agreement. constitute an independent and distinct agreement of the parties,
notwithstanding that each shall be construed to incorporate all
Technical Support. Provided Customer has paid applicable support applicable provisions of this Agreement. Fees for Services shall be
fees (not included with Software fees unless separately listed), TIBCO due and payable in United States dollars net30 from the date of
shall provide support for generally available TIBCO Software on an TIBCO’s invoice.
annual basis commencing on the Purchase Date, as follows
(“Support”): Customer shall designate as technical support contacts

TIBCO BusinessWorks Concepts


104
| TIBCO Software Inc. End User License Agreement
Limited Warranty. If Customer obtained the Software directly from CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE
TIBCO, then TIBCO warrants that for a period of thirty (30) days from LIMITATION MAY NOT APPLY TO CUSTOMER.
the Purchase Date: (i) the media on which the Software is furnished
will be free of defects in materials and workmanship under normal Confidentiality. Aspects of the Software, Support and Services,
use; and (ii) the Software will substantially conform to its published including the specific design and structure thereof, constitute trade
specifications. This limited warranty extends only to the original secrets and/or copyrighted material of TIBCO and Customer agrees
Customer hereunder. Customer’s sole and exclusive remedy and the not to disclose, provide, or otherwise make available the same in any
entire liability of TIBCO and its suppliers under this limited warranty form to any third party. Customer agrees to implement reasonable
will be, at TIBCO’s option, repair, replacement, or refund of the security measures to protect trade secrets and copyrighted material
Software and applicable Support fees, in which event this Agreement and to affix to all copies of Software or other confidential or trade
shall terminate upon payment thereof. secret information, appropriate TIBCO copyright, confidentiality, and
proprietary notices.
This warranty does not apply to any Software which (a) is licensed for
beta, evaluation, testing or demonstration purposes for which TIBCO Export. TIBCO SOFTWARE CONTAINS ENCRYPTION
does not receive a license fee, (b) has been altered or modified, TECHNOLOGY. You may not download or otherwise export or
except by TIBCO, (c) has not been installed, operated, repaired, or reexport the Software or any underlying information or technology
maintained in accordance with instructions supplied by TIBCO, (d) has except in full compliance with all United States and other applicable
been subjected to abnormal physical or electrical stress, misuse, laws and regulations. None of the Software or underlying information
negligence, or accident, or (e) is used in violation of any other term of or technology may be downloaded or otherwise exported or
this Agreement. Customer agrees to pay TIBCO for any Support or reexported (i) into (or to a national or resident of) Cuba, Iraq, Libya,
Services provided by TIBCO related to a breach of the foregoing on a Sudan, North Korea, Iran, Syria or any other country to which the U.S.
time, materials, travel, lodging and other reasonable expenses basis. If has embargoed goods; or (ii) to anyone on the U.S. Treasury
Customer obtained the Software from a TIBCO reseller or distributor, Department's list of Specially Designated Nationals or the U.S.
the terms of any warranty shall be as provided by such reseller or Commerce Department's Table of Denial Orders. By downloading or
distributor, and TIBCO provides Customer no warranty with respect to using the Software, you are agreeing to the foregoing and you are
such Software. representing and warranting that you are not located in, under the
control of, or a national or resident of any such country or on any such
EXCEPT AS SPECIFIED IN THIS LIMITED WARRANTY, THE list.
SOFTWARE, SUPPORT AND SERVICES ARE PROVIDED “AS IS”,
ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS, Government Use. If the Customer is an agency, department, or other
AND WARRANTIES INCLUDING, WITHOUT LIMITATION, ANY entity of the United States Government ("Government"), the use,
IMPLIED WARRANTY OR CONDITION OF MERCHANTABILITY, duplication, reproduction, release, modification, disclosure or transfer
FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, of the Software, or any related documentation of any kind, including
SATISFACTORY QUALITY OR ARISING FROM A COURSE OF technical data or manuals, is restricted in accordance with Federal
DEALING, USAGE, OR TRADE PRACTICE, ARE HEREBY Acquisition Regulation ("FAR") 12.212 for civilian agencies and
EXCLUDED TO THE EXTENT ALLOWED BY APPLICABLE LAW. NO Defense Federal Acquisition Regulation Supplement ("DFARS")
WARRANTY IS MADE REGARDING THE RESULTS OF ANY 227.7202 for military agencies. The Software is commercial computer
SOFTWARE, SUPPORT OR SERVICES OR THAT THE SOFTWARE software and commercial computer software documentation. Use of
WILL OPERATE WITHOUT ERRORS, PROBLEMS OR the Software and related documentation by the Government is further
INTERRUPTIONS, OR THAT ERRORS OR BUGS IN THE restricted in accordance with the terms of this Agreement, and any
SOFTWARE WILL BE CORRECTED, OR THAT THE SOFTWARE’S modification thereto.
FUNCTIONALITY OR SERVICES WILL MEET CUSTOMER’S
REQUIREMENTS. NO TIBCO DEALER, DISTRIBUTOR, AGENT OR Interoperability. To the extent required by law, at Customer’s request,
EMPLOYEE IS AUTHORIZED TO MAKE ANY MODIFICATIONS, TIBCO shall provide Customer with the interface information needed
EXTENSIONS OR ADDITIONS TO THIS WARRANTY. to achieve interoperability between the Software and another
independently created program, on payment of TIBCO's applicable
Limitation of Liability. IN NO EVENT WILL TIBCO BE LIABLE FOR fee. Customer agrees to observe strict obligations of confidentiality
ANY LOST DATA, LOST REVENUE, LOST PROFITS, DAMAGE TO with respect to such information.
REPUTATION, BUSINESS INTERRUPTION, OR ANY OTHER
INDIRECT, INCIDENTAL, CONSEQUENTIAL, SPECIAL, PUNITIVE, Acceptance; Integration. An Ordering Document shall be deemed
EXEMPLARY OR ANY SIMILAR TYPE DAMAGES ARISING OUT OF accepted only by issuance of a TIBCO invoice and solely for purposes
THIS AGREEMENT, THE USE OR THE INABILITY TO USE THE of administrative convenience. None of the terms of the Ordering
SOFTWARE, OR THE PROVISION OF ANY SUPPORT OR Document (other than the Software product name, number of
SERVICES, EVEN IF TIBCO HAS BEEN ADVISED OF THE Permitted Instances, level of Support, description of Services, and
POSSIBILITY OF SUCH DAMAGES. fees due in connection therewith), shall apply for any reason or
purpose whatsoever, regardless of any statement on any Ordering
IN NO EVENT SHALL TIBCO'S LIABILITY TO CUSTOMER, Document to the contrary, unless countersigned by TIBCO. This
WHETHER IN CONTRACT, TORT (INCLUDING ACTIVE OR Agreement constitutes the entire agreement between the parties with
PASSIVE NEGLIGENCE), BREACH OF WARRANTY, CLAIMS BY respect to the use of the Software, Support and Services, and
THIRD PARTIES OR OTHERWISE, EXCEED THE PRICE PAID BY supersedes all proposals, oral or written, and all other representations,
CUSTOMER UNDER THE APPLICABLE ORDERING DOCUMENT. statements, negotiations and undertakings relating to the subject
matter hereof. All future orders of Software, Support or Services by
THE FOREGOING LIMITATIONS SHALL APPLY EVEN IF THE Customer from TIBCO shall be deemed to occur under the terms of
ABOVE-STATED REMEDY OR LIMITED WARRANTY FAILS OF ITS this Agreement (with or without reference to this Agreement), unless
ESSENTIAL PURPOSE. BECAUSE SOME STATES OR expressly superseded by a signed written Agreement between the
JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF parties.

TIBCO BusinessWorks Concepts


TIBCO Software Inc. End User License Agreement 105
|
Term and Termination. Customer may terminate this Agreement at Document; “Server Instance” means a computer performing common
any time by destroying all copies of the Software. This Agreement will services for multiple Desktop machines; “Site” means an unlimited
terminate immediately without notice from TIBCO if Customer fails to number of Permitted Instances at a specific physical address set forth
comply with any of its provisions if not cured within fifteen days of such in the Ordering Document (or, in the absence of any address, at
failure, or and, upon such termination, Customer must cease using Customer’s corporate headquarters); “Software” means the software
and return or destroy all copies of the Software. Customer’s obligation products listed in an Ordering Document (except as provided in the
to pay accrued charges and fees as well as the sections entitled second paragraph hereof), in whole and in part, along with their
“Confidentiality”, “Limited Warranty” and “Limitation of Liability” shall associated documentation; “TIBCO” means TIBCO Software Inc.; and
survive any such termination. “User” means the number of named users with access to the
Software.
Authority. You hereby represent and warrant that you have full power
and authority to accept the terms of this Agreement on behalf of Copyright © 1997-2002 TIBCO Software Inc. ALL RIGHTS
Customer, and that Customer agrees to be bound by this Agreement. RESERVED.

General. Fees on the Ordering Document (all to be paid on the latter


of thirty days from Invoice by TIBCO or the date set forth in the ADDENDA: Third Party License Agreements
Ordering Document) do not include sales, use, withholding,
value-added or similar taxes, and Customer agrees to pay the same, NOTICE: Included with the TIBCO Software is certain source and/or
excluding therefrom taxes related to TIBCO’s income and corporate object code software developed and licensed by third parties ("Third
franchise tax. Customer agree to pay all reasonable costs incurred Party Software"). Third Party Software is licensed and supported
(including reasonable attorneys’ fees) in collecting past due amounts exclusively under the terms and conditions of the license terms which
under this Agreement. No delay in the performance of any obligation accompany such Third Party Software, as set forth next.
by either party, excepting all obligations to make payment, shall
constitute a breach of this Agreement to the extent caused by force
majeure. Customer hereby grants TIBCO and its independent auditors
the right to audit Customer’s compliance with this Agreement. If any
portion of this Agreement is found to be void or unenforceable, the
remaining provisions shall remain in full force and effect. This
Agreement shall be governed by and construed in accordance with
the laws of the State of California, United States of America, as if
performed wholly within the state and without giving effect to the
principles of conflict of law. The state and/or federal courts in San
Francisco, California, shall have exclusive jurisdiction of any action
arising out of or relating to this Agreement. The United Nations
Convention on Contracts for the International Sale of Goods is
excluded from application hereto. If any portion hereof is found to be
void or unenforceable, the remaining provisions of this Agreement
shall remain in full force and effect.

Definitions. In connection with this Agreement, the following


capitalized terms shall have the following meaning: “Agreement”
means this End User License Agreement; “Customer” means the
original purchaser or licensee of the Software and any permitted
successors and assigns; “Development” means used for software
development purposes only; “Enterprise” means an unlimited number
of Permitted Instances for a period of one year from the Purchase
Date (unless otherwise set forth in the Ordering Document), at which
time existing licenses convert to perpetual and Customer may not
thereafter deploy additional Permitted Instances, and in any event,
shall (during the one-year unlimited deployment period) exclude any
entity which acquires, is acquired by, merged into, or otherwise
combined with Customer if, upon such combination, the combined
annual revenues or head count is greater by ten percent (10%) than
exists as of the Purchase Date (and Customer hereby agree to
provide TIBCO with notice of the number of Permitted Instances
deployed at the end of such one-year period within thirty days
thereafter); “Fab” means unlimited use for shop-floor manufacturing
applications at a Site; “Workstation” shall mean a single end-user
computer that is generally intended to be accessed by one person at a
time; “Ordering Document” means any purchase order or similar
document or agreement requesting Software, Support or Services;
“Permitted Instance(s)” means the number of copies of Software
running on a Server Instance, Workstation, User, or Development
basis, on a designated Platform, as set forth in an Ordering
Document, including, without limitation, Enterprise, Site and Fab
licensing; “Platform” means the operating system set forth in an
Ordering Document; “Purchase Date” means the date of the Ordering

TIBCO BusinessWorks Concepts


106
| Third Party Software License Agreements

Third Party Software License Agreements


The following are the software licenses for the Third Party Software INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN
provided in connection with the software. ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event
will Sun’s liability to you, whether in contract, tort (including
negligence), or otherwise, exceed the amount paid by you for Software
Java(TM) 2 SDK Enterprise Edition Version 1.3_01, under this Agreement. The foregoing limitations will apply even if the
above stated warranty fails of its essential purpose.
Sun Microsystems, Inc. Binary Code License Agreement
6. Termination. This Agreement is effective until terminated. You may
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED terminate this Agreement at any time by destroying all copies of
SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY Software. This Agreement will terminate immediately without notice
"AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE from Sun if you fail to comply with any provision of this Agreement.
MEDIA PACKAGE. BY OPENING THE SOFTWARE MEDIA Upon Termination, you must destroy all copies of Software.
PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT. IF
YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, 7. Export Regulations. All Software and technical data delivered under
INDICATE YOUR ACCEPTANCE OF THESE TERMS BY this Agreement are subject to US export control laws and may be
SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS subject to export or import regulations in other countries. You agree to
AGREEMENT. IF YOU DO NOT AGREE TO ALL THESE TERMS, comply strictly with all such laws and regulations and acknowledge
PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE that you have the responsibility to obtain such licenses to export,
OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS re-export, or import as may be required after delivery to you.
ACCESSED ELECTRONICALLY, SELECT THE "DECLINE" BUTTON
AT THE END OF THIS AGREEMENT. 8. U.S. Government Restricted Rights. If Software is being acquired
by or on behalf of the U.S. Government or by a U.S. Government
1. LICENSE TO USE. Sun grants you a non-exclusive and prime contractor or subcontractor (at any tier), then the Government’s
non-transferable license for the internal use only of the accompanying rights in Software and accompanying documentation will be only as
software and documentation and any error corrections provided by set forth in this Agreement; this is in accordance with 48 CFR
Sun (collectively "Software"), by the number of users and the class of 227.7201 through 227.7202-4 (for Department of Defense (DOD)
computer hardware for which the corresponding fee has been paid. acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD
acquisitions).
2. RESTRICTIONS. Software is confidential and copyrighted. Title to
Software and all associated intellectual property rights is retained by 9. Governing Law. Any action related to this Agreement will be
Sun and/or its licensors. Except as specifically authorized in any governed by California law and controlling U.S. federal law. No choice
Supplemental License Terms, you may not make copies of Software, of law rules of any jurisdiction will apply.
other than a single copy of Software for archival purposes. Unless
enforcement is prohibited by applicable law, you may not modify, 10. Severability. If any provision of this Agreement is held to be
decompile, or reverse engineer Software. You acknowledge that unenforceable, this Agreement will remain in effect with the provision
Software is not designed, licensed or intended for use in the design, omitted, unless omission would frustrate the intent of the parties, in
construction, operation or maintenance of any nuclear facility. Sun which case this Agreement will immediately terminate.
disclaims any express or implied warranty of fitness for such uses. No
right, title or interest in or to any trademark, service mark, logo or trade 11. Integration. This Agreement is the entire agreement between you
name of Sun or its licensors is granted under this Agreement. and Sun relating to its subject matter. It supersedes all prior or
contemporaneous oral or written communications, proposals,
3. LIMITED WARRANTY. Sun warrants to you that for a period of representations and warranties and prevails over any conflicting or
ninety (90) days from the date of purchase, as evidenced by a copy of additional terms of any quote, order, acknowledgment, or other
the receipt, the media on which Software is furnished (if any) will be communication between the parties relating to its subject matter
free of defects in materials and workmanship under normal use. during the term of this Agreement. No modification of this Agreement
Except for the foregoing, Software is provided "AS IS". Your exclusive will be binding, unless in writing and signed by an authorized
remedy and Sun’s entire liability under this limited warranty will be at representative of each party.
Sun’s option to replace Software media or refund the fee paid for
Software. Java(TM) 2, Enterprise Edition (J2EE), Version 1.3.x, Reference
Implementation SUPPLEMENTAL LICENSE TERMS
4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, These supplemental license terms ("Supplemental Terms") add to or
REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIE modify the terms of the Binary Code License Agreement (collectively,
WARRANTY OF MERCHANTABILITY, FITNESS FOR A the "Agreement"). Capitalized terms not defined in these
PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE Supplemental Terms shall have the same meanings ascribed to them
DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE in the Agreement. These Supplemental Terms shall supersede any
DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. inconsistent or conflicting terms in the Agreement, or in any license
contained within the Software.
5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED
BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE 1. Software Internal Use and Development License Grant. Subject to
FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, the terms and conditions of this Agreement, including, but not limited
INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE to, Section 2 (Java(TM) Technology Restrictions) of these
DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY Supplemental Terms, Sun grants you a non-exclusive,
OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR non-transferable, limited license to reproduce internally and use

TIBCO BusinessWorks Concepts


Third Party Software License Agreements 107
|
internally the binary form of the Software, complete and unmodified, 1. LICENSE TO USE. Sun grants you a non-exclusive and
for the sole purpose of designing, developing and testing your Java non-transferable license for the internal use only of the accompanying
applets and applications ("Programs"), provided that you do not software and documentation and any error corrections provided by
redistribute the Software in whole or in part, either separately or Sun (collectively "Software"), by the number of users and the class of
included with any Programs. computer hardware for which the corresponding fee has been paid.

2. Java Technology Restrictions. You may not modify the Java Platform 2. RESTRICTIONS. Software is confidential and copyrighted. Title to
Interface ("JPI", identified as classes contained within the "java" Software and all associated intellectual property rights is retained by
package or any subpackages of the "java" package), by creating Sun and/or its licensors. Except as specifically authorized in any
additional classes within the JPI or otherwise causing the addition to Supplemental License Terms, you may not make copies of Software,
or modification of the classes in the JPI. In the event that you create other than a single copy of Software for archival purposes. Unless
an additional class and associated API(s) which (i) extends the enforcement is prohibited by applicable law, you may not modify,
functionality of the Java Platform, and (ii) is exposed to third party decompile, or reverse engineer Software. You acknowledge that
software developers for the purpose of developing additional software Software is not designed, licensed or intended for use in the design,
which invokes such additional API, you must promptly publish broadly construction, operation or maintenance of any nuclear facility. Sun
an accurate specification for such API for free use by all developers. disclaims any express or implied warranty of fitness for such uses. No
You may not create, or authorize your licensees to create additional right, title or interest in or to any trademark, service mark, logo or trade
classes, interfaces, or subpackages that are in any way identified as name of Sun or its licensors is granted under this Agreement.
"java", "javax", "sun" or similar convention as specified by Sun in any
naming convention designation. 3. LIMITED WARRANTY. Sun warrants to you that for a period of
ninety (90) days from the date of purchase, as evidenced by a copy of
3. Java Runtime Availability. Refer to the appropriate version of the the receipt, the media on which Software is furnished (if any) will be
Java Runtime Environment binary code license (currently located at free of defects in materials and workmanship under normal use.
http://www.java.sun.com/jdk/index.html) for the availability of runtime Except for the foregoing, Software is provided "AS IS". Your exclusive
code which may be distributed with Programs. remedy and Sun’s entire liability under this limited warranty will be at
Sun’s option to replace Software media or refund the fee paid for
4. Trademarks and Logos. You acknowledge and agree as between Software.
you and Sun that Sun owns the SUN, SOLARIS, JAVA, JINI, FORTE,
and iPLANET trademarks and all SUN, SOLARIS, JAVA, JINI, 4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
FORTE, and iPLANET-related trademarks, service marks, logos and AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
other brand designations ("Sun Marks"), and you agree to comply with REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
the Sun Trademark and Logo Usage Requirements currently located IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
at http://www.sun.com/policies/trademarks. Any use you make of the PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE
Sun Marks inures to Sun’s benefit. DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE
DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.
5. Source Code. Software may contain source code that is provided
solely for reference purposes pursuant to the terms of this Agreement. 5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED
Source code may not be redistributed unless expressly provided for in BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE
this Agreement. FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL,
INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
6. Termination for Infringement. Either party may terminate this DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY
Agreement immediately should any Software become, or in either OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR
party’s opinion be likely to become, the subject of a claim of INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN
infringement of any intellectual property right. ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event
will Sun’s liability to you, whether in contract, tort (including
For inquiries please contact: Sun Microsystems, Inc. 901 San Antonio negligence), or otherwise, exceed the amount paid by you for Software
Road, Palo Alto, California 94303 (LFI#100107/Form ID#011801) under this Agreement. The foregoing limitations will apply even if the
above stated warranty fails of its essential purpose.
JavaTM APIs for XML Processing (JAXP) 1.0.1
6. Termination. This Agreement is effective until terminated. You may
Sun Microsystems, Inc. Binary Code License Agreement terminate this Agreement at any time by destroying all copies of
Software. This Agreement will terminate immediately without notice
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED from Sun if you fail to comply with any provision of this Agreement.
SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY Upon Termination, you must destroy all copies of Software.
"AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE
MEDIA PACKAGE. BY OPENING THE SOFTWARE MEDIA 7. Export Regulations. All Software and technical data delivered
PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT. IF under this Agreement are subject to US export control laws and may
YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, be subject to export or import regulations in other countries. You
INDICATE YOUR ACCEPTANCE OF THESE TERMS BY agree to comply strictly with all such laws and regulations and
SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS acknowledge that you have the responsibility to obtain such licenses
AGREEMENT. IF YOU DO NOT AGREE TO ALL THESE TERMS, to export, re-export, or import as may be required after delivery to you.
PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE
OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS 8. U.S. Government Restricted Rights. If Software is being acquired
ACCESSED ELECTRONICALLY, SELECT THE "DECLINE" BUTTON by or on behalf of the U.S. Government or by a U.S. Government
AT THE END OF THIS AGREEMENT. prime contractor or subcontractor (at any tier), then the Government’s
rights in Software and accompanying documentation will be only as
set forth in this Agreement; this is in accordance with 48 CFR

TIBCO BusinessWorks Concepts


108
| Third Party Software License Agreements
227.7201 through 227.7202-4 (for Department of Defense (DOD) XML JAR Files that was available from Sun no later than 180 days
acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD prior to each production release of your Program; and (e) agree to
acquisitions). indemnify, hold harmless, and defend Sun and its licensors from and
against any claims or lawsuits, including attorney’s fees, that arise or
9. Governing Law. Any action related to this Agreement will be result from the use or distribution of any and all Programs.
governed by California law and controlling U.S. federal law. No choice
of law rules of any jurisdiction will apply. 3. Limited License for Source Code. Sun grants to you a limited
license to view only the source code included in Software for purposes
10. Severability. If any provision of this Agreement is held to be of internal evaluation only. You may not modify, distribute or use the
unenforceable, this Agreement will remain in effect with the provision source code for any other purpose.
omitted, unless omission would frustrate the intent of the parties, in
which case this Agreement will immediately terminate. 4. Requirements. In exchange for the licenses granted in Paragraphs
1, 2 and 3 above, you agree:
11. Integration. This Agreement is the entire agreement between you
and Sun relating to its subject matter. It supersedes all prior or a. not to create, or authorize your licensees to create, additional
contemporaneous oral or written communications, proposals, classes, interfaces or subpackages that are contained in the "java,"
representations and warranties and prevails over any conflicting or "javax" or "sun" packages, or similarly named package, as specified by
additional terms of any quote, order, acknowledgment, or other Sun in any naming convention;
communication between the parties relating to its subject matter
during the term of this Agreement. No modification of this Agreement b. that, in the event that you create an API(s) which: (i) extends the
will be binding, unless in writing and signed by an authorized functionality of a Java platform; and (ii) is distributed to third party
representative of each party. software developers for the purpose of developing software which
invokes such additional API, you must promptly and broadly publish an
For inquiries please contact: Sun Microsystems, Inc. 901 San Antonio accurate specification for such API for free use by all developers; and
Road, Palo Alto, California 94303
c. to defend and indemnify Sun and its licensors from and against any
JAVA(TM) DEVELOPMENT OPTIONAL PACKAGES JAVA(TM) API damages, costs, liabilities, settlement amounts and/or expenses
FOR XML PARSING, VERSION 1.0 SUPPLEMENTAL LICENSE (including attorneys’ fees) incurred in connection with any claim,
TERMS lawsuit or action by any third party that arises or results from the use
or distribution of any and all Programs and/or Software.
These supplemental license terms ("Supplement") add to or modify
the terms of the Binary Code License Agreement (collectively, the 5. Java Platform Interface. (i) You may not modify the Java Platform
"Agreement"). Capitalized terms not defined in this Supplement shall Interface ("JPI", identified as classes contained within the "java"
have the same meanings ascribed to them in the Agreement. These package or any subpackages of the "java" package), by creating
Supplement terms shall supersede any inconsistent or conflicting additional classes within the JPI or otherwise causing the addition to
terms in the Agreement, or in any license contained within the or modification of the classes in the JPI. (ii) In the event that you
Software. create an additional class and associated API(s) which (a) extends the
functionality of a Java Environment; and (b) is exposed to third party
1. License to Develop. Sun grants you a non-exclusive, software developers for the purpose of developing additional software
non-transferable, royalty-free limited license to use the Software in which invokes such additional API, you must promptly publish broadly
binary form for the development of Java(TM) API for XML Parsing an accurate specification for such API for free use by all developers.
compatible parsers (the "Programs") and reproduce and distribute the (iii) You may not create, or authorize your licensees to create
Programs to third party end users provided that you: (i) do not additional classes, interfaces, or subpackages that are in any way
redistribute the Software in whole or in part, either separately or identified as "java", "javax" or "sun" or similar as specified by Sun in
included in any Program except as authorized for the Java(TM) API for any class file naming convention designation, except with respect to
XML parsing JAR Files as specified in Section 2 below, and (ii) agree the Service Bundles.
to indemnify, hold harmless, and defend Sun and its licensors from
and against any claims or lawsuits, including attorney’s fees, that arise 6. Trademarks and Logos. You acknowledge and agree as between
or result from the use or distribution of any and all Programs. you and Sun that Sun owns the Java trademark and all Java-related
trademarks, service marks, logos and other brand designations
2. License to Distribute. Sun grants you a non-exclusive, including the Coffee Cup logo and Duke logo ("Java Marks"), and you
non-transferable, royalty-free limited license to reproduce and agree to comply with the Sun Trademark and Logo Usage
distribute the classes Java(TM) API for XML parsing classes, in binary Requirements currently located at
form, contained in the Software in the archive files "jaxp.jar" and http://www.sun.com/policies/trademarks. Any use you make of the
"parser.jar" ("XML JAR Files") to third party end users solely as a Java Marks inures to Sun’s benefit.
component of your Programs provided that you: (a)(i) distribute the
XML JAR Files complete and unmodified in their original Java Archive
file; and do not distribute additional software intended to replace any log4.jar Version 1.1.3
component(s) of the XML JAR Files; or, alternatively (ii) distribute the
archive file "jaxp.jar" without the archive file "parser.jar" but with a The Apache Software License, Version 1.1
parser implementation that is compliant with the JAXP specification
and do not distribute additional software intended to replace any Copyright (C) 1999 The Apache Software Foundation. All rights
components of the archive file "jaxp.jar"; and (b) do not remove or alter reserved.
any proprietary legends or notices contained in or on the Software; (c)
only distribute the XML JAR! Files pursuant to a license agreement Redistribution and use in source and binary forms, with or without
that protects Sun’s interests consistent with the terms contained in the modification, are permitted provided that the following conditions are
Agreement; (d) agree to incorporate the most current version of the met:

TIBCO BusinessWorks Concepts


Third Party Software License Agreements 109
|
1. Redistributions of source code must retain the above copyright Alternately, this acknowledgment may appear in the software itself, if
notice, this list of conditions and the following disclaimer. and wherever such third-party acknowledgments normally appear.

2. Redistributions in binary form must reproduce the above copyright 4. The names "Xerces" and "Apache Software Foundation" must not
notice, this list of conditions and the following disclaimer in the be used to endorse or promote products derived from this software
documentation and/or other materials provided with the distribution. without prior written permission. For written permission, please
contact apache@apache.org.
3. The end-user documentation included with the redistribution, if any,
must include the following acknowledgment: "This product includes 5. Products derived from this software may not be called "Apache",
software developed by the Apache Software Foundation nor may "Apache" appear in their name, without prior written
(http://www.apache.org/)." Alternately, this acknowledgment may permission of the Apache Software Foundation.
appear in the software itself, if and wherever such third-party
acknowledgments normally appear. THIS SOFTWARE IS PROVIDED ‘ ‘ AS IS’’ AND ANY EXPRESSED
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
4. The names "log4j" and "Apache Software Foundation" must not be THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
used to endorse or promote products derived from this software FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
without prior written permission. For written permission, please NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
contact apache@apache.org. ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
5. Products derived from this software may not be called "Apache", DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
nor may "Apache" appear in their name, without prior written OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
permission of the Apache Software Foundation. OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
THIS SOFTWARE IS PROVIDED ‘ ‘ AS IS’’ AND ANY EXPRESSED CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN POSSIBILITY OF SUCH DAMAGE.
NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, ===============================================
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT This software consists of voluntary contributions made by many
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, individuals on behalf of the Apache Software Foundation and was
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER originally based on software copyright (c) 1999, International Business
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN Machines, Inc., http://www.ibm.com. For more information on the
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING Apache Software Foundation, please see <http://www.apache.org/>.
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE. pertools.jar Version 1.2.0a

This software consists of voluntary contributions made by many The Apache Software License, Version 1.1
individuals on behalf of the Apache Software Foundation. For more
information on the Apache Software Foundation, please see Copyright (c) 2000 The Apache Software Foundation. All rights
<http://www.apache.org/>. reserved.

Redistribution and use in source and binary forms, with or without


Xalan-J 2.2.D10 modification, are permitted provided that the following conditions are
met:
The Apache Software License, Version 1.1
1. Redistributions of source code must retain the above copyright
Copyright (c) 1999-2000 The Apache Software Foundation. All rights notice, this list of conditions and the following disclaimer.
reserved.
2. Redistributions in binary form must reproduce the above copyright
Redistribution and use in source and binary forms, with or without notice, this list of conditions and the following disclaimer in the
modification, are permitted provided that the following conditions are documentation and/or other materials provided with the distribution.
met:
3. The end-user documentation included with the redistribution, if any,
1. Redistributions of source code must retain the above copyright must include the following acknowledgment: "This product includes
notice, this list of conditions and the following disclaimer. software developed by the Apache Software Foundation
(http://www.apache.org/)." Alternately, this acknowledgment may
2. Redistributions in binary form must reproduce the above copyright appear in the software itself, if and wherever such third-party
notice, this list of conditions and the following disclaimer in the acknowledgments normally appear.
documentation and/or other materials provided with the distribution.
4. The names "Apache" and "Apache Software Foundation",
3. The end-user documentation included with the redistribution, if any, "Jakarta-Oro" must not be used to endorse or promote products
must include the following acknowledgment: "This product includes derived from this software without prior written permission. For written
software developed by the Apache Software Foundation permission, please contact apache@apache.org.
(http://www.apache.org/)."

TIBCO BusinessWorks Concepts


110
| Third Party Software License Agreements
5. Products derived from this software may not be called "Apache" or
"Jakarta-Oro", nor may "Apache" or "Jakarta-Oro" appear in their
name, without prior written permission of the Apache Software
Foundation.

THIS SOFTWARE IS PROVIDED ‘ ‘ AS IS’’ AND ANY EXPRESSED


OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

===================================================

This software consists of voluntary contributions made by many


individuals on behalf of the Apache Software Foundation. For more
information on the Apache Software Foundation, please see
<http://www.apache.org/>.

Portions of this software are based upon software originally written by


Daniel F. Savarese. We appreciate his contributions.

Cryptix 3.2.0
Cryptix JCE

Cryptix General License

Copyright © 1995-2001 The Cryptix Foundation Limited. All rights


reserved.

Redistribution and use in source and binary forms, with or without


modification, are permitted provided that the following conditions are
met:

1.Redistributions of source code must retain the copyright notice, this


list of conditions and the following disclaimer.

2.Redistributions in binary form must reproduce the above copyright


notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE CRYPTIX FOUNDATION


LIMITED AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE CRYPTIX FOUNDATION LIMITED OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.

TIBCO BusinessWorks Concepts


| 111

Index

A B
activities business integration elements 19
accessing services 42 business processes 22, 66
adding 71 design 46
data mapping data 75 modelling 22
data transformation 75
grouping 76
transitions 74
adapter service 57, 63 C
configuration steps 58
adapters 20, 21 components
accessing from process 63 identifying 42
configuring 62 run-time 53
design-time adapter 60 conditional transitions 74
features 21 conditions 43, 74
installing 54, 59 configuration
overview 20 adapter service 58
run-time adapter 62 deployment 24, 86
adding activities 71 overview 33
adding deployment configuration information 86 run-time adapters 62
adding process starter 70 conventions used in this manual xi
adding transitions 74 creating administration domain 83
administration component 53 creating process definitions 69
administration domain 9, 50, 83 creating projects 85
administration server 50, 94 creating transitions 74
analysis 29 customer support xii
business events 45
problem definition 40
application integration 2
architecture 12 D
design-time 14
run-time 17 data mapping 22, 44, 75
assigning software 83 data transformation 75
authentication 11 debugging projects 85
authorization 11 deployed projects
management 11
monitoring 11

TIBCO BusinessWorks Concepts


112
| Index
deployment 37 installation
configuration 24 adapters 54, 59
configuration information 86 overview 30
introduction 80 TIBCO BusinessWorks 52
steps 82 integrated development environment 13
design 35 integration 2
business processes 46 benefits 2
steps 67 platform requirements 3
design-time adapter 60 invocation modes 56
design-time architecture 14
development environment
IDE 13
domains 9, 50 M
creating 83
setup 30 management
run-time 25
managing deployed projects 11
manual activity 5, 13, 24
E mapping 22, 44, 75
messaging 19
exceptions 44 methodology
extensibility 13 introduction 28
modelling of business process 22
monitoring
introduction 92
F projects 11
run-time 25
fault tolerance 37
fault-tolerance 25
features
adapters 21 P
palettes
overview 16
G populating administration domain 83
problem definition 40
grouping activities 76 process definitions 69
process modelling 22
process starter 70
processes 66
I design 35, 46, 66
design steps 67
identifying components 42 identifying 41
identifying processes 41 starter 70
InConcert 13 testing 77

TIBCO BusinessWorks Concepts


Index 113
|
production 38 T
projects 15
creating 85 technical support xii
extensibility 13 testing processes 77
life cycle 81 testing projects 85
scalability 13 TIBCO Administration Domain 52
testing 85 TIBCO administration domain 9, 50
TIBCO administration server 50, 94
TIBCO Administrator 8
TIBCO BusinessWorks
R adapters 21
installing 52
resources 16 introduction 8
shared 68 TIBCO BusinessWorks services
software 83 introduction 56
run-time agent 51 TIBCO Designer 8
run-time architecture 17 TIBCO InConcert 8, 13, 24
run-time components 53 TIBCO Runtime Agent 8
run-time management 25 TIBCO run-time agent 51
run-time monitoring 25, 98 TRA 8, 51, 52
tracing 98
transformation 75
transitions 43, 74
S
scalability 13
schema 22, 23 U
security 8, 11
user management 94 user management 94
sending messages 19
server 50, 94
services
activities 42 W
adapter 63
characteristics 56 web services 57
configuration 33 workflow 5, 24
introduction 56
types 57
web services 57
setting up design-time adapter 60
shared resources 68
software resources 83
standards 12
starter 70
support, contacting xii

TIBCO BusinessWorks Concepts


114
| Index

TIBCO BusinessWorks Concepts

You might also like