TIBCO Business Studio™ Process Developer’s Guide

Software Release 2.0 May 2007

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 TIBCO BUSINESS STUDIO INSTALLATION GUIDE) OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE SOFTWARE. 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. TIB, TIBCO, TIBCO Adapter, Predictive Business, Information Bus, The Power of Now, TIBCO iProcess, TIBCO BusinessWorks, TIBCO BusinessEvents, TIBCO General Interface, TIBCO ActiveMatrix and TIBCO Business Studio are either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries. EJB, Java EE J2EE, 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 SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME TIME. SEE THE README.TXT FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM. 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. THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES. Copyright © 2004-2007 TIBCO Software Inc. ALL RIGHTS RESERVED. TIBCO Software Inc. Confidential Information

Contents iii

|

Contents

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TIBCO Business Studio Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other TIBCO Product Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Third Party Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 3

Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 How to Contact TIBCO Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Chapter 1 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Who Should Use TIBCO Business Studio? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 How TIBCO Business Studio Supports MDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Implementation Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hand Over from Business Analyst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BPM/SOA Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Creation/Testing for Sub-Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hand Off/Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Process Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 4 5 5 5

BPM/SOA Implementation Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 User Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Service Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Script Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Deploying a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Tutorial Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Tutorial 1: Elaborating a Process: User Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Tutorial 2: Elaborating a Process: Service Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Calling Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Creating an E-Mail Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Tutorial 3: Deploying a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chapter 2 Concepts and Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Artifacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Project Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

TIBCO Business Studio - Process Developer’s Guide

iv

