Our world is increasingly becoming digital. Information Technology is creeping into everything we touch. Our cars are connected, our TVs are smart, our fridges identify the goods we need to buy and who knows what information our microwaves will soon be exchanging. Our surrounding becomes new sales vehicles for enterprises. API’s replace web pages and API management is becoming the next generation CRM. You may believe we aren’t there yet in your industry and you may be right. But it’s getting time to prepare yourself. What can you do to get ready?
Where the digital and traditional business intersect
To deliver new services to clients, your enterprise will need to have functionality delivering that service. The business will define the service and it will be up to you to establish whether existing functionality can be re-used or you have to develop everything from scratch.
This is actually a fundamental question. Will your new digital business run in parallel with your existing activities or will it be integrated. You may believe running them separate may be the easiest, but in most enterprises a large portion of the delivery activities will end-up being common. So, having two environments managing a common set of functionalities is probably not very cost effective. This leads you to having to define where both intersect. Where do the digital and the traditional business come together? Which are the key applications you will need to manage both? How will those applications have to change to be able to do that? This requires you to first understand your application portfolio, then identify your key applications to finally establish how they need to evolve.
Understand your application portfolio
In previous blog entries, I highlighted an approach to analyze your application portfolio using a combination of Geoffrey Moore’s “Core versus Context” approach and the separation in systems of record, engagement and innovation. Systems of engagement and systems of innovation applications are the ones that will directly be affected by the new digital business approaches you are asked to put in place. Which applications contain the functionality the business wants to re-use within the frame of the new digital business approaches they want to implement? These are the applications you should take a close look at as they may have to be changed so the new business models can run smoothly.
And look at your own behavior. In a digital world, if a transaction is not executing smoothly you abandon it. Think about the amount of apps you removed from your mobile phone because they were either too cumbersome to use or too slow. The same applies to the digital business approaches your company is putting in place. So, the behavior of your back-end applications has a direct impact on the success of the new business model. This is why it is so important to understand what applications will be affected as a result of the launch of this new model. It’s also key to understand how the demand pattern for the application will evolve.
Identify the core and context applications. For the context ones, ask yourself whether you will keep the existing one or replace it by a COTS package or a SaaS service, but then for all utilizations? As discussed in the portfolio analysis, the core applications contain your enterprise differentiation, while the context ones are required but provide standard functionality your competitors also have. Transformation requires focus, so knowing what to focus on will allow you to move fast.
Expose the functionality
A digital business model runs around one or more business processes that are executed with support of given functionality. That functionality, contained in the applications you highlighted, needs to be exposed so it can be called upon. Here is where APIs come in. The process will access the functionality by placing an API call that will invoke the actual functionality.
This works well when you are running the business process. This means that the end-to-end digital experience is within the control of your company.
Your role in the digital economy
But this now leads to another interesting question? What is your role in the digital economy? There are three different roles:
- Service consumer, an entity that consumes digital services provided by others. Most of you are consumers and your mobile apps invoke services provided by others.
- Service providers, entities that provide services. This can be individual services, in other words, functionality accessible through an API, or a group of services with an associated business process. Many banks, through their online banking, are service providers.
- Service brokers, bringing together consumers and providers. This can happen just through a repository of services, or by developing business processes containing services delivered by multiple providers. Many of the current start-ups are brokers. Companies such as Amazon, Paypal and others focus on enabling providers to interact with consumers.
Obviously you can combine multiple roles. There should be a clear lead role however. If you position yourself as a service provider, you may want to expose your APIs not only to your own business processes but to others also. This is where an API gateway becomes handy. As stated previously, that gateway becomes your digital storefront. Understanding how your clients interact with your applications enables you adapt your services to demand.
When exposing functionality contained in your applications, ask yourself the question whether you only expose it for internal use or also for external. In the latter case, make sure your APIs are simple and intuitive so developers can easily call upon your services.
Transform your applications
The user experience is a critical element to keep in mind. Ensuring your applications respond fast, regardless of the number of concurrent users needs to be guaranteed. This is why you may want to take full advantage of a cloud environment and scale-up/scale-down certain modules so they continue responding at the same speed. Think through your business process and identify where you can decouple blocks of functionality. Use message queues or other enterprise integration bus technologies to buffer requests where possible so your back-end functionality can execute the requests at its own pace. For example, if you have a payment to execute, you want to capture the payment immediately and give the consumer what he wants. However, presenting the payment to the bank may be done at a different pace. Obviously you will need to find a mechanism to identify whether the information provided is for a genuine account, so the look-up may have to be immediate. The actual financial transaction may be delayed by some time without harming the business model.
Think end-to-end, act by service
When preparing your applications for the digital enterprise you have to think through the whole process and identify which functionality is required at which moment. The decoupling of portions of the process (resulting in loosely coupled modules) has to be thought through and its implications identified. Make sure that each service is self-sustaining. In other words, ensure it rounds off a coherent set of functionality and you will be prepared for the digital business.