Curso desarrollo y comercialización de aplicaciones SaaS

112
Desarrollo y comercialización de Aplicaciones SaaS ASIMOV Consultores Septiembre 2015 www.asimov.cl Alonso de Córdova 5870 Oficina 608, Las Condes, Santiago Andrés Bustamante Valenzuela CEO

Transcript of Curso desarrollo y comercialización de aplicaciones SaaS

Page 1: Curso desarrollo y comercialización de aplicaciones SaaS

Desarrollo y comercialización de Aplicaciones SaaSASIMOV Consultores

Septiembre 2015

www.asimov.cl

Alonso de Córdova 5870 Oficina 608, Las Condes, Santiago

Andrés Bustamante ValenzuelaCEO

Page 2: Curso desarrollo y comercialización de aplicaciones SaaS

Arrastre la imagen al marcador de posición o haga clic en el icono para agregar

Qué hacemos

• Aceleración e implementación de proyectos tecnológicos

• Innovación en procesos y tecnología

• Diseño de servicios y experiencia de usuario

Page 3: Curso desarrollo y comercialización de aplicaciones SaaS

Psicólogo, Master en Ingeniería de negocios y tecnologías de información, Ex Director de Gobierno Digital con mas de 15 años de experiencia en procesos y TI en mundo público y privado

Comunicador Multimedia, experto en medios digitales y gestión de proyectos TI. Con más de 15 años de experiencia en desarrollo e implementación de proyectos TIC, ha liderado e implementado proyectos en agencias de medios digitales y gobierno.

Ingeniero en computación de la U. de Chile y Master in Information Technology, Carnegie Mellon. Especialista en modelamiento de sistemas, arquitectura de software, desarrollo de aplicaciones web, móviles y dispositivos electrónicos.

Publicista, experta en métricas, medios digitales y facilitación de equipos de trabajo. Ha asesorado a startups, gobierno y empresas en aceleración y diseño de productos

Andrés Bustamante Felipe Mancini

Nicolás Silva Hanna Back

El think / action team

Page 4: Curso desarrollo y comercialización de aplicaciones SaaS

Desarrollando un negocio

SaaS

Page 5: Curso desarrollo y comercialización de aplicaciones SaaS

Que es SaaS?

• Software entregado a través de internet• Se paga por el uso, en diferentes modalidades• Requiere de alta escalabilidad, por lo que la arquitectura es

crucial• La seguridad es un tema crucial también por la protección

de datos• Requiere de un alto nivel de innovación• Incluye aplicaciones móviles complementarias

Page 6: Curso desarrollo y comercialización de aplicaciones SaaS

Ventajas SAAS

• Como no hay que instalarlo, da lo mismo el sistema operativo o hardware

• La data esta en el servicio, por lo que no hay que preocuparse de backup o perdidas por problemas de hardware

• Si un grupo de usuarios quieren interactuar con los mismos datos, saas es la respuesta

• Si hay mucha data y es actualizada frecuentemente tiene sentido saas• Solo hay una copia del server en una maquina y ambiente controlado

por el desarrollador, quien puede incluso hacer modificaciones controladas. No hay que hacer múltiples binarios ni distribuciones.

• Se puede innovar con facilidad, distribuyendo automáticamente los resultados

• Se pueden upgradear componentes y hw sin problema, mientras no se moleste a los usuarios y se mantengan funcionales las API

Page 7: Curso desarrollo y comercialización de aplicaciones SaaS

Cuando no es recomendable• Software altamente

especializado, que requiera un alto nivel de seguridad, con múltiples funciones, que requieran mucho almacenamiento de información y ancho de banda para transferencias de arhivos e interacción directa con hardware (ej. GPUs) y que un navegador no pueda soportar: ej: Modelamiento 3D avanzado, edición de video, efectos especiales

• Problemas de conectividad

Page 8: Curso desarrollo y comercialización de aplicaciones SaaS

En que se diferencia?

• Modelo de negocios• Captura de clientes• Arquitectura: ej. Multi tenant• Modelo de desarrollo /

Productividad• QA• Soporte y mantención• Escalabilidad• Seguridad• Foco en experiencia de usuario• Customización• Aplicaciones móviles

Page 9: Curso desarrollo y comercialización de aplicaciones SaaS

Modelo de negocios

Page 10: Curso desarrollo y comercialización de aplicaciones SaaS

Captura de clientes

• Marketing Digital– SEO / SEM– Analíticas– Redes sociales– Prensa– Mailing

• Modelos– Freemium– Descuentos x

volumen– Trials

Page 11: Curso desarrollo y comercialización de aplicaciones SaaS

Desarrollo: Conciseness, Sintesis, reutilización y herramientas

• Coveting conciceness, usando sintaxis compacta y elevando el nivel de diseño usando lenguajes de alto nivel.

• Sintetizando implementaciones• Reusando diseños siguiendo el prinripio de dont repeat

yourself DRY, aprovechando innovaciones que ayuden la reutilización como procedimientos, librerías, OOP y patrones de diseño

