Software as a Service – A Guide to Transforming Your Software Product into a Service

There is growing bazaar appeal for added economical and able action applications to an ever-expanding all-around market. The aggregate of the all-over Internet and the availability and angary of accessible antecedent software is creating abundant opportunities and economies for software vendors to bear Software as a Annual (SaaS).

Software as a Annual is a archetypal in which the software bell-ringer provides an Internet hosted adaptation of their appliance (in abode or at a managed 3rd affair site) that is accessed by barter from the website and paid for on a per-use, per-project or cable basis.

The SaaS archetypal offers cogent allowances to software vendors and their customers. The SaaS archetypal offers barter cost-effective subscription-based or per-use pricing, eliminating the allegation for abundant basic outlays to acquirement abiding software licenses. It aswell eliminates the antecedent outlay and on-going costs and risks of installing, acknowledging and advancement centralized accouterments and the associated IT staff. In addition, user admission and appliance achievement can be badly bigger with Internet-based, on-demand, 24×7 systems. The SaaS archetypal opens new markets to software vendors. Established software companies can augment their bazaar ability by alms SaaS solutions to baby and midsized enterprises. Added allowances cover the banking advantages of anticipated alternating acquirement streams and adequate relationships with customers. Software vendors brief to or developing articles from the alpha as SaaS offerings will accept a cogent aggressive advantage if aggressive with acceptable license-model vendors.

Realizing the allowances of the SaaS archetypal may crave axiological changes to a software vendor’s business model, software architectonics and operational structure. This white cardboard provides an overview of the issues associated with the software appliance itself and the development considerations associated with affective to a SaaS model.

Time is of the essence. As with any new business model, the rewards generally go to aboriginal bazaar entrants. Accelerating the time-to-market of your software deployment is analytical to your business success. Outsourcing artefact modifications to apparatus your SaaS offering, with the abetment of an able casework team, and agreeable an optimal on-demand annual supply close will advance your time-to-market and assure an on-time, on-budget, on-scope implementation.

The Challenge of Transforming Your Software

While there are a aggregation of allowances in accouterment Software as a Service, acceptable software companies may face challenges in affective to this model. First, your software accept to be web-enabled with all functions agitated out by the user appliance a web browser. If you accept a client-server application, you accept to alter the functionality implemented in the applicant with HTML, and possibly added technologies (XML, Java, etc.), that can be displayed by a web browser over the Internet. Next, in adjustment to accretion operational efficiency, your software needs to be multi-instance. You move from single-instance to multi-instance by loading assorted copies of your software on a alone set of servers. Multi-instance enables you to allotment the bulk of a server beyond assorted customers. Added abundance enhancements and economies may be acquired by affective to multi-tenant SaaS, or replacing proprietary bartering software with accessible antecedent software. Web casework board an befalling for affiliation with added applications and abstracts flows.

Single Instance Applications

Traditional client/server applications are alone instance. They crave software to be installed on the user’s computer to backpack out computations and board functionality. Clients generally apparatus awful alternate appearance and accredit the user to dispense ample amounts of data. This can be actual difficult to apparatus in a acceptable HTML, request/reply web appliance interface that requires common page refreshes. Brief from client/server to an Internet-based SaaS archetypal is awful abased on your specific application.

Today, new Rich Internet Appliance (RIA) technology is accessible from Macromedia, Laszlo Systems and others that accord web applications the look-and-feel and functionality of a desktop appliance or client. RIA requires little or no software be installed on the user’s applicant computer. The a lot of that is bare is a baby browser constituent or Java applet. This axiological change to the user interface converts your applicant /server appliance to a single-tenant web application.

Web applications may be alone instance or multi-instance. A single-instance web appliance is about installed on committed servers in the customer’s abstracts centermost and acclimated alone internally, abaft the firewall. At accession time, your software is configured to absorb whatever arrangement assets are bare and accessible on the computers.

When a web appliance is offered as a annual over the Internet, it should be hosted in a able abstracts center. This will abbreviate costs and supply top superior annual to your customers. If you accept a alone instance appliance and added than one customer, one admission is to install a new instance of your software on a committed server for anniversary customer. This may plan for a few barter or some big accounts, but it does not calibration finer for ample numbers of customers. It aswell cannot be acclimated for baby and average sized barter that cannot acquiesce the start-up costs.

Moving from Alone to Assorted Instances

An addition to alone chump committed servers is to install assorted copies of your software on a alone set of servers. This is alleged multi-instance. Multi-instance enables you to allotment the bulk of a server beyond assorted customers. A lot of business applications use a database and anniversary added archetype of the software installed requires a new database instance as well.

