ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel
  • »
  • Technology»
  • Computers & Software»
  • Computer Science & Programming

Starters Guide to Developing SaaS Apps in the Cloud

Updated on February 21, 2013


There is a fantastic business opportunity building Cloud SaaS Apps, which developers like my company, are using to grow their software business. This guide provides the basic outline needed to start producing web based applications, known as SaaS Apps, running in the Cloud.

Why Do You Need to Know This?

Building software based products often have a large return on investment (ROI) making it a very lucrative business especially if you can minimize development risk. One way to reduce risk is by picking the right platform to build and standardize your products on. Consider these types of applications, and think which one you would prefer to develop for:

  • Desktop Apps. There are Windows, Mac and Linux platforms which are potential deployment models, but which operating system s do you want to support? How many different flavors of operating systems will your customer base have and how do you test all those configurations?
  • Mobile Apps. Basically all you need to develop for is the Android or iOS marketplace. However, customers expect free Android Apps and low-priced iOS Apps. The profit margin is razor thin. Often your app needs to be in the top 100 list for it to become profitable. This is becoming increasingly difficult due to the millions of apps already published.
  • SaaS Apps. You control the platform which runs on a hosted cloud-based server. Revenue model is often monthly or on an annual subscription basis. A small customer base is usually all that is needed for a profitable product so you can develop for a narrow market niche.

What Do You Do?

If you never developed a web based application before, using a model-view-controller (MVC) architecture is recommended for your product. It is fairly easy to understand and partitions your software into components used to manage backend database (M) and the frontend/edge user interface (V). The business logic or controller (C) integrates the two together into a seamless application.

To grasp these architectural terms, first know that:

  • For the Model, you will need to understand SQL and how to interface with databases such as MySQL.
  • For the View, you will need to understand HTML, CSS and the template language used by the MVC framework.
  • For the Controller, you will need to understand the RESTful HTTP architecture to parse the URL and perform the necessary queries to the model to extract data for the view.

Your application is going to run on a LAMP server Linux-Apache-MySQL-PHP server where the implementation language could be PHP, Python or any other script language the Apache web server supports.

How to Make an App

I'll assume you have researched a great idea and have potential paying customers which will lease your SaaS App on a recurring basis, so what you want to do next is to build it. I recommend using a web application frame work to reduce your development time.

While we wrote our own framework many years ago, there are many open source platforms to choose from today. The important requirement in your selection is that you probably want to run your server using an encrypted interface (HTTPS) so any framework supporting this with user authorization needs to be included.

Some frameworks which we have used and meet these criteria are:

  • CakePHP ( a PHP framework.
  • Django ( a Python framework.
  • Web2py ( a Python framework.

There are numerous other frameworks, so don't get too bogged down in researching the "right" one, just pick one if it looks like it has a great user community and great documentation. But keep in mind that some developers who write code for frameworks such as Ruby on Rails come at a premium and will stress your budget if you decide to outsource the project.

Action Steps

The best thing you can do to start SaaS App is to simply do it. Most developers have a tendency to over analyze things, think about scaling the product, fixating on every little requirement, and even the product name. Just skip the analysis step and start building a prototype. Here's how:

  1. Buy a domain name. The name is not important because you simply want to access your app via the domain instead of an IP address.
  2. Get a SHARED hosting plan with unlimited domains. Just about every host provider gives you all the necessary resources to get your app up and running. HostGator supports PHP5, Python and even Ruby on Rails apps. Don't be tempted to use a more expensive hosting plan such as a VPS or dedicated server. You can scale your app to one of these plans once you have enough paying customers.
  3. Install a Framework. Write a quick "hello world" program to see how easy it is for you to develop the code.
  4. Repeat step 3. Experiment with a second and third framework to see which one you think is better. Remember that you will need to support the app for many years to come and you want to be able to apply and reuse what you learned on your first app for future apps.
  5. Build a login system. Create a quick user login system. Here you will have to model storing and retrieving the user's account information such as user name and password. Some frameworks may provide this capability for you so it may be just a process of enabling the capability.
  6. Implement your functionality. Whatever you are building, just keep adding new functions to your app and repeat.

Eventually you will have a working prototype and hopefully a product name which you can get a domain name for. Take the prototype code and install it on the new domain. For the new domain, you will need a SSL certificate for the domain so customers can access your app securely using HTTPS. A free shared SSL may be all that is needed, but browsers may issues warnings. For a better user experience install a private certificate.


After reading this guide, you should have a basic understanding of what it takes to develop a SaaS App. The MVC architecture is easy to understand and implement; open source frameworks are readily available to expedite your development time; and apps are typically subscription based which can provide significant revenue to your business if you build a solution for a paying customer.


Submit a Comment

  • howardyoung profile image

    Howard Young 4 years ago from California

    No, I think it will accelerate the growth and adoption of SaaS apps especially if companies use the angle where they protect the customer's data instead of abusing it.

  • tamarawilhite profile image

    Tamara Wilhite 4 years ago from Fort Worth, Texas

    Do you think the NSA snooping of internet communications and back door access to all the data of major cloud service providers like Amazon and Google will slow down the adoption of SaaS?

  • howardyoung profile image

    Howard Young 5 years ago from California

    @imvijay, you're welcome.

    Yes, the development cost exceeds the deployment cost to the cloud by many orders of magnitude. Even though your business is paying for the deployment, you can focus on improving the product instead of trying to make it work on multiple platforms.

  • iamvijay profile image

    vijaya kumar 5 years ago from Chennai, India

    Ya good information.Now days software as a service plays a vital role in the cloud technology as they offer usage per hour cost.So the cost of the software is reduced so its reliable to use in any kind of platforms.

    Thank you.


This website uses cookies

As a user in the EEA, your approval is needed on a few things. To provide a better website experience, uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: ""

Show Details
HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
LoginThis is necessary to sign in to the HubPages Service.
Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
AkismetThis is used to detect comment spam. (Privacy Policy)
HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the or domains, for performance and efficiency reasons. (Privacy Policy)
Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
MavenThis supports the Maven widget and search functionality. (Privacy Policy)
Google AdSenseThis is an ad network. (Privacy Policy)
Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
Index ExchangeThis is an ad network. (Privacy Policy)
SovrnThis is an ad network. (Privacy Policy)
Facebook AdsThis is an ad network. (Privacy Policy)
Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
AppNexusThis is an ad network. (Privacy Policy)
OpenxThis is an ad network. (Privacy Policy)
Rubicon ProjectThis is an ad network. (Privacy Policy)
TripleLiftThis is an ad network. (Privacy Policy)
Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)