| Contents
Concept Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extended Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Participants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Standards Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Business Process Modeling Notation (BPMN). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UML2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XML Process Definition Language (XPDL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 34 35 35 36 37 37 37 37

Chapter 3 Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Elaborating a User Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Adding a Service Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Working with UDDI Registries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Sending an Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Making a Database Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Creating a Script Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Associating a Script with a Conditional Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Timer Event Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Calling Java Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Complete the Parameter Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Packaging a Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Deploying a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preparing a Process for Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connecting to a Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deploying a Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Deployed Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Server Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disconnecting from the Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 66 66 67 68 72 72 74

Chapter 4 Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Properties View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User Task Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Task Properties (Web Service/BusinessWorks Service) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Task Properties (Email) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Task (Database) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Task (Java) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Script Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Send and Receive Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 76 77 78 81 82 84 84

Process Validation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

TIBCO Business Studio - Process Developer’s Guide

Contents v

|

General Rules for Direct Deployment to the TIBCO iProcess Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Rules for Direct Deployment of Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Correcting Validation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

TIBCO Business Studio - Process Developer’s Guide

vi

| Contents

TIBCO Business Studio - Process Developer’s Guide

page 4 How to Contact TIBCO Support. page 2 Typographical Conventions. page 5 TIBCO Business Studio .Process Developer’s Guide . It describes how to elaborate a TIBCO Business Studio™ Process with execution details and how to deploy it to the runtime platform.|1 Preface This guide is aimed at the corporate developer who implements business processes designed by a business analyst. Topics • • • Related Documentation.

Tasks describes common tasks that you perform using TIBCO Business Studio. existing HTML page. TIBCO Business Studio Documentation The TIBCO Business Studio documentation set consists of user’s guides for its main features such as modeling and simulation. The object modeling features of TIBCO General Interface Builder enable developers to quickly create reusable GUI components and assemble them into full applications or application modules. The following documentation is also provided: • • TIBCO Business Studio Installation Guide: Read this manual for instructions on site preparation and installation. Other TIBCO Product Documentation You may find it useful to read the documentation for the following products: • TIBCO iProcess Suite™.2 | Preface Related Documentation This section lists documentation resources you may find useful. Reference provides detail about the major components of TIBCO Business Studio such as the properties sheets and user interface (UI). Applications can be accessed in a web browser from a URL. a development environment for building rich internet applications. Concepts and Definitions explores the concepts and terminology related to TIBCO Business Studio.Process Developer’s Guide . • TIBCO Business Studio . as well as tools for rules and analysis. mission critical transactions. including several tutorials. a comprehensive collection of process management software that includes modeling tools. or portal environment. This documentation has the following main sections: • • • • Getting Started takes you through the basics of TIBCO Business Studio. TIBCO General Interface™ Builder. This document also contains lists of known issues and closed issues for this release. TIBCO Business Studio Release Notes: Read the release notes for a list of new and changed features. a powerful process management engine designed to handle extremely high-volume.

a scalable. TIBCO Business Studio .Related Documentation 3 | • TIBCO BusinessWorks™. BusinessWorks™ includes a graphical user interface (GUI) for defining business processes and an engine that executes the process. extensible. Third Party Documentation The Eclipse help also contains useful information on the Workbench and the Eclipse UI. and easy to use integration platform that allows you to develop integration projects.Process Developer’s Guide .

For example: A portal page may contain several portlets. if no parameter is specified. To introduce new terms. To indicate a variable in a command or code syntax that you must replace. TIBCO Business Studio . Key names separated by a comma and space indicate keys pressed one after the other. pathnames. for example. Ctrl+Q. In command syntax. to indicate the parts of the sample that are of particular interest. data loss or corruption if certain steps are taken or not taken. filenames. MyCommand is enabled: MyCommand [enable | disable] italic font Italic font is used in the following ways: • • • To indicate a document title. The tip icon indicates an idea that could be useful. For example: MyCommand pathname Key combinations Key name separated by a plus sign indicate keys pressed simultaneously. Portlets are mini-applications that run in a portal. For example. In large code samples. to indicate the default parameter for a command. For example: Ctrl+C. bold code font Bold code font is used in the following ways: • • • In procedures. an additional action required only in certain circumstances.4 | Preface Typographical Conventions The following typographical conventions are used in this manual. For example: See TIBCO BusinessWorks Concepts. For example: Esc.Process Developer’s Guide . Table 1 General Typographical Conventions Convention code font Use Code font identifies commands. For example: Type admin. for example. For example: Use MyCommand to start the foo process. and output displayed in a command window. for example. The note icon indicates information that is of special interest or importance. to indicate what a user types. a way to apply the information provided in the current section to achieve a specific result. The warning icon indicates the potential for a damaging situation. code examples.

html.com/services/support/ • If you already have a valid maintenance or support contract. please contact TIBCO Support as follows. If you do not have a username. and information about getting started with TIBCO Support. visit this site: http://support. and access to the TIBCO Developer Network. TIBCO Business Studio .Process Developer’s Guide . visit this site: http://www. visit http://www.How to Contact TIBCO Support 5 | How to Contact TIBCO Support The community edition of TIBCO Business Studio is unsupported.com/devnet/index. • For an overview of TIBCO Support. For self-service support.tibco.com Entry to this site requires a username and password.tibco.tibco. education. If you have purchased another TIBCO product that includes support for TIBCO Business Studio and have comments or problems with this manual or the software it addresses. you can request one.

Process Developer’s Guide .6 | Preface TIBCO Business Studio .

page 25 TIBCO Business Studio . page 2 Implementation Approach. page 4 BPM/SOA Implementation Overview. page 6 Deploying a Process. page 12 Tutorial 1: Elaborating a Process: User Tasks.Process Developer’s Guide .|1 Chapter 1 Getting Started Topics • • • • • • • Who Should Use TIBCO Business Studio?. page 18 Tutorial 3: Deploying a Process. page 14 Tutorial 2: Elaborating a Process: Service Tasks.

adding detail to it.2 | Chapter 1 Getting Started Who Should Use TIBCO Business Studio? Typically a Business Analyst defines a new business procedure and the Corporate Developer must implement it. • “Implementing a Process" refers to taking the Process that the Business Analyst has generated. For example: • An insurance company wants to enable their financial advisors to sell pension plans door-to-door using portable tablets. and taking it through the packaging and deployment phases.Process Developer’s Guide . The Corporate Developer must implement a business process for doing this. A company has acquired a competitor. refining it. The Corporate Developer must implement this across the organization. The following diagram shows how TIBCO Business Studio is intended to be used: TIBCO Business Studio . The Business Analyst has rationalized both companies’ working procedures and created a process for a standard way of working.

depending on the destination environment that you select. How TIBCO Business Studio Supports MDA Model Driven Architecture (MDA) is typically used to design applications and write specifications. delayed release. However. you can augment the process with execution details in TIBCO Business Studio and deploy it directly to the TIBCO iProcess Engine. and dynamic sub-procedure call steps) for which you must perform part of the augmentation and deployment of the Process in TIBCO iProcess Modeler. usually written in Universal Modeling Language (UML). The following section describes how the abstract implementation of a Process can be done first. For example: TIBCO Business Studio supports an MDA approach to Business Process Management (BPM) and Service Oriented Architecture (SOA) at a higher level of abstraction than the programming language level by allowing you to develop Platform Independent Models of business processes and then transform them into Platform Specific Models. It consists of a Platform Independent Model. graft steps. transaction control steps.Process Developer’s Guide . and then the Process can be transformed to create a Code Model that can be used with a specific execution engine. For example: TIBCO Business Studio .Who Should Use TIBCO Business Studio? 3 | Referring to the previous diagram.0 of TIBCO Business Studio there are some constructs (for example. using version 2. as well as a Platform Specific Model and Code Model. both of which are applied at the programming language level.

however the following general approach reflects best practices. • • For User Tasks • • Specify the input and output parameters to the Task. For example. which implies an abstract WSDL. which implies a concrete WSDL. Specify a URL that refers to the location of a form authored outside of TIBCO Business Studio. Hand Over from Business Analyst 1. BPM/SOA Implementation For Service Tasks There are two parts to implementing services: • • Selecting the service contract. TIBCO Business Studio . then bind it to the Process. Employ integration technology (such as BusinessWorks processes perhaps employing adapters) to create new service and bind its service interface to the Process. file or URL.4 | Chapter 1 Getting Started Implementation Approach Implementing a Process can be achieved in several different ways. Receive Process from Business Analyst. a JSP page authored with the JSP editor provided by WTP inside Eclipse. you must have a service that can come from one of the following sources: • Select an existing service interface and optionally an implementation (WSDL) from the Service Registry. Write new custom service implementation using . and bind its service interface to the Process. or BusinessWorks Live Link. Enterprise Java Beans (EJBs). or other technologies. This is optional for technologies such as Web Services that support late binding. Selecting a service implementation. This is a mandatory part of implementing a service. 2. Review Process with Business Analyst. To implement a service call.NET.Process Developer’s Guide .

Process Developer’s Guide . Deploy the Package/Process to the Repository and initialize it without handoff to Operations staff. for more information on creating services see the documentation for TIBCO BusinessWorks and TIBCO ActiveMatrix. • • Process Testing Ensure that the Process functions as intended including starting cases. See the TIBCO Business Studio Modeling User’s Guide for more information about generating Process documentation. service implementations are created by different people or groups from those who consume the services provided by the process implementation. TIBCO Business Studio . Package Process for Deployment to User Acceptance Testing/Production by the Operations staff. test queues. for example using the Eclipse IDE. Test and debug the services created in Java using tools external to TIBCO Business Studio. create any custom Java services that are required. In some organizations.Implementation Approach 5 | Service Creation/Testing for Sub-Processes Optionally. and so on. This guide focusses on the work of the person consuming services. Hand Off/Deployment There are several options depending on the procedures in your organization: • Publish Process documentation to web site and return the enhanced Process model to Business Analyst and Business Owner for approval. For more information. This is especially likely when the service implementation is done in a programming language such as Java rather than a declarative technology such as BusinessWorks. undelivered work items. see the TIBCO iProcess Modeler set of guides. either those embedded in the Eclipse Platform Development Environment (PDE) or any other tools that are available.

For more information. a User Task with a Form URL specified becomes a step with a Form type of Formflow Form. For example. If no URL is specified. you may want to call a web service from a Service Task.Calls to a web service can be implemented as well as the mapping of input/output parameters. the step is created with a standard iProcess Form. For more information about specific tasks. see TIBCO iProcess Client (Browser) Configuration and Customization.Process Developer’s Guide . Service Tasks Service Tasks can be implemented in the following ways: • Web Service . User Tasks You can specify the input and output Parameters of a User Task on the Implementation tab of the Properties view for the User Task: You can also specify either a relative or absolute URL for any form pages that you want displayed when the Task is executed (see Elaborating a User Task on page 40): Upon import to iProcess Modeler.6 | Chapter 1 Getting Started BPM/SOA Implementation Overview This section provides an overview of how to augment the Process with execution details. TIBCO Business Studio . see Tasks on page 39. This section provides an overview of elaborating a Process.

You can either configure an email message that is sent when the Process is executed. For example: If you want to implement other types of service calls. • • E-mail . EAI Java).specify a URL from which the WSDL is retrieved.BPM/SOA Implementation Overview 7 | • • Java . then use the appropriate EAI step (for example. and Integration (UDDI) Registry . you must import the Process into TIBCO iProcess Modeler. Before you can configure a Service Task. Currently the iProcess Engine database step only supports stored procedures.Calls to a BusinessWorks process exposed as a service can be implemented as well as the mapping of input/output parameters. TIBCO Business Studio .Process Developer’s Guide .browse to select a local file. SQL and DB2 databases. including functions that emulate standard iProcess Script commands. Database . or provide a service descriptor (WSDL) for the behavior. you must import the WSDL file to the Eclipse workspace.Native or Java Database Connectivity (JDBC) calls to Oracle.obtain the WSDL from a UDDI registry. This is done in the General tab of the Properties view for the Service Task.Allows you to call Java code that you want to execute at runtime. BW Service . TIBCO BusinessWorks/Web Service A Service Task can be configured to call a service that has a WSDL. URL . Uniform Description. Discovery. from one of the following sources: • • • File .

use the TIBCO BusinessWorks Connector live link feature to dynamically create and import a WSDL from a BusinessWorks process exposed as a service: To use the TIBCO BusinessWorks live link invocation method. The web service call style must be either Document Literal or Remote Procedure Call (RPC) Encoded. For more information. the WSDL file that you use must conform to the following requirements for deployment to the iProcess Engine: Data Transport/Call Style • • The web service must use the SOAP over HTTP data transport mechanism. however you cannot specify more than one output parameter mapping. Except for a WSDL obtained from a TIBCO BusinessWorks live link. see the TIBCO iProcess BusinessWorks Connector User’s Guide.8 | Chapter 1 Getting Started • BusinessWorks live link . The web service can have the following types of request and response parameters: — Simple types — Arrays of simple types — Complex types (including complex types containing complex types) — Arrays of complex types TIBCO Business Studio . the iProcess Engine Service Agent must be running and the JMS provider transport information must be configured. Parameter Mapping • • The web service must have at least one input and output parameter mapping.Process Developer’s Guide .

When the Process is deployed to the iProcess Engine. the appropriate DB2. the abstract portion of the WSDL must be present locally. Database A Service Task can be configured to perform an action on a database using stored procedure calls. Process to Service Binding In the Properties view for a Service Task. Although you do not need to be concerned about which database is used in conjunction with the iProcess Engine. the abstract and concrete portion of the WSDL must be present locally. If you use a remote WSDL. the stored procedure writer will need to be familiar with the particular database.Process Developer’s Guide .BPM/SOA Implementation Overview 9 | Message Exchange Patterns The only supported message exchange pattern is Synchronous Request/Response. you can select either Use local WSDL or Use remote WSDL: If you use a local WSDL. Oracle or SQL database calls are made in the iProcess database. E-mail A Service Task can be configured to send an E-mail message on the General tab of the Properties view for the Service Task as follows: TIBCO Business Studio . and the concrete portion of the WSDL can be obtained dynamically at runtime.

The following constructs are supported in TIBCO Business Studio for Processes that you want to export/deploy to the TIBCO iProcess Modeler/TIBCO iProcess Engine: TIBCO Business Studio . subject lines and so on. the previous dialog shows %Manager% rather than an explicit email address.Process Developer’s Guide . and to Timer Start or Intermediate Events. and so on) must adhere to JavaBeans semantics. you can define Data Fields or Parameters for this purpose.10 | Chapter 1 Getting Started Clicking More Details or clicking the E-Mail tab allows you to specify further parameters. This means that a String property 'name' must have an accessor named getName():String and a mutator named setName(:String). Java A Service Task can be configured to call a Java code on the General tab of the Properties view for the Service Task as follows: The Java service class and any parameters that are not primitives (for example. float. For more information. The factory class must either offer a static factory method or must have a default constructor as the service class does. Specifically they must have a default constructor (one without parameters) and the properties need to have standard get and set operations. You can browse to select the Java class and select a Method from the drop-down list. see Sending an Email on page 50. For example. int. Note that instead of explicitly entering email addresses. Alternatively you can specify a Factory to be used for the creation of the class. Script Tasks You can enter scripts in Script Tasks. on Conditional Sequence Flows.

Within the packaging/export phase this JavaScript is converted to iProcess Script for execution by the iProcess engine.BPM/SOA Implementation Overview 11 | • • • • • If. you can use the following template to construct an if else: iProcess Script is supported for backward compatibility via the TIBCO iProcess JavaScript class library. then press Ctrl + Space.Process Developer’s Guide . elseif. Content assist is available for process data that you define and also provides templates for common JavaScript constructs. if you enter if. you can view the available list of iProcess Script functions by typing IPE and pressing Ctrl + Space. If you have selected the iProcess Engine or iProcess Modeler destination environment. For example. and else statements Do while loops and while loops For loops Assignment operators Conditional operators The result of an expression should correspond to one of the known data types listed in the TIBCO iProcess Expressions and Functions Reference Guide. TIBCO Business Studio .

TIBCO Business Studio . packaging. Information can be lost if you deploy to the iProcess Engine. All of these. you should regard the import of an iProcess Modeler XPDL as a one-off activity to evaluate or migrate to TIBCO Business Studio. some of which may be optional. deploy again. execute). physical delivery. modify the Process.Process Developer’s Guide . re-import to TIBCO Business Studio.12 | Chapter 1 Getting Started Deploying a Process Deployment is part of the software development cycle (design. To look at a concrete example of deployment. after a Corporate Developer has elaborated a Process. configuration and initialization takes place. and so on. are aspects of deployment. a server in the test environment). the next step could be to deploy it to a server (for example. Direct Deployment and Export to the TIBCO iProcess Engine are one-way operations. There are two ways you can deploy a Process once you have finished elaborating it with the necessary execution details: • • Create a Deployment Server within TIBCO Business Studio and deploy the Process directly to the iProcess Engine (see Deploying a Process on page 64). For this reason. Export the Process to iProcess Modeler XPDL and then import it into the TIBCO iProcess Engine (see the TIBCO iProcess Modeling User’s Guide). This is because the Studio process description may contain far more than merely the execution information required for iProcess Modeler/iProcess Engine. deploy. After preparing the software some transformation.

do the following: 1. To open the TIBCO Business Studio sample workspace. The remainder of this chapter assumes you are implementing the example yourself.0 Project and expand the Process Packages folder.0) that has the completed solutions for the tutorials in the following sections. 2.Sample Workspace.Tutorial Project 13 | Tutorial Project The samples workspace includes a Project (Process Developer Tutorial Solutions 2. Expand the Process Developer Tutorial Solutions 2. Click Start > All Programs > TIBCO > TIBCO Business Studio 2.Process Developer’s Guide . TIBCO Business Studio .0 > TIBCO Business Studio . This starts TIBCO Business Studio and opens the sample workspace rather than your default workspace. You can either open the sample workspace and explore the Project or continue with this tutorial to implement the example yourself. which contains the tutorial solutions.

3. Copy the \Basic Samples 2.Process Developer’s Guide .14 | Chapter 1 Getting Started Tutorial 1: Elaborating a Process: User Tasks To learn how to implement User Tasks in a Process. follow this tutorial. navigate to directory into which you installed TIBCO Business Studio and locate the sample workspace (for example.xpdl file and paste it into the Packages folder of your Project. 4. accepting the default Special Folders. In the file system. 2. Create a BPM/SOA Developer Project in your workspace. C:\Program Files\TIBCO\Business Studio\sample-workspace). Task A Open the Sample Process 1.0\Process Packages\Office Procedures. Open the Submit Expenses Process: TIBCO Business Studio .

Click the Enqueue Payment Task. The information that is internal to the Process will be represented as Data Fields and information required outside the Process will be represented by Parameters. In the Properties view.Tutorial 1: Elaborating a Process: User Tasks 15 | Many of the Tasks in this Process require input and output. click the Parameters tab. 2. Create the following Parameters: — EmployeeName (String) — EmployeeNumber (Integer Number) — Reference (string) — Amount (Decimal Number) — AccountNumber (Integer Number) — Confirmation (Boolean) Task C Specify Input and Output Parameters to the Tasks 1. cost center. Task B Create Parameters/Data Fields Create the Data Fields and Parameters that will be used by the Process as follows: 1. the Data Fields and Parameters may have already been added by the Business Analyst. expense amount. expand the Submit Expenses Process.Process Developer’s Guide . In the Project Explorer. For example. TIBCO Business Studio . Create the following Data Fields: — Manager (String) — CostCenter (String) — Authorization (String) 3. before the expenses can be approved. and so on. • • In some cases. Adding Parameters to the Process means that when it is exported to the iProcess Modeler if will be a Sub-Procedure. 4. right-click Data Fields and select New > Data Field. the performer of this action needs basic information such as the employee name. Right-click Parameters and select New > Parameter.

Add the following outbound Parameters: Inbound and Outbound Parameters are from the perspective of the form.Process Developer’s Guide . This means that Inbound Parameters are sent to the form by the Process. not the user. press the Ctrl key and click the desired Data Field or Parameter. For more information about using Fields in Forms. see TIBCO iProcess Modeler .Basic Design. not the user. TIBCO Business Studio . Inbound and Outbound Parameters become Optional fields.16 | Chapter 1 Getting Started 2. Outbound Parameters are sent to the form by the user. Upon deployment to the iProcess Engine. To select several Parameters in the Select Data Field dialog.

see Tutorial 3: Deploying a Process on page 25 and Deploying a Process on page 64.Tutorial 1: Elaborating a Process: User Tasks 17 | Summary You can create Data Fields and Parameters and specify their input and output mappings on User Tasks. Upon import or deployment to the iProcess Modeler. TIBCO Business Studio .Process Developer’s Guide . the Data Fields become Fields and the Parameters become I/O Parameters and Fields. For example: For more information about deployment.

select Web Service from the Service Type drop-down list. continue using the Submit Expenses Process from Tutorial 1. 5. Browse to specify the Services folder where you want to store the WSDL. TIBCO Business Studio . Task A Create the Process/Service Task For the purposes of this tutorial. In the Properties view. 3.18 | Chapter 1 Getting Started Tutorial 2: Elaborating a Process: Service Tasks To learn how to elaborate Service Tasks. Task C Associate the WSDL with the Service Task 1. Click Finish to complete the import.wsdl in the samples workspace and click Next.Process Developer’s Guide . 3. 4. Browse to find BankPayment. In the Project Explorer select the Project that contains the Submit Expenses Process 2. 6. then click Next. Click the Make Payment Task. Task B Add the WSDL to the Project 1. Click the Select button. Select Import from a File and click Next. follow this tutorial. 2. Calling Web Services Many services that are described by a WSDL can be called from a Service Task (see TIBCO BusinessWorks/Web Service on page 7). This opens the Operation Picker dialog. Select File > Import and select Services > Service Import Wizard from the list. Save the Project.

Process Developer’s Guide . This populates the rest of the web services fields such as Port Name and Operation. Expand the BankPayment service and select the MakePayment operation. Task D Map the Input/Output Parameters 1. Click the Mapping In tab.Tutorial 2: Elaborating a Process: Service Tasks 19 | 4. On the left of the tab are the Parameters and Data Fields and on the right are the Formal Parameters that the BankPayment service expects. Highlight the EmployeeName Parameter and drag the pointer from the Employee Name Parameter to the EmployeeName Formal Parameter. Complete the input parameter mapping as follows: TIBCO Business Studio . Expand the BankPayment service. 2.

Process Developer’s Guide . Save the Package. 4. In this case the Confirmation parameter is Boolean and indicates whether the transaction completed. complete the output parameter mapping as follows. TIBCO Business Studio . You can see that the web service returns Confirmation and Reference parameters. Click the Mapping Out tab.20 | Chapter 1 Getting Started 3. Using the same method as on the Mapping In tab.

the Service Task becomes a Web Services EAI step: TIBCO Business Studio .Process Developer’s Guide . Upon import or deployment to the iProcess Modeler. mapping the input and output parameters.Tutorial 2: Elaborating a Process: Service Tasks 21 | Summary This tutorial showed how to add a WSDL file to a Project and then associate that WSDL file with a Service Task.

we added a call to a web service from the Make a Payment Activity.22 | Chapter 1 Getting Started You can see that the parameter mappings are configured in the EAI step as well: For more information about deployment.Process Developer’s Guide . This included a Confirmation parameter which indicated whether the payment was successful. Insert a Gateway after the Make a Payment Activity. We will also add a Manual Task in the event that the payment fails. we will add an email task to notify the person who submitted the claim when the payment is made. see Tutorial 3: Deploying a Process on page 25 and Deploying a Process on page 64. Creating an E-Mail Task In the previous section. 1. TIBCO Business Studio . In this section.

After the Gateway. It should look like this: 3. add a Service Task called Notify and a Manual Task called Ring Bank. then on the General tab of the Properties view for the Service Task. Enter an email address for the recipient in the To: field.Process Developer’s Guide . Select the Notify Service Task. click More Details or the E-Mail tab and continue to specify further parameters.Tutorial 2: Elaborating a Process: Service Tasks 23 | 2. select the E-Mail option from the Service Type drop-down list: 4. a subject and the body for the message. For further options. This is the minimum configuration necessary to send an email message. TIBCO Business Studio .

Process Developer’s Guide . Upon import or deployment to the iProcess Modeler.24 | Chapter 1 Getting Started Summary You can configure a Service Task so that it sends an e-mail at runtime. see Tutorial 3: Deploying a Process on page 25 and Deploying a Process on page 64. For example: For more information about deployment. the Service Task becomes an E-mail EAI step. TIBCO Business Studio .

Select the Create a package using one of the following templates check box. If you cannot determine the port number. This was configured during installation of the iProcess Engine and stored in the SWJMXConfig. Task A Create the Process 1. Name the Package Tutorial and click Next. Click Next to accept the Packages folder and file name.Process Developer’s Guide . 5. By default the Port is 10025. 3. Prerequisites • • • • Network access to a running iProcess Engine where you can deploy the Process Username and password of an iProcess Engine user with either the PRODEF or ADMIN permission that you can use to connect to the iProcess Engine Host name (machine name or IP address) Port number that the iProcess Engine uses for the Java Management Extension (JMX) engine. TIBCO Business Studio . Name the Process DeployTest and click Finish. Select New > New Project and follow the wizard to create a new BPM/SOA Developer Project with the default configuration. The package name will be used to create the library name when the Process is deployed to iProcess. Right-click the Process Packages folder and select New > Process Packages. 2. If you are unsure of any of these prerequisites. contact your iProcess Administrator.port entry in the SWDIR\etc\swjmx. 6.properties file. see your iProcess administrator for details.Tutorial 3: Deploying a Process 25 | Tutorial 3: Deploying a Process This tutorial describes creating and deploying a simple Process to an iProcess Engine. 4. select the An empty iProcess process item. and click Next.

In the Properties view. 11. Select the Process in the Project Explorer. 4. Name the server TestDeploy.Process Developer’s Guide . associate the sw_starter Participant with the User Task (on the General tab of the Properties view for the task). To correct this. Right-click Deployment Servers and select New > Server. Task B Create the Deployment Server 1. You should confirm that there are no errors or warnings in the Problems view.26 | Chapter 1 Getting Started 7. on the Destinations tab. 5. Accept iProcess Engine Server as the Runtime Environment. 12. Click Next. 3. Save the Package. and you should see that there are two error messages that relate to the Process: 10. 8. you can see that the iProcess Engine and iProcess Modeler have been selected: The template also creates a Participant called sw_starter. TIBCO Business Studio . Change to the Problems view. Switch to the Process Developer Capability by clicking 2. . Add a User Task and an End event as follows: 9.

This was configured during installation of the iProcess Engine and stored in the SWJMXConfig.Password for the user connecting to the iProcess Engine.Valid iProcess Engine user with either the PRODEF or ADMIN permission that can connect to the iProcess Engine (for example. — Port . IPEADMIN). Enter the runtime server parameters. Click Finish. — Password . 2. contact your iProcess Administrator. Task C Connect to the Server You can connect to a server you have created as follows: 1. — Username .Tutorial 3: Deploying a Process 27 | 6. Right-click the server name Test Deploy and select Connect. expand Deployment Servers.port entry in the SWDIR\etc\swjmx. otherwise enter the machine name or IP address of the computer where the iProcess Engine is installed. 7.Process Developer’s Guide .properties file.The port number that the iProcess Engine uses for JMX. By default the Port is 10025. The username and password you entered when you created the server is authenticated on the deployment server to prevent you from deploying a Process to a server which you do not have authorization to use.Enter localhost if the server is on your local machine. The new Server is created and displayed in the Project Explorer. TIBCO Business Studio . In the Project Explorer. — Host . If you cannot determine the port number. — Repository Type: Select Workspace.

the icon in the Project Explorer and the status bar text in the lower left of the workspace changes to indicate that you are connected. check the error log by selecting Help > About Eclipse Platform. From the resulting dialog. Right-click the TestDeploy Server and select Deploy Module. click Configuration Details then click View Error Log.Process Developer’s Guide . Task D Deploy the Process Deploy the Process to the iProcess Engine as follows: 1. If you encounter any problems connecting to a Server. the Properties view for the server displays Connected as the Server State: In addition. When you have connected.28 | Chapter 1 Getting Started 3. The following dialog is displayed: TIBCO Business Studio .

Tutorial 3: Deploying a Process 29 | 2. (For more information about Deployment Policy. Click Details to get more information about why the deployment failed. see Deploying a Module on page 68. When the deployment is finished. see Deploying a Module on page 68). TIBCO Business Studio displays the following message: If the deployment fails. For more information about the External Module option. 3. You can view the newly-deployed Process in the Project Explorer: TIBCO Business Studio . and click Next. Select Test2 and click Finish. Select Workspace iProcess XPDL Module.Process Developer’s Guide . You are prompted to select the Package that contains the Process you want to deploy. an error symbol is displayed instead of the information symbol in the previous dialog.

when it is deployed to the iProcess Engine.30 | Chapter 1 Getting Started Note that because our original Process name in TIBCO Business Studio (DeployTest) has more than eight characters. it is truncated (DEPLOYTE). The state of the procedure (Unreleased) and other details such as the version information is displayed in the Properties view: For more information about managing deployed modules. see Managing Deployed Modules on page 72.Process Developer’s Guide . TIBCO Business Studio .

Process Developer’s Guide .| 31 Chapter 2 Concepts and Definitions This section defines concepts and terminology related to TIBCO Business Studio. TIBCO Business Studio .

Deployment artifacts (such as XPDL1 packages for deployment to the iProcess Engine) or BAR files for TIBCO BusinessEvents. TIBCO Business Studio . Documentation artifacts (for example HTML or PDF procedure documentation).32 | Chapter 2 Concepts and Definitions Artifacts A physical item created during the project life cycle.Process Developer’s Guide . Java files). These can include the following: • • • • Code artifacts (for example. Project management artifacts (such as a business case or project plan).

what happens is this: • A packaging phase occurs (either automatically or explicitly triggered by the user). some of which may be optional. TIBCO Business Studio .Deployment 33 | Deployment Part of the software development cycle (design. After preparing the software some transformation. packaging. you can connect the server and manage certain aspects of deployed Processes. are aspects of deployment. • Module When you deploy an artifact. When you want to deploy a Project/Process. Specifically in TIBCO Business Studio. a Module corresponds to a Process with the Destination Environment set to iProcess Engine. a Module is created in the Deployment Server. A deployment server is the representation in TIBCO Business Studio of a TIBCO iProcess Engine. physical delivery. deploy. see Deploying a Process on page 64. Unless you have extended TIBCO Business Studio. All of these. Using the Server Manager in TIBCO Business Studio. you do so by creating a Deployment Server. The artifact created by the packaging phase is the transformation of the XPDL2 package into XPDL1 for deployment to the iProcess Engine. execute). For more information.Process Developer’s Guide . configuration and initialization takes place.

suppose an Activity is to identify a list of suitable candidates for an available position. you cannot export the resulting Process to the iProcess Engine. Data Fields Data Fields are used to represent the data that is used internally in a Process as either input to or output from an Activity.The advantage of creating or importing a Concept Model in TIBCO Business Studio is that you can use it: • • • for analysis purposes for documentation purposes to create Data Fields in a Process that have the attributes of a Concept If you specify Concepts as Parameters or Data Fields in the TIBCO Business Studio Process Editor.34 | Chapter 2 Concepts and Definitions Project Objects This section describes Process objects that relate to Process development. You can create Data Fields to represent the pool of candidates going into the Activity and the suitable candidates that have been identified. Concept Model A set of business terms specific to your corporate environment (for example. see the TIBCO Business Studio Concept Modeler User’s Guide. counterparty. This is because the complex data types created in the Concept Modeler are not supported in the iProcess Engine. For example. when you create a Concept Model. TIBCO Business Studio provides an Eclipse editor called the Concept Model Editor to help you construct your Concept Model. If you intend to execute a Process in the TIBCO iProcess Engine. and so on).true or false TIBCO Business Studio . broker. In object-oriented terms. be aware that Data Fields or Parameters with spaces in their names cannot be used for mapping (for example. you are creating a class diagram with the addition of a UML Profile specifically intended to extend the meta-data to provide additional functionality over core UML.Process Developer’s Guide . There are several types of Data Field: • Boolean . in a financial environment. mapping to Parameters in a web service). For more information.

integer value of the specified length (for example. 130. 345) Performer .alphanumeric characters of the specified length Extended Attributes Extended attributes can be used to add extra information to the schema such as: • • • XML Plain text descriptions Supply Chain Council (SCC) models for metrics and best practices They are added either on the Extended tab of the Properties view for those objects that support extended attributes. Parameters Parameters are similar to Data Field but are either input to or output from an external source. • Decimal Number .34 has a length of five and two decimal places) In the iProcess Modeler.combination of date/time Datetime Data Fields are deployed/exported as two separate date and time fields in the iProcess Engine (suffixed "_D" and "_T").Process Developer’s Guide . the number 130. For example. or on the Extended Attributes dialog in the New Process wizard.decimal number of the specified length and decimal places (for example. so the previous example. Parameters can be any of the following types: There are several types of Data Field: • Boolean .is a text field that you want to use as a Participant String .Project Objects 35 | • Date Time .34. the field lengths include the decimal point.true or false TIBCO Business Studio . during simulation Parameters are either created by TIBCO Business Studio or imported from a file. when imported into the iProcess Modeler has a length of six and two decimal places. • • • Integer Number .

Human . Marketing and so on.alphanumeric characters of the specified length If you intend to execute a Process in the TIBCO iProcess Engine. Organizational Unit . in a financial institution there may be roles such as Reconciler.34 has a length of five and two decimal places) In the iProcess Modeler.Process Developer’s Guide . 345) Performer .integer value of the specified length (for example.36 | Chapter 2 Concepts and Definitions • Date Time . The creation of a Parameter means that the Process will become a sub-procedure upon export to the iProcess Modeler. For example. • • • TIBCO Business Studio . • Decimal Number .identifies a specific person or user that performs an Activity. and so on. For example. so the previous example. Manager. System .decimal number of the specified length and decimal places (for example. in a hiring process. 130. There are several types of Participant: • Role .combination of date/time Datetime Parameters are deployed/exported as two separate date and time fields in the iProcess Engine (suffixed "_D" and "_T").identifies an activity that is performed by the system.identifies the department or unit within an organization that performs an Activity. • Participants Participants are used to identify who or what performs an Activity. when imported into the iProcess Modeler has a length of six and two decimal places.34. the number 130. For example. the field lengths include the decimal point.identifies the role responsible for performing an Activity.is a text field that you want to use as a Participant String . Legal. a person (Human Participant) interviews the candidate and an email system (System Participant) sends out an automatic follow-up reminder. mapping to Parameters in a web service). be aware that Data Fields or Parameters with spaces in their names cannot be used for mapping (for example. • • • • Integer Number .

including their structure and design. This version of the TIBCO Business Studio provides support for XPDL2 and uses XPDL1 for deployment to the iProcess Engine. Normally. namely Business Process Modeling Notation (BPMN) and XML Process Definition Language (XPDL).Standards Support 37 | Standards Support TIBCO Business Studio supports several industry standards. The TIBCO Business Studio Process Editor supports the core set of this notation and the Properties View supports the complete set. but indirectly by creating a business process using the Process Editor or by creating a Package. Business Process Modeling Notation (BPMN) BPMN is a graphical notation developed by the Business Process Management Initiative (BPMI) for representing the steps and flow of business procedures. For more information. you do not use XPDL directly. XML Process Definition Language (XPDL) XPDL is used to represent the underlying structure of a business process to TIBCO Business Studio.org. UML2 Unified Modeling Language (UML) is an Object Management Group (OMG) specification that helps you specify.Process Developer’s Guide . visualize. Packages are stored in XPDL format. TIBCO Business Studio . and document models of software systems or business systems.bpmn. You can use the Concept Modeler to import UML class diagrams (for more information see the TIBCO Business Studio Concept Modeler User’s Guide. see http://www.

Process Developer’s Guide .38 | Chapter 2 Concepts and Definitions TIBCO Business Studio .

page 54 Creating a Script Activity. package and deploy it. page 58 Calling Java Code. page 60 Packaging a Process.Process Developer’s Guide . page 42 Sending an Email. page 40 Adding a Service Call. page 64 TIBCO Business Studio . page 56 Associating a Script with a Conditional Flow. Topics • • • • • • • • • Elaborating a User Task. page 63 Deploying a Process.| 39 Chapter 3 Tasks This section of the help describes some of the common tasks that you perform using TIBCO Business Studio to elaborate a process with execution details. page 50 Making a Database Call.

Process Developer’s Guide . Click OK when you have finished selecting Parameters and Data Fields. Create the Parameters or Data Fields as described in the TIBCO Business Studio Modeling User’s Guide. In the Properties view. click the Add button to select inbound and outbound Parameters: To select several Parameters in the Select Data Field dialog. 3. press the Ctrl key and click the desired Data Field or Parameter. Click the User Task that you want to add Parameters to. TIBCO Business Studio . 2.40 | Chapter 3 Tasks Elaborating a User Task You can add Parameters or Data Fields to user tasks as follows: 1.

Specifying a relative URL assumes that the browser client configuration has specified the host and protocol (for example. Click the Implementation tab. — Absolute . You can do either of the following: — Specify a URL for any form pages that you want displayed when the Task is executed: Upon import to iProcess Modeler. Save the Package that contains the Process. application and protocol.for example.com/mywebapp/myjsp.jsp. you can use either of the following types: — Relative (the default) . http or https). a User Task with a Form URL specified becomes a step with a Form type of Formflow Form. The benefit of using this type of URL is that when moving from development to user acceptance testing and then to production.Elaborating a User Task 41 | 4. Absolute URLs allow each step of each process to specify a separate host. 5. For more information. the step is created with a standard iProcess Form. http://www.for example. Upon import to iProcess Modeler.Process Developer’s Guide . — Leave the Form URL field empty. If you specify a URL.acme. see TIBCO iProcess Client (Browser) Configuration and Customization. This has the effect that all JSPs in all processes on all nodes accessed using this client must be in the same web application. the base URL (including the host name) needs to be changed in just one central place. TIBCO Business Studio .jsp. JSPFormExample/JSPForm.

for example XMethods. 3. select Service Registry from the list of wizards and click Next. Expand Web Service Registries and select Registries. You can also use the TIBCO BusinessWorks Connector live link feature to dynamically create and import a WSDL from a BusinessWorks process. Click Finish. The Registries view opens and you should see any UDDI Registries that you have added. — Query Manager (Inquiry) URL . This section describes how to add a UDDI registry before importing the WSDL.Process Developer’s Guide . Enter the details of the Web Service registry: — Registry Name . you can create a new registry either before importing the WSDL file. 2. Working with UDDI Registries If you plan to add a WSDL file from your Project. https://uddi.net/publish). 3. TIBCO Business Studio . Creating a Registry Search 1. 4.xmethods. Adding a UDDI Registry 1. Expand Services. http://uddi. Viewing a Registry 1. — Lifecycle Manager (Publish) URL .42 | Chapter 3 Tasks Adding a Service Call A Service Task can be configured to call any service that has a WSDL.the URL used to retrieve information about the services and businesses of the registry (for example. Select Show View > Other. Select New > Other. or as part of the import process.net/inquire). including BusinessWorks process that are exposed as services. 2.xmethods.the URL used for publishing services and businesses to the registry (for example. Click the Add Search button ( ).

Adding a Service Call 43 | 2. — Search Criteria . When you expand the search in the Registries view. For example.This is the name you want displayed in the Registries view for your search. however the TIBCO ActiveMatrix Service Registry does. TIBCO Business Studio . the results are displayed. 4.You can use a percent sign (%) as a wildcard to specify search criteria.Process Developer’s Guide . but may be refreshed. For example. the following search shows the results of a search on the XMethods registry: Search results are preserved for subsequent browsing. Select the type of search you want to perform (either for a business or for a service) and click Next. Enter the service search criteria: — Search Name . Not all registries support this wildcard syntax. Click Finish. specifying c% would return all businesses or services that start with the character c. 3.

binding and service defined in the WSDL file.Process Developer’s Guide .org/MyWSDLFile/). ActiveMatrix. 1. You can then modify these to meet the requirements of your Web service. including bindings.company. 3. . Select File > New > Other. This section should be considered only a summary and you should consult the documentation associated with your web service creation tools (for example. Specify the Parent folder and File name for the WSDL file and click Next. 2. expand Web Services and select WSDL and click Next.example. and so on) for detailed advice. http://www. If you select HTTP you can select whether to create an HTTP getter or setter. select the binding options you want to use in the WSDL document.com/service/). — Prefix is the prefix associated with the target namespace. If you select SOAP you can then select the encoding style you want to use. If you have chosen to create a WSDL skeleton.44 | Chapter 3 Tasks Adding a WSDL to the Project There are several options for getting a WSDL file into your Project. you can create a new WSDL file using the tools provided by Eclipse: A full explanation of all the necessary settings and advice on creating WSDLs is outside of the scope of this document. You must specify a valid URI (for example. This will generate the WSDL elements required for your service. The target namespace is used for the names of messages and the port type. Creating a New WSDL Copying a WSDL Importing the WSDL TIBCO Business Studio . This section describes: • • • Creating a New WSDL If you do not already have a WSDL file for the service you want to call. Enter the following options: — Target namespace is the namespace for the WSDL file or accept the default (http://www. — Select Create WSDL Skeleton if you want the wizard to create the skeleton of the WSDL file. ports and messages. either SOAP or HTTP.NET.

you can do so as follows: a. right-click and select Special Folders > Use as Services Folder. b. 1. either in the file system or received via e-mail. The WSDL file is pasted into the correct location. In the Project Explorer select the folder in the Project where you want to copy the WSDL file. The WSDL file opens in the WSDL editor. Click Finish. you can copy and paste it into the Project. Enter the parent directory and folder name. 2.Adding a Service Call 45 | 4. For example: Importing a WSDL There are several ways to import a WSDL into a project: • • from a file from a URL TIBCO Business Studio . If you have not yet created a folder.Process Developer’s Guide . then click Finish. For example: Copying a WSDL If you already have a WSDL file. Locate the WSDL file. select it and press Ctrl + C to copy it. Right-click where you want to create the folder and select New > Folder. c. You can also designate a special folder to hold the WSDL (this allows you to expand the WSDL file in the Project Explorer to see the operations available). Select the newly-created folder. This enables you to expand the WSDL in the Project Explorer. the press CRL + V.

then click Next.46 | Chapter 3 Tasks • • from a UDDI registry from TIBCO BusinessWorks To import a WSDL file. To use the TIBCO BusinessWorks live link invocation method. do the following: 1.3+ .use this method to browse the file system for the WSDL file. TIBCO Business Studio .use this method to specify a URL that resolves to the location of the WSDL file. 2. — Import from BusinessWorks 5.use this method to select a WSDL from a UDDI registry that you previously created. — Import from a Registry . Select File > Import and select Services > Service Import Wizard from the list. Click Next. — Import from a URL . Select one of the following import methods: — Import from a File .Process Developer’s Guide .use this method to import a WSDL using the BusinessWorks live link feature. the iProcess Engine Service Agent must be running and the JMS provider transport information must be configured. see the TIBCO iProcess BusinessWorks Connector User’s Guide. For more information.

specifically the Host. You can then specify that the Service Task performs a web services operation at runtime. — In the iProcess Service Agent area of the BusinessWorks Step Definition dialog when defining an iProcess BusinessWorks step in an iProcess Engine procedure. 4. on the General tab. 2. enter the JMS provider information that the iProcess Engine uses to integrate with BusinessWorks.Adding a Service Call 47 | 3. right-click and select Add Registry. On the Properties view for the Service Task. navigate to the $SWDIR\jmsadmin directory and enter the jmsadmin.Process Developer’s Guide . click Start > TIBCO iProcess Server (Windows) > JMS Administration Utility). When using a BusinessWorks live link. — If you chose Import from BusinessWorks 5. there may be slight delay while the WSDL file is imported. 5. Port and TargetQueueName. For more information see the TIBCO iProcess BusinessWorks Connector User’s Guide.3+. Associating the WSDL with a Task You can associate a WSDL with a Service Task. — If you chose Import from a URL. Click Finish. Depending on the option that you chose in the previous step. To add a new registry. Select the Service Task.sh command. you can either select a service from an existing registry or add a new registry. Browse to select the Location (the folder in your Project where you want to store the WSDL file). browse to specify the Location of the WSDL file. the JMS provider information can be found in either of the following locations: — In the JMS Administration Utility (from UNIX. or from Windows. enter the URL for the WSDL file. 1. TIBCO Business Studio . Click Next. select Web Service. do the following: — If you chose Import from a File. — If you chose Import from a Registry. If the WSDL file is located remotely.

Using the Mapper 1. For example: • • You cannot map Data Fields or Parameters with spaces in their names. The Port Name and Operation Name are populated automatically depending on the operation you select. This opens the Operation Picker dialog. If you attempt to map Data Fields or Parameters to Parameters of a different type (for example. Highlight a Parameter on the left and drag the pointer from the parameter to the Formal Parameter on the right to create a mapping. Click Select to select an operation. On the left of the tab are the Parameters and Data Fields and on the right are the Formal Parameters that the web service expects. mapping a String to an Integer). TIBCO Business Studio . Click the Mapping In tab. Expand the web service. an error is generated in the Problems view.Process Developer’s Guide .48 | Chapter 3 Tasks 3. 2.

Web service operations that return more than one Parameter are not supported in the iProcess Engine/iProcess Modeler Destination Environments. This displays the following window. Complete the output mapping in a similar fashion using the Mapping Out tab. you can do so as follows: When executed in the runtime environment. 4.Adding a Service Call 49 | 3. in which you can enter a limited amount of JavaScript: This is currently limited to concatenation of two fields on the left into a single on the right or splitting (substring) data from one left field to two on the right. if you want to append a string to a Parameter. TIBCO Business Studio .Process Developer’s Guide . For example. Save the Package that contains the Process. Note that you can enter JavaScript that is applied to a mapping by clicking . the string "SEBRANCH" is appended to the input Parameter Reference. 5.

click More Details on the E-Mail tab and continue to specify further parameters.Process Developer’s Guide . On the E-Mail tab. Enter an email address for the recipient in the To: field. This is the minimum configuration necessary to send an email message. you can specify further parameters for the Definition of the message: All of the Parameters on this tab can be specified using a Data Field or Parameter. Click the button to select the Data Field or Parameter. 3. a subject and the body for the message. TIBCO Business Studio . Select the Service Task. then on the General tab of the Properties view for the Service Task. For further options. select the E-Mail option from the Service Type drop-down list: 2.50 | Chapter 3 Tasks Sending an Email A Service Task can be configured to send an email message as follows: 1.

Process Developer’s Guide . Their email address is visible to other recipients of the email.select the Subject line for the email message or select a Data Field or Parameter.specify the recipients to whom you want to send a copy of the email either as explicit email addresses or by selecting a Data Field or Parameter.select a priority from the drop-down list (Normal. 4.specify the recipients to whom you want to send a copy of the email either as explicit email addresses or by selecting a Data Field or Parameter. At the bottom of the text area are two buttons. — Reply to: . Their email address is not visible to other recipients of the email.specify the recipient of the email either as an explicit email address or by selecting a Data Field or Parameter. — Bcc: . — Subject: . Click Body to specify the main text of the message. — To: .use this parameter to specify a different email address to which recipients of a message can reply. — Headers: . — Priority: . Alternatively.Sending an Email 51 | — From: .use this parameter to specify additional information in the header of the email. select a Data Field or Parameter. src and preview which allow you to alternate between TIBCO Business Studio . — Cc: . High or Low) or select a Data Field or Parameter.either Use Server Configuration to use the address of the server from which the email is sent or Use Custom Configuration to specify a Data Field or Parameter.

— Files: use this option to browse the file system and attach a file to the email message. 5.use this option to attach the contents of a Parameter or Data Field to the email message. 6. TIBCO Business Studio . Click Attachments to specify a document to be attached to the message: — Field Contents: .52 | Chapter 3 Tasks viewing the source of the body text and previewing how it will look to the recipient. Click SMTP Configuration to specify Simple Mail Transfer Protocol (SMTP) settings other than the default: — Select User Server SMTP Configuration to use the settings of the server where the Process will run.Process Developer’s Guide . — Select Use Custom SMTP Configuration settings to specify a different Host and Port.

select either a Parameter or Data Field that contains the message you want displayed when the email cannot be sent. Click Error Handling to provide for basic error handling (for example. — Message: .Process Developer’s Guide . TIBCO Business Studio . if a message cannot be sent): — Code: .Sending an Email 53 | 7.select either a Parameter or Data Field that represents an error code.

then on the General tab of the Properties view for the Service Task...Process Developer’s Guide . or the Database tab to define the parameter mappings between parameters in the stored procedure and Case TIBCO Business Studio . Select the Service Task.If the stored procedure is not in the local database instance. select the Database option from the Service Type drop-down list: 2. you need to provide either the server name or database name or both.[owner. Specify the following: — Server. Database .Stored Procedure is the only option available.]stored_procedure_name.54 | Chapter 3 Tasks Making a Database Call A Service Task can be configured to make a database call as follows: 1. Click Define procedure parameters. — Operation . The default instance is the one that your TIBCO iProcess Engine is currently using.specify the name of the stored procedure in the format shown in the above dialog . For specific information. The meanings of Server and Database differ depending on the particular database being used. — SQL . 3. refer to the TIBCO iProcess Database Plug-in User’s Guide.

— Select the Case Fields (Data Fields) from the Select Data Field dialog. — Click the Add button to add a Parameter. — Select from the drop-down list whether the parameter is input to the stored procedure (IN). For more information about delayed release steps and using the Return Code field. see the TIBCO iProcess Database Plug-in User’s Guide.Process Developer’s Guide .Making a Database Call 55 | Fields in the TIBCO iProcess Engine. TIBCO Business Studio . These Case Fields are represented in TIBCO Business Studio as Data Fields: In this example. the stored procedure outputs the parameters Bal and Rcode to the Case Fields BALANCE and Return Code. — You can remove or reposition the Parameters using the Move Up. the stored procedure takes the input parameters Acct and Amount and maps them the Case Fields DEBIT ACCOUNT and AMOUNT. Move Down. output to the iProcess Engine (OUT) or both (INOUT). and Remove buttons. Similarly.

For example. such names are not displayed in content assist. if you want to specify a Data Field called Field1. enter the character "F". content assist and error markers are supported. on the Implementation tab for a Script Activity. You can then select the desired Data Field from the list and continue entering JavaScript: TIBCO Business Studio . a Data Field) that has spaces in its name. All matching Data Fields are displayed: Although TIBCO Business Studio allows you to create Process Data (for example. then press Ctrl + Space.Process Developer’s Guide . you can enter JavaScript that will be executed at runtime: The Script: area supports the usual text editing assistance such as color syntax highlighting.56 | Chapter 3 Tasks Creating a Script Activity In the Properties view.

Content assist also provides templates for common JavaScript constructs. When this is corrected. This is because validation has reported an error in the Problems view because the line is not terminated with a semi-colon (.Process Developer’s Guide . if you enter if. the error and the red "x" are removed. you can use the following template to construct an if else: iProcess Script is supported for backward compatibility via the TIBCO iProcess JavaScript class library.Creating a Script Activity 57 | Note that in this case there is a red "x" next to the line. If you have selected the iProcess Engine or iProcess Modeler destination environment. TIBCO Business Studio .). For example. then press Ctrl + Space. Within the packaging/export phase this JavaScript is converted to iProcess Script for execution by the iProcess engine. you can view the available list of iProcess Script functions by typing IPE and pressing Ctrl + Space.

on the Implementation tab. Only one statement that evaluates to a Boolean value is allowed if you are exporting/deploying to the iProcess Engine.Process Developer’s Guide . TIBCO Business Studio . On the General tab.58 | Chapter 3 Tasks Associating a Script with a Conditional Flow Scripts are associated with a Conditional Sequence Flow in the Properties view. there may be text comments describing the condition that needs to be set. this causes the Sequence Flow to be followed only if the condition is met: The Script: area supports the usual text editing assistance such as color syntax highlighting. At runtime. You can comment these when implementing the condition. content assist and error markers (see Creating a Script Activity on page 56 for more information).

the event would fire at the specified time on the current date.Process Developer’s Guide . the event will be fired at the Date and Time specified. If you specify two statements. the event would fire at 00:00 on the Date specified. The script area cannot be empty if you want to export or deploy to the iProcess Engine. The script that you specify is limited to two statements.Timer Event Scripts 59 | Timer Event Scripts Scripts can be added to Start or Intermediate events in the Properties view for the event. one must evaluate to a Date and the other to a Time. For example: In this case. If you specify only one statement. TIBCO Business Studio . If only the Date were present. If only the Time were specified. it must evaluate to either a Date or a Time.

Process Developer’s Guide .60 | Chapter 3 Tasks Calling Java Code You can call Java code by creating a Service Task as follows: You must have created a Java Project in your workspace or imported a Java Project into your workspace so that it is available for the Service Task that you are going to create. select the Java option from the Service Type drop-down list: TIBCO Business Studio . see the Java Development User Guide in the Eclipse documentation. then on the General tab of the Properties view for the Service Task. For more information about creating or importing Java Projects. Select the Service Task. 1.

click Select Factory. the matching classes are displayed. 3. Select the appropriate class that you want to use. If you begin typing. Click Select Class. selecting it populates the Class and Method fields. the character s was entered. To do this.Calling Java Code 61 | 2.Process Developer’s Guide . The Select Class dialog is displayed: An alternative to selecting the Class is to select a factory to create the Class. In the previous example. Select from the drop-down list the Method that you want to use. If a factory is available. For example: TIBCO Business Studio . and all classes starting with s are displayed.

If you attempt to map Data Fields or Parameters to Parameters of a different type (for example. TIBCO Business Studio .62 | Chapter 3 Tasks Complete the Parameter Mapping Click the Mapping In and Mapping Out tabs to complete the input and output mapping between any Parameters or Data Fields in your Process and the Java code.Process Developer’s Guide . mapping a String to an Integer). For example: • • You cannot map Data Fields or Parameters with spaces in their names. an error is generated in the Problems view. This shows a method that returns a String which is then mapped to the Name Parameter.

The Process is only available for deployment using the Deployment wizard if its Destination Environment is set to iProcess Engine. When you want to package your project. select either Project > Build All or Project > Build Project. and it has no errors.Packaging a Process 63 | Packaging a Process Packaging happens automatically and is a prerequisite to Deployment. If you choose to package your project manually (for example. a version of it is also saved to XPDL1 ready for deployment to the iProcess Engine. de-select Project > Build Automatically. By default. because of resource or memory considerations). This means that when you save your Package (XPDL2).Process Developer’s Guide . Project > Build Automatically is selected. TIBCO Business Studio .

This is because the Studio process description may contain far more than merely the execution information required for iProcess Modeler/iProcess Engine. For example. Once connected. modify the Process.Process Developer’s Guide . Withdraw. a Module corresponds to a Process with the Destination Environment set to iProcess Engine. re-import to TIBCO Business Studio.64 | Chapter 3 Tasks Deploying a Process TIBCO Business Studio allows you to deploy a resource (represented in TIBCO Business Studio as a Module) on a local or remote system (represented in TIBCO Business Studio as a Server). The iProcess Engine must be running. In the iProcess Engine. Information can be lost if you deploy to the iProcess Engine. However. deploy again. you can manage Modules on the Server. and so on. you can Release. and Undeploy Modules. Direct Deployment to the TIBCO iProcess Engine is a one-way operation. and a Server represents a running TIBCO iProcess Engine where you want to deploy the Process. TIBCO Business Studio . you cannot start and stop the Server from within TIBCO Business Studio. you can connect and disconnect from the Server.

Deploying a Process 65 | The following diagrams shows the steps for deploying a Process the first time: Once you have deployed a Process. you do not need to repeat these steps each time you deploy the Process.Process Developer’s Guide . TIBCO Business Studio . if the required server has been registered and the Module created.

Packaging occurs automatically. you should ensure that the first eight alphanumeric characters of the Process name in TIBCO Business Studio are unique and do not contain ^ (caret) or . 3. If you are attempting to deploy a Process for the first time and it contains errors. do the following: 1. TIBCO Business Studio prevents you from deploying a Process with errors. For this reason. 2. Resolve all of the problems reported in the Problems view. 4. a new minor version is created. TIBCO Business Studio . The Package Name of the Process you are deploying becomes the Library Name upon deployment to the iProcess Engine. but the version with errors will not be displayed/deployable. As described in Packaging a Process on page 63. If you are planning to deploy a Process to the iProcess Engine. enable the Process Developer Capability by clicking . you should be aware of the names of existing procedures in the target deployment environment to ensure that you do not unintentionally overwrite an existing procedure. do the following: 1. However. If you deploy a Process that has the same name as a Process that has already been deployed. if you have de-selected Project > Build Automatically. the version that was previously deployed will be available in the Deployment wizard. Enter a Server Name (to identify the server within TIBCO Business Studio). Create the Process and set the Destination Environment to iProcess Engine. Creating a New Server To create a new server. If the Process has already been deployed.66 | Chapter 3 Tasks Package/Process Naming The name of a Process in TIBCO Business Studio is truncated to the first eight alphanumeric characters when it is deployed to the iProcess Engine. 2. If you cannot see the Deployment Servers branch of the Project Explorer. make sure that you select either Project > Build All or Project > Build Project to manually package your Process. it will not be shown in the Deployment wizard and you cannot deploy it. Preparing a Process for Deployment To deploy a Process to a TIBCO iProcess Server.Process Developer’s Guide . (comma) characters. Right-click Deployment Servers and select New > Server.

TIBCO Business Studio uses the default name TIBCO:IProcessDeployment=default.Valid iProcess Engine user with either the PRODEF or ADMIN permission that can connect to the iProcess Engine (for example. By default the Port is 10025. In the Project Explorer. If you have changed the default MBean Name setting for the iProcess Engine by editing the configuration file.properties file. Click Next. The new Server is created and displayed in the Project Explorer.xml. Enter the runtime server parameters. where the JMX objects are stored. This was configured during installation of the iProcess Engine and stored in the SWJMXConfig. The default for Path is /server (this is the default iProcess Engine setting). TIBCO Business Studio .Password for the user connecting to the iProcess Engine. If you cannot determine the port number.Enter localhost if the server is on your local machine. — Host . 6. — Password . 5. — Path . — MBean Name . you must ensure that you also change Path in TIBCO Business Studio so that both settings match. 4. — Username . you must ensure that you also change MBean Name in TIBCO Business Studio so that both settings match. Click Finish.Process Developer’s Guide . If you have changed the default location of the JMX service.port entry in the SWDIR\etc\swjmx.The port number that the iProcess Engine uses for the JMX engine. Accept iProcess Engine Server as the Runtime Environment.Specifies the path on the server to the JMX service. — Repository Type: Select Workspace to allow the Module to be deployed from your Eclipse workspace. otherwise enter the machine name or IP address of the computer where the iProcess Engine is installed.Deploying a Process 67 | 3. IPEADMIN).The MBean Name is set in the configuration file SWDIR\etc\swjmx_config. — Port . Connecting to a Server You can connect to a server you have created as follows: 1. expand Deployment Servers. contact your iProcess Administrator.

you can deploy a Process to an iProcess engine as follows: TIBCO Business Studio . check the error log by selecting Help > About Eclipse Platform.68 | Chapter 3 Tasks 2. When you have connected. Right-click the server name of the server you are connecting to and select Connect. The username and password you entered when you created the server is authenticated on the deployment server to prevent you from deploying a Process to a server which you do not have authorization to use. click Configuration Details then click View Error Log.Process Developer’s Guide . the Properties view for the server displays Connected as the Server State: If you encounter any problems connecting to a Server. 3. Deploying a Module Once you have connected to a Server. From the resulting dialog.

Select the appropriate Module Type depending on whether your Module is located in your Workspace or in a local folder.Deploying a Process 69 | 1. The following dialog is displayed: 2. Right-click the Server on which you want to deploy and select Deploy Module. TIBCO Business Studio .Process Developer’s Guide . and click Next.

70

| Chapter 3

Tasks

3. Depending on the option you selected in the previous step, continue as follows: — If you selected Workspace iProcess XPDL Module in the previous step, you are prompted to select the Package that contains the Process you want to deploy.

You can also select the Deployment Policy for the Module - either Deploy on request which deploys the Module when you explicitly choose to do so, or

TIBCO Business Studio - Process Developer’s Guide

Deploying a Process 71

|

Deploy on save which deploys the Module whenever a new version of the Package is saved/packaged. — If you selected External iProcess XPDL Module in the previous step, you are prompted to enter a URL that points to the Module you want to deploy:

You can also click Browse to locate the Module. 4. Click Finish. When the deployment is finished, TIBCO Business Studio displays the following message:

TIBCO Business Studio - Process Developer’s Guide

72

| Chapter 3

Tasks

Managing Deployed Modules
When a Module is first deployed to the iProcess Engine, the resulting Procedure is in an Unreleased state. This is indicated in the Properties view:

Right-clicking the Procedure shows the operations that you can perform when the Procedure is in an Unreleased state:

As shown, you can Release or Undeploy the Procedure. You cannot undeploy a Procedure with active Cases.

Similarly after you have released a Procedure, you can withdraw or undeploy a Procedure.

Changing Server Properties
If you need to change a Server’s properties (for example, to change the password or to change the IP address of the server) do the following:

TIBCO Business Studio - Process Developer’s Guide

If there are Modules which you no longer wish to automatically deploy. The changes take effect the next time you connect to the Server. A dialog similar to the following is displayed: 2. You can change the configuration while connected to the Server. click Remove to disable automatic deployment for the selected Module. right-click and select Properties. Make the necessary changes to the properties.Deploying a Process 73 | 1. When you have finished making changes. 3. click OK. TIBCO Business Studio . Click Auto Deployed Modules to see a list of Modules for which you specified Deploy on save when you created them. and when you next Connect your changes will be applied.Process Developer’s Guide . 4. Select the Server.

Process Developer’s Guide .74 | Chapter 3 Tasks Disconnecting from the Server To disconnect from a Server. The Server State in the Properties view should change to Disconnected: TIBCO Business Studio . right-click the Server and select Disconnect.

A Capability in Eclipse is a mechanism to enable and disable specific areas of UI based on the current user's selected role.| 75 Chapter 4 Reference In Eclipse. there are two Capabilities: • • Analyst Capability (see the TIBCO Business Studio Modeling User’s Guide) Process Developer Capability (described in this section).Process Developer’s Guide . TIBCO has created several TIBCO Business Studio perspectives that include the views and editors you commonly use when creating business processes. a Perspective includes the views and set of editors that you commonly use for a specific type of work. TIBCO Business Studio . This section of the help describes the major parts of the TIBCO Business Studio user interface that are specific to the Process Developer Capability of the Modeler Perspective. Within the Modeling Perspective.

To see this view. To view property information. Allows you to select the Data Fields or Parameters that the Task requires as output. the following properties are available: Tab Implementation Property Form URL Description You can specify the URL of a form that you have created. User Task Properties When you have selected a User Task in the Process Editor. the Task becomes a step with a Form type of Formflow Form. you must have an object selected. If you do not specify a URL. select Window > Show View > Properties.Process Developer’s Guide . Upon deployment/import to the iProcess Engine. Parameters Inbound Parameters Outbound Parameters TIBCO Business Studio . the step is created with a standard iProcess Form Allows you to select the Data Fields or Parameters that the Task requires as input.76 | Chapter 4 Reference Properties View The Properties View shows you detailed information about the currently selected object and allows you to specify the characteristics of an object.

Select this option if you have added the WSDL to the project and want the WSDL to be packaged with the Project during the Packaging phase. the following properties are available: Tab General Property Service Name Description • When you click the Select button and choose a WSDL operation. Select this option if the WSDL is located remotely. the Service Name and Port Name fields are populated from the WSDL.Process Developer’s Guide . It must also use the Synchronous Request/Response Message Exchange Pattern. Note: Except for a WSDL obtained from BusinessWorks. Port Name Operation Name See Service Name description. Click the Select button to choose a WSDL operation from a WSDL that you have added to the Project (see Adding a WSDL to the Project on page 44). If this is the case. the WSDL you select must use the SOAP over HTTP data transport mechanism and the call style must be either Document Literal or RPC Encoded.Properties View 77 | Service Task Properties (Web Service/BusinessWorks Service) When you have selected a Service Task in the Process Editor with either Web Service or BW Service as the Service Type. Use local WSDL Use remote WSDL TIBCO Business Studio . it cannot be packaged with the Project.

the following properties are available: Unless otherwise stated.Process Developer’s Guide . Create a mapping by clicking a Parameter. dragging to the destination Parameter. however you cannot specify more than one output parameter mapping. Use this section to create a mapping from a formal parameter of a service to an actual parameter (Data Field or Parameter). Mapping Out Service Task Properties (Email) When you have selected a Service Task in the Process Editor with Email as the Service Type. button to select the Data TIBCO Business Studio . you must specify at least one output parameter mapping. all of the properties listed in the following table can be specified using a Data Field or Parameter. Click the Field or Parameter. dragging to the destination Parameter.78 | Chapter 4 Reference Tab Mapping In Property Description Use this section to create a mapping from an actual parameter (Data Field or Parameter) into the formal parameters of the selected service. Note: For deployment to the iProcess Engine. then releasing the mouse button. Create a mapping by clicking a Parameter. you must specify at least one input parameter mapping. Note: For deployment to the iProcess Engine. then releasing the mouse button.

Click src and preview to alternate between viewing the source of the body text and previewing how it will look to the recipient E-mail > Definition From To Cc Bcc Reply To Headers Priority Subject E-mail > Body TIBCO Business Studio . Specify a subject line for the message. Their email address is not visible to other recipients of the email.Process Developer’s Guide . Select a priority from the drop-down list (Normal. Use this parameter to specify a different email address to which recipients of a message can reply. Their email address is visible to other recipients of the email.Properties View 79 | Tab General Property To Subject Body Description Specify the recipient of the email. Specify the body text that comprises the message. Specify the recipient of the email. Select either Use Server Configuration to use the address of the server from which the email is sent or select Use Custom Configuration to select different configuration details. Specify the recipients to whom you want to send a copy of the email. Specify a subject line for the message. High or Low). Use this parameter to specify additional information in the header of the email. Enter the body text of the message. Specify the recipients to whom you want to send a copy of the email.

select either a Parameter or Data Field that contains the message you want displayed when the email cannot be sent. Use this Property to provide for basic error handling (for example.use this option to attach the contents of a Parameter or Data Field to the email message.Process Developer’s Guide . if a message cannot be sent) • Code: .select either a Parameter or Data Field that represents an error code. Message: . • E-mail > SMTP Configuration Use Server SMTP Configuration User Custom SMTP Configuration Select User Server SMTP Configuration to use the settings of the server where the Process will run. Files: use this option to browse the file system and attach a file to the email message. Select Use Custom SMTP Configuration settings to specify a different Host and Port from the server where the Process will run.80 | Chapter 4 Reference Tab E-mail > Attachments Property Field Contents Description Specify a document to be attached to the message: • Field Contents: . E-mail > Error Handling Return Status Fields • TIBCO Business Studio .

The default instance is the one that your TIBCO iProcess Engine is currently using.]stored_procedure_name Database Operation SQL Database Operation SQL See previous description on the General tab.Process Developer’s Guide . See description of Server. the following properties are available: Tab General Property Server Description If the stored procedure is not in the local database instance. See previous description on the General tab. Stored Procedure is the only option available. Specify the name of the stored procedure in the following format: [owner. you need to provide either the server name or database name or both.Properties View 81 | Service Task (Database) When you have selected a Service Task in the Process Editor with Database as the Service Type. TIBCO Business Studio .

the following properties are available: Tab General Property Project Description Specifies the Project that contains the Java code you want to call. and Remove buttons. or the Database tab to define the parameter mappings between parameters in the stored procedure and Case Fields in the TIBCO iProcess Engine. Select the Case Fields (Data Fields) from the Select Data Field dialog. Displays the Class of which you want to create an instance (selected by clicking Select Class or Select Factory).. Move Down. output to the iProcess Engine (OUT) or both (INOUT).. Service Task (Java) When you have selected a Service Task in the Process Editor with Java as the Service Type. Class TIBCO Business Studio . These Case Fields are represented in TIBCO Business Studio as Data Fields.Process Developer’s Guide .82 | Chapter 4 Reference Tab Property Parameters Description Click Define procedure parameters. You can automatically populate this field by clicking Select Class and selecting the desired class. • You can remove or reposition the Parameters using the Move Up. Select from the drop-down list whether the parameter is input to the stored procedure (IN). • • Click the Add button to add a Parameter.

dragging to the destination Parameter. Class (factory) Method (factory) Mapping In Mapping Out TIBCO Business Studio . Select a Method from the drop-down list. then releasing the mouse button. Use this section to create a mapping from an actual parameter (Data Field or Parameter) into the parameters of the selected Method. then releasing the mouse button. you can click Select Factory to choose a factory class to create an instance of a Class. As an alternative to clicking Select Class.Properties View 83 | Tab Property Method Description After you have selected a class. This is populated when the Factory is selected. Create a mapping by clicking a Parameter. Use this section to create a mapping from a parameter of a Method to an actual parameter (Data Field or Parameter). Method factory used to create an instance of a Class. dragging to the destination Parameter.Process Developer’s Guide . Create a mapping by clicking a Parameter. this drop-down list is populated with the available methods.

see Service Task Properties (Web Service/BusinessWorks Service) on page 77. the following properties are available: Tab General Property Service Type Description By default this is Unspecified. content assist and error markers are supported. The usual text editing assistance such as color syntax highlighting. You select a web service operation for a Send or Receive Task in the same way you would for a Service Task (Web Service) . but optionally. If a Receive Task specifies a web service implementation. you can specify for documentation purposes that a Send or Receive Task send a message or receive a message using a web service. the web service information is ignored upon deployment. note the following: • • Send Tasks cannot be deployed.84 | Chapter 4 Reference Script Task When you have selected a Script Task in the Process Editor. Send and Receive Tasks When you have selected a Send or Receive Task in the Process Editor. the following properties are available: Tab Implementation Property Script Description Enter JavaScript that will be executed at runtime. However.Process Developer’s Guide . TIBCO Business Studio .

when you save your Process. If you selected TIBCO iProcess Engine. In addition.Process Validation 85 | Process Validation When you created your Process you selected the Destination Environment: • If you selected TIBCO iProcess Modeler. For more information see the TIBCO Business Studio Modeling User’s Guide. These validation rules are described in this section. when you save your Process. it cannot contain other types of script expressions. The script must contain a date expression or a time expression or both. even if you have not explicitly selected that Destination Environment. TIBCO Business Studio also performs the validation for import into the TIBCO iProcess Modeler.Process Developer’s Guide . Independent Sub-Process step must specify a Sub-Process located within the same Package. Observe the following general rules for Processes that you intend to directly deploy to the TIBCO iProcess Engine: • Timer events must have scripts defined. • Any error messages resulting from this validation will be displayed in the Problems View and indicate which parts of your Process need to be changed. TIBCO Business Studio performs validation to ensure that the Process can be imported into the TIBCO iProcess Modeler. TIBCO iProcess Engine validation (described in this section). there are three different sets of validation rules that are applied to the Process: • • TIBCO iProcess Modeler validation . • Rules for Direct Deployment of Scripts Note the rules listed in this section for Processes that you are deploying to the TIBCO iProcess Engine. General Rules for Direct Deployment to the TIBCO iProcess Engine For a Process that you intend to directly deploy to the TIBCO iProcess Engine (those with the TIBCO iProcess Engine Destination Environment selected). TIBCO Business Studio performs validation to ensure that the Process can be directly deployed to the TIBCO iProcess Engine. TIBCO Business Studio .for more information see the TIBCO Business Studio Modeling User’s Guide.

). TIBCO Business Studio . You can however use the Date or Time properties of process data in expressions (for example. MyDateTime.86 | Chapter 4 Reference Unsupported Constructs/Operators The following JavaScript constructs and operators are not supported in the TIBCO iProcess Engine.Process Developer’s Guide . and are therefore not allowed in Processes with the TIBCO iProcess Engine destination environment selected: • • • • • • • • • • • • • • • • • • • • • • • Local method definition Try Catch Finally Blocks Switch Case statement Throw statement New Expressions Continue statement Break statement Local variable definition Labelled statement Multi-dimensional arrays ! (NOT) ~ >> (Right shift operator) >>= (Right shift assign operator) >>> << (Left shift operator) <<= (Left shift assign operator) condition?option1:option2 % (Mod operator) %= (Mod assign operator) |= &= instanceof operator Datetime Process Data You cannot perform operations on Datetime process data.Date="09/05/2007".

This displays the Process in the Process Editor. • TIBCO Business Studio . Correcting Validation Errors Any problems that result from validation are shown in the Problems view. MyStringArray[2]. To correct the problem do one of the following: • Right-click the problem and select Quick Fix (if enabled for the current problem). The gives you the option of having TIBCO Business Studio correct the problem for you. allowing you to correct the problem.Process Validation 87 | Array Fields You can access the elements of an array by specifying the index (for example.Process Developer’s Guide .). Note that there is no support for a length attribute to determine the number of items in an array. Right-click the problem and select Go To.

Process Developer’s Guide .88 | Chapter 4 Reference TIBCO Business Studio .

Index 89 | Index A Artifact 32 error correcting 87 errors 85 Extended Attributes 35 B J Business Process Management (BPM) 4 Business Process Modeling Notation (BPMN) 37 Java code 10 calling 60 C M Concept 34 Concept Model 34 Conditional Flow script 58 customer support 5 Mapper 48 Model Driven Architecture (MDA) 3 Module 33 P D Data Field 34 database 9 database call 54 Deployment 12. 68 definition 33 managing Modules 72 tutorial 25 Packaging 63 Parameter 35 mapping 62 Participant 36 Process 34 correcting errors 87 testing 5 validation 85 Process Component 33 Properties View 76 E E-Mail Task 22 TIBCO Business Studio .Process Developer’s Guide .

and Integration (UDDI) Registry adding 42 searching 42 User Task 6. contacting 5 V validation error correcting 87 W Web Service Definition Language (WSDL) file 45 adding 44 copyingL 45 creating 44 Task 47 Web Services calling 18 T technical support 5 TIBCO Business Studio sample Processes 6 tutorials 18 TIBCO BusinessWorks Web Service 7 X XML Process Definition Language (XPDL) 37 TIBCO Business Studio . 40 properties 76 tutorial 14 S sample Processes 6 script on Conditional Flow 58 Script Activity 56 Script Task 84 Sending an Email 50 Server connecting to 67 creating 66 disconnecting 74 properties 72 Service Call adding 42 Service Oriented Architecture (SOA) 4 Service Task 6 Database 81 Email 78 Java 82 tutorial 18 Web Service 77 Service Task BusinessWorks 77 support.Process Developer’s Guide . Discovery.90 | Index Q Quick fixes 87 U Unified Modeling Language (UML) 37 Uniform Description.

Sign up to vote on this title
UsefulNot useful