uCash: ATM Cash Management as a Critical and Data-intensive
Application
Terpsichori-Helen Velivassaki
1a
, Panagiotis Athanasoulis
1
and Panagiotis Trakadas
2b
1
SingularLogic, Achaias 3 & Trizinias st., Kifisia, Attica, Greece
2
National and Kapodistrian University of Athens, Panepistimiopolis, 15784 Ilissia, Attica, Greece
Keywords: Cash Management, Stream Analytics, ATM.
Abstract: Distributed cloud databases wrapped with streaming analytics modules provide nowadays quick response to
increasingly demanding real-time applications, relying on fast analytical and online processing of enormous
amounts of data or very frequently updated. However, time-critical applications, dealing with sensitive data,
typically run on mainframes, cannot fully benefit from existing solutions. Such applications can be found in
Banking, Financial Services and Insurance (BFSI) industry, one notable being the ATM cash management.
The paper presents uCash, an ATM cash management system, running on top cloud analytics appliances,
which can be hosted insite. The proposed system allows data processing and Key Performance Indicators
(KPIs) calculation and communication among diverse actors, resulting in highly efficient cash management
over large ATM networks.
1 INTRODUCTION
Even in the digital age, cash remains an essential
component of the payment system, being the largest
retail payment category by number of transaction for
transactions under $10 (Reserve Bank of Australia,
2017). During the last few years, in their attempt to
achieve mobility to better serve their customers,
banks across the globe are investing on next-
generation ATMs, featuring advanced capabilities
and offering customers the ability to perform more
types of financial transactions than the ones are
currently handled by customer service
representatives. This will create a whole new
perspective of the user ATM experience, also
increasing the spatiotemporal heterogeneity of the
cash demand and the data produced by the ATMs,
derived from the new business value propositions of
these new ATMs (ATM Industry Association, 2018).
Additionally, as user mobility increases, so does the
complexity of predicting the expected user
withdrawal and deposit transactions volumes.
Banks and financial institutes nowadays face
significant challenges in managing effectively ATM
replenishment, based primarily on static prediction
a
https://orcid.org/0000-0002-0362-4607
b
https://orcid.org/0000-0002-2884-9271
algorithms. This results in high cash-out rates in
certain ATMs, while having excess leftover cash in
other ATMs, returned to banks. Accordingly,
ineffective cash management in ATMs leads to
considerable customer dissatisfaction due to delays
until reloading empty ATMs, as well as complex and
expensive cash logistics to reload the network.
Ideally, smart cash management should be able to
catch cash demand, affected by external factors and
not easily predictable, as e.g. the monthly
salaries/pensions. For example, an ATM, located on
the same level of a large shopping Mall as a store with
special discounts for a single day only, could have
increased cash flow. Also, cash demand in ATMs
close to social events is expected to be higher than
usual. Moreover, ATM traffic could be affected by
combined factors, such as weather and location.
Indicatively, ATMs close to beaches/seaside might
realize increased demand during warm and sunny
days or cash demand could decreased for any ATM
during cold days. Another dependence can be found
at seasonality, e.g. ATM cash demand is expected to
grow during the days before bank holidays.
In this context, appropriate cash management is
bound to ultra-fast analytics over huge datasets,
642
Velivassaki, T., Athanasoulis, P. and Trakadas, P.
uCash: ATM Cash Management as a Critical and Data-intensive Application.
DOI: 10.5220/0007876606420647
In Proceedings of the 9th International Conference on Cloud Computing and Services Science (CLOSER 2019), pages 642-647
ISBN: 978-989-758-365-0
Copyright
c
2019 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
produced by large interconnected ATM channel
networks. Business objectives mandate for the
capability of processing complex queries over
thousands of columns of operational data, created by
thousands of ATMs in the order of seconds.
On the other hand, strong data privacy and
security requirements renders ATM cash
management too critical to rely on existing clouds.
In this paper, ultra-fast ATM Cash Management
system (uCash) is presented as a critical application,
running on top of cloud analytics appliances,
providing scalable operational databases, ultra-fast
streaming analytics and/or big data analytics, while
ensuring high availability. The proposed system is
able to identify both expected and unexpected
changes in external factors affecting cash withdrawal
from ATMs. To this, the proposed system relies on
streaming information received from ATM channels,
the social media, cooperating retailers, social trending
sites, the weather, financial services or other sources
are properly exploited. Also, uCash should be smart
enough to identify short- or long-term changes,
affecting cash demand from ATMs, in order to feed
accordingly the cash logistics.
The rest of the paper is organized as follows.
Section 2 presents a general overview of the
considered inputs. Section 3 introduces the uCash
Architecture and Section 4 concludes the paper.
2 uCash SYSTEM DESIGN
uCash is intended for optimizing cash allocation in
banks’ ATM network, in order to minimize cash out
events, excess cash left in low-demand machines,
while increasing customers’ satisfaction. So, it will
provide the tools to interested parties to make
decisions related to their responsibilities,
communicate them to interested endpoints and
visualize/share amounts to multiple parties
simultaneously, thus enhancing communication
among them, access to data and minimizing
processing/communication latency or overhead. In
brief, uCash will support cash demand prediction and
cash allocation in a bank ATM network, based on
advanced Big Data and Stream Processing analytics,
while facilitating access to both data and processed
results for eligible users.
2.1 Input and Output Streams
Figure 1 presents the input and output streams
considered for the uCash system. Specifically, input
streams include:
Figure 1: Inputs and outputs of the uCash System.
ATM Data: Information extracted by the ATMs can
provide useful insights, regarding cash demand as
well as potential temporal patterns. The ATM stream
will include the cash balance for every ATM, along
with accompanying info, such as the id of the ATM,
its location, the amount of money inserted at
replenishment, as well as the timestamp of operations.
As ATM data are useful on a real-time basis, but no
critical changes are expected within seconds, an
update rate in the order of minutes is considered
adequate.
Social Events: Social events may potentially affect
the cash demand, especially in case of ATMs located
close to the events’ area. So, information about events
taking place in short time in close locations may
provide significant insights to cash demand
predictions. In order to facilitate the prediction
process, it is assumed that less popular events or
events quite far from the ATM’s area do not affect the
ATM traffic, so they are not considered as input data.
Specifically, the social events of interest:
Collect a number of likes higher than a
predefined threshold
;
Have number of attendees higher than a
predefined threshold
;
Take place on the same or the next day;
Are close to the ATM area.
Social Trends: Current trends can provide useful
insights on collective user behaviours, revealing
potential correlations of everyday trends with ATM
cash demand. So, uCash will consider the most
popular social trends (hashtags) for a specific location
as potential influencers of ATM cash demand.
Weather: Weather may impact on consumers’
activities. In this perspective, rainy, sunny, warm or
cold days could reveal, at some extent, people’s
willingness to socialize -and thus potentially
withdraw cash- or stay at home. Information of
uCash: ATM Cash Management as a Critical and Data-intensive Application
643
Figure 2: The uCash Use Case diagram.
interest refers to the weather forecast for the next 3
days, including the weather conditions’
characterization (such as clear, rain, partly cloudy,
snow, sunny, etc.).
Retailers’ Discounts: The ATM traffic can be
significantly affected by discounts announced by
retailers having physical stores in close proximity
with ATMs. uCash will offer an API to cooperating
retailers to submit their sales or discounts.
These individual input streams with diverse
dataset characteristics (such as frequency rates) are
subject to pre-processing, which aggregate and
synchronize diverse inputs, producing the system’s
input stream in a format favorable to Machine
Learning (ML). Thus, the final input dataset is
constructed as unstructured raw data with 1754
features with update frequency in the order of second.
The output streams include a set of KPIs and cash
demand prediction. In more detail:
Cash Demand: The cash demand is extracted by the
difference in cash balance, not including the amount
of bank replenishments over a desired period of time
for a desired ATM.
,




