Home Services Partners Company
7 Keys to Building and Deploying a Successful SaaS Application

7 Keys to Building and Deploying a Successful SaaS Application

April 09, 2010 0 Comments

Colleen in her blog post wrote about the 4 key things you want to focus on when transitioning your business to a SaaS model. She shared with you how you need to think about the pricing and packaging, about the infrastructure requirements and cost structure, about relationship with the customer that you are selling the service to and how that differs from selling them product, and lastly about the companies that with which you need to partner. And while in my experience, most Application Partners (ISV's if you prefer) that I talk to 1st think about the fundamental changes that SaaS means to their business, and secondarily about what it means to the application, there are some key areas that you are going to want to focus on relative to your application in order to have a successful and effective SaaS strategy that will stand the test of time. (I guess the mentality is… "If the biggest challenge with getting to SaaS is the application, I am in good shape!")

Now everyone may have their own list of what they think is important for building and deploying a successful SaaS application. Here at Progress we have over 250 Application Partners that have already deployed their application via SaaS. These are partners that we have work closely with to not only get their business to SaaS, but their application as well. Based on working with these partners, and lots and lots of discussions we have developed what we are calling the "The 7 Keys to Success". These are 7 areas that we think are so key and critical to all SaaS applications that everyone who is going to SaaS should consider them primary focus areas from a functional, architectural, and operational perspective for their SaaS-based application.

So what follows here is a brief introduction to the each of the 7 Keys. Over the next few weeks, entries will be posted to this blog that address each of the keys in more detail. In the mean time, think about what these "keys" mean to you, and how you are effectively addressing them within your SaaS-based application.

  1. User Interface Flexibility

    Being able to easily use the UI technologies that meet the needs of the customer. UIs are as much about flash and sizzle as they are about usability and function. What's clear is that there are a huge number of UI technologies in the market today, and more coming out all the time. How do you decide which ones to use? Does your application need to support more than one type of UI to meet the needs of different types of users? How do you architect your application to support multiple UIs including the ones that you don't even know about yet?

  2. Productivity

    Using a tool set and language that is highly productive and is focused and purposed for the type of business application that you are building.

  3. Operational Excellence

    Scalability, reliability, availability, business continuity, disaster recovery, hosting choices, etc.

  4. Security & Compliance

    Ensuring that data and applications are accessed only by those who need to know. Regulatory and other compliance requirements are putting a large amount of pressure on applications to incorporate more security capabilities. As an ISV, when you deploy your application via SaaS versus deploying on-premise it presents not only technical challenges from a security perspective, but introduces a certain amount of the FUD (fear, uncertainty, and doubt) factor from your tenants who need to be assured that their data can't accidently fall into the hands of other tenants. What are the most relevant security issues facing SaaS providers, and what are some of best approaches for addressing them?

  5. Multi-tenancy

    Going from 1 to N. Multi-tenancy is all about improving scalability and reducing costs by running multiple customers or tenants on a single instance of your application in such a way that they each believe that they are executing in isolation. It's all about sharing of resources. When you consider the infrastructure tier, database tier, and application logic tier of your application environment, there is actually more than one way of doing multi-tenancy because you may provide more sharing at one level and less sharing at another, so we can talk about degrees of multi-tenancy depending on how much sharing you do at each level. So what are some of different approaches to multi-tenancy, what benefits does each approach provide, and what are some of the ways of implementing each approach?

  6. Integration

    Ability to easily integrate to any other application by supporting all relevant standards. As more applications move to the cloud and SaaS, a way to extend the value and reach of your application is by ensuring that it is integrateable, but what are the most relevant standards and approaches to doing standards-based integration in the cloud, and what are the tradeoffs with each approach.

  7. Personalization and Customization

    Ensuring that the application looks and behaves as the tenant and the end-user want. Personalization focuses on doing that based on the user experience and past behavior whereas customization is performed by explicit settings. It may involve limiting or directing the information that a user views based on past requests, it may involve setting the skin of a screen for all users of a tenant based on company standards and regulations, etc. However, what are some of the types of information that you may want to personalize and/or customize, and what are some of the approach that you can use to manage this information?

    Ken Wilner






Ken Wilner

View all posts from Ken Wilner on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.

Comments are disabled in preview mode.