• Usando (e inventando) herramientas CAD para automatizar tareas tediosas

• USO DE FRAMEWORKS

Andrés Bustamante
Page 12: Curso desarrollo y comercialización de aplicaciones SaaS

Proceso de desarrollo: Planificar y documentar

• Como construir sw predecible en calidad, costo y tiempo como en construcción civil

• Para esto se han definido metodologías con ciclo de vida• Waterfall avanza de etapa en etapa• Spiral pasa por las etapas haciendo prototipos, pero es

igualmente lento en interactuar con clientes• RUP agrega definiciones de roles y mayor planificación y

documentación• CMM es un modelo que mide la madurez: inicial o caótico,

repetible, definido, administrado y optimizado

Andrés Bustamante
Poner un resumen y tocar DP?
Page 13: Curso desarrollo y comercialización de aplicaciones SaaS

Modelos Tradicionales

Page 14: Curso desarrollo y comercialización de aplicaciones SaaS

El manifiesto Agil

We are uncovering better ways of developing software by doing it and helping others do it.Through this work we have come to value:

• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Page 15: Curso desarrollo y comercialización de aplicaciones SaaS

Modelo Ágil• Metodología liviana o “indisciplinada”• XP – Extreme Programming es una variante• Toma el cambio como parte de la vida, velocidad• Prototipos hasta que el cliente este feliz, feedback• Test driven development• Historias de usuario• Prototipos en semanas, SaaS

Page 16: Curso desarrollo y comercialización de aplicaciones SaaS
Page 17: Curso desarrollo y comercialización de aplicaciones SaaS

QA: Testing

• Testing ayuda a verificar que el software cumple con la especificación y validar que el diseño hace lo que el cliente quiere

• Dado que no se puede hacer testing exhaustivo, se puede dividir para conquistar focalizandose en unit testing, module testing, integration testing, full system o acceptance testing

• Black box vs white o glass box se refiere a si los test se basan en las especificaciones externas o la implementación de un modulo

• El test coverage me muestra cuantas de las rutas posibles he testeado, graficando estas

• Regression testing reaplica tests antiguos por si las nuevas revisiones destruyeron una antigua funcionalidad

Page 18: Curso desarrollo y comercialización de aplicaciones SaaS

Soporte y mantención

• Cual es la estrategia de soporte• Que servicios se ofrecerán• Integración en pricing• Canales de acceso• Procesos internos• Tecnología de gestión• Seguimiento• Bases de conocimiento• Todo se puede caer

Estrategia Procesos Personas Tecnología

Page 19: Curso desarrollo y comercialización de aplicaciones SaaS

Escalabilidad

• Uso de servicios en la Nube: IaaS, PaaS• SOA• Web servers optimizados• Escalabilidad de DB: Sharding, Caching• Balanceadores de carga• Alternativas DB NoSQL DB• Frameworks y patrones de diseño• MVC

Page 20: Curso desarrollo y comercialización de aplicaciones SaaS

Seguridad

• Localización de datos• Encriptación• Seguridad de APIs• Logs• Firewalls de aplicación• Arquitectura de acceso a datos• Autenticación y autorización• Pentesting• Control de versiones• SSL• IPS / IDS• Ataques: inyección, XSS y otras atrocidades

Page 21: Curso desarrollo y comercialización de aplicaciones SaaS

Experiencia de usuario

Fase 1• Análisis (requerimientos)

Fase 2• Diseño (mockups, wireframes)

Fase 3• Evaluación (test usabilidad)

Fase 4• Implementación (incremental)

Page 22: Curso desarrollo y comercialización de aplicaciones SaaS

Customización

• Branding• Experiencia de usuario• Personalización por usuario• Internacionalización• Workflows• Seguridad• Reporting• Metadata• El costo de la customización

Page 23: Curso desarrollo y comercialización de aplicaciones SaaS

Arquitectura Para SaaS

• Escalabilidad• Multi tenancy• Interoperabilidad - SOA• Stateless• Planeado para analítica• Agilidad de implementación• Seguridad

Page 24: Curso desarrollo y comercialización de aplicaciones SaaS

SaaS y Cloud Computing

• Comunicación, para permitir que el usuario interactúe con el servicio: Internet

• Escalabilidad, para lidiar con las fluctuaciones en demanda durante el día, estacionalidades anuales y nuevos usuarios

• Dependabilidad, donde el servicio debe estar funcional 24x7

• Economías de escala: pay as you go• Inmediatez en implementación

Page 25: Curso desarrollo y comercialización de aplicaciones SaaS

Escalabilidad y cloud

• Maquinas virtuales• Solución empaquetada vs “homebreed”• La oferta nacional• La oferta internacional: amazon, google, azure• IAAS y PAAS, servicios especializados• Redundancia, respaldo y recuperación• Hadoop, mapreduce, big data• Caching / Sharding• Mas allá de SQL: NoSQL: auto shard, query distribuido,

cache integrado• Balanceadores

Page 26: Curso desarrollo y comercialización de aplicaciones SaaS

Multi tenancy

• Como servir muchos clientes en una arquitectura compartida

