Posts Tagged ‘software as a service’

Top 10 Technical Considerations When Planning a SaaS Project

Monday, July 19th, 2010

by Peter Maly | Senior Software Development Manager

Cloud computing and Software-as-a-service (Saas) applications have been growing in popularity since the economic downturn, hence, many product development companies turned to us (MapleWorks is a software development outsourcing service provider) to accelerate commercializing their products. Even with the uptick in the economy, I don’t expect to see demand slow because, depending on your end customers’ goals, cloud computing/SaaS can allow them to reduce costs, reduce their IT footprints, and reduce the headaches that come with managing infrastructure.

To achieve the end goals of your customers, here’s the top 10 technical considerations for planning your SaaS development project.

1. Latency. In typical circumstances, SaaS applications work fine. However; as a hypothetical scenario, if two to four seconds of delay are introduced into the connection, and 100 requests are normally handled, will this affect quality or usability? What will be the customer’s threshold for latency?

2. Reliability. The Internet is still not as reliable as circuit-based networks. But it’s still essential to make sure that reliability is high. This is especially important for mission-critical applications. What will be your customers’ requirements for reliability?

3. Redundancy. One of the value propositions for SaaS is proactive maintenance versus reactive maintenance. In the same vein, customers look to SaaS as their disaster recovery plan. Redundancy and recovery is the responsibility of the SaaS vendor. How sophisticated will your redundancy and backup services be?

4. Scalability. Scalability is a key point of moving to the cloud. As an enterprise grows—or shrinks—a cloud hosted SaaS gives them the ability to scale appropriately. Has scalability been designed into your SaaS application?

5. Compatibility/standards. Standards are a challenge. While it’s impossible to future proof the SaaS application that you develop, at least try. Look at trends and think five years in advance.

6. Partitioning. When there are many users sharing the same resource, logical partitioning helps to guarantee security. Can your SaaS application be partitioned?

7. Security. Confidentiality is a consideration in SaaS applications—and typically entails a high degree of complexity. It’s essential to ensure that you offer the appropriate level of security. And, this is especially important for mission-critical applications or sensitive data. What level of security will your customers require of your service?

8. Data migration. Customers don’t want to be handcuffed should they wish to move their data elsewhere. There have been plenty of sad stories on this topic. How will you deal with data portability?

9. Usability. If everyone in the enterprise is to adopt your SaaS application, it must be intuitive and easy to use. Will a usability expert test your SaaS application?

10. Total cost of ownership (TCO). Your customers turn to SaaS to deliver against their expectations for reduced IT infrastructure costs, decreased maintenance costs, on-demand scalability, and utility pricing. Will your SaaS application enable your target customers to lower their TCO?

That’s my top 10. What would you add to this list?