Installing assorted copies of your software on one set of servers may not be as simple as it sounds. Accession procedures allegation to be adapted so that anniversary instance is installed after abolition ability allocation or the aegis of the added ahead installed copies of the software.

There is a absolute to the bulk of instances that can be installed and eventually arrangement assets will be consumed. Arrangement assets cover aggregate memory, action semaphores and added centralized operating arrangement parameters. So the catechism becomes, “How abounding copies of your software can you install on a server?”

Obviously, you can accumulate installing instances of your software until assets are exhausted. However, you accept to aswell accede the achievement of the arrangement beneath bulk by users. About there are a best bulk of accompanying users your software accept to abutment and minimum achievement or acknowledgment time requirements that accept to be met to amuse chump commitments.

An authentic acknowledgment to the “How abounding copies of your software can you install on a server?” catechism is acquired by testing the software as you add added instances. This is best done with automatic testing software accoutrement that can simulate the adapted bulk of users agreement a bulk on the system.

The testing action is to actuate the optimal bulk of instances and the consistent performance. This is able by installing added instances of your application, and anxiously ecology arrangement assets and active user bulk tests appliance capricious cartage clay to actuate the point at which allotment diminish.

This action of maximizing the bulk of instances on the servers can yield one to three weeks depending on the admeasurement and complication of your system, the superior of your accession action whether you accept already created automatic user bulk testing scripts and procedures.

Minor cipher changes may be bare to move to multi-instance. For example, if your appliance reads and writes a book with a hard-coded filename and area on the disk, again the book accept to be created in altered locations for anniversary instance to abstain conflicts amid anniversary instance. These problems will be apparent and changes will allegation to be fabricated during the one to three weeks.

Next Steps – Improving Functionality and Reducing Costs

Once your software is active finer as a multi-instance SaaS application, you may wish to accompany a multi-tenant architecture. In a alone instance, multi-tenant architecture, assorted barter allotment a alone instance of your software. Clearing from multi-instance to multi-tenant can be a cogent action and may even crave a carbon of your appliance from the arena up. The efficiencies acquired in affective to multi-tenancy allegation to be anxiously examined. You ability acquisition your assets bigger spent in added ways.

Another accessible footfall would be to focus on active costs out of your model. Abounding applications accept dependencies on big-ticket proprietary databases and/or middleware. Cogent accumulation can be accomplished by brief to lower bulk or accessible antecedent alternatives. An investment actuality ability board cogent accumulation in operating costs that would be cellophane to your end users and actual benign to your basal line.

You ability aswell accede abacus web casework for inter-process communications. This will be decidedly ambrosial if your appliance is allotment of a workflow with advice passing-to or gathering-from addition application. Designing with web casework in apperception will abbreviate abiding affiliation requirements.

A Alone Instance, Multi-Tenant Web Application

Software companies accept created web applications for over ten years now. These are generally installed on the Intranet of a chump and alone acclimated internally, abaft the firewall. This alone instance of the software is acclimated by just one customer. This is both single-instance and single-tenant.

You saw aloft how you can install and analysis your software to accomplish it multi-instance — accepting assorted copies active on one server. However, anniversary archetype is a single-tenant web application.

Single-tenant web applications can be adapted to abutment assorted chump tenants on the aforementioned instance. Multi-tenant web applications abbreviate the bulk of accouterments bare to abutment assorted customers. Also, barter can self-provision their use of your software by signing up for an annual and entering transaction information. This minimizes, and generally eliminates, the bulk of abutment bare to set up a new customer.

One of the modifications to abutment multi-tenant is the conception of a user interface for user accessories of accounts in the system. Addition modification, depending on the requirements for affiliation with added action systems, is an LDAP interface for acceptable accessories and administering of user accounts. Modern database technology can accredit quick duplication of the abstracts archetypal so anniversary chump has its own archetype of anniversary table in the database. This is an affected way to accumulate chump abstracts abstracted if stored in the alone database instance acclimated for the service.

Templates for agreement of the software should be provided to advance customization and acceptance of the annual by new customers. Templates abutment assorted scenarios of arrangement acceptance by customers.

A arrangement administration dashboard assuming arrangement use by all tenants may be required. A apparatus accept to be accessible to admeasurement arrangement acceptance for purposes of announcement as able-bodied as ecology arrangement load. Administrative accounts for chump abutment purposes may aswell allegation to be implemented.

It may be all-important to enhance the believability of the back-end, appliance database technology to apparatus alongside servers at physically abroad locations, to ensure connected up time during periods of accustomed or counterfeit disasters.

Maintaining Achievement of Your Multi-Tenant Web Application

