Professional Documents
Culture Documents
On-lin_e
Telephone
' US/Canada: Tollfree (877) 370-4095
' Outside US/Canada:
. Visit for a complete list of
reoistration phone numbers
rrHolvlS()lv
+^
PROfVIETRIC
Facilities
TIBCO's lacilities arc designated by these signs.
Ilthis training course is being held at a customer site, rules and
guidelines apply as detìned by the specifìc customer site.
Notes
Topics
t Objectives, page 12
. Knowledge:
Objectives
The goal of this unit is to prepare you fbr the BWP solution you will
implement using TIBCO BusinessWorksrNr.
To begin, read through the business narrative that starts on the next
page. An instructor-led discussion of the business sccnario and its
technical details will tbllow, as well as a preview of the solution you
will implement using BusinessWorks and associated TIBCO
Droducts.
--;;;;l .l
T *,
.h@
'.*^ ll
The details about hoiv the company currently operates and how it
plans to improve its business operations in the short term can be
fbund in the notes below the Use Case and Sequencc diagrams that
fbllow. Further detail about the company's short term and long tern'r
olans can be tbund in the Refèrence Document at the end of this unit.
Company Brief
BWP is a large, market leading provider of automotive atÌermarket parts and services. BWP retail
shops antl tianchises oflèr a limited number of automotive repair and maintenancc services. BWP
has strong brand recognition and high levels of customer loyalty (enhanccd by a lifètinre warranty
program). BWP's success is depcndent on carefully controlled fianchiscs. Currently they rnaintarn
a jusrin-time distribution network which enables the distribution of pafts to the lianchises where
and whcn needed.
Industry Overview
BWP is facing increasingly tou-eh competition in the marketplace. Increased technological
complexity and vehicle durability have changed the industry, creating increased revenue pressure
and decreased profìt margins. Following a market shakeout. morc operationally-sophisticated parts
and service providers with a wider range of service of'ferings have emergecl.
The more prol'itable companies in the n'rarketplace now focus on scheduled maintonance and light
repair work. Meanwhile, wholesale parts distribution is movrng towards a.just-in-tin're model to
reduce the investment in inventory. to ovL'rtome volatile pricing and to avoid the exposurc resulting
fiom holding many high value parts fbr diverse makes and moclels of automobiles.
The implcmentation will fbllow the same pattern. 'Place Web Order'
and 'Place Batch Order' use cases will be built as automated
processes. These will invoke a Web Service implementation of
'Process (Parts Only) Order' use case.
This pan of lhe sequence diagram is lhe same for "Batch Order" and "Web Order"
Orders nray be entered via batch when the Store Person notices that
the Service Center is running low on comrnonly used parts. The order
is stored in a file. When Franchise Batch Processing sends a nlessage,
Batch Order Processing parses the fìle. lt is then sent on to Order
Processing.
All incomin-s orders are -9iven a unique order ID ancl are logged.
Credit chccks are conducted by Finance via an internal Web Service.
If credit is rejected the order is not proccssed.
Internet Sales Inventory is checked and updated as necessary. In this
first phase of business integration only orders requesting items
currently in stock can be fultìlled (there are no partial shipments).
Details fbr all processed orders are stored in Finance's sales order
database. For all orders an order result fìle is also senerated.
lhìs pad oi lhe sequence dLagram s the sam€ ior 'Balch Ordel and 'Web Orde/
fr@
I web
I ["*e;;*l
order I o,oe,
r---,----* I
credl check I
F;;- f--;;orderl f,?-i''l
I rnvenrory saes I order Resllr
pr64s.s
I prcc$.e--
Pfúesns I processúq pree$ós procssns I
I-------r------ I ----r-.----T--
I
r -- I.---r--- i
--T_--
ffiTIBCO
. Deploy
.' Simple prcmotion from design to run-time environment
; TIECO Administrator
" Manage
* Prc-active monitoring for easier management
- TIBCO Hai,vk
Overview
As technical stafT working fbr BWP we will implement this entire scenario using TIBCO
BusinessWorksrM. In addition we will use TIBCO AdapterLlu fbr ActiveDatabase to store the
customer order in the database. Using BusinessWorks, we will create these process definitions for
submitting orde rs l'or ploccssing:
r Process Web Order
r Process Batch Order (JMS)
Both processes will invoke a web service encapsulating the primary process definition Process
Orcler, which provides the core business integration logic including:
r Accept the order either through batch or the Web
I Generate an internal Order ID
I Check if the Customer has suffìcient credit to purchase the order
r Query the quantity and compute the state of inventory fbr each part orderecl
a "Available": The item is available
a ''Back Order": The iten'r is back ordcred
r Update Inventory fbr the Purchase Order
r Compute the Order Status fbr shipment:
a "READY": All the items are available in inventory, so order can ship
a "NOT READY": Sorne item is back ordered. so the order cannot ship at this time
r Store the order in a master database table called SALES_ORDE,R, which keeps track of all
the orders. (This table can be queried through the "All Orders" link fiom the Web)
r Write order result to a tìle (containing the Order ID in the name)
r If order came fiom the Web, post the result so that the operator can view it
The business process must be f'lexible and modular so that it can be easily configured and modifìed
for fiture enhancements. Exception handling is also very critical to BWP: they n.rust know the
status of each incoming order and whether it tailed or not. TIBCO Administrator will play an
important role here.
Order Details
The Purchase Order is saved in the table SALES_ORDER, and all items tbr each order are stored in
ORDER_DETAIL. Process Order will generate the output tile containing the result of processing
the order. Here is an example of the output fìle:
TabLe I
Order ID: T18-4600-20020623160131
Table 2
2100- TIRE
10000 1 Available
The tbllowing utility subprocesses will be used fbr specifìc finctions in the business process, and
will be called tiom the process defìnitions above:
t Order ResuLt: Generates the result tìle depending on the status of the order
t Query Orders: Queries all the orders fiom the database fbr display on the Web
t Process Inventory: Checks inventory of each item and update its quantity tìeld as part of a
database transaction
For the Credit Check Web Service, we will implement the following processes:
t Query Web Services: Allows clients to query the SOAP server fbr the WSDL intertaces
t Credit Check Service: Receives SOAP requests fiom Web Service clients fbr credit checks;
takes as input the customer account ID and purchase order prices replies with the result
Note af so that the Credit Check Service process will call Petform Credit Check, which perfbrms the
Tàhle 3
Purchase Order
An BWP Purchase Order can contain requests fbr multiple parts, plus as l"nany of each part as the
customer wants to purchase. A database inventory table is rlaintained, and tbr each Purchase Order
this table must be updated accordingly. An BWP Purchase Order has several attributes:
Table 4
Database Tables
This implementation integrates a database and makes use of four tables within that database:
r CUSTOMER_ACCOUNT Contains account number, balance and credit limit
-
r INVENTORY-ITEM Contains current inventory quantities
-
r SALES-ORDER Contains records of each processed PO
-
r ORDER_DETAIL Contains details on each processed PO
-
For refèrence, here's a look at the relationship among these tables:
CUSTOMER_ACCOUNT INVENTORY-ITEM
AC-coYNr:lD *
AMOUT']T-OWED
AILCBLE CREDIT
SALES_ORDER
ORDER DETAIL
USTOMER-ID
SHIPMENT DATE
SHIPMEFIT-LOCATIÙN
TOTAL-AMOUNT
DELIVERY-METHOD
Segregating your proiect 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 project. You can use BW's
imporlexport facility to merge the project into one final project when
the development work is completed and you are ready to deploy.
Overview
This business case describes, in further detail than already presented, the business interfaces that
exist in BWP now as well as the business evolution objectives of BWP. Forevery business unit
shown in the BWP Physical View. the responsibilities and capabilities of employees and the
systems that BWP needs are described here. Throughout the course labs you will build an
architecture tbr most ol'the business integration needs identifìed in this business analysis.
1. Customers
Customers interact with BWP either online (via the BWP portal) or by telephone by talking with a
BWP Sales Agent. If the customer wants to order services or testing the call is transfèrred to a BWP
Service Agent who will handle the request.
BWP makes a distinction between ad hoc buyers of parts and services and repeat customers. BWP
encourages customef loyalty and prefèrred customers can login to the BWP portal to take
advantage of loyalty programs and special otlèrs.
Customer r Initiate sales call or log on to the BWP web site r Call Center [2]
r Supply name, address and credit card number r Order
r Show vehicle registration documents (if Management
applicable) t3l
I Drop off vehicle at Workshop at appointed time (if r Service
applicable) Provisioning
r Agree to cost estimate tbr services prior to service t4l
being done (if applicable) I Service Center
r Pick up vehicle at Workshop when work is JI
completed (if applicable)
2. Call Center
The Call Center handles all sales calls, tracks custonler orders and assists in maintaining customel
satisfaction. Prefèned customer infbrmation is stored in the CRM system. This infbrmation is used
to assist the sales agent when dealing with a customer and to support pro-active marketing
campalgns.
Table 5
Web r Handle orders placed via web (by the Sales Agent r Call Center
Order or Service Agent) (Sales Agent)
Processing r Submit details of'orders to Order Management
111
tL I
3. Order Management
Order Management handles parts-only orders. These orders may be placed by the Customer
(directly via a web portal), a Sales Agent (via a web interfàce), a Store Person at a Service Center
(batch or branch orders), a Service Agent (via a web interface), or by Service Provisioning (to order
parts needed for a service).
Order Management does not handle orders that include service or testing. Note that BWP cannot
handle "parts only" and "test only" or "parts and service" orders as part ofthe same order. The
BWP Lifètime Warfanty only applies to parts fitted by a trained mechanic in the BWP Service
Centers.
TabLe 6
Batch r Handle orders tì"om the Franchise Service Centers r Service Center [7]
Order
Proccssing
Query Provide order slatus on anv orders olaced r Call Center [21
Orders r Service Provisioning
Processing
t4l
r Finance [51
r Service Center [7]
4. Service Provisioning
Service provisioning handles all aspects of schedulin_s service appointments as well as ensuring
that all required special parts are available. The Service Agent deals with scheduling time in the
workshop and test centers at the various tianchises. Service Order Processing is a workflow-based
process that tracks the staLus of'the service and any parts orders and alerts key individuals to handle
exceptions.
If a customer calls in fbr service, the oall is transfèmed by the Sales Agent to the Service Agent who
then handles the customer request by interacting with a pre-existing scheduling software program
to work out with the customer when the carcan be brought in fbr the service requcsted and to which
of the nearest locations.
If the customer orders the service via the web, the above process will be handled automatically
without requiring the Service Agent's attention.
Regardless of how the order comes in, the cost estimate tbr services requested is handled by
Service Order Processing, which is part of Service Provisioning. Service Order Processing also
handles the order of and jusrin-time delivery of special parts to the appropriate Service Center.
A customer can call the Service Agent to modify or update an existing service request.
Table 7
5. Finance
Finance handles Accounts Payable and Accounts Receivable. Finance also maintains an internal
credit check facility (made available internally as a web service). Franchises are considered
"customers" when it comes to credit. The Financial Controller can override the credit check
decision. Financc maintains a database ("Sales Order" table) which includes the details of all orders
(customer as well as fÌanchise orders).
Table 8
Credit t Implement the credit policy of BWP (verify r Servìce Provisioning [rl]
Check purchase amount does not exceed credit) r Order Management [3 ]
Processing Raise an exception when the credit limit is
I r CallCenter [2]
exceeded
TabLe 9
Table 9
Thble I0
Table 10
r Purchasing [8]
r Finance [5]
Franchise r When manually triggered, check fbr existence T Order Management [3]
Batch of file with low inventory details I Franchise Service Center
Processing I Publish a message with low inventory details (Store Person) [7]
to Order Management
8. Purchasing
Purchasing manages all the supplier relationships. BWP has a prelèrred supplier policy to take
advantage of negotiated deals. The protocol used by the prefèrred partner can be dynamically
changed. Ifthe pretèmed provider does not have the item in stock, then the system goes to a second
partner.
Purchased items are delivered directly to the requesting party (i.e., directly to a Service Center, to
the Internet Sales Inventory, or to the Customer). The prefèrred supplier uses one of the fbllowing
protocols: RosettaNet or EDI.
Table I l
Replenish r Place orders with trading partners r Internet Sales Inventory [6]
lnventory r Suppliers [10]
Processing
9. Shipping
Shippin-q handles all goods-out processes. Parts are only shipped to Customers (Franchise Service
Centers get all their parts via just-in-time delivery tiom Suppliers).
The Shipping Clerk accesses Finance to update the "Sales Order" database with the "ship date" and
to fìnd out the shipment location and delivery method to use as requested by the customer.
Table l2
Shipping r Pack items tbr "parts only" orders r Internet Sales Inventory [6]
Clerk r Dispatch orders r Finance [5]
10. Suppliers
Suppliers have processes that use one of the fbllowing protocols: RosettaNet or EDI.
1 1. Regulatory Compliance
Like any company, BWP must adhere to governmental regulations. The fbllowing BWP service
offerings require regulatory compliance considerations.
Smog Check
One of BWP's service otTerings is a Smog Check. The government requires, as part of the annual
registration renewal process, that drivers have their automobile pass a smog check. BWP otl'ers
smog checks to its customers. The state Department of Motor Vehicles requires that passing grades
be sent electronically to the state regulatory agency by companies such as BWP who offer this
service.
Road-Worthiness Test
Another of BWP's service offerings is a 15-Point Road Worthiness Test. This saf-ety check service
is purchased by customers when government regulations require. BWP is certifìed by the
government agency to perform these tests and report the results.
Notes
Topics
t Objectives, page 44
t BW-based Web Services, page 45
. Knowledge
. Describe WSDL generation in BusinessWorks
. List options available in BW for UDDI
. Understand the BW Web Service project you will implement
. Skills
. Build a WSDL generator process
. Publish your service to a UDDI server
. Test and deploy
Objectives
The main objective of this unit is to prepare you to implement the
various process detìnitions comprising Credit Check Web Service.To
that end in this unit you will:
I Explore the Web Services capabilities of BusinessWorks
I Learn what standards are supported
r Learn how to organize your project development environmcnt
* In Service delinition
Ta.0d ilmespàce: hÍF itrmirs ÉrimDrÉ cnhll
PrroeliÉs
. Dynamic WSDt
- Build BusinessWorks process
; Provide current WSDLs to clients
r All errors lOgged
" Visible in ACniinlstrator
?ii
:r.!:*+ &'
r-;{l!
Generating WSDL
QueryWebServices is a BusinessWorks process that has to be built fbr
dynamic WSDL discovery. With this process. clients can obtain the
WSDL to call the service. This process is used to provide the latest
WSDL to any client that wants to communicate with your SOAP
server(s).
The process contains the log error activity, which is used to log all
errors. The errors can be later viewed through TIBCO Administrator.
All logged messages appear as part of the process en-9ine's trace file.
UDDI Basics
In order to find the WSDL l'ile. the web service can advertise itself in
a UDDI (Universal Description, Discovery and Integration) service.
UDDI is a potential way for advertising and discovering Web
Services. UDDI is a project to speed interoperability and adoption fbr
web services. UDDI has registry specifìcation tbr web services. [t is a
UDDI a distributed infbrmation store that includes:
I Schemas fbr service description and discovery
SusinessFnfify: bindingTemplate:
. . Technical information for the
Describes business
service
. Conlacts, address ' Ports, protocol
businessEntity
businessService
bindingTemplate
UDDI Components
r fJpqinnpr flnnabilities
. ."'li'l'! ..llilì: . "r,l,Ft . t
aaar.r.'....lllt
'
" Connect io UDDI Server '"q:,ry URL
; pfoxy D
rbr,sh L RL
user fame :
* Publish Services :
55L I origL dl on
-rr5ledtruoliel,Tod"' lr '*l sl
_
- -
. Delete Services oro4 Eeaer Scllrr o:
The Tools > UDDI menu brings up the WSIL and UDDI Registry
Browser dialog. This dialog allows you to browse web services or
publish the details of your web service
Atìer adding a server, you can view its details Here you can add
businesses to the server,ifyou have been granted access to publish to
this server. You can also edit the server's details bv clickins the Edit
button.
- Transport data
:ij .*
. Headers and attachments
flonte:d
RÉsource
-ìervrce
Supports WS-Security
. Outbound and inbound
C!nngu.ato.
Name:
: [r!Dui!J Odbounù
seirilùlorqAs;orit:r
D. - rFr'o_
40pb oo.ir' r1
Characteristics
. Authentication: Valid sender
- User/passnrord. Certif icates uor.0'liLieltrar rn llrÉq,ry' 0rrid;;ftÈ'
. Integrity: Sìgnatures .li;',t*on*'.. *..rn.r.Fr" ""
ÀES-1:8
r SHAIiMD5
. Confidentrality: Encryptron
; 3DES, AES-128, AFS-256
PfivalP Key rdenrier TyÈe t:9:llil:
X.50s derriv'
ilTIBCO
of
The Power Now"