• Cada cliente con DB separada (ASP)• Cada cliente en un esquema diferente• Id de cliente en todas las tablas• La interacción con framework de desarrollo es importante,

persistencia y ORM• Mas compartido = mas costoso en inicio, pero mas

económico al final• Hay que evaluar factores como tamaño de DB, cantidad de

usuarios, tenants : performance y SLA• Consideraciones de seguridad y regulatorias• Configurabilidad y flexibilidad

Page 27: Curso desarrollo y comercialización de aplicaciones SaaS
Page 28: Curso desarrollo y comercialización de aplicaciones SaaS

Arquitectura SaaS

• Patrón: Estructura, comportamiento, estrategia o técnica reusable que captura una solución probada para una colección de problemas similares, separando las cosas que cambian, de las cosas que permanecen igual

• Arquitectura cliente servidor es un ejemplo de patrón de diseño que usa un web server y un cliente

• Permite una implementación mas abierta con estándares abiertos versus aplicaciones cliente

• Una alternativa es peer to peer donde todas las entidades actúan como clientes y servidor al mismo tiempo. Es mas flexible pero mas difícil de especializar

Page 29: Curso desarrollo y comercialización de aplicaciones SaaS

Comunicación, http y URIs

• Web servers y browsers se comunican usando HTTP usando TCP/IP

• Cada host tiene una IP vinculada a un DNS• Cada aplicación que corre en un host “escucha” un

determinado puerto• Un URI nombra un recurso disponible en internet• HTTP es un protocolo stateless (cada request es

independiente), el uso de HTTP cookies permite vincular múltiples requests

• La web es típicamente “pull” pero tecnologías como websockets o HTML5 permiten enviar contenido “push” al cliente, lo que también se puede lograr vía “checkin” de la página con nuevo contenido

Page 30: Curso desarrollo y comercialización de aplicaciones SaaS

Representación – HTML y CSS

• Un documento HTML consiste en una colección jerárquicamente anidada de elementos. Cada elemento comienza con un tag <> que puede tener atributos opcionales, algunos elementos tienen contenido

• Un selector es una expresión que identifica uno o mas elementos en el documento usando una combinación de nombre, id y clase (class)

• CSS es un lenguaje de estilo que describe atributos visuales de elementos en la página

• Hay frameworks que simplifican el diseño de UI

Andrés Bustamante
Buscar alguna guia de HTML / CSS para facilitar la explicación
Page 31: Curso desarrollo y comercialización de aplicaciones SaaS

Arquitecturas de 3 capas

• Presentación: Render e interacción con usuario• Aplicación / logic : corre el código

– Frameworks de aplicación• Persistencia: datos de la aplicación• LAMP, WAMP• Son capas lógicas, depende dimensión 1 a n máquinas• Shared nothing: Balanceadores de carga• El problema de la escalabilidad de persistencia / SQL

Page 32: Curso desarrollo y comercialización de aplicaciones SaaS

3 tier shared nothing

Page 33: Curso desarrollo y comercialización de aplicaciones SaaS

Arquitectura modelo vista controlador

• Modelo: lógica de negocio asociada a los datos• Vistas que presentan información a usuarios• Controladores que median interacción entre vistas y

modelos

Page 34: Curso desarrollo y comercialización de aplicaciones SaaS

El uso de framewoks

• Librerías con piezas reusables de aplicación para tareas típicas como CRUD, sesiones, templates, seguridad generalmente basados en patrón MVC

• Existen también para UI• Algunos mas conocidos:

– Ruby on rails (ruby)– Django(python)– .Net– Struts (JAVA)– Drupal– CakePHP– CodeIgniter– Symphony (PHP)– Zend (PHP)– App fuse (java)– Google web toolkit (java)– Sinatra (ruby)

Page 35: Curso desarrollo y comercialización de aplicaciones SaaS

Pros y contras

• Pros– Pueden ser usados como RAD y facilitar prototipado– Como cada proyecto es basado en estructura parecida,

disminuye ciclo de desarrollo– Puede pasar por mas manos de desarrolladores porque tiene

constantes– Funciona bien con Agilidad– El código core cambia menos, lo que da estabilidad a los

proyectos– Facilita división de trabajo: ej: UI

Page 36: Curso desarrollo y comercialización de aplicaciones SaaS

Pros y contras

• Contras– Curvas de aprendizaje– Pocos especialistas– No son bug free– Hackers pueden explotar fragilidades y bugs– Diferentes interpretaciones de MVC y ORM pueden ser

confusos

Page 37: Curso desarrollo y comercialización de aplicaciones SaaS

Características para evaluar

• Convención sobre configuración• Separación de vista• Soporte de base de datos (ORM)• Comunidad y longevidad• Documentación• Funciones de ayuda• Cache• Testeo unitario• Generación de formularios• Sesión• Templating• ACL

Page 38: Curso desarrollo y comercialización de aplicaciones SaaS

Active Record y ORM

• El modelo MVC requiere persistir data, lo que implica convertir los objetos en memoria a su representación en una DB