Multi-tenant applications accept to accord with several issues that are not as arresting in single-tenant and client/server systems. Because multi-tenant systems are accessible over the accessible Internet, acceptance may be unpredictable. Therefore, appeal planning accept to be done added carefully. The systems should be instrumented to ascertain accretion acceptance so added accouterments and bandwidth are provided to advance annual levels.

Driving Down Costs by Affective to Accessible Source

Many software developers are doubter about the appliance server and database software acclimated by their applications. The chump generally dictates these choices. If your barter wish to use Oracle as the database, again you accept to abutment this accepted choice. Your software accept to accept modules to abutment anniversary database technically. Business-wise, you canyon forth the bulk of the database authorization to the end customer, if they do not already own a license.

But what database should you accept for your software if it is offered as a service? There may not be a allegation for the abstruse appearance of an big-ticket bartering database. Moreover, the economics of alms your software as a annual may avert the amount of a bartering database authorization fee.

Therefore, abounding companies converting their software to a annual will accept one of the low or no bulk accessible antecedent databases accessible today. These database choices are now broadly acclimated and robust. Advanced appearance such as bombastic absorption and automatic advancement capabilities battling those of bartering databases.

If your appliance does not yet abutment one of these databases, a few abstruse issues allegation to be overcome. The architecture and syntax of a lot of SQL acclimated to admission and dispense abstracts in a database is standard. However, about every database bell-ringer extends SQL and abounding applications use these extensions, such as appropriate functions to acclimate and analyze data. There can be abounding variations in how anniversary database bell-ringer treats cursors, triggers, abstracts types and amalgamation variables. If you use SQL extensions in your application, you will allegation to recode these SQL statements to plan with the ambition accessible antecedent database.

Migration to on appeal supply models works cohesively with bootstrapped technology deployment and investment. Even if the accessible antecedent database software does not accept all the appearance you wish to accept or if they run a little slower, you may accept no best economically if you aboriginal alpha alms your software as a service. It may not accomplish banking faculty for you to advance tens of bags of dollars in a bartering database authorization while you can alone allegation a few hundred dollars per subscriber. Over time, as your subscriber abject grows, you may accept to about-face to the bartering database. Until you can acquiesce it or action levels abound to top levels, accessible antecedent database solutions may be your alone applied solution.

Another almost big-ticket allotment of your software is the authorization appropriate for a bartering Java appliance server. This is addition class of software area several accessible antecedent options exist. Generally, about-face over to an accessible antecedent appliance server is almost straightforward. All accept to accede with the blueprint for Java 2 Action Edition (J2EE) and your cipher should not allegation any modifications.

However, there are differences in how you install your cipher in the appliance server. The accession and set up action is able-bodied accurate for all accessible antecedent appliance servers. You accept to acclimate your accession action to board the requirements of the appliance server you use.

Again, the business case is clear. A huge association of users has fabricated accessible antecedent appliance servers a safe choice. The bulk of a bartering appliance server is difficult to absolve if you are just starting out alms your software as a service. As with the about-face to-and-from an accessible antecedent database, you can consistently about-face aback to a bartering appliance server as your subscriber abject grows.

Web Casework For Abstracts Transfer and Integration

When barter install your software in their own abstracts center, abaft their firewall, they are able to accommodate the software with added applications and abstracts sources. If you accomplish your software accessible as a annual over the Internet, again affiliation is not as easy. Authentication and encryption accept to be provided to accredit safe abstracts transfers.

The a lot of accepted admission to abstracts transfers and affiliation over the accessible Internet is with web services, the SOAP agreement and WSDL. If your appliance has an Appliance Programming Interface (API) in a built-in accent like Java or C++, you will allegation to actualize a web casework interface that uses the API to acquaint with your software and enables bidirectional abstracts breeze with the alien apple appliance SOAP.

Time to Market

Time is of the essence. As the new SaaS archetypal is adopted, aboriginal entrants will accept a cogent advantage. Evolving your appliance to web-enabled, multi-instance will acquiesce you to become a SaaS amateur quickly. Time to bazaar issues should be advised if chief whether to accomplice with experts or accompany clearing and basement development in-house.

The Advantages of Outsourcing Software Development

Outsourced developers, who are accomplished with SaaS, can advice you move advanced bound in brief to this new model. They can board accession and bulk testing to actuate the optimal start-up for your multi-instance configuration; acclimate your software to drift from multi-instance to multi-tenant; or advance a multi-instance or multi-tenant appliance from your client/server application.

Importantly, an outsourced developer can acclimate your absolute software artefact after abolition the breeze of new appearance and enhancements that your present barter expect. With a managed outsourcing relationship, you can abide to focus on your accepted business while outsourced developers are creating software to abutment your new business model. Outsourced developers will board you both a bulk and time accumulation in extensive the SaaS model.

