The Metastorm BPM team is one team of many who are working on Cloud initiatives within OpenText.Cloud supports rapid delivery of vertical solutionsCloud presents a oppertunity to engage with out customers
Cloud is an investmentPAAS has challenges where the platform is highly open and extensible
Application Changes – changes to support the Cloud Platform + changes to allow easier deployment and management.
Windows Azure fabric abstracts andmanages physical and virtual machines– taking care of provisioningWindows Azure services provide additional capabilities your cloud applications can make use of (SQL Server, Identity Management, Azure Storage, Appfabric, Business Intelligence Services, Distributed Cacheing, Content Delivery Network)Automatic OS and service patching, redundancy.
Compute – we host the BPM process runtime (engine) in a Web Role and have the ability to scale to meet user load (transactions per second).Storage – By default large files are stored in Windows Azure Storage (leveraging availability, scalability and low cost)SQL Azure – Azure handles availability and scalability for us.
Changed ourapplication to use Azure Blob Storage. Add support for archiving (moving from DB Storage to Blob/File storage, and maybe to on premise storage).
MS will only support 2 instances
There is no such thing as file system storage
It is possible to end up with one single code base supporting both on premise and Cloud deployments
Open Text Direction to to the Cloud with Microsoft Windows Azure
Why Cloud? Cloud is a major focus within OpenText Supports rapid delivery of vertical solutions Opportunity to engage with out customers Many customers expect “on-cloud” as an option
What‟s driving customer demand? Minimize infrastructure concerns Quick start-up (no hardware / software provisioning) – all this is handled by the host. Low up-front cost Easier disaster recovery and storage management Elastic Computing (pay for what you need only when you need it) Global Distribution, Geolocation and Cacheing
Process Design / Deployment Azure Services Platform BPM Designer
Our initial cloud offerings? A SAAS platform delivering pre-packaged BPM solutions on Windows Azure Operated by OpenText Initially Single Tenant Load Balanced / Redundant infrastructure
What might follow? A PAAS environment for customers/partners to run up and manage in the Cloud (single tenant only) Multi-Tenant (for shrink wrapped „low touch‟ solutions with low cost of sale) Automatic Elastic Computing support (driven by application instrumentation)
Business Challenges for ISV‟s New disruptive business model (ISV -> Service Provider) New operating model for Customer Support (Operations) SAAS -> PAAS (if a business case can be made to support the investment required) Billing (how to charge customers to cover variable costs and still be competitive) Defining a Service Level Agreement (which aggregates SLA‟s from the services you rely upon)
Cloud Disadvantages Perceived lack of control of application environment – particularly where sensitive data (health, banking) is concerned. Someone else worries about OS patches, but application testing is still our responsibility. Higher Costs Internet Latency Application adaptations are required
Azure components we use Compute: Single Role Type – Web Role Storage: Azure Blob Storage – Installation and Process Attachments SQL Azure: BPM System, SBW System, BPM Process Data
Maximising ROI Optimise Performance – to minimise the number of Azure instances needed Add support for auto scaling (when system detects it is under load) Operate in Multi-Tenant mode (if possible) Minimise chattiness between components Understand the characteristics of your application (and charges incurred) – e.g data storage requirements.
Sweet Spot for Cloud Applications Off the shelf „light touch‟ software applications requiring little or no modification (with low cost of sale) Self-contained applications with limited (or no) dependence on on-premise data / systems Self-contained enterprise applications supporting large numbers of distributed users
Moving MBPM onto Azure Automated cloud application deployment (for Development Purposes) from build server Scripts to auto deploy platform and provision new role into live environment using Azure Services Management API Removed reliance on MS Distributed Transaction Co- ordinator (DTC) – any complex roll-back of distributed transactions must be written in custom code. Changed storage of large images and documents from Database (SQL Server) storage to local BLOB storage Abstract any application functions that require file system access to use Azure Storage.
Other Adaptations Add support for service management and monitoring Add support for auto scaling (based on load, or based on calendar events / marketing initiatives) Add multi-tenant capabilities (if your applications serves as a platform and requires user isolation and data separation) SQL Azure does not support CLR stored procedures (for good reason) – use standard (non .NET) stored procedures instead. Management of configuration settings (Azure Config) – setting changes are rolled out without having to re- provision all role instances
Summary Opportunities Opens new revenue streams Closer relationship with customers Competitive advantage Challenges Technical Operational Business