Platforms for developing SaaS applications – A Comparison
Monday, August 23rd, 2010Force.com
Two huge benefits start to come into focus when you look across Force.com platform apps in general: they’re both data-centric and collaborative.
Data-Centric Apps
Because the platform is centered on a database, it allows you to write apps that are data-centric. A data-centric app is an application that is based on structured, consistent information such as you might find in a database or an XML file. We can find these data-centric apps everywhere, in small desktop databases like Microsoft Access or FileMaker, all the way to the huge systems running on database management systems like Oracle or MySQL. Unlike applications that are built around unstructured data, like plain text documents or HTML files, data-centric apps make it easy to control, access, and manage data.
For example, consider an exercise such as trying to determine the total sales for a month from a set of Microsoft Word-based contracts versus a set of contracts in a simple database. Whereas it takes a lot of effort to open each Word document, find the contract total, and then add them all together, if this data is stored in the database of a data-centric app, we can more efficiently get the same result by issuing a single query. While most people don’t need a data-centric application to keep track of anything other than contacts, photos, or possibly music, companies of all sizes constantly need to query and aggregate their large amounts of data to make fast business decisions. As a result, the data-centric nature of the Force.com platform makes it the perfect platform to build and host business applications.
Collaborative Apps
Because the platform can be accessed by multiple users at the same time, it also allows you to write apps that are collaborative. A collaborative app is an application with data and services that are shared by multiple users in different locations. Unlike more traditional forms of software that are installed on a single machine and are hard to access from a distance, collaborative apps on the platform can be accessed from anywhere in the world with only a Web browser. This makes it easy for teams to work together on activities like selling a product, managing a project, or hiring an employee.
In addition to easy access over a Web browser, a number of built-in platform features also facilitate productive group collaboration:
· The platform’s security and sharing model allows you to finely control a user’s access to different data
· Workflow rules allow you to automatically assign tasks, update data, or send email alerts when certain business events occur, such as the creation of a new record or a change in the value of a record field
· Approval processes allow you to set up a sequence of steps necessary for a record to be approved, including who must approve it at each step
Collectively, these features provide a framework for sharing apps across groups, divisions, and entire corporations without relinquishing administrative control over sensitive data.
The Technologies Behind a Force.com
|
Technology |
Description |
|
Multitenant architecture |
An application model in which all users and apps share a single, common infrastructure and code base |
|
Metadata-driven development model |
An app development model that allows apps to be defined as declarative “blueprints”, with no code required. Data models, objects, forms, workflows, and more are defined by metadata. |
|
Force.com Web Services API |
An application programming interface that defines a Web service that provides direct access to all data stored in the Force.com platform from virtually any programming language and platform. |
|
Apex |
The world’s first on-demand programming language, which runs in the cloud on the Force.com platform servers. |
|
Visualforce |
A framework for creating feature-rich user interface for apps in the cloud. |
|
Force.com sites |
Public websites and applications that are directly integrated with your Salesforce.com organization – without requiring users to log in with a username and password. |
|
AppExchange directory |
A web directory where hundreds of Force.com apps are available to Salesforce.com customers to review, demo, common upon, and/or install. Developers can submit their apps for listing on the AppExchange directory if they want to share them with the community. |
Microsoft Windows Azure Platform
One of the main functions of Microsoft Azure is to provide platform for Software as a Service (SaaS) applications and with increasing customer demand, IT Solution Providers are turning to SaaS versions of their products. The creation of an efficient SaaS application requires the support of an efficient cloud- based service that can be used simultaneously by various customer organizations. Azure performs its role creditably in this aspect.
· Cloud computing is versatile, wherein it can be an add-on service to existing on-premises application. This method is comparatively cheaper and increases operational functionality of the existing system.
· Azure definitely provides ease of use and administration with a minimal up-front commitment and ability to increase or decrease computing resources used by the client applications. This ensures availability of better technology with lower costs.
Technology:
Windows Azure consists of 3 main parts
1. A compute service, which runs applications
2. A storage service, which stores data
3. A fabric, which supports the compute and storage services
In order to use the compute service, a developer creates an application using combinations like C#/VB and .NET framework and is later implemented as Web roles, worker roles or both. Web roles accept web requests and are created using a technology like ASP.net which works with Internet Information Services (IIS).
Irrespective of technology, Azure provides built-in hardware load balancing across all Web role instances in a particular application. Worker role instances are for functions that doesn’t respond directly to web requests and is just a Windows application with a main (), running indefinitely. This model allows creating scalable applications where Web role instances accept requests, then pass them to Worker role instances to be processed.
It is to be noted that each instance irrespective of Web or Worker roles runs on its own Virtual Machine (VM). This provides for isolation and clear knowledge of application performance as there is a definite mapping between VMs and processor cores. The developer simply uploads an application to Windows Azure with an XML configuration file specifying the number of instances that need to be run. Subsequently, it is Windows Azure and not the developer who creates the required number of VMs and monitors their execution. In the event of failure of an instance, Azure will start a new one ensuring that the specified numbers of role instances are always running. This work is done by the Fabric Controller software that’s in charge of all machines in a particular instance of the Fabric. When an application owner increases or decreases the value of instances in the configuration, Azure automatically creates or shuts down VMs to match the new setting.
Being Windows apps, developers could provide templates for creating cloud applications as Web roles, Worker roles or both using Visual Studio IDE. The developers can also use Development Fabric, which is a part of Azure and run on the local machine, to create the code and do testing, before uploading the application onto Windows Azure.
Azure provides its own mechanisms for storage and retrieval of data. The 3 available storage options can be accessed via standard HTTP GETs, PUTs, and DELETEs.
The three kinds of Windows Azure storage are:
1. Blobs: This allows storage of large binary objects, such as videos and images.
2. Tables: provides for storage of highly scalable entities (not relational tables).
3. Queues: allows sending and receiving of messages, such as between an application’s Web role instances and Worker role instances.
It has to be noted that all these storages can be accessed by applications that are not on Azure Compute Service. On-premises or hosted applications can also store and access data like large video files, as Azure storage blobs.
The Windows Azure platform also contains SQL Azure Database (earlier known as SQL Data Services), which provides standard relational storage based on SQL server technology.
EC2 for SaaS
iWay Software’s robust, enterprise-scale integration solutions are available on demand. With iWay SaaS on Amazon Elastic Cloud Computing (EC2), organizations can more conveniently and economically leverage powerful, cutting-edge integration technologies – without the need to install them on-site or devote IT resources to ongoing maintenance.
Fast Deployment with Minimal Administration
iWay’s SaaS-based solutions will be pre-installed and pre-configured as Amazon Images (AMIs) and fully hosted by Amazon, where they can then be made immediately available to subscribers. Clients simply select the desired operating system (Windows or Linux), choose the tools and components they wish to use, and indicate their virtual hardware preferences, such as CPU, memory configuration, and storage sizes.
Unparalleled Security
iWay SaaS on Amazon EC2 offers end-to-end integration in a highly secure environment. The iWay RVI Secure Proxy Service – using the secure AS2 protocol – allows for fully protected robust and secure connections between Amazon EC2 instances of iWay solutions and all internal corporate back-end applications and systems – such as SAP or DB2. All integration activities are processed and executed across well-regulated channels, which utilize proxy gateways, firewalls, virtual private networks (VPNs), and other proven techniques to preserve the integrity of client data at all times.
A Flexible and Scalable Deployment Model
On-demand solutions from iWay Software are not just powerful and economical; they’re also flexible and scalable. All instances of iWay Software have already been installed and tested, so clients can begin using new tools and components, cancel services they have already subscribed to, or add new users to their environment at any time.
iWay SaaS supports various integration models, to allow for:
· Secure connections to internal applications, systems, and databases within the corporate firewall
· Access to Internet-based Web servers and databases
· Integration with other SaaS-based solutions such as Salesforce.com
Additionally, iWay SaaS for Amazon EC2 solutions are fully customizable, and can be quickly and easily configured by iWay consultants to address unique or specific client requirements. As demand increases, additional instances may be brought online in a very short amount of time.
Convenient Any Time, Anywhere Access
Our SaaS-based tools can be easily deployed as Web-based applications. This provides users with access at any time, from any Internet-enabled location around the globe. Leverage the integrated services from any enabled device regardless of location.
Maximum Affordability
Unlike on-site integration solutions, which impose licensing fees for each user no matter how infrequently they use them, iWay’s SaaS-based tools offer a budget-friendly fee structure based solely on hourly system usage.
WebFOCUS Business Intelligence Integration
Advanced reporting features using Information Builders’ WebFOCUS business intelligence (BI) platform are readily available via the iWay SaaS solution. Leverage the capabilities of BI and integration with the simplicity of a cloud solution.
Wipro w-SaaS platform
Wipro has built w-SaaS, a platform for rapid SaaS enablement and deployment on cloud, using some of the commonly accepted trends in software engineering and open standards. The w-SaaS platform comprises of the following components:
· SOA-based services framework for SaaS enablement
· A Cloud Provisioning Fabric (CPF) to enable seamless portability between different clouds
· Unified Admin Console for platform services management, cloud management and tenant provisioning
Oracle offers a comprehensive, open and integrated set of technologies to build, deploy and manage applications to ISVs. It is also the platform of choice for SaaS deployments with eight out of ten leading SaaS vendors delivering business critical applications on Oracle.
The w-SaaS platform offers the following features:
Non-intrusive SaaS enablement
The SOA based framework services are available outof-the-box for SaaS features like multi-tenancy, usage metering, billing, user management etc. These services can be consumed by the application in a non-intrusive way to operate in the SaaS model.
Seamless Cloud Deployment
The CPF provides features to create deployable images of the application and deploy them on a cloud infrastructure. The images created can be converted from one format to another thus allowing portability between different underlying clouds. The CPF also provides ability to provision hardware nodes into the cloud and to dynamically provision virtual machines on these hardware nodes.
Easy Platform Administration
The unified admin console provides the ability to administer and manage both the cloud platform and the SaaS applications. This also gives a unified look-and-feel for cloud management regardless of the underlying cloud.
Wolf
WOLF is a browser based On Demand Platform-as-a-Service (PaaS) for rapidly designing and delivering database driven multi-tenant Software-as-a-Service (SaaS) applications. WOLF is a Cloud Computing platform architected to help you design, deliver and use Software as a Service (SaaS) applications using only a web browser.
SaaS applications developed on the platform are endowed with a single instance multi-tenant architecture. They are instantly integrated into an automated provisioning system which handles the allocation of network resources, database creation and account information. The robust User-Role management system makes it easy to create users & roles and assign rights to various modules of your application.
WOLF Environments
Browser-based 128-bit encrypted secure Designer and RunTime environments.
Technology
WOLF Platform-as-a-Service (PaaS) uses the power of the following technologies: AJAX, XML, C# Engine, IIS and Microsoft .NET environment and supports Microsoft SQL Server and MySQL database.
OnDemand Infrastructure
Hosted & managed by i-web, a recognized leader in high-end secured hosting with more than 12,500 customers spread across 130 countries. WOLF also offers application licenses for private server deployment of your own choice.
|
Forms |
|
|
Search |
|
|
Business Logic |
|
|
Display Modes |
|
|
Reports & Charts |
|
|
Integration |
|
|
Customization |
|
|
Security |
|
|
Scheduling |
|
|
Administration |
|
|
Minimized Lock-in |
|