• Se han creado varios patrones para lidiar con una RDBMS, para simplificar el storage y la consistencia con los modelos

• Las 4 operaciones básicas son CRUD• El patrón / librería Active Record tiene un modelo para sus tipos de

objetos y operaciones CRUD en el caso de ruby, en el caso de Java Active JDBC

• Para todos los lenguajes se puede implementar Object Relational Model (ORM)

• Crea una base datos virtual de objetos y reduce la cantidad de código

• Dificulta el testing unitario y puede obscurecer el diseño• Alternativas incluyen bases de datos NoSQL

Page 39: Curso desarrollo y comercialización de aplicaciones SaaS
Page 40: Curso desarrollo y comercialización de aplicaciones SaaS

Próximos temas

• Modelos de negocio y evaluación económica• Escalabilidad: balanceadores de carga, sistemas de archivo,

uso de IaaS y PaaS, ejemplos detallados de experiencias• Bases de datos: NoSQL, Escalabilidad y clusters• Modelos de soporte• Mas sobre desarrollo ágil y testing• Marketing• Empaquetamiento, features y customización• Seguridad• Experiencia de usuario: frameworks, css, js, AJAX• Aplicaciones móviles

Page 41: Curso desarrollo y comercialización de aplicaciones SaaS

SOA

• Componente de la aplicación actúan como servicios interoperables y pueden ser usados independientemente y recombinado en otras aplicaciones.

• Lo contrario es un “silo”• Facilita la reutilización y las modificaciones / mejoras• Ningún servicio puede nombrar o acceder la data de otro

servicio, solo puede hacer requerimientos a través de una API externa

• No es el típico modelo de capas• Es mas complejo de administrar• Tiene impacto en la performance de la red• La clave es “reuso” y facilita la intervención de múltiples

programadores

Page 42: Curso desarrollo y comercialización de aplicaciones SaaS

Bezos y SOA

• All teams will henceforth expose their data and functionality through service interfaces.

• Teams must communicate with each other through these interfaces.

• There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.

• It doesn’t matter what technology they use. HTTP, Corba, Pub-Sub, custom protocols — doesn’t matter. Bezos doesn’t care.

• All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.

• Anyone who doesn’t do this will be fired.

Page 43: Curso desarrollo y comercialización de aplicaciones SaaS
Page 44: Curso desarrollo y comercialización de aplicaciones SaaS
Page 45: Curso desarrollo y comercialización de aplicaciones SaaS

Usando REST para la web

• Una forma de simplificar SOA y facilitar la interacción con sistemas Web

• Algunos principios:– Ponerle a cada cosa (recurso) un ID– Linkear las cosas: HATEOAS – Usar métodos estándar– Recursos con múltiples representaciones– Comunicación stateless

Page 46: Curso desarrollo y comercialización de aplicaciones SaaS

Ponerle a cada “cosa” un ID

• Facilita la comprensión de los links, diferenciándolos• No necesariamente expone la DB ya que puede ser

igualmente abstracto que un método en ORM• Puede mezclar características de un ítem• Facilita la construcción de una app orientada a estados

Page 47: Curso desarrollo y comercialización de aplicaciones SaaS

HATEOAS

• Hypermedia as the engine of application state• Usar links para referirse a “cosas” identificables

Page 48: Curso desarrollo y comercialización de aplicaciones SaaS

Rutas, controladores y REST

• Una ruta consiste en un método HTTP (GET, POST, PUT o DELETE) y una URI que puede incluir algunos parámetros. Frameworks mapean rutas a acciones de controlador

• Una app diseñada de acuerdo a REST (Representational State Transfer) puede verse desde afuera como una colección de entidades donde se pueden ejecutar ciertas operaciones, cada una de ellas con un requerimiento RESTful que incluye toda la información necesaria para completar la acción

• El principio REST puede ser aplicado a cualquier tipo de operación mientras la app represente sus entidades como recursos y especifique que operaciones están permitidas en cada tipo de recurso

Page 49: Curso desarrollo y comercialización de aplicaciones SaaS

Ruta abstracta + Sesión

Page 50: Curso desarrollo y comercialización de aplicaciones SaaS

url autoexplicativa

Page 51: Curso desarrollo y comercialización de aplicaciones SaaS

Mas sobre métodos

• Cuando las rutas y recursos son RESTful, la misma lógica de controlador puede servir usualmente tanto a páginas de acceso a usuarios vía navegador o requerimientos de otros servicios vía SOA.

• Aunque los browsers solo soportan los metodos HTTP GET y POST, la lógica de frameworks puede compensarlo implementando alternativas de mapeo

• REST vs SOAP: Estándares para web services de los 90. complejos y sobre ingenereados, derivados de CORBA y DCOM

Page 52: Curso desarrollo y comercialización de aplicaciones SaaS

SOAP / REST

REST: http://www.acme.com/phonebook/UserDetails/12345

Page 53: Curso desarrollo y comercialización de aplicaciones SaaS
Page 54: Curso desarrollo y comercialización de aplicaciones SaaS