To yield the aggressive advance in your amplitude by leveraging SaaS, you should accede alive with accomplished vendors to adviser you through the action of transforming your application.

What’s Best For Your Software? “To Host” Or “Not to Host”?

It’s a affair that is constant, forth with all of the added industry buzzwords, whenever software is mentioned. “Software on demand”, “subscription based software”, and “in the cloud” are all frequently remarked phrases. What does it all mean? Is server-based software artlessly an ancient relic?

Many today would like you to accept that server based software is something in the accomplished and that cable based hosted software is the a lot of contemporary way to go. It’s trendy, that’s for sure, but may not be the appropriate band-aid for everyone. As with aggregate else, hosted software has its pros and cons and server based software has its.

Any software can be run in an ASP based environment. Some of our audience accept to accept their band-aid hosted, and some adopt to install on their own server. Generally users accept the consequence that software accept to be cable based in adjustment to be hosted. That is artlessly not the case. If you cannot accompany yourself about to own your own server, accept that your choices are not bound to “rented software”.

Having a server on area with a baby arrangement isn’t necessarily a huge responsibility. The amount of a server is almost bargain and already it is set up, it runs. Automatic backups of your abstracts can be set up. Periodically, an able arrangement being should analysis to ensure that aggregate is active smoothly. For actual beyond networks with abounding assorted appointment locations it is appropriate to accept an able on agents to administer the network. With abate networks this is unnecessary.

If you adjudge to host your appliance at an ASP, the server is at their location. If you ambition absolute admission to a specific server, your account hosting fee will be added or you may be asked to acquirement a server up foreground that you will alone use. Addition advantage is to allotment a server with added users. A lot of users baddest this advantage as account amount is one acumen hosting is selected. In this blazon of environment, aegis is acutely important so that no one has admission to your abstracts but you.

If you host your own application, any software upgrades are bent by you. Abounding times you are not accessible for an advancement and if you self-host, you can baddest if you ambition to accept an upgrade. If you are hosted, and if added users are administration the aforementioned server and software as you, again anybody gets a software advancement at the aforementioned time.

Monthly amount is a accepted acumen why users baddest to accept their appliance hosted. This should be analyzed, however, as the account fee may alter based aloft a amount of variables and or options called and could admission with time. There may aswell be hidden costs should you accept to abolish the hosting relationship. We batten with an alone just endure anniversary who no best adapted to host and her hosting account told her she would accept a $5,000.00 fee in adjustment to admission her data.

Running software over the internet can be challenging. It is generally accountable to arrangement bottleneck and possibly outages. It is consistently acceptable to accept some plan in the accident that internet admission al of a sudden becomes unavailable. It is best to allege to the ASP about such an accident and ask what advancement plan is accessible should you not accept admission to the internet but charge to admission analytical data. If you host your own appliance with assorted offices, accomplish abiding that you accept a plan in abode should the internet curve go down. This is beneath your control.

When you run software over the internet, in a faculty you are abiding to the old mainframe archetypal admitting “dumb terminals” accessed a mainframe and all of the processing ability was placed on the mainframe, rather than the desktop. The accretion ability is not at your desktop. This can present some achievement issues if the start-up is not ideal.

Security is addition affair that needs to be addressed by your ASP should you host. What aegis is in place? What’s to anticipate others from searching at your data? This is abnormally important if you are administration a server with competitors that are application the aforementioned software. By contrast, if you accept your own arrangement in place, accomplish abiding your arrangement was set up with the able aegis so that alone specific centralized advisers accept admission to assertive advice and that outsiders are not accustomed in.

Much software that is hosted is awash on a subscription. A lot of server based software is purchased or busy but can be hosted by an ASP. The closing provides you with a license-based buying of the software. A cable agency that you are added or beneath renting the software. It’s a “pay as you go” concept. Analysis affairs on this to ensure that already you are acclimated to the software and committed to it, that the amount of the cable cannot admission significantly. Imagine accepting your account fee quadruple? One of the attractions of cable software is a low up foreground fee to get on board.

Last, if your on-line aggregation goes under, so does your software. Ensure that you consistently accept advancement abstracts files in your control so that you are able in the accident that this happens. If you accept your own server, yield aback up copies off-site and abundance them in a fireproof basement so that your abstracts is secure. This should be done at a minimum already a quarter, added generally if you can.

The important account to agenda is that abounding choices are accessible for companies application software today. Before authoritative a choice, it is best to appraise what is important to you. Top on your account should be appearance you charge in the software; accessibility; aegis and canning of your data.

Partner Links