The Cloud And Software As A Service

What does the cloud mean to a Software as a Service (SaaS) company?  This article will give you a case study on how the IBM SmartCloud™ enables a company to be cost effective in a highly competitive market as well as be responsive to customers, provide high reliability and high performance.

The Company

Open 4 Business Online (O4BO) is a startup that provides Open Source Software (OSS) as a subscription service to the Small to Medium sized Enterprise (SME).  The OSS software chosen was the Community Editions of: OpenBravo™ ERP; Pentaho™ Business Intelligence and Analytics; Liferay™ Portal; and Sugar CRM™.  These were chosen because they already support some level of integration and because they are leaders in their markets with very active developer and user communities and forums,  as well as commercial support and premium licensed versions to compliment and extend the OSS Community Editions. These were also chosen to address the common needs of the majority of SMEs in a way that does not require an IT staff.  All they need to do is sign up and start using the software on the web.

The Problems

The first problem was how to deploy per tenant.  OpenBravo is big, its footprint is 500+mb and the supported databases are equally big.  Pentaho, Liferay and Sugar have much smaller footprints, but they are complicated by having different technology stacks where Pentaho, Liferay and OpenBravo are Java using a Servlet Container like Tomcat, and Sugar CRM is the Apache/PHP stack.  This is further complicated by the likelihood of not all tenants will subscribe to all applications.  Fully any tenant may subscribe to just one application or any combination.

The next problem is databases.  The default databases for the applications are all different, and no single database is supported by all four.

The next problem is tenant management.  The public web site needs to accept subscriptions, provision tenants and generate billing for any or all the  applications.

A problem by choice is the desire to allow for per tenant integration not only between the subscribed applications, but to integrate tenant legacy data and applications outside the four applications.

The Solutions

Multi-Tenancy

Corent Technology’s Multi-Tenant Server™ (MTS) product line with its SaaS-Cockpit™ was chosen to allow for true multi-tenancy which has been touted by none other than Marc Benioff of SalesForce.com and Zach Nelson of NetSuite.com as being a key factor in their success. The Corent Technology approach is a Middleware approach with a thin application “wrapper” agent that requires minimal (if any) modifications to the applications themselves. The SaaS-Cockpit application in Corent’s product line, provides full tenant and user management for all applications running under it.  While the MTS product supports all data models from Shared Everything to Database Per Tenant, the Per Tenant Schema data model was chosen to allow for easier per tenant customization.

Although Liferay could have been converted to MTS operation, the fact that Liferay was already Multi-Tenant led to a decision to integrate Liferay with MTS/SaaS-Cockpit through the Cockpit REST API.  This allows Liferay with its already rich Organization and User management with Roles to be retained.  When an Organization is added to Liferay a new Tenant is added to MTS and likewise Users added to an Organization are added to the Tenant in MTS.  Full CRUD synchronization between Liferay and MTS is done via the REST API.

Integration

There is already some level of integration between OpenBravo, Pentaho and Sugar CRM and that level of integration is retained and automated, such that new subscribers will find OpenBravo, Pentaho and Sugar CRM are already integrated as if they had downloaded all three and configured them to work  together.  Pentaho for example will have all the Data Sources for both OpenBravo and Sugar CRM pre-positioned in the Pentaho directories.

Data integration beyond the existing integration points and with legacy tenant data is accommodated by Mule ESB™ that is pre-configured with producers and consumers for all CRUD Events in the subscribed applications with sources for implementation by any tenant.

All applications are migrated to DB2 where an existing DB2 Image on the IBM SmartCloud can scale up as needed.

Customization

Per Tenant customization requires the ability to change the processing of an event on a per tenant basis.  While beyond the scope of this article to provide a detailed explanation, a dynamic event processing system was developed by Open 4 Business Online that allows for any event in any of  the subscribed applications to be intercepted and handled in a custom way on a per tenant basis.

The Liferay Portal with its JSR-168/268 Portlets, gives a way to easily create custom user interfaces on a per tenant basis.

Operations

Here the IBM SmartCloud™. PureFlex™ and PureSystems™ components combine to give O4BO  reliability, high performance and cost effectiveness. IBM PureSystems impacted O4BO in the following ways.

Consolidation

IBM Applicaiotn Portfolio Management (APM) manages application assets in patterns that can be easily reused and redeployed, even on a per tenant basis, giving continuous application delivery with reduced cost and risk.

Optimization

IBM PureSystems provides integrated development tools for multiplatform development and testing to accommodate the different technology stacks of the chosen applications.  This is particularly helpful with Per Tenant Customizations.

Innovation

IBM Application Lifecycle Management gives end-to-end visibility and traceability across teams, projects, platforms and processes.  With the multiple technology stacks and the desired per tenant customization, the value in delivery of quality software and services faster and cheaper through great team collaboration, automation and governance translates into competitiveness.

Cloud Management

DevOps that provide a continuous build, integrate, and deliver strategy provides a dependable automated deployment and application workload management are the result of IBM PureSystems overall integration of IBM SmartCloud, PureFlex and PureSystems.

When the load goes up, the system automatically adds processing power.  When additional processor images are added, load balancing keeps things running smoothly.  Because the applications are all Multi-Tenant, the images are all the same and can easily be distributed and load balanced.

SaaS Operations

While IBM SmartCloud, PureFlex and PureSystems does the Cloud management, the SaaS-Cockpit provides the Operations Management, Dashboards, Reports, Subscription Management, Billing Capture and Tenant Management for a complete SaaS Business Management solution.

About Corent Technology

Corent Technology is a leader in SaaS transformation. Corent’s Multi-Tenant Server™ (MTS™) and SaaS-Cockpit™ provides a comprehensive path to SaaS by providing a software “plug-in” approach to instant transformation of conventional, single-tenant software applications into robust multi-tenant SaaS (Software as a Service) solutions. Corent’s SaaS enablement platform was announced the winner of 2012 Best Cloud Product of The Year Award, at TechAmerica’s 19th Annual High-Tech Innovation Awards.

About IBM Smart Cloud PureSystems

http://www.ibm.com/ibm/puresystems IBM PureSystems are an important addition to the IBM SmartCloud strategy. PureSystems provide a “ready to go” cloud environment that can be setup in as little as 4 hours, providing infrastructure-as-a-service and platform-as-a-service capabilities.