Developing SAAS ProductsMain Principles15.03.2010By Tanya Epstein
Briefly about SaaSSaaS  - stands for Software–as-a-Service, also known in the past as On Demand or Application Service Provider (ASP)An application owned, delivered and managed remotely by oneor more providersWhere the provider delivers an application based on a single setof common code and data definitions, which are consumed in amultitenant (one-to-many) model by all contracted customers at any timeBusiness model approach shares risk between the SaaS provider and client and offers single–source accountability.On a pay-per-use basis, or as a subscription based on use metricsService Level Agreement (SLA) between vendor and customer ensures the customer a specified level of performance and availability.
Selling to Long TailUsabilitySecurityStability & AvailabilityAccording to Gartner
The SaaS market is set to triple in size worldwide from 2005 to 2010, from a $5 billion market to a $15.5 billionBrief About Two Business ModelsTraditional model  Direct sales or indirect through VARs salesImplementation requires:In-premises installation, hardware investment In-house IT specialists , such as DBAs, system administratorsCustomer invests lot of time and money into implementation – customer will not leave vendor that easySaaS modelNo direct control over sales - Customer comes from the Internet and buys using credit cardNo installation, no hardware investmentsNo need to have in-house IT specialistCustomer has easy “purchase” cycle, no large investments - customer can leave vendor tomorrow without a “big loss”Enterprise Application ProfileAddresses complicated business processesUsually offers build-in solution for specific verticalsPresents or implements specific methodologiesRequires training of the personal
Who is a Customer?User comes from different verticals and industries (you won’t say him “no”)Non predictable habits“unknown” scenariosSize of the companies – variesSmall & medium companiesDepartments of large companiesUser is “unknown”No trainingNo documentation Number of users and customers is not under the controlMax 10 minutes to convince user that your product is greatScenario flow should be 100% clearEverything should be transparent, No new methodologies (what if you need)
SaaS R&D Principles SimplicityIntuitivenessViralityTrustQualityAnalytics in production
Customer & R&D in SaaS environmentCustomerCustomer comes from the Internet and buys using credit cardIs “unknown” . He stays with the system one-on-one. You have One Chance for first impression.Is located around the world – different culturesIs not computer literateR&D should guaranteeStability –no workarounds, thus no show stoppersAvailability - Services should be provided without interruption – 99.9999 availability (customer located around the world – no convenient time for downtime)ScalabilityService should be written and tested to provide high level  scalabilityEmbedded diagnostics that alert for need to scale upSecurityUsability
Usability !!!Modern Customer  looks for:Immediate valueHighly intuitive responsive consistent software Having “fun”, also in the enterprise applicationR&DCreate “User centric” DNA in the R&D – “think user”Excellent, simple, intuitive UI requires harmony of work between UI experts, Developers and Product managersDevelopers from both backend and frontend should think – User scenarios, not featuresCreate means to understand how user thinks –Embedded in code user analytics to learn at production:What scenarios are mostly used and which are avoided by the userWhether the user has an intuitive way to access featuresWhether execution of specific functionality is straightforward and clearMechanism to work with the customers via community, customer success programs, etc.
Security - How to create a trust?Customer puts his sensitive data out of his premises Data should be safe. Vendor responsibility that data will never be lost.Data should be visible only to the customer. Vendor responsibility that one customer cannot see data of the other customer.Site should be well protected. Vendor responsibility that penetration from outside is 100% locked.R&D - Should give same guarantees as bank gives to its customersSecure code courses & on-going instructionsSecure code reviewsExecution of penetration tests by special companiesSecurity certificationApplication firewall
R&D DNA - Development methodologiesDevelopment methodology should provideHigh responsiveness to required changesShort development cycles  - Customer is “spoiled” by other SaaS application – looking for continuous improvementHigh control over the quality Do only what you need to do  - “do less”Agile development methodology is a key success factorUse it smartly – implement only those concepts that fit your business model (what is Agile Development)
R&D DNA – Test AutomationStability & Availability expectations require on-goingPerformance testScalability test Stress testAvailability testAgilityShort release cycles require high percentage of automatic functional tests Both require “self-testable” softwareUnit testsDevelopment integration testsContinues automatic builds to run automatically unit and integration tests
R&D DNA – “Different” Release policyTraditional Release cyclePeriodical product version with relatively long time cyclePeriodical service packs for bug fixes in the currently released version Beta release validated at the customer sitesMany versions, many platformsSaaS Release cycle requirementsPeriodical product version with relatively short time cycleSupport packages to provide big fixes and new features to give answer to continuous improvement requirementZero Ramp-up time – “on going Beta” for all customersOne version, one platform
R&D DNA – Product ArchitectureStability, Scalability, AvailabilityFlexibilityHigh, easy and intuitive customizability & personalization of the productCustomizable UI, NLS readinessCustomizable Data ModelAllow customers to change data model without downtime of the site and impact on the others customersWeb 2.0 is much more “person” centric than “organization” centricBest Practices for VerticalsMechanism to provide best practices templates for different verticalsOpenness – SOA architectureAllow loosely coupled integration with other SaaS and Traditional products Readiness for fast incorporation of new technologies
Bottom line:  Technology  merges with functionalityCustomer looks for software that offersRich functionality with high performanceThin client – no downloads and installations on the client sideTools that are familiar for those who plays with variety of the internet applicationsR&D should use latest technologies to guarantee answers to customer expectationsClient technologies that allow building responsive interface – AJAX, AFLAXRSS, Tags capabilities provided by other internet vendorsBlogs, WikisMashups & Integration tools to combine content from other application sourcesApplication should provide fast and convenient access to data: accumulated and calculated
10.08.201016Thank you
Developing saa s products main principles