Recursos con múltiples representaciones

Page 55: Curso desarrollo y comercialización de aplicaciones SaaS

Comunicación stateless

• No significa que una aplicación que expone sus recursos no pueda tener estado

• REST dice que el estado debe ser un “estado de recurso” o quedarse en el cliente

• Pero el server no debe quedarse con alguna comunicación de estado mas que un request simple

• Esto es importante para la escalabilidad y la independencia entre el cliente y el server en cualquier arquitectura

Page 56: Curso desarrollo y comercialización de aplicaciones SaaS

Modelo de negocio SaaS

• Retornos recurrentes• A través de un periodo extendido de tiempo• Satisfacción es clave para mantener y evitar fuga• Si esto ocurre, el costo de adquisición de cliente es menor

que el retorno• Entonces hay dos tipos de venta:

– Adquirir un cliente– Mantener un cliente

Page 57: Curso desarrollo y comercialización de aplicaciones SaaS

3 indicadores clave

• Adquisición de usuarios• Mantención de usuarios• Monetización de usuarios

Page 58: Curso desarrollo y comercialización de aplicaciones SaaS

Entonces el flujo…

• Se pierde plata al principio• A mayor crecimiento mayor pérdida• Adquirir clientes es una cosa, pero otra es rentabilizarlo• Esto asusta a los inversores• A mayor crecimiento, mayor retorno cuando se llega a

punto de equilibrio• Ciclos de inversión para crecimiento disminuyen

rentabilidad por periodos

Page 59: Curso desarrollo y comercialización de aplicaciones SaaS

El flujo…

Page 60: Curso desarrollo y comercialización de aplicaciones SaaS

Es importante crecer?

• Si, apenas la cosa se vea saludable• SaaS es un “winner takes it all” y se necesita tomar market

share• Mientras mejor se vea, mas atractivo para inversores• Ser lider de mercado tiene ventajas (time to market)• No todas las inversiones dan resultados, por lo que hay que

tener métricas

Page 61: Curso desarrollo y comercialización de aplicaciones SaaS

Economía unitaria

• Puedo rentar mas de mis clientes que el costo de adquirirlos?

• Algunas métricas:– LTV: Lifetime value de un cliente tipico– CAC costo de adquisición de un cliente

• Se tiende a ser muy optimista con el CAC, como si los clientes amaran el producto

• Algunos tips:

Page 62: Curso desarrollo y comercialización de aplicaciones SaaS

Costo de adquirir un cliente

• Churn rate de 3%, customer lifetime 10/00.3 = 33 meses• Churn rate anual de 20% Customer lifetime 1/0.20 = 5 años

Page 63: Curso desarrollo y comercialización de aplicaciones SaaS

LTV – Lifetime Value of a Customer

Page 64: Curso desarrollo y comercialización de aplicaciones SaaS

Para que sirve• Ver si poner freno

o apretar acelerador

• Evaluar lead sources– Ej: Si cuesta 500

al mes, puedo gastar hasta 6000 (12x)

• Permite examinar por segmento

Page 65: Curso desarrollo y comercialización de aplicaciones SaaS

CAC – El asesino de las startups

• Si tomamos team/product/market, probablemente product/market fit es lo mas crucial

• Pero todo puede falar si no se como adquirir un cliente a bajo costo

• Es fácil engañarse con los modelos web, ya que parece fácil usando SEO, SEM, crecimiento viral, social, PR, venta directa, canales

• Los empresarios son demasiado optimistas con sus productos y muestra vaguedad en como adquirir clientes

Page 66: Curso desarrollo y comercialización de aplicaciones SaaS

Balance con CAC

Page 67: Curso desarrollo y comercialización de aplicaciones SaaS

Un ejemplo• “human touch” aumenta

dramáticamente CAC• Follow up, demos, visitas• Desde 400 a 500 x usuario• Si es con venta directa puede

aumentar hasta 50 mil US

Page 68: Curso desarrollo y comercialización de aplicaciones SaaS

Lecciones – Planificación de negocio• Costo por lead• Conversión rate en cada etapa del proceso de venta• Nivel de “toque humano” requerido• LTV > 3x CAC• Recuperar CAC en max 12 Meses• No es fácil predecir radios de conversión, pero hay que

tratar.• Si se logra es señal de buena salud del negocio

Page 69: Curso desarrollo y comercialización de aplicaciones SaaS

Ventas 2.0

• Comprender comportamiento de compra de clientes– Menos interacción con sales rep– SEO – SEM– Free trials o productos útiles spredeables– Videos online– Blogs– Reviews– Comparaciones– Redes sociales– Touchless conversión para convertir trials– Bajo costo de venta interno– Uso de software para automatizar proceso (CRM), análisis de redes

sociales, analytics– Métricas en todo el proceso de venta

Page 70: Curso desarrollo y comercialización de aplicaciones SaaS

Balanceando CAC y LTV

Page 71: Curso desarrollo y comercialización de aplicaciones SaaS

+ Tips para reducir CAC

• A/B testing para mejorar conversión• Productos muy autoexplicativos para evitar “human touch”• Muchos video demos que respondadn todo• FAQ muy claros• Usar referencias de usuarios• Si los usuarios comparan, tener las comparaciones hechas• “touchless convertion” en paso de trial y en cada etapa del

ciclo.• Si requiere “human touch” usar canales de distribución y

tener fuerza de venta “interna”

Page 72: Curso desarrollo y comercialización de aplicaciones SaaS

Mas sobre retornos

• Tipos de SaaS– MRR: Monthly recurring revenue– ARR / ACV Annual Contract Value

• Elementos que hacen que varíe a través del año– New MRR– Churned MRR– Expansion MRR

Page 73: Curso desarrollo y comercialización de aplicaciones SaaS

Retención de clientes

• Churn se nota mientras más clientes tienes• Churn combinado con nuevos MRR puede definir el máximo

crecimiento del negocio

Page 74: Curso desarrollo y comercialización de aplicaciones SaaS

Para bajar el Churn

• Costos variables (seats, uso)

• Upsell a mejor producto• Pago en avance

– Mejora cash flow– Usar descuentos– Puede haber menos

nuevos usuarios• Análisis de cohorte

– Estamos perdiendo la mayoría de clientes en los primeros meses

– Churn se estabiliza en el tiempo

Page 75: Curso desarrollo y comercialización de aplicaciones SaaS

Para predecir Churn

• Descubrir por que se churnean• Métricas que permitan ver que usan mas o menos• Permite focalizar esfuerzos• Diferentes features tendrán diferentes “scores”• Cuantos suscritos realmente lo usan y porque• Tipos de uso

Page 76: Curso desarrollo y comercialización de aplicaciones SaaS

Causas de Churn

• No se cumplen expectativas– El producto no provee suficiente valor– Intestabilidad o bugs

• Producto no “pegajoso”, se usa una vez y luego no tiene valor. Hay que darle valor al uso o a los datos que tiene almacenados

• Los usuarios no usan las características que queríamos que usaran

• Producto difícil o mala UX• Sobreventa del producto• Mal mercado (ej. Pymes)• Mal uso de un esquema de pricing

Page 77: Curso desarrollo y comercialización de aplicaciones SaaS

Customer Engagement Score

• Diferentes Features tienen diferentes CES• La satisfacción de clientes es crucial, hay que encuestar• Una medida es el NPS (Net promoter Score)• Promotores 9 – 10• Pasivos 7 – 8• Detractores – 0 - 6

Page 78: Curso desarrollo y comercialización de aplicaciones SaaS

Algo sobre satisfacción

Page 79: Curso desarrollo y comercialización de aplicaciones SaaS

La importancia de la segmentación• Diferentes comportamientos• Diferentes necesidades• Siempre calcular:

– ARPA / MRR– Net MRR churn rate (incluyendo expansión)– LTV– CAC– LTV : CAC– Meses para recuperar CAC– Customer Engagement Score

Page 80: Curso desarrollo y comercialización de aplicaciones SaaS

Métricas de Funnel• Se puede hacer

métrica inversa para lo que se planea ganar en el año

• Sirve para saber esfuerzo de venta

• Ver capacidad real

• Distribuir leads por representante

Page 81: Curso desarrollo y comercialización de aplicaciones SaaS

ROI de fuentes de leads

Page 82: Curso desarrollo y comercialización de aplicaciones SaaS

Inbound Marketing

• Contenido notable es el rey• SEO vs SEM• El poder de lo gratis• Construir alcance: ser referente para temas, hacer

artículos, referencias, webinars, usar redes sociales para estar en conversaciones

• Campañas de influenciadores

Page 83: Curso desarrollo y comercialización de aplicaciones SaaS

SEO - SEM

Page 84: Curso desarrollo y comercialización de aplicaciones SaaS

Drives para que el negocio crezca• Churn

– Contener y tener clientes felices• Producto

– Buen producto– Buenos drives para pasar de free a pagadoç

• Funnel– Pasar mas leads del top del funnel– Identificar las mejores fuentes de leads e invertir todo lo posible en ellas– Mejorar radios de conversión en cada estado

• Ventas– Productividad– Mas capacidad– Poca rotación

• Pricing es clave

Page 85: Curso desarrollo y comercialización de aplicaciones SaaS

Las claves

• Planificar, planificar• No olvidarse de CAC• Y el foco

– Adquirir clientes– Retener clientes– Monetizar clientes

Page 86: Curso desarrollo y comercialización de aplicaciones SaaS

Lean UX

• Es acerca de validar hipótesis, mas que cumplir la “visión” de un diseñador

• No se asume que sabemos lo que el cliente quiere• No es acerca de agregar features sino que como resolver

métricas del negocio• Por supuesto validar hipótesis no siempre es fácil

Page 87: Curso desarrollo y comercialización de aplicaciones SaaS

Centrado en el usuario

• Mas allá del UCD• Uso de metodologías ágiles• Tiempo de prototipado• Formas de medición de hipótesis

Page 88: Curso desarrollo y comercialización de aplicaciones SaaS

• Lean UX es Ágil– Multidisciplinario– Liviano

• “Data driven”– No se “asume” que algo está bien, se valida– Se usan métricas de comportamiento de

usuario– El “diseño” es mas que inspiración, se

puede medir– Tampoco es matar la inspiración: driving /

informed by data• Puede ser más barato y rápido

– Se requiere a la gente adecuada– Experimentar antes que desarrollar– Lean, no es “flaite”, también hay que

invertir• Es iterativo, y no solo para agregar, sino

que para mejorar

Page 89: Curso desarrollo y comercialización de aplicaciones SaaS

Validación temprana

• Mercado, problema y producto• Tiene que haber un problema, y se

importante• Hay que segmentar el mercado, sino

es difícil ver el problema• Si no se segmenta bien, la

variabilidad de problemas es muy grande. Ej “mujeres”, “doctores”

• Hay que validar el producto, ver si soluciona el problema y de la forma adecuada

• Pain Driven

Page 90: Curso desarrollo y comercialización de aplicaciones SaaS

Como hacerlo

• Estudios etnográficos– Foros, Entrevistas, Preguntar– Siempre focalizar mercado, para evitar

variablidad– Ver patrones de comportamiento, no

solo opiniones– Detectar “dolores”

• Landing page tests– Sirve para validad mercado y producto– Analizar métricas

• Tests de prototipos– No sirve el elevator pitch– Algo tangible, que se entienda lo mas

posible• No importa si no tengo el producto, si

ya lo tengo o si es disruptivo

Page 91: Curso desarrollo y comercialización de aplicaciones SaaS

Mas sobre investigación

• No tengo tiempo para investigar? No hay tiempo para no hacerlo…

• Análisis de competidores: su producto y la experiencia de sus usuarios (su producto no es el único en el mundo, google it)

• Test de 5 segundos: testeando el mensaje de la landing• Prototipos clickeables, desde wireframes hasta “finos”

– Definir a quien entrevistar y que tareas– Flujos de inscripción, compras, experiencias de búsqueda,

compartir, gestión de archivos, navegación, setup– Pedir colaboración a usuarios, modo guerrilla

Page 92: Curso desarrollo y comercialización de aplicaciones SaaS

Cuali versus cuanti: La necesidad de las métricas

• No olvidar testear con métricas• A/B testing, Funnel, conversión, rebotes• Retención• Revenue• Net promoter score (NPS)• Conversión• Engagement (uso)• Registro• Contactos a servicio cliente

Page 93: Curso desarrollo y comercialización de aplicaciones SaaS

Tips para entrevistar

• Cállate• No des un tour guiado• Preguntas abiertas (no si/no)• Ser específico: mas allá de “es cool”• Dejar que el usuario falle• No es necesario una gran muestra, hay cosas que se notan al tiro• Se pude hacer remoto• Usar métricas en prototipos, “unmoderated”• Cuidado con las encuestas

– Pueden generar sesgos– Son aburridas– Deben ser especificas– Sirven para screening

Page 94: Curso desarrollo y comercialización de aplicaciones SaaS

Excusas para no investigar

• Es un estándar de diseño• X compañía lo hace• No tenemos tiempo o dinero• Somos nuevos, lo arreglaremos después• Es mi visión, los usuarios se lo van a echar• Es solo un prototipo para conseguir financiamiento

Page 95: Curso desarrollo y comercialización de aplicaciones SaaS

Diseñar para validar

• Comprender el problema de verdad• Diseñar primero el test• Escribir algunas historias• Buscar soluciones en equipo• Tomar decisiones y avanzar (analizando ROI)• (In) validar una decisión (vía testing fake)• Sketches (pero útiles)• Crear prototipos interactivos• Testear e iterar

Page 96: Curso desarrollo y comercialización de aplicaciones SaaS

Hackeando el diseño

• Patrones de diseño– www.patterntap.com, www.mobile-patterns.com,

www.smashingmagazine.com, ui-patterns.com– Eso si, siempre tener en vista el problema a resolver

• Consistencia. No sirve si es cool, pero inconsistente, se ve “punga”

• Frameworks• Siempre puede haber un plugin• …y templates o plataformas• Ayuda profesional

– Claridad en el objetivo– Diferentes tipos de profesionales

Page 97: Curso desarrollo y comercialización de aplicaciones SaaS

Frameworks

• http://designinstruct.com/roundups/html5-frameworks/

Page 98: Curso desarrollo y comercialización de aplicaciones SaaS

El arte de robar UX

• Analizar la competencia• Testear y saber que opinan sus usuarios• Puede que no quieran lo que tu quieres: agendas ocultas• No hacen exactamente lo que tu haces• Pueden darse el gusto de hacerlo mal (ej google)• Siempre verificar con testing

Page 99: Curso desarrollo y comercialización de aplicaciones SaaS

Las herramientas de trabajo

• Diagramas– Esquema general de funcionamiento– Visio, omnigraffle

• Sketches– Para pensar en las soluciones, trabajar en equipo– Balsamiq, mockingbird, mockflow

