Best Practices for Cloud Enabling Apps, Part Two
Independent Software Vendors [ISVs] offering on-premise configurations for their Line of Business [LOB] applications are exploring ways of ‘cloud enabling’ their products.
In our last blog on cloud enabling your applications, we looked at the architecture and the hosting environment; this time, we look at:
- Preparing for registration, management and billing.
- Creating application templates.
Registration, Management and Billing Services
Well built applications that are hosted on a next generation hosting infrastructure, need to be easy for users to consume. To make immediate inroads into the cloud marketplace, your applications should be easy for users to evaluate, purchase and begin using straight away. Consumers expect cloud based software to require minimal manual intervention, so you should provide for the following:
- Sign-up Forms – This may seem obvious to ISVs, but you should provide customers with a straightforward, browser-based method for getting started with your applications quickly. Sign-up processes that require anything more than completing a simple form often turn potential customers away.
- Management dashboard – There are business benefits in allowing customers to make changes to the appearance or functionality of your applications. Not by completing a series of shell scripts or REST API calls, but by enabling users to view and edit configurable values. A good management dashboard should also present other key capabilities such as security definitions, user provisioning and billing options.
- Importing/exporting Data – You should consider how new customers will be able to migrate old production data onto the new instance of your cloud application. Avoid manual keying as this could potentially be an obstacle to adopting your new product. A data import tool makes your applications usable straight away, and creates instant data gravity. As well as supporting simple data import, you should include a method for pulling data out; locking users in to your cloud platform may be tempting, you could be damage customer relations and make simple integration more difficult.
Creating Application Templates
Unless your cloud applications are low-cost and uniform, allowing each customer their own Web application and database instance (potentially sharing the underlying infrastructure), will optimise setup. Each customer may wish to customise your applications and offering this flexibility in provisioning can be a challenge. Your applications may consist of a database server, with two web servers in front in a building block configuration. Deploying multiple blocks with minimal friction will help avoid excessive manual set up and help make your cloud applications more user-friendly, more marketable and, ultimately, more profitable.
You will only be able to do this at scale if your cloud platform has the ability to handle server scale-out automatically or at least with minimal manual intervention.
CSPs that operate a dedicated program of support to software developers and ISVs help solve these challenges by providing a flexible infrastructure that enables you to create templates for your application by installing servers in groups. This allows you to create templates for application building blocks and replicate them quickly and easily over time as your user-base grows and you scale the number of SaaS deployments.
These platforms let you package web applications for provisioning as a service, with automation capabilities built into the environment, making distinct per customer environments completely manageable. Providing for this will enable personalised billing, scale thresholds, and configuration.
Automating maintenance activities like OS upgrades and patching templated groups of application building blocks can be achieved by using scripts.
In our next blog for ISVs on cloud enabling your applications, we’ll be looking at:
- Performance and Scaling
- Data Backups
If you’re an ISV that is looking to take advantage of cloud opportunities, why not book a place at our forthcoming event: Developing the Cloud: Enabling ISVs to Maximise Cloud Market Opportunities.