//
you're reading...
Application Server Container, Cloud Applications, General, Java/Cloud, SaaS, SMART/Lean development, Tips&Tricks

Need for a Saas Application Platform similar to J2EE Container

SaaS is the cutting edge technology in the current product landscape. With an increase in the adoption of SaaS products by enterprises, more and more ISVs are trying the SaaS delivery channel. But, delivering a SaaS product cannot be considered as just a rebranding exercise of existing products. Products mostly have been architected, written, refined and customized over years with an underlying assumption that “an isolated runtime environment (i.e., isolated customer data and code execution environment) is available for each customer”. The current trend is to offer SaaS as a multi-tenanted product. This challenges the underlying assumption of the existing products. Architectures need to be re-thought to ensure that running the product in a non-isolated runtime environment for a customer does not introduce conflicts between different customer features. Moreover products have been created to scale for a single enterprise load. In a multi-tenanted environment, the same product needs to scale for a higher loads. In other words, existing products have been written as “Server Applications” and not “Cloud Applications“.

The existing application containers (Read J2EE) have been architected and designed for developing “server applications”. These containers provide ability such as clustering, queues, pooling, data sources, resource management and so on, to abstract “technology” from product development. It was recognized a decade back that we are doing redundant function coding across “server applications”. They can be abstracted into a “single container framework” that provides the necessary features thus bring down the development effort of applications. Over the years a number of such redundant coding has been eliminated from application development by addition of more libraries and frameworks that can be included into the container framework.

If we look at what we are doing in porting products to SaaS, we find that we are in the same state where redundant functionality is being re-written, to SaaS enable products. For eg., as I have mentioned before, runtime environment isolation for each customer is a requirement for all products exposed as SaaS. This can easily be provided in the underlying container using features such as java class loaders. Similarly customization of features, feature based licensing, data isolation, data integration, higher scaling abilities all are requirements of most SaaS products.

So, why not extend the requirements of a Application Container, add the Cloud Application requirements to it and provide the features for SaaS products in the container. This reduces the time taken to port existing products to SaaS. The SMART – a Cloud Application Platform is built so that redundant SaaS features are available for Server Applications with less or practically no extra effort.

 

About these ads

Discussion

4 thoughts on “Need for a Saas Application Platform similar to J2EE Container

  1. Completely agree on the need of a SaaS application container / framework. Any SaaS application will need engineering components such as data security engine, workflow, configuration engine, etc. and SaaS operational management components like Tenant provisioning, tenant onboarding, metering, billing, etc. Having a SaaS framework will help the developers focus on building their business application on day one without having to reinvent the SaaS wheel. Techcello (www.techcello.com ) kind of frameworks help the developers focus on their business and reach to market quickly.

    Techcello is a Gartner Cool Vendor and CODiE Finalist 2013.

    Posted by Shankar Krishnamoorthy | November 25, 2013, 3:16 pm
  2. Nice article. I need the clarity on few aspects that needs to considered when we are building the SAAS platform. Can you please elaborate on this.

    Posted by Bharat Kumar Valluri | November 25, 2013, 5:27 pm

Trackbacks/Pingbacks

  1. Pingback: Transforming a server application to cloud application | Reflections - December 18, 2013

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 144 other followers

%d bloggers like this: