Narration Script for Usage based metering and billing for ...
Published on: Mar 3, 2016
Transcripts - Narration Script for Usage based metering and billing for ...
Narration Script for Usage based metering and billing for multi-tenant
service resources using IBM Tivoli Usage and Accounting Manager.
Welcome to the IBM Software-as-a-Service demonstration series. In this series, we will
demonstrate a set of architectural patterns exploiting features in IBM middleware to build
In this demo, we will describe how a SaaS service provider can meter and bill usage of
multi-tenant web services, databases and portals by users belonging to multiple tenants
who share a single instance of the application server, database and LDAP server. Many
SaaS service providers currently bill their tenants on the basis of the number of users for
each tenant. Such a billing model does not reflect how heavily each tenant is using the
resources shared between multiple tenants and as a result, tenants using fewer resources
may get charged unfairly. However a usage based metering and billing solution will
allow service providers to offer lower rates of usage to tenants who do not use a service
This pattern is illustrated through a multi-tenant banking application built using IBM
middleware. This application is accessed by users from different tenant banks such as
First Bank of North America (First Bank) and Second Canada Bank (Second Bank).
Users from each bank may belong to different roles such as customers and employees.
This application also uses third party services for credit score and address verification.
The service provider would like to meter usage of various types of resources in a shared
application server and database used by different tenants. Examples of such resources
include: shared web services, virtual portals, shared database tables and shared LDAP
user registries. These resources are configured to log usage information for each user and
each tenant into a database.
We have built a log service usage component which can be plugged into existing web
services with little or no code changes. This component can also be invoked from other
types of application server components such as portlets through a Java Management
eXtensions standard interface. This component also provides operations for registering
and managing the logging status of instances of application server resources generating
usage logging data. We will show the use of this metering component in the Jivaro multi-
tenant banking application.
We will also show how to use Tivoli Usage and Accounting Manager to aggregate tenant
specific usage data for shared application server, database and user registry resources.
The scenario begins with Sam Peters, the Jivaro Bank service provider administrator
logging into the service provider administrator portal to register and enable logging for a
few application server resources used by multiple tenants.
From the Service Usage Logging Manager portlet, he registers the shared application
server resource called the Credit Score Service for usage logging for “all” tenants.
From this portlet, he can also enable or disable logging for this application server
Sam launches the ITUAM administration console to create a new rate code CSS1 for the
credit score service.
He configures this rate code with a rate value of 2$ for every 10 invocations. .
Similarly, Sam configures another rate code BNK1DB, for the credit score database.
For this code, he configures a rate value of 4 $ for every 10 logins.
Sam configures account codes for each tenant bank.
For First Bank he specifies the account code FB1 and for Second Bank, the account code
In order to compare the usage based charging model with a charging model based on
number of seats, he creates two more account codes: FB2 and SB2.
Next, Sam adds various resources to each account code.
To the account code FB1, he adds the credit score service rate code CSS1, the account
management service rate code AMS1, the customer virtual portal for bank1 rate code
CVP1 and the number of database logins for bank1 users rate code BNK1DB.
To the account code FB2, he adds the rate code USERCNT1 which charges 20$ per
customer per month for First Bank N.A.
Sam configures ITUAM to run job files daily to generate usage and billing data for the
two tenants First Bank and Second Bank.
The job files extract usage information and generate billing information based on the rate
codes defined for the different service resources. This billing information is stored in a
DB2 database used by ITUAM for report generation.
After a month of activity, Sam logs into the ITUAM reporting server to generate and
publish usage and billing information for the two tenant banks.
He generates usage reports for First Bank for the account code FB1 and publishes it to the
ITUAM report server.
This usage report includes a breakdown of the total charges for First Bank by the
resources for which he had configured rate codes, for example the credit score service,
the customer virtual portal and the DB2 database logins.
Next, Adam Nelson, who is an administrator of First Bank, logs into the ITUAM web
He is now able to see multiple usage based billing reports for his bank.
He views the detailed service usage report in which he sees that First Bank users used the
credit score web service 500 times and the credit score database 500 times in the last
As a result, he was charged 100 dollars for the credit score web service and 200 dollars
for the database at the rate of 2 $ for every 10 invocations of the web service and 4 $ for
every 10 logins to the database.
In comparison, if Adam was billed on the basis of the number of register customers, he
would be charged 400$ for his 20 customers at the rate of 20$ per customer per month.
Similarly, Sally Carter, an administrator for Second bank, logs into the ITUAM web
She sees Second Bank’s usage reports published by Sam.
She sees that Second Bank’s users used the credit score web service 250 times and the
credit score database 250 times in the last month.
As a result, she was charged 50 dollars for the credit score service and 100 dollars for the
database logins at the same usage rate as First Bank.
In comparison, if Sally was billed on the basis of the number of register customers, she
would be charged 800$ for her 40 customers at the same rate as First Bank.
We see that Sally was charged a smaller amount (310 $) than Adam (1000 $) although
she had more customers than Adam because her customers used the multi-tenant banking
application less heavily than Adam’s customers.
IBM Software Group
How to meter usage of shared web service resources in a multi-
Use of Tivoli Usage and Accounting Manager for billing multi-tenant
usage of shared web service resources
How usage based metering could lead to lower charges for service
consumers compared to metering based on number of seats
developerWorks © 2005 IBM Corporation
In conclusion, we have shown how to meter usage of shared resources in a multi-tenant
application server and database application for billing purposes. We have shown how
such a usage based metering is different from billing based on number of seats and how
this could lead to lower charges for tenants who are using these shared resources less
heavily than other tenants. We demonstrated the use of Tivoli Usage and Accounting
Manager for providing tenant specific billing reports based on the usage data captured by
a custom built service usage logging component.
IBM Software Group
Ready to Go Further With IBM?
Learn Join the SaaS Community
Register for PartnerWorld
Select Software as a Service as an interest area
Network with other SaaS business partners at SaaSpace.com
Visit the Virtual Innovation Center (VIC)
Take the SaaS Education Courses
Fill out the VIC Project Profile for a no-charge technical assessment and custom
Market your Qualify for the SaaS Specialty
SaaS Solution Receive additional marketing resources and benefits
developerWorks © 2005 IBM Corporation
IBM has innovative resources and programs to help you manage change & become
relevant in the Software as a Service market. Whether you’re an ISV, System Integrator
or Reseller, we can provide education, support and benefits to help you grow revenue and
The first step will be to join the SaaS community. You will automatically be kept aware
of new SaaS technical benefits and workshops and get the enablement help that you need
to transform your application for delivery in the IBM Software as a Service model.
Then, as a member of IBM SaaS community, you can register at the Virtual Innovation
Center (VIC) where you will get personalized access to product support and education to
help build your Software as a Service knowledge and skills.
As an Advanced level member of PartnerWorld, you have the opportunity to gain access
to additional marketing and sales support by qualifying for the Software as a Service
For more information, Visit our main site at www.ibm.com/partnerworld/saas.