Main Author: Roberto C. Mayer

Additional author: Antonio Moreno

Focus Area: 

Selected Topic: Competitive European/Brazilian SMEs

Who stands to benefit and how: 

Software developers and researchers building new cloud-based software solutions based on transaction processing.

Position Paper: 

Cloud Computing and Internet of Things have opened up a new space for innovation opportunities. However, new challenges present themselves to solution developers.

Not only does every user of a mobile device have access to as many cloud-based services as possible, but the rapidly growing number of CPUs deployed on our planet soon will surpass the number of human fingers, hence requiring machine-to-machine communication, integrating all of these with what is called ‘legacy IT’.

Additionally, the cloud computing environment imposes additional challenges to every non-trivial solution to be deployed massively:

1. Application Servers need to be protected from users accessing them from unstable connections, as well as from end-user devices that simply go off due to dead batteries.
2. Need to be resilient against Distributed Denial of Services attacks
3. Sharing of user experience data among diverse interactions channels (web, mobile or physical installations)
4. Be able charging users at very small amounts per transaction (micropayments)
5. Allow cloud-based access to corporate servers without risking low availability to internal users
6. Create different priorities for IoT data traveling across the cloud, according to being critical or not.
7. Managing many similar versions of solution running simultaneously
8. Auditability & proof of compliance with SLAs
9. Running same code in multiple languages & cultures
10. Provide developers with significant information when things don’t run as expected ("bugs")

Studying these, we concluded that it is economical nonsense to require each solution development project to pay for the costs of solving these problems again and again, as they are requirements imposed by the common environment. Hence, we designed and implemented a cloud-based transaction manager, called VersaCloud, to provide solutions to the above challenges as cloud-based services.

In short, VersaCloud combines features of API managers and online transaction processing engines, plus a bunch of additional features, into cloud-based middleware.

VersaCloud introduces two modifications to the traditional database transaction concept. First, transactions are composed of individual operations to be provided by as many cloud-based servers as necessary (instead of various database tables). Secondly, all transactions are time-limited: if not committed in a previously specified period of time, they are automatically rollbacked (and backend servers are notified, if necessary).

VersaCloud is free to use by developers and researchers. Its technical documentation is available at

VersaCloud’s core ideas have been object of an US Patent request.