Running H/F 1 227
A real-world situation involves a branch employee starting a workstation,
inputting and validating the customer's data before a withdrawal operation is
performed. In our sample, we provide implementation of these actions, in
addition to a customer search view to initialize the environment.
After the environment is started, a graphical interface prompts the branch
employee to edit information in the entry fields of the view, such as the
customer's account number and the withdrawal amount.
After the required information is supplied, the workstation performs initial
validation, requests the data from the system, and data is then sent to the server.
The server should do the following:
򐂰 Create a journal record.
򐂰 Send formatted data to the host.
򐂰 Receive a host reply.
򐂰 Send a reply to the client process and update the last record with the host
reply.
The other services that can be developed to improve this application, although
not included in this book, are, printing and delivering a receipt to the client, and
updating the cash drawers in order to keep control of the cash amount.
8.1.2 Developing the system specification
Developing the system specification is usually the first step to system
development. It minimizes the gap between the application scenario and the
implementation.
Specification includes architecture, component interactions, message definition,
and internal data structure.
Architecture
For the scenario in our sample, we built a Web application using Branch
Transformation Toolkit v5.1 to achieve the goal. A typical architecture of this kind
228 IBM Branch Transformation Toolkit 5.1 Migration and Usage Guidelines
of application includes WebSphere Application Server, DB/2 database server,
Host, that is, S/390®, and Web Browser, as shown in Figure 8-1.
Figure 8-1 The typical architecture of a Branch Transformation Toolkit Web application
In our application, we used two services:
򐂰 Journal service
This service is based on a database and keeps information about the
operations performed during a predefined period of time. We simulated this
service with a dummy service named DummyJournal. In the second stage,
we substituted the DummyJournal with a real journal service that accesses a
real DB/2 database.
򐂰 Host transaction service
This service is used to send and receive formatted data to and from a
simulated host. We simulated a SNA LU0 protocol with a dummy host
communication service. This dummy service was named
DummyLu0SnaSession.
Component interactions
Here we set up a withdrawal operation. There are three stages to completing a
withdrawal operation.
Stage 1
A teller uses a Web browser to connect to a Branch Transformation Toolkit v5.1
application to perform a withdrawal operation. An input form is displayed in the
browser, requesting the account number and the amount.
WebSphere Software
Host
Transaction Service
Host
Journal
Service
BTT 5.1
Application
Web Client
Request
Reply
Request
Reply
Running H/F 1 229
Stage 2
After obtaining the customer’s account number and the amount details, the teller
inputs these two numbers and submits the request. The application then
initializes the transaction, appends Date, Session, and Branch data to withdrawal
data (Account Number and Amount). Journal service takes this formatted data
and stores it as the log of this transaction in the database.
Stage 3
When the journal service is completed, the application sends the formatted data
to the host to execute the real withdrawal operation. The host sends the reply
after completing the execution. The result is displayed in the Web browser.
Message definition
When you understood fully the functionality of the application, you should
determine the required host transaction messages and the data intended for the
electronic journal service.
Host transaction messages
The host transaction messages are:
򐂰 Requests sent to the host include the following:
A static transaction header code, for example, Tx02
Account number
–Date
Amount
Branch identifier
򐂰 Replies from the host include the following:
Reply code
Updated account balance
Error message
Electronic journal messages
The electronic journal messages include:
򐂰 The data that should be stored prior to sending data to the host include the
following:
User identification
Terminal identifier
Transaction data being sent to host
򐂰 The data that should be stored after receiving the host reply, include the
following:
Reply code

Get IBM Branch Transformation Toolkit 5.1 Migration and Usage Guidelines now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.