Professional Documents
Culture Documents
Notes
Topics
t Objectives, page 58
t TIBCO Designer, page 59
t Projects, page 60
t Process Design, page 61
' Knowledge
. Describe development and testing using TIBCO Designer
. Define componènts in BW process definitions
. Explain resources, management and administration capabilities
. Skills
. Create and access projects
. Design and test BW processes
- Configure activities and resources
. Manage BW projects
. Experience version control options for BW projects
Objectives
Atier completing this unit you will know:
r How to navigate the BusinessWorks project development
environment (TIBCO Designer)
I What a BusinessWorks process defìnition comprises
r How to confìgure project activities and services
r How to use shared project resources
r How to incorporate external resources into a BusinessWorks
project
r How to test at design-time your BusinessWorks projects
Additionally, you will be prepared to proceed with Lab A in which
you develop a simple BusinessWorks project.
TIBCO Designer
TIBCO Designer is an easy-to-use GUI fbr configuring. .lesigning
and testing BusinessWorks pro.jects. As a component of'BW. TIBCO
Designer provides a rich. integrated development environmcnt
including project directory (upper left), pro.ject resources (lower ìeft),
process design (upper right), and activity confìguration (lower right).
. Project contents
: i qdanlEt SeNitel
' ! ìEAP
. Folders for organization t iI sirt rt
t, l''i[fgrn".r,
. Processes 'ì Busrnes: Pracesses
: lr'ler l4ina0emPnl
. Resources
"\)
I ,l ireate ùrtlpr
i. ì starter Proce:ies
. External connections + f- I 5Un PrQtettÈt
' I Transformation Processes
* ,l Ltnitrests
t f tr"ti,lrt rn Pr!.essÈs
. Project storage i
lutntP I
I,lìrrrÉl,:[der
rftel
Projects
BusinessWorks 5.x proiects are fìle based and map to the system f ile
structure of the operating system. The multi-filc approach supports
and enables a team development environmcnt where multiple
developers can work on a single project. You can add fìles to a project
simply by copying them into the system fìle structure and then
choosing the Designer menu item Project > Retiesh.
= A process:
. Contains a start and end
. Can call sub-processes
*---
ir=;tr---)
j=-1
oqorler
Process Design
TIBCO Designer t'eatures a graphical. intuitive design space fbr
developing processes. Proeesscs contain activities linked together by
transitions. You can have multiple transitions fiom one activity to
another. and transitions can be conditional. You can also have
multiple processes and sub-processes. BW process definitions have a
beginning and an end.
Any single process activity (source) may have multiple transitions out
and each transition must be one of four allowed types:
I 'i fùùt
;
1: A $,qlolrrl!arialrleî
:+: * $_Fro[Èssr:: ]rtÈ'l i,i i/rttÈ $8"À11 1_Pfodrct_ilueryIFerDrd[$count]iOTT,úH "
;ìÉ |lF'EquEst-lr
l:i & SBf,L2Lr1 _prtrdurt_LjuÈri
- 3 HÈttrd
: il|i pRorrucr_ro
ilÍ[1n.qr,,re
:l,l orl_cr
,l,l AVE clsÌ
1'$ 6Trtar
l,J $urrl
r Input Which allows you to map the data input to the activity.
-
r Output Which allows you to view the data that will be output
by activity.
-
Certain activities may also have Headers, Input and Output Schema
tabs that may require further configuration. In addition.
BusinessWorks provides GUI tools (see next two slides) to help
configure activities.
Functions I Cr:nstants I
Evaluation Context
(nonel
XPath Forrnula
:($invErrlorylndÈx = count($Prtr:es: ]jlIe$c+*J-qsdqttstatusl ìor 3l
tB $,tnrrFute- -
PÓr:ìj a'Pún(rrr
È,*
-':; - ::1
Project Resources
For any proiect you arc developing using BusinessWorks, you can ust:
shared resoLtrces to accept data fiom various external sources,
including:
r JMS and RV
r HTTP(S) / SMTP / FTP
r JDBC
r SOAP
r Files
You can also use adapter rcs()urccs to integrate with extcrnal sources
via a TIBCO Adapter and definc schema objects fbr accepting
external data.
TI B CO Educcttion P ro grcuns
Page 66
IJnit -ì: Proce.ss De,sign ctnd Testing
Suilt-i n testerldebugger
r Tnc,l mrrltinlc nrna4cses
. Fxamine process data
- input and Output tabs
. Examìne errors
* Error msg, Siror,v Ccnsole, Elror talls
Process Testing
Process testing can be done at desi-qn-time usin-g the Designer GUI. If
an activity within your process definition fails you'll be ablc to easily
identify and debu_c it using the testing utility. During testing standard
errors are made available via an error dialclg and console window. In
addition you can enhance crror output by mapping error schema to an
activity input and view such crrors via Dcsigner error tabs.
C)ncc tcstcd you can easily validatc the pro.iect tbr deployment and
then quickly create the deployment package using Designer. We will
discuss these topics in the ncxt unit.
Show Console displays thc Java console so you can view erlors
and debug accordingly: -d will enhance lhe amount of messa.gcs
shown in the Console window
:Ji ProteclTemplate
- .li Adapler SeMces
,J sre
i:', ì-ì Siebel
Project Templates
A good practice fbr managing the development environment is to
segregate the project using fblders by distinguishing among process
definitions, adapter services, shared connections, shared resources
and global variables.
Segregating your project along these lines will enable you to defìne
"ownership" among developers working on the project so that
multiple developers can work on the same pro.ject. You can use BW's
import/export facility to merge the project into one tìnal project when
the development work is completed and you are ready to deploy
project componentS.
Note that Global Variables can be grouped, usefil tbr RCS locking
with multi developer projects.
#-€,*1
gal 0d Accoud lnfo
#
Lab Introduction
In the exercise that tbllows you develop and test a BW process and
learn how to navisate the Desisner interfàce.
seloN
Overview
In this lab you learn the fundamentals of developing TIBCO BusinessWorks'" process definitions
in the TIBCO Designer'" environment.
Objectives
t Create New ProjectfromTemplate, page74
t Design Perform Credit Check, page 78
t Test Perform Credit Check, page 84
Prerequisites
r TIBCO Sotiware installed and contìgured on your userXX machine:
a Runtime Agent (TRA) 5.5.0
a Administrator 5.4.0 (userXX domain created)
a BusinessWorks 5.4.0
a EMS 4.4.0 (added ro the userXX domain)
r Connectivity to the EDUSVR instructor server tbr:
a BWP Home Page at http : / / eduevr z BOSO /bw/ index. html
a Oracle Database
r C:\BWEDU lab fìles
Directions
Complete the exercises that follow.
Overview
ln this cxercise you create a new TIBCO BusinessWorks (BW) pro.ject using a pre-def incd
templatc that includes some top-levcl fblders and a tèw global variablcs.
Steps
Z. Create a new BusinessWorks pro1ect named bwpxx using the provided ten'rplate.
I Start > Programs > TIBCO > TIBCO Designer 5.5 > Designer 5.5
r Select New project from template
r Browse to and open file C:\BWEDU\Templates\bwpXX.designertemplate
r When Designer opens you are prompted to save the pro.ject:
a Projcct Directory: C: \BwEDu\bvrpxx (replace XX with your ID, e.g., bwp09'1
r Click OK and the development environment fbr your bwpXX projcct opens
Note: When Designer initially opens it presents Tips which can be disabled.
Analysis: The default layout of TIBCO Designer is three panels with the project
tree on rhe left. You can change thts(Edit > Preferences > View) but keep in mind
that all lab instruction, urruÀ" the default tayout.
Select the PaLettes tab in the far leti pane; notice that the default view shows all activities
and resources in one palette called General Resources
To categorize the resources and activities into individual palettes, tiom the tool bar click
the Switch Palette Modes icon ffi (this mode is assumed going fbrward)
- CustomJava
- Schema
a Deployments
a ProcessDefinitions
iî.-. i'q*t,{rlanterSer'rires
---
i. 1 lAEijtlnPmaS .
+ J HLlSlllDS!ir-rnlî
- _i BWP CDre
,., -j Cnnnections
, : , É*oroerne
, iS CustomJava
:=: i:i schema
,I ft Cre,:litCh,:rrkschemB
& Purchase0rderschema
-'
,-_ :::ìa
|JJ s.enitces
^
ii .'iì trsditDhÈDk
T rJ Contract
ì * {: unitTest
ii i..'-t lrrterface
. *t {I lmplementarron
, .$ oeptoyÀEnts
",:! Hr0CeSSUEllnlll0ns
WARNING: Apply your settings each time you name or configure a folder, resource
or process activity. Also, save your proiect frequently. An asterisk (.) next to the
project in the title bar indicates changes have not been saved.
Overview
PerformCreditCheck takes an account number and an amount as input parameters (Start), queries
the OrderDB fbr current account intbrmation (Get Account InJò) and computes the credit status
(Credit Check). The returned Status is either "Accepted," "Rejected" or "Failed" (EnÒ.
Steps
I Drag-and-drop a Process Definition tiom the Process palette to the [mpLementation folder
I Name this process Perf ormCreditCheck
I From the project tree, select the PerformCreditCheck process defìnìtion to see the Start and
End activities that exist by default with any process definition
E}
tia
Tip: This example uses the "Multi-Bend" line mode.To change the default line mode,
fróm the Designer menu select View > Defa.utt Line Mode.
By Namespace ì Bv Searcn I
m
El
::Afinunl
em ent ilil .scrqurl D
gf I cqntel I
content ffi
$ il!trEfttt!ÉtGl Cardinality: ffi
Schema: !httft.J)'y,n r/i lrh l0 cr:ìffrih'uvpigrltprÌtfr';iifÈdltDhÈf k
IMPORTANT Note: Inputs to a process can be defìned ìn its Sfarf activity; outpul
from a process can be defined in its End activity. It is good practice to use schema
for input and output data as XSD is required to exposc a process as a service.
r [n the Configuration tab. click + in the "Prepared Parameters" section to add a new
parameter named Prepared_Param_l that is of data type VARCHAR
r In rhe Input tab click Fetch
r To map the data input fbr this activity:
a From the available Process Data on the leti, select element
$Start\Credi tCheckReques t \AccountID
a Drag it to the Acrivlh' Input element on the right
j dbcQueryAct ivi tytnput \Prepared_Param_1
I [n the Output tab, expand "resultSet/Record" and verify that the AMOUNT_OWED and
AVAILABLE CREDIT elements are returned
To do this: To create rhis choose condition, use the XPath Formula Builder:
r Select the text string "Status" (NOT the text lield next to "Status")
r Rieht-click and select Statement > Surround with Choice
t N,r-b., of when conditions: I
: ;;;;;;"; o",*',",,i,ii"i
:;;;
I Now that you have the "Choose" condition, use the pencil icon to open the XPath
Expression Edítor and build the fbllowing booLean expression:
a When: (counÈ($Get-AccounÈ-Info/resu1Èset/Record) > 0) and
( $start/CreditCheckRequest/AmounÈ +
(
- Status: "Rejected"
r In the Output tab for this activity, verify that Status is returned
1. Complete the process by configuring the End activity to return the result of the credit check.
Analysis: The End activity can be configured to return the result(s) from a
completed process defìnition. In this case the result is either Status (" Accepted" or
"Rejected".l or Failed if the database query fails.
r)redilChe ckRequest
- AccountlO
- AmDunt
Tip: Use the Label activity (in the GeneralActivitiespalette) to comment a process.
Overview
In this exercise you explore the Designer test environment and test your PetformCreditCheck
process definition.
Steps
Analysis: You can configure the'TIBCO Designer Tester ta suit your preferences
and view testing as it transitions through a process. ,
l
r From the Designer menu select View > Test Options > Moving Ball Options
r Select "Show Ball"
r Set the testing speedtoTSVo
r From the Designer menu select Project > Validate Project for Deployment
r If confìgured correctly, you should not have any errors (other than those listed under
"Unassociated Errors & Warnings," which can be ignored)
r If you do have project-associated errors, double clicking the error within the "Validate
Project" dialog will take you to the misconfìgured resource in your project so you can fix it
r Revalidate and repair until all relevant errors are cleared
r Close the project validator when done
Analysis: To test foi an "Accepted" credit check: p.:u-td"j v.alid. AccountID and
amount and verifv the result in the Input Data Lab ol the End activitv.
r In the Tester tab click the green arrow icon, bringing up the Select Processes to Load dialog
r Verify that PerformCreditCheck is checked and click Load Selected
trwp0B
- :l evve core
:ljj s-eruices
i::.13 Creditcheck
l;ìl lmFlementstion
:.,? è Performcredttcheck(curred)
r In the Input Data dialog prompt that appears, enter the fbllowing data and click OK:
i' Amount: 3000.00
a AccountlD: L234L234L234L234
-, tuf:
Lo;d From File
:i'tóadftqffP;jeor '
t Amounl 3ùù0 00
+tucouÍllD 1?34123412141214 :?!9]gl5
r An instance of the process should execute; when it does, check the Input Data tab of the
End activity for the "Accepted" result:
t&--^ "$,€ @
Gd Accoufr lffo ._E.r.q...
Credn Check
Analysis: To test for a "Rejected" credit check, change the input data so that the
runounl being requested isleyond the available limiiand verily the result.
, ,'a '..,. ..,,,,: ..
I First, change the input data tbr the PerformCreditCheck process by pressing the <Fl2> key
Note: Alternatively you can righrclick the Start activity and select "Add Input Data" or
click the "Supply input data" icon on the Designer menu bar.
r Enter the tbllowing data and click OK:
a Amount:4000.00
a AccountlD: 11111111-1-111-l-1-LL
r In the Tester tab "Jobs" tblder, select the PerformCreditCheck process definition and click
the green "Create a job" icon to create a new job instance with the new data:
enO {ewC.CrreJBeniiresioreditcherktlmplementati0niFErî0rmCreditoherk.prrtcess}
li* :l
X
à{
{.
ét
J'
r Once the job process completes, select the End activity then check fhe Input Data tab for
the "Rejected" result
Analvsis: To test for a "Failed" credit check. vou will need to induce an error. We
will ào this by changing the database login so that it is invalid.
"onn".tion
r Stop Designer test mode by click the red "Stop testing" icon
WARNING: You should not make chanqes to Vour proiect while it is in test mode.
Stop testing before making any edits.
r In the GLobaL Variables tab, change the value of the To7obwpluser.NameTo% variable fiom
"userXX" to user and save the changes
r Place PerformCreditCheck into test mode
r This time the process should tail at the Get Account Info activity and take the Error
transition; check the [nput Data tab of the End activity fbr the "Failed" result:
@"- @
ENI
t,, .td
credrt check
conîquatjonl lrBlt Edltorl tnpul Erru sttremasl Prcce6s Dala Input Dlla I Eror 0ulpul
Stop Designer test mode and reset the original LLserXX value tbr the
To7obw pl user.N anteTo7o global variable
Retest PeformCreditCheck using a valid AccountlD available in the
CUSTOMER_ACCOUNT database table as show below:
Notes
saloN
sl0l tu a ss gf s
'
oA4s s aul sn g o ) I IJ :
3 /l1g -
w
^.r,sry
Unit 4: Generating Services
Topics
t Objectives, page 92
t What Are Web Services?, page93
. Knowledge
" Describe 3W supporl for Web Services
. Define SOAP message characteristics
. Skills
. Build a Service
. Suild a Service cliant
. Test Service using Client
Objectives
The main obiective of this unit is to prepare you to in'rplement the
various process definitions comprising Credit Check Web Service.To
that end in this unit you will:
Atier completing this unit you will proceed with the fìrst phase of the
implementation as specified in the lab that fbllows.
XML Document
Entire message XML
SOAP Envelope document
SOAP Header (optional)
Header describes how to
Header Block nrnaace tho moccrno
Message Body
Generating a Service
BW providcs WSDL resources lor defining Web Scrvice interf'aces
and SOAP activities fbr building Web Service servers and clients.
Abstract WSDLs are constructed using the WSDL rcsourcc and the
message, operation and port type parameters that are requircd for the
interface. Abstract WSDLs are derived tiom an XSD schen'ra that you
create using BW or that you import into your project.
The concrete WSDL, the one used by clients to call the Web Service,
is derived fiom the application of the abstract WSDL to a SOAP
activity and the specification of the HTTP or JMS rransporr tbr that
activity. In other words, the concrete WSDL = the abstract WSLD
plus the transport (EMS/JMS or HTTP).
. Port
à, nlPetrÈrmúrediCh€ak-sÈfricÈ
i+dsPEturnrLreditChÈÈk
-
. Service interface definition
" Transport
. Concrele WSDL fiie
#*,-."-*5$
srd callprocess Eild
To invoke service:
. Access concrete WSDL
To test service:
. Run clienf process
The SOAP Server is Credit Check Service which wraps the backend
application, Pe('orm. Credit Check, and exposes it as a Web Service.
lmplementing this process involves generating the WSDL fìle based
on an XSD schema and building the process using SOAP resources.
Invoke Credit Check is a client activity to call the credit check web
service. In the lab that fbllows, atier you have built the SOAP Server
you a simple client to test the Web Service. In a later lab, when you
implement the Process Order process, you will build the functioning
client invocation fbr rhe Order Processing integration projcct.