Developing saa s products main principles

  • 1.
    Developing SAAS ProductsMainPrinciples15.03.2010By Tanya Epstein
  • 2.
    Briefly about SaaSSaaS - stands for Software–as-a-Service, also known in the past as On Demand or Application Service Provider (ASP)An application owned, delivered and managed remotely by oneor more providersWhere the provider delivers an application based on a single setof common code and data definitions, which are consumed in amultitenant (one-to-many) model by all contracted customers at any timeBusiness model approach shares risk between the SaaS provider and client and offers single–source accountability.On a pay-per-use basis, or as a subscription based on use metricsService Level Agreement (SLA) between vendor and customer ensures the customer a specified level of performance and availability.
  • 3.
    Selling to LongTailUsabilitySecurityStability & AvailabilityAccording to Gartner
  • 4.
    The SaaS marketis set to triple in size worldwide from 2005 to 2010, from a $5 billion market to a $15.5 billionBrief About Two Business ModelsTraditional model Direct sales or indirect through VARs salesImplementation requires:In-premises installation, hardware investment In-house IT specialists , such as DBAs, system administratorsCustomer invests lot of time and money into implementation – customer will not leave vendor that easySaaS modelNo direct control over sales - Customer comes from the Internet and buys using credit cardNo installation, no hardware investmentsNo need to have in-house IT specialistCustomer has easy “purchase” cycle, no large investments - customer can leave vendor tomorrow without a “big loss”Enterprise Application ProfileAddresses complicated business processesUsually offers build-in solution for specific verticalsPresents or implements specific methodologiesRequires training of the personal
  • 5.
    Who is aCustomer?User comes from different verticals and industries (you won’t say him “no”)Non predictable habits“unknown” scenariosSize of the companies – variesSmall & medium companiesDepartments of large companiesUser is “unknown”No trainingNo documentation Number of users and customers is not under the controlMax 10 minutes to convince user that your product is greatScenario flow should be 100% clearEverything should be transparent, No new methodologies (what if you need)
  • 6.
    SaaS R&D PrinciplesSimplicityIntuitivenessViralityTrustQualityAnalytics in production
  • 7.
    Customer & R&Din SaaS environmentCustomerCustomer comes from the Internet and buys using credit cardIs “unknown” . He stays with the system one-on-one. You have One Chance for first impression.Is located around the world – different culturesIs not computer literateR&D should guaranteeStability –no workarounds, thus no show stoppersAvailability - Services should be provided without interruption – 99.9999 availability (customer located around the world – no convenient time for downtime)ScalabilityService should be written and tested to provide high level scalabilityEmbedded diagnostics that alert for need to scale upSecurityUsability
  • 8.
    Usability !!!Modern Customer looks for:Immediate valueHighly intuitive responsive consistent software Having “fun”, also in the enterprise applicationR&DCreate “User centric” DNA in the R&D – “think user”Excellent, simple, intuitive UI requires harmony of work between UI experts, Developers and Product managersDevelopers from both backend and frontend should think – User scenarios, not featuresCreate means to understand how user thinks –Embedded in code user analytics to learn at production:What scenarios are mostly used and which are avoided by the userWhether the user has an intuitive way to access featuresWhether execution of specific functionality is straightforward and clearMechanism to work with the customers via community, customer success programs, etc.
  • 9.
    Security - Howto create a trust?Customer puts his sensitive data out of his premises Data should be safe. Vendor responsibility that data will never be lost.Data should be visible only to the customer. Vendor responsibility that one customer cannot see data of the other customer.Site should be well protected. Vendor responsibility that penetration from outside is 100% locked.R&D - Should give same guarantees as bank gives to its customersSecure code courses & on-going instructionsSecure code reviewsExecution of penetration tests by special companiesSecurity certificationApplication firewall
  • 10.
    R&D DNA -Development methodologiesDevelopment methodology should provideHigh responsiveness to required changesShort development cycles - Customer is “spoiled” by other SaaS application – looking for continuous improvementHigh control over the quality Do only what you need to do - “do less”Agile development methodology is a key success factorUse it smartly – implement only those concepts that fit your business model (what is Agile Development)
  • 11.
    R&D DNA –Test AutomationStability & Availability expectations require on-goingPerformance testScalability test Stress testAvailability testAgilityShort release cycles require high percentage of automatic functional tests Both require “self-testable” softwareUnit testsDevelopment integration testsContinues automatic builds to run automatically unit and integration tests
  • 12.
    R&D DNA –“Different” Release policyTraditional Release cyclePeriodical product version with relatively long time cyclePeriodical service packs for bug fixes in the currently released version Beta release validated at the customer sitesMany versions, many platformsSaaS Release cycle requirementsPeriodical product version with relatively short time cycleSupport packages to provide big fixes and new features to give answer to continuous improvement requirementZero Ramp-up time – “on going Beta” for all customersOne version, one platform
  • 13.
    R&D DNA –Product ArchitectureStability, Scalability, AvailabilityFlexibilityHigh, easy and intuitive customizability & personalization of the productCustomizable UI, NLS readinessCustomizable Data ModelAllow customers to change data model without downtime of the site and impact on the others customersWeb 2.0 is much more “person” centric than “organization” centricBest Practices for VerticalsMechanism to provide best practices templates for different verticalsOpenness – SOA architectureAllow loosely coupled integration with other SaaS and Traditional products Readiness for fast incorporation of new technologies
  • 14.
    Bottom line: Technology merges with functionalityCustomer looks for software that offersRich functionality with high performanceThin client – no downloads and installations on the client sideTools that are familiar for those who plays with variety of the internet applicationsR&D should use latest technologies to guarantee answers to customer expectationsClient technologies that allow building responsive interface – AJAX, AFLAXRSS, Tags capabilities provided by other internet vendorsBlogs, WikisMashups & Integration tools to combine content from other application sourcesApplication should provide fast and convenient access to data: accumulated and calculated
  • 15.

Editor's Notes

  • #4 1. Importance of usability.