Cloud Source
Showing results for 
Search instead for 
Do you mean 

Linking business processes to cloud services and mobile enable them

on ‎11-06-2013 05:37 AM

business process.jpgMany companies implementing cloud actually use the technology as a way to provision infrastructure more quickly. They end-up installing their applications, without much change, on a collection of servers they provisioned using cloud technology. But do they get full advantage of the cloud by doing that. Actually no.


They reduce the time it takes to set-up an environment for users, but they do not improve the way an application is run. Response time delays for applications with variable usage patterns are not addressed, neither are end-user provisioning/de-provisioning. Cloud is simply considered as an easy way to access infrastructure when required.


The real benefits of cloud start when business functionality can be accessed in a fully automated way when required. This however implies rethinking the way applications are invoked. How do we actually do that?


Business Processes and the Enterprise Architecture

The enterprise architecture is defined by the MIT Center of Information Systems Research as “the organizing logic for business processes and IT infrastructure reflecting the integration and standardization requirements of the company's operating model. The operating model is the desired state of business process integration and business process standardization for delivering goods and services to customers.”


In other words, using a multi-layer model, the enterprise architecture describes the forest, the trees and the roots/weeds as described by Adam Stoehr in a series of articles. Starting from a small number of key processes like quote to cash for example, the key business processes of the enterprise are described. Subsequent layers zoom into the specifics of each of them and highlight they key steps that need to be performed. Ultimately you obtain the description of each of the key business processes the organization, its customers and partners use to perform the business.


The key question here is how granular you go. What you ultimately want is a set of process steps that are detailed enough and multiple processes use the same step, but not too detailed you end up with hundreds of steps for each process. Quite some literature has been written on business process granularity (see here for example), so I will not dwell on it. My objective is to link business process steps and services.


If you defined your enterprise architecture, you have a great starting point. Otherwise you may want to look at existing reference models such as SCOR, eTOM and others. They may not describe fully everything your organization does, but if you have a good understanding of what area of your business you want to “cloud enable”, they allow to think through the actual processes required. Also if you look at engaging beyond the limits of the company, they may help you build the appropriate eco-system view.


Let me give you an example, if you are looking at using cloud computing to improve your supply chain, using the SCOR model and its 3 layer description, you may be able to gain consensus across the eco-system. This in turn will give you the list of business process steps you will need to achieve the objectives you are looking for.


From Business Process to Service

We talked about the business process steps. Some steps, such as “gain customer information”, are used by many processes. Obviously not all steps need to be automated or require information system support, but as processes are increasingly digitized an ever larger number of them do.


So, now we have the list of process steps. For each of them we need a clear understanding of what functionality they

require. The next question is then how the functionality is delivered. Is there an existing application delivering it today? If yes, how can that functionality be invoked?


At a later stage we will look at whether the existing application is migrated to the cloud or whether it remains in a traditional environment. If that is the case, web services may be used to make the actual application visible as a service in the cloud environment.


If the service functionality cannot be found in existing applications, specific software will need to be developed. Here SOA principles can be used and each service may be developed as an independent module.


What is important is to properly describe the service. This includes, besides its key functionality the information items it requires (defining which ones the service creates, uses and alters), who has access to the service, which other service it interacts with, if any and the sensitivity & legal aspects associated with the service.


The service lifecycle also has to be described. When is the service created, who is responsible for it, how are changes managed, etc. should be defined. If we are in a pay per use environment, the price for using the service should also be defined.


When moving to cloud, companies should set-up a service portfolio management function. That function is responsible for maintaining the service catalog and managing the lifecycle for all services provided. I’ll come back to service portfolio management in one of my next blog posts.


Services and mobility

In the new style of IT I talked about several times already, cloud is only one component of the current IT revolution. The use of mobile devices is another. Increasingly users want to address their information from a tablet or mobile phone. They download applications for that purpose and expect them to deliver all required functions.


So, the real question is how we get mobile applications interacting with cloud based services. Rather than talking theory here, let me use an example to illustrate what that means and how it works.


You’re a regular traveler and manage your travels through your mobile phone based airline application. First you will book a flight, you may then choose a seat on the plane and finally check-in. When you reach the airport you want to know if the flight is on time, and at what gate you need to board. After the flight, you may be interested in checking whether you redeemed the associated miles. I know of several airlines giving you these facilities from within one app.. Obviously, the actual functionality is not performed in that application. What happens is that the application invokes a different cloud service at every step in the process. This is where systems of engagements and systems of records interact. When you book your flight, you interact, through the mobile application, with several services exposed from within the booking system. You’ll probably have a service that identifies you, one to find flights, one to check for availability, one to calculate pricing, one to do the actual reservation and one to pay with your credit card. If you request a special meal, you may interact with the catering system, if you choose a seat, with the flight reservation system, if you are looking for flight information, with the scheduling system etc. Each system, whether cloud based or not, exposes services that are invoked by the mobile application through APIs.


The mobile application focuses on managing the process, invoking the appropriate service in the back-end at every step. Fundamentally this is not so different from the old client/server model. However, information will travel back and forth between the mobile device and the services. As this data may be subject to privacy and other legal constraints, defining how the information is secured during its journey between the cloud environment and the mobile application. And this can be done through proper encryption. But the data should also be protected while on the mobile device as we have no control over what other software is present. This is a new problem, unknown in the client/server world. Running enterprise mobile applications in a special, secured container can help address this. HP Anywhere is such environment.



To take full advantage of cloud and go beyond delivering a fast way to provision infrastructures, you should take the time to understand the business processes performed in your enterprise. Those will serve as a basis to define the services you need to expose to the users in the service catalog. And then you can implement the cloud environment. An important side benefit of such effort is that you not only review and simplify business processes along the way, but also that you ensure they are executed consistently, reducing noncompliance risks drastically. 

0 Kudos
About the Author


Nov 29 - Dec 1
Discover 2016 London
Learn how to thrive in a world of digital transformation at our biggest event of the year, Discover 2016 London, November 29 - December 1.
Read more
Each Month in 2016
Software Expert Days - 2016
Join us online to talk directly with our Software experts during online Expert Days. Find information here about past, current, and upcoming Expert Da...
Read more
View all