salesforce_Heroku_1

Evolución

Salesforce se fundó en 1999 y desde su origen el producto se ofreció como Software-as-a-Service con una alta capacidad de integración a través de APIs públicas. La facilidad de implantación, novedosa para la época, permitió un crecimiento rápido y una captación de clientes cada vez más grandes. Al aumentar el tamaño y número de clientes, las necesidades se hicieron más complejas y el producto creció en funcionalidad y en posibilidades de customización.

A día de hoy Salesforce es mucho más que un sistema de gestión de la relación con los clientes, también es una plataforma sobre la que desarrollar aplicaciones de gestión de cualquier tipo. Frecuentemente Salesforce se ha de integrar con otros sistemas corporativos para recabar información relevante (productos, pedidos, envíos...). Toda esta información puede ser accedida on-line cada vez que se necesite, o almacenarse en objetos propios para ser tratada.

salesforce_Heroku_2

Los objetos 'salesforce'

Un objeto de salesforce es, en esencia, una tabla relacional sobre la que la plataforma construye pantallas de mantenimiento, servicios de acceso y actualización y capacidades de workflow. Todo ello está además gestionado por un potente sistema de seguridad que permite administrar el acceso a nivel de objeto, campo o registro.

Los desarrolladores podemos modificar los objetos predefinidos que vienen con el producto (clientes, cuentas, oportunidades...) o crear objetos a medida para cubrir nuestras necesidades. Para todos estos objetos podemos definir páginas de mantenimiento todo lo ricas y complejas que necesitemos utilizando las posibilidades de la plataforma Force.com. También podemos manipular los objetos desde otros sistemas mediante llamadas a las APIs (SOAP/REST) de Salesforce.

Aplicaciones integradas

Gracias a las APIs podemos desarrollar aplicaciones independientes para complementar la funcionalidad de Salesforce, construir soluciones más amplias o integrar el CRM de forma cómoda en un ecosistema complejo. Las aplicaciones pueden estar desarrolladas con cualquier tecnología de nuestra preferencia y a esto se debe en parte el éxito de la plataforma.

En cualquier caso, lo habitual será utilizar las capacidades propias de Force.com para manejar los objetos dado que la plataforma nos proporciona mucha funcionalidad preprogramada que nos facilitará el trabajo.

Limitaciones en volumen

Para garantizar la calidad del servicio que se da a los distintos clientes, Salesforce establece unos límites en el volumen de llamadas a través de APIs que se pueden hacer de forma simultánea así como en un periodo de 24 horas. Las APIs se han diseñado de forma que toman como argumentos arrays de objetos para promover que se realicen transacciones en bloque, si bien mantiene el tamaño de los arrays limitado a un máximo de 200 objetos en cada llamada.

salesforce_Heroku_4

Heroku

Heroku es una plataforma PaaS creada en 2007 y adquirida por Salesforce en 2010. Inicialmente soportaba únicamente aplicaciones en Ruby y fue pionera en muchos conceptos de continuous delivery. En la actualidad Heroku soporta Java, Node.js, Scala, Clojure, Python y PHP.

Heroku es, por tanto, una plataforma muy adecuada para el desarrollo rápido de aplicaciones en modo velocity y se ajusta muy bien a la forma de trabajo natural de Paradigma. Ahora bien, ¿qué hace a Heroku especial a la hora de desarrollar aplicaciones integradas con Salesforce?

La respuesta es Heroku Connect, que es la capacidad de sincronizar la base de datos de Heroku (Postgres) con los objetos salesforce de forma transparente y sin necesidad de escribir código de integración. Salesforce proporciona lógica de error recovery y capacidades centralizadas de loggin que garantizan la consistencia de la información. Además, a partir de julio de 2015 la sincronización no está limitada por las restricciones de volumen aplicables a las llamadas a API convencionales.

Velocidad

La dificultad a la hora de integrar soluciones digitales orientadas al público con sistemas de gestión CRM corporativos se minimiza con sistemas como Heroku, que resuelve la sincronización de datos externos y permite libertad en el uso de lenguajes y tecnologías. El time-to-market demandado por los clientes de Paradigma para las nuevas soluciones digitales nos exige utilizar plataformas que soporten el modo de desarrollo velocity sin restricciones. Heroku es una de estas plataformas y la opción evidente en el caso de sistemas integrados con objetos salesforce y aplicaciones específicas vía APIs.

Cuéntanos qué te parece.

Los comentarios serán moderados. Serán visibles si aportan un argumento constructivo. Si no estás de acuerdo con algún punto, por favor, muestra tus opiniones de manera educada.

Suscríbete

Estamos comprometidos.

Tecnología, personas e impacto positivo.