OSB components and deploymentThis chapter describes the internal OSB architecture and the deployment of OSB based applications. |
Diagram I shows the the components of OSB applications:
All OSB applications are based on the class library programmed in C++. For
customer specific, proprietary requirements existing OSB classes can be extended
or completely new objects added.
The class library provides a CORBA interface. This allows separating the functional
implementation from the GUI part (thin clients), distributed applications and
central services. CORBA offers different language bindings (C++, Java) which
means that OSB applications may be built in any supported programming language
(in practice performance aspects will limit our choice).
All OSB programs depend on the class library or its CORBA interface:
Batch applications normally make direct use of the OSB library. For performance reasons the CORBA interface should be used only sparingly, typically to forward the processing of bulk data to another server.
On-line and web applications must have reasonable response times, their performance however is not too critical: No user can key in more data than a small CPU could process.
On-line applications, especially customer care programs, must reflect the business work flow of the operator and integrate several systems such as subscription administration, accounting and credit rating. Functional aspects should be separated from the data presentation. OSB supports this requirement is supported with its object oriented approach and its CORBA interface.
Diagram II shows an example configuration for the deployment of OSB applications
in a prepaid billing system. The system consists of 2UNIX servers and an client
PC.
The batch applications rating, billing and reporting as
well as the CORBA server are running on one of the UNIX servers. The
on-line applications Subscriber administration and Rate plans
execute on the client PC.
The response time critical rating process is separated from the post processing of the usage records. The application is responsible for call control, real-time rating and application of discounts. The rating server maintains the data for the subscribers in a local database. The network connects to rating for authentication and call control.
The administration server periodically collects the usage records generated
during rating and performs further processing, e.g. enrich record with
taxation and accounting data, the preparation of usage statistics and maintenance
of itemized bills. The server also hosts the CORBA server process used
for subscriber and system administration. Amongst others the CORBA server
has the responsibility to store subscriber data in the subscriber database.