where
,
is the cash demand during the period
,
,
the cash balance at the ATM of interest
at time and
the amount of refills at time .
Cashout: An (operational) cashout is defined as the
event in which an ATM runs out of money or its
balance equals to 0. Its duration is defined as the
period of time since the cashout took place (balance
equal to below

), until the next replenishment.




where

for ∀
,
the cash balance at the ATM of interest at
time and
the balance threshold below which the ATM is
considered to realize a cashout.
Unavailable ATMs: The number of ATMs realizing
a cashout over desired time period.

∃
,
:

where

the number of unavailable ATMs within
the period
,
.
ATM Downtime: The total duration of cashouts at a
desired ATM over desired period of time.





where
the cash balance at the ATM of interest at
time and
the balance threshold below which the
ATM is considered to realize a cashout.
Leftover Cash: “Leftover cash” is defined as the
ATM balance at the time of replenishment. The KPI
provides the total amount of leftover money for a
desired ATM over a desired period of time.


0
,
ADITCA 2019 - Special Session on Appliances for Data-Intensive and Time Critical Applications
644
Figure 3: The uCash activity diagram.
where
the cash balance at the ATM of interest at
the time of refill.
2.2 uCash Use Case Analysis
The uCash system involves the following actors:
The Bank Branch Manager. The main
responsibilities of the Bank Branch Manager which
will be primarily enhanced via the ATM Cash
Management system are the following:
Ensuring there is adequate cash for each of the
tellers and automated teller machines.
Developing forecasts, financial objectives and
business plans.
Monitoring branch targets.
Reposting to head office
The Cash Manager. The main responsibilities of the
Cash Manager which will be primarily enhanced via
the ATM Cash Management system are the
following:
Organizing daily cash administration.
Timely matching cash application and
disbursements.
Monitoring cash transactions to ensure that bank
account balances to the report and any unusual
items are investigated.
Forecasting, monitoring and tracking cash flow on
preferred basis.
Preparing cash flow reports
Maintaining security and confidentiality of
financial records.
The Cash Logistics Manager. The main
responsibilities of the Cash Logistics Manager which
will be primarily enhanced includes the organization
of cash distribution.
(ATM Cash Management System) Administrator.
The Administrator will be able to manage access of
specific user types to the ATM Cash Management
system data.
2.2.1 Use Case Diagram
The UML use case diagram is presented in Figure 2.
The use cases considered are analyzed as follows.
Log in: The user should be able to log in the uCash
application, to access personal or their user type
related data.
Register: The user should be able to register in the
uCash application, according to their user type.
Access Monitored Data: The user should be able to
visualize both historical and real-time input datasets
input datasets in a user-friendly way, e.g. diagrams
allowing for configuration enhancing readership (e.g.
sorting, filtering, etc.). Access to datasets might be
restricted per user type (actor).
Evaluate KPIs: The user should be able to visualize
in a user-friendly format the KPIs calculated out of
input datasets, based on their field of expertise
revealed from user type (actor). Configuration of
uCash: ATM Cash Management as a Critical and Data-intensive Application
645
visualization format should be possible to facilitate
user’s perception of data.
View Cash Demand Prediction: The user should be
able to visualize in a user-friendly format predictions
of the cash demand in the ATMs of their interest,
based on actor type.
Configure Cash Allocation: The user should be able
to verify or change cash allocation proposed by the
system.
Perform What-If-Analysis: The user should be able
to perform what-if-analysis of custom cash
allocations changes, showing effects on KPIs of
interest.
View Cash Allocation: The authorized user should
be able to visualize optimized cash allocation to
ATMs on demand.
Manage Users: The authorized user should be able to
manage users’ registration, validate or disapprove
their account.
Manage Content: The Administrator should be able
to manage the content shown for each user type.
Manage Roles: The Administrator should be able to
manage the content shown for each user type.
2.2.2 Operations Analysis
The sequence of operations is presented in the activity
diagram of Figure 3. In more detail, the process is the
following:
After sign-in, the Bank Branch Manager checks
the availability of cash for both ATMs and
cashier.
If the cash is not enough, the Bank Branch
Manager may try to perform some cash
reallocation between the two channels (ATMs and
cashiers), after what-if-analysis, based on
predicted cash demand.
The Bank Branch Manager may make several
tries, checking resulting KPIs before actually
performing cash reallocation or she may raise a
cash request.
The (central) Cash Manager may automatically
optimize cash allocation or she may prefer to do
this manually, after performing what-if-analysis
of potential allocation schemas.
Even when selecting automatic cash allocation
optimization, the Cash Manager will evaluate the
result and propose any modifications, if desired,
after proper what-if-analysis.
Having decided about the cash allocation, the
Cash Manager eventually configures cash
allocation.
Figure 4: The uCash architecture.
Finally, the Cash Logistics Manager is able to
view the configured cash allocation, in order to
allocate cash to ATMs accordingly.
3 uCash ARCHITECTURE
uCash is aimed to exploit fast analytical and
streaming processing capabilities of third-party
frameworks, providing useful insights inferred
through a number of KPIs calculated over large
amounts of historical data or over frequently updated
streams. As uCash constitutes a critical system,
running on top of streaming and big data analytics
engines, it realizes a modular, micro-services oriented
architecture, able to easily integrate with third party
solutions. The uCash architecture is depicted in
Figure 4, in which uCash components appear in white
color, while third-party components are colored in
grey.
The main components of the uCash architecture
include APIs for every input stream, the Input
Streams Orchestrator, the Transactions’ API, the
uCash dashboard, the Mediator and the Mediator
Controller.
Input API(s): These components are responsible for
retrieving data from the input streams and providing
them to the Transactions API.
Transactions API: This component is responsible
for receiving and providing data or KPIs from/to
interacting components. It receives the input data and
forwards them to the Operational Database to be
persisted, while it asks the analytics components (Big
Data Analytics Engine and Streaming Analytics
Engine) for KPIs, as properly defined queries, and
provides them to the Dashboard.
ADITCA 2019 - Special Session on Appliances for Data-Intensive and Time Critical Applications
646
Mediator: This component acts as an adaptation API,
hiding the heterogeneity of third-party applications. It
is responsible for making queries a) over streaming
data, such as those involving moving windows, as
well as retrieving the results, and b) over historical
data, as well as retrieving the results. This component
will not provide any intelligence in query processing,
but it acts as a mediator between third-party
components and uCash, requesting KPIs and
transferring the results.
Mediator Controller: This component controls the
mediator in the sense that it triggers KPIs’ retrieval
from the corresponding components.
uCash Dashboard: This component is responsible
for authentication and authorization of users of
different types, as well as for providing role-based
access to content. Moreover, this component
incorporates the User Interface (UI) functionality of
uCash.
Following this modular architecture, uCash uses the
Mediator to easily integrate with existing analytics
systems. In the architecture of Figure 4, three external
components are considered:
An operational database, understood as a scalable
database adequately supporting ACID
(Atomicity, Consistency, Isolation, and
Durability) properties for operational and analytic
workloads and can scale in the three Vs of Big
Data (Volume, Velocity and Variety).
A scalable Big Data Analytics Engine, capable of
processing fast analytical multidimensional
queries over high-volume and variety streaming
data.
A scalable Streaming Analytics Engine, able to
process fast continuous queries over high-
frequency, volume and variety streaming data.
Indeed, uCash can work with a subset of the external
components and can easily integrate existing, new or
updated components.
4 CONCLUSIONS
uCash has been presented as a data-intensive and
critical application. The aim of the design is to derive
an ATM cash management application on top of
existing big data and streaming analytics platforms,
best exploiting their capabilities, while covering
application specific needs and adding value to the
targeted BFSI application domain. To this end, the
design methodology includes specifications related to
big data and streaming analytics (such as the input
dataset and the KPIs), as well as the specification of
the architecture.
Notably, the architecture allows the reception of
specified input dataset and its pre-processing, if
needed, while having the logic to ask the appropriate
components to apply streaming or batch analytics
over the operational or the historical data. In brief, the
specified application adequately covers analytics
over both operational and historical data, as well as
functionalities of operational databases.
ACKNOWLEDGEMENTS
This work has been partially conducted within the
CloudDBAppliance project Grant number 732051,
co-funded by the European Commission as part of the
H2020 Framework Programme.
REFERENCES
ATM Industry Association, 2018. Business Value
Propositions for Next Generation ATMs. [Online]
Available at: https://www.atmia.com/files/committees/
consortium-for-next-gen-atms/bvps-for-next-
generation-atms-published.pdf
Investopedia, 2017. Gross Profit Margin. [Online]
Available at: http://www.investopedia.com/terms/g/
gross_profit_margin.asp
Investopedia, 2017. Price Elasticity of Demand. [Online]
Available at: http://www.investopedia.com/terms/p/
priceelasticity.asp
Reserve Bank of Australia, 2017. Reserve Bank Bulletin,
Sydney: s.n.
uCash: ATM Cash Management as a Critical and Data-intensive Application
647