• Wireframes– Tiene todo lo necesario para entender lo que se quiere– Axure, omnigraffle, mockingbird, justinmind

• Prototipos interactivos– Testear antes de construir, especialmente para cosas caras– HTML, CSS, Javascript, frameworks

• Diseño visual• No preocuparse por que sea tan lindo desde el inicio• Cuidado con el papel

Page 100: Curso desarrollo y comercialización de aplicaciones SaaS

Ejemplos

Page 101: Curso desarrollo y comercialización de aplicaciones SaaS

Algunos elementos a estandarizar• Paleta de colores atractiva• Tamaños y tipos de fuentes para headers, subheaders y

texto del cuerpo• Tamaños de celda en grids• Simple y cool set de íconos• Estándares para cajas, gradientes, fondos y separadores• Diseño flexible de header y footer

Page 102: Curso desarrollo y comercialización de aplicaciones SaaS

Pricing

Page 103: Curso desarrollo y comercialización de aplicaciones SaaS

Estrategia de pricing

• Asociado al valor final para el cliente• Beneficios de infraetsructura, pago, beneficios de paquetizacion

de productos, facilidad de mantenimiento y upgrades• Como vendo esa métrica: 30GB de almacenamiento o 10.000

fotos• Que los vendors le vean valor• Empaquetamiento. Permite evitar guerra de precio• Usar data de uso para diseñar paquetes• Definir bien la métrica de cobro, que tenga sentido para el

segmento• Diseñar estrategia freemium: límites, facilidad para pasar de

modelo, track de conversión

Page 104: Curso desarrollo y comercialización de aplicaciones SaaS

Algunos componentes

• Empaquetamiento (lite, premium, enterprise)• Precios regionales• Segmentación de mercado (ej. Educacional, empresas,

gobierno)• Descuentos de lealtad• Descuentos de volumen• Ajustes de pago y crédito• Promociones• Upgrades / crossgrades• Descuentos de canal diferenciados (estándar ,

especializado)

Page 105: Curso desarrollo y comercialización de aplicaciones SaaS

Formulación de precio

Page 106: Curso desarrollo y comercialización de aplicaciones SaaS

Gestión transaccional

• Gestión del CAC• CRM como herramienta de contención• Reglas de abandono de cliente• Funnel

Page 107: Curso desarrollo y comercialización de aplicaciones SaaS

Perfomance de pricing

• Dashboard de analíticas de comportamiento de deals• Análisis del valor que los clientes dan a los features• Patrones de comportamiento de usuarios• Análisis e investigación de usuarios• Análisis de soporte

Page 108: Curso desarrollo y comercialización de aplicaciones SaaS

Pricing y features

• Wrap up de lo anterior: que hagan sentido al cliente• Analizar comportamiento de uso• Customizacion es deseada

– Branding– Metadatos– Flujos– Niveles de seguridad y auditoría– Dashboards

• Esto afecta el desarrollo, UX, costos de almacenamiento y operaciones. Debe ser incluido en el flujo

Page 109: Curso desarrollo y comercialización de aplicaciones SaaS

Términos y condiciones

• Política de privacidad de datos es lo mas importante. Podemos cumplirla?• Esto se complica cuando uso servicios de terceros• Términos de uso y política de privacidad por separado• Transparentar estrategia y visión de la empresa• Transparentar como se usan los datos y com se gestionan• SLAs claros y transparentes• Tiempos comprometidos• Responsabilidad sobre daños• Renovaciones• Variabilidad de precios• Soporte• Backup, recuperación y exportación de datos• Siempre sinceridad• Garantías y devolución de dinero• De quien son los datos• Normative legal aplicable del país

Page 110: Curso desarrollo y comercialización de aplicaciones SaaS

Seguridad de aplicaciones web

• Todo lo que hemos aprendido da lo mismo si alguien se pitea una aplicación

• Se pierde la confianza y eso NO SE RECUPERA• Es crítico en relación a las expectativas y en particular en

SaaS, donde el activo es la información• Por eso es tan importante el como se construye• MVC, Frameworks, ORM, etc, todo eso ayuda a bajar riesgos• A mas escalabilidad, se hace más crítico• Top ten vulnerabilidades OWASP (open web application

security project), usarlo como criterio de verificación de seguridad

Page 111: Curso desarrollo y comercialización de aplicaciones SaaS

El modelo de soporte

• La estrategia– Soporte como parte del producto– Soporte como paquetización para pricing– Nacional e internacional

• El proceso– La selección de los canales: lo que el cliente prefiere, el costo asociado– La gestión del flujo por los canales– Tiempo de respuesta– Escalamientos

• Las personas– Habilidades de comunicación y gestión de conflictos– Respuestas del CEO

• La tecnología– Que facilite lo anterior– Que genere métricas– Que sea simple

Page 112: Curso desarrollo y comercialización de aplicaciones SaaS

ASIMOV ConsultoresMuchas gracias

www.asimov.cl

Alonso de Córdova 5870 Oficina 608, Las Condes, Santiago