SAP Business One Cloud Extensions (Part 1)
One of the key strengths of SAP Business One is the ability to tailor the solution to the needs of customers using add-ons developed by our Software Solution Partners (SSPs) and our Value Added Resellers (VARs). So you’ll be pleased to know that SAP Business One Cloud still has add-ons, the scope of them has just changed slightly so they get a new name, SAP Business One Cloud Extensions.
In this post I’ll cover what SAP Business One Cloud Extensions are and what you need to consider when deploying them as part of your SAP Business One Cloud Strategy. In part two we’ll look at how you deploy extensions in the cloud.
So why the name change? The reason is simple, we wanted to differentiate between cloud add-ons and on-premise add-ons as there are multiple extension types in SAP Business One Cloud:
- Compatible add-ons – These are add-ons that do not have fully automated lifecycle management within the SAP Business One Cloud environment. This means that they may need manual configuration outside of the SAP Business One Cloud Control Center. Typically these add-ons will be on-premise add-ons that have been made compatible with any changes in the API to support the cloud but not fully migrated to take full advantage.
- Add-ons enabled for Lightweight Deployment – These add-ons have been designed to take advantage of the ability to fully automate lifecycle management with the SAP Business One Cloud Control Center. Depending on just how extensive the integration has been it may be possible to configure a large amount of the add-on from within the SAP Business One Cloud Control Center, removing the need to configure the add-on in the SAP Business One client thereby speeding up deployment and reducing complexity. These add-ons can also be certified by SAP for use with SAP Business One Cloud.
More information about SAP Business One Cloud Extensions, such as the certification process, a list of certified extensions etc. can be found in the SAP Business One Cloud section of the PartnerEdge.com
When developing the SAP Business One Cloud architecture SAP did a lot of work to ensure that it was possible to run multiple extensions from multiple providers (and even multiple versions of the same extension – key when it comes to supportability) within the same service unit in a SAP Business One Cloud landscape. Even so this doesn’t mean we should deploy them to our tenants without careful attention.
One of the key reasons being that each extension is different and we should consider how an extension uses the infrastructure we provide it. Let’s put this into a pricing context, should we charge the same price for the infrastructure required for a an extension that consumes 300MB of RAM versus one that consumes 1GB? The knowledge of the resources consumed by an extension is not just important for deciding pricing, we also need to know so that we can accurately size the resources in our landscape.
How you price for the infrastructure required to run extensions is entirely up to you but let’s look at some possible strategies. We could decide to tailor the price for each extension individually but this could make the pricing to our customers more complex, and when it comes to cloud we are trying to make the complex simple for our customers!
One thought is to categorise extensions into different pricing levels, e.g. 1-3 with 1 being the least costly and 3 being the most costly. For instance an extension that consumes an additional 150MB of RAM over the core SAP Business One client process is categorised in Level 1 whereas an add-on that consumes an additional 1GB of RAM is categorised in Level 3.
Doing this gives the ability to calculate the total cost for each user easily based on the extensions used and provides a predictable and transparent structure to our customers. Some partners even include the first Level 1 extension in the base infrastructure cost as customers typically use at least one extension.
As well as the obvious infrastructure cost there are hidden costs too. With each upgrade of SAP Business One we perform in the cloud (see my previous post here) will need to consider the impact on the extensions our tenants are using. This impact ranges from the small, e.g. no changes needed at all, to large when extensions follow a major upgrade path of their own. In running a multi-tenant environment where the tenants in a service unit are running the same version of SAP Business One (preferably the most current to ensure they are getting the most benefit from the application) how do we handle an extension that a tenant is running that has not yet been upgraded but it’s author? What about the testing process of an extension running against a new release of SAP Business One?
When we start to consider all of potential impacts you may decide that you are going to need to introduce some level of governance to control which extensions you deploy in your SAP Business One Cloud landscape. There is no right or wrong answer in how strict or otherwise you want to be in deciding the level of control, the trade off is between flexibility and cost/efficiency in running a SAP Business One Cloud. Ultimately it is for each partner to decide what is the best policy for their cloud however in order to try to create some guidelines you may want to consider the following aspects for your policy:
- Decide what type of extensions you are willing to consider deploying in your landscape, e.g. only SAP Business One Cloud certified add-ons, add-ons for lightweight deployment or compatible add-ons(I make no mention here of SBO Script add-ons as these designed specifically to avoid many of the deployment pitfalls we face in the lifecycle management and resource consumption of an extension)
- Define the categories you want for extensions and decide on the pricing of each band, e.g.:
- Level 1 extensions – Up to 150MB RAM consumption per user
- Level 2 extensions – From 150MB – 500MB consumption per user
- Level 3 extensions – More than 500MB consumption per user
- Decide how a customer, consultant, sales person etc. can request the deployment of a new extension to the SAP Business One Cloud landscape.
- Collect information from the provider regarding compatibility with cloud, cloud commercial agreements (e.g. subscription pricing) etc.
- Ensure that your are satisfied with the development approach taken for extension updates, compatibility with new releases of SAP Business One etc.
- Define your own testing procedure for each new extension, to include:
- Resource consumption
- Compliance with your cloud infrastructure (interaction with the resources in your cloud landscape – especially important if an extension has not been adapted for the cloud fully and doesn’t conform to the SAP Business One Cloud guidelines for extensions.)
- Based on the outcome of your testing use the metrics to classify your extension into levels you have decided on.
- Publish the pricing to your sales team so that they can quote effectively for new customers.
I’m sure that you will think of many other things and that your approach and policies will evolve and change over time, as your experience of running customers in the cloud grows. This post isn’t meant to be an “must do” list of working with SAP Business One Extensions, it is instead meant to provide some food for thought when you start working with them.
We are work with partners all the time to share best practice for different aspects of SAP Business One Cloud landscapes, so if you have any thoughts on the above or any related topic please let us know.
In part two of this post I’ll look at how you manage the lifecycle of extensions in the SAP Business One Cloud Control Center.
I’ve been working at SAP with SAP Business One for the last 9 years in a variety of roles. Currently I look after SAP Business One Cloud and spend much of my time working with partners to help them take advantage of the new and exciting opportunities that have emerged since it’s release. You can follow me on Twitter @joelaharris if you want to hear more!