Empresajuin 07, 2022

AMERICAN VINTAGE X MADAGENCE X SALESFORCE COMMERCE CLOUD

DESAFÍO EN UN LANZAMIENTO EXPRESO Y EL DESPLIEGUE DE UN OMS

Creada en 2005 en Marsella por Michaël Azoulay, American Vintage es una marca imprescindible combinando piezas casuales, tonos pastel matizados y materiales delicados.  En 17 años, la marca ha impuesto en el panorama de la moda francesa al revisar los conceptos básicos de la vida cotidiana.

Durante un año y medio, Madagence ha estado apoyando a American Vintage en 28 países, en la solución Salesforce Commerce Cloud y la implementación de un nuevo OMS.

Más que un cliente, American Vintage representa la relación perfecta de lo que Madagence desea emprender con sus clientes.  Aparte de compartir valores afines como el amor por el trabajo bien hecho, la benevolencia y la sinceridad, Madagence y American Vintage construyen una relación de confianza y cercanía desde el lanzamiento del proyecto.

Hoy, AMV considera a Madagence como un verdadero socio, una extensión de su equipo interno.

Stéphanie Delpuech, directora de comercio electrónico y CRM de American Vintage durante 6 años, compartió sus comentarios sobre la colaboración con Madagence para la integración de la solución Salesforce Commerce Cloud.

¿Cuáles fueron las razones que los llevaron a recurrir a un integrador de soluciones electrónicas comercio ?  ¿Y por qué eligió la solución Salesforce B2C Commerce frente a otras soluciones de comercio electrónico?

«El crecimiento de American Vintage se ha acelerado, particularmente con la crisis sanitaria.  Por lo tanto, nuestras necesidades han evolucionado rápidamente.  Nuestro sitio de comercio electrónico anterior ya no satisfacía esta fuerte demanda y nuestras ambiciones de crecimiento internacional.  Estábamos buscando una solución poderosa e innovadora que pudiera satisfacer de manera efectiva nuestras necesidades en términos de comercialización, diseño, volumen de pedidos… Salesforce Commerce Cloud fue LA solución que cumplía todos los requisitos.»

«También fue muy importante para nosotros firmar con una agencia que comparte los valores de AMV.  Aun buen ajuste era fundamental para poder avanzar y poner en marcha el proyecto a partir de principios de 2021.»

¿Por qué eligió Madagence para la implementación de su solución de comercio electrónico?

«El equipo de Madagence fue capaz primero de proporcionar respuestas adaptadas a todas nuestras especificaciones, que eran bastante exhaustivas.  Su experiencia técnica así como el sentimiento con el equipo del proyecto nos convencieron directamente.»

«Pudimos desarrollar con ellos una verdadera relación de confianza, sencillez y cercanía. También fue importante para nosotros seguir adelante con una agencia que comparte la misma mentalidad que AMV, benevolencia, sinceridad y autenticidad.»

¿Qué obstáculos te has encontrado? y ¿Cómo los superaste?

«Encontramos tres problemas con el proyecto: un lanzamiento muy rápido, el despliegue un nuevo OMS con los equipos de Salesforce y Madagence así como un merchandising bastante exigente.»

«De hecho, el proyecto fue una verdadera carrera contra el tiempo.  Nuestra hoja de ruta fue muy intensa ya que tuvimos que lanzar el sitio en el espacio de 6 meses.  Por lo tanto, la convocatoria de licitación fue muy rápida y la elección de nuestra PSP (solución de pago en línea) también.»

«Tuvimos que afrontar otro gran desafío: el despliegue de un nuevo OMS (Sistema de Gestión de Pedidos) llevado a cabo conjuntamente por Madagence y los equipos de Salesforce.  Madagence fue la primera en Francia en implementarlo, y esto, con un plazo limitado.  Los equipos proporcionaron un trabajo de calidad y el proyecto se completó con éxito.»

«Finalmente, en AMV, el merchandising es muy avanzado y visual.  Tuvimos que tomar la decisión de que Madagence desarrollara un módulo avanzado de gestión de merchandising complementario a la oferta de Salesforce.  A pesar de una hoja de ruta muy completa, el sitio se lanzó a tiempo.»

¿El enfoque de gestión de proyectos Agile se implementó durante el proyecto ; qué tienes pensando?

El modo de gestión de proyectos AGILE permite a los equipos monitorear regularmente el progreso del proyecto, desglosándolo en varias etapas.  Más suave y flexible que una metodología tradicional, la gestión ágil de proyectos sitúa las necesidades del cliente en el centro de las prioridades del proyecto.

«Apreciamos este modo de operación, especialmente para la construcción del sitio y también hoy en TMA (mantenimiento).  Los períodos de sprint de dos semanas, así como el daily meeting, nos permite intercambiar activamente con todos los equipos de AMV y Madagence.  Esto da un ritmo real al proyecto y asegura un seguimiento regular.»

«Esta organización en forma de sprint es muy importante para nosotros, porque nos permitió ver la construcción del sitio a lo largo de las semanas y así percibir mejor el progreso del proyecto.  Esto permite para volver poco a poco a elementos que pueden evolucionar, pero también para poder extender la receta.  Recomendamos al 200% este método de prueba y aprendizaje.»

«Sin embargo, debes saber que este método sigue siendo muy intenso.  Impone un enfoque constante y diario del proyecto, que en ocasiones puede ser difícil de combinar con el resto de imperativos paralelos.»

¿Cuáles son los beneficios que ha podido obtener de la plataforma?

«Hoy, el sitio funciona muy bien en comparación con algunos meses cuando no aguantó la carga.  Ahora tenemos más diseño y representación visual.  Los procesos se han simplificado y automatizado.»

«Nuestro beneficio real es más bien operativo, porque necesitábamos un período de estabilización, gestión del cambio, apoyo al equipo y también su mejora.»

¿Cómo describiría la relación que tiene hoy con Madagence y sus equipos?

«La relación que tenemos con Madagence es óptima.  Llevamos más de un año y medio trabajando juntos.  Hoy, los equipos se han mantenido igual para el mantenimiento.»

«Tenemos un gran placer en intercambiar con Madagence todos los días.  Consideramos los equipos de Madagence como una extensión del de AMV.  Ya sea en lo profesional o en lo humano, nuestras relaciones van perfectamente bien.  De hecho, Madagence y AMV tienen una relación real de proximidad, sencillez e integridad.  Confiamos unos en otros y compartimos la misma visión de las cosas.»

¿Recomendarías Madagence a tu alrededor?

«Hoy AMV recomienda a Madagence, por su profesionalismo, su experiencia, la calidad de los servicios, y sobre todo por el lado humano con la relación de confianza entre los equipos.»

DevOpsavril 22, 2020

Salesforce B2C Commerce y devOps

Salesforce B2C Commerce y devOps

Atlassian… Salesforce… Microsoft… Tres editores, tres gigantes y ofertas de productos fundamentalmente diferentes. Diferentes sí, pero en Madagence hemos querido llevar el proceso de aproximación tecnológica entre estos tres monstruos hasta el final. 

Implementar un proyecto de comercio electrónico bajo Salesforce Commerce Cloud B2C requiere organización, rigor, pero también (sobre todo) escalabilidad, visibilidad y agilidad. 

PREÁMBULO 

En este artículo, le presentaremos una forma de integrar los servicios Atlassian (Jira & Bitbucket principalmente) y Office 365 (Teams principalmente) en un proyecto de Salesforce Commerce Cloud B2C. Aquí hablaremos de integración continua, automatización de proyectos y versión. 

Nuestros objetivos de diseño de integración entre Atlassian, Microsoft y Salesforce en Madagence han sido los siguientes: 

  • Facilitar la vida diaria de nuestros colaboradores (Desarrolladores, Líderes Técnicos y Jefes de Proyecto) 
  • Aumentar la legibilidad técnica de los proyectos (Versionning, Despliegue, etc.) para el conjunto de los actores no técnicos de los proyectos 
  • Dejar de perder tiempo en acciones de bajo valor 

En este artículo hablaremos de «cómo hacerlo». Efectivamente, cualquier método es potencialmente inaplicable a un contexto dado; también es, sin duda, criticable. Para terminar, esta forma de hacer es sin duda mejorable. Por eso redactamos este artículo; para avanzar con la comunidad ;). 

Madagence

Madagence es una agencia de desarrollo experta en comercio electrónico. Ahora somos socios e integradores de Salesforce Commerce Cloud B2C. Nuestra experiencia tecnológica está garantizada hoy por un equipo de Makers (colaboradores) especializados y certificados en esta plataforma (Arquitectos, Líderes técnicos, etc.). 

Creemos en el mercado y en las innovaciones que Salesforce Commerce Cloud B2C ofrece a través de esta nube dedicada a la cadena de valor de comercio electrónico de nuestros clientes. 

Todos los proyectos implementados en Madagence se construyen con el Framework Agile Scrum. No implementamos el Framework Scrum de forma híbrida o parcial; lo integramos en su estado de arte el más completo. Más que un simple método de gestión de proyectos, la agilidad es un verdadero Mindset de la empresa y de nuestros colaboradores. 

REVISIÓN DE LOS OBJETIVOS 

Objetivo 1 : Facilitar la vida cotidiana de nuestros colaboradores (Desarrolladores, Líderes técnicos y Jefes de Proyecto) 

Objetivo 2 : Aumentar la legibilidad técnica de los proyectos (Versionning, Despliegue, etc.) para el conjunto de los agentes no técnicos de los proyectos 

Objetivo 3 : Dejar de perder tiempo en acciones de bajo valor añadido 

OBJETIVO 1: FACILITAR LA VIDA COTIDIANA 

¿Qué es lo que no le gusta hacer a un Desarrollador? ¿Qué es lo que no le gusta hacer a un Líder Técnico? ¿Qué es lo que no le gusta hacer a un Gerente de Proyecto? Tres preguntas tontas, tres preguntas que cuando se aportan respuestas y luego soluciones, permiten ahorrar tiempo. 

Lo que el Desarrollador no le gusta hacer: 

  • Actualizar sus tickets de viaje. 
  • Indicar sus tiempos de desarrollo 

Lo que el Líder Técnico no le gusta hacer: 

  • [.. ] IDEM Desarrollador [.] 
  • Pasar más tiempo desplegando que codificando 
  • Pasar horas actualizando conjuntos de datos entre entornos (IMPEX) 

Lo que el Jefe de Proyecto no le gusta hacer: 

  • Primer punto, lo más importante, no le gusta hacer lo que los demás deberían haber hecho 😉 
  • Convertirse en arqueólogo para saber qué ticket está desplegado (o no) 
  • Seguir el resto de su trabajo de forma manual 
  • No saber cuándo puede iniciar su receta 

OBJETIVO 2: AUMENTAR LA LEGIBILIDAD 

Mantener vivo un proyecto de comercio electrónico y todos sus componentes no es tarea fácil. En efecto, las capas necesarias para la puesta en práctica de un proyecto de este tipo son numerosas. 

La roadmap del cliente, el backlog funcional, el corte técnico, el seguimiento de los tiempos, la gestión de las prioridades, la gestión de las fuentes, la administración de los entornos; todas sus capas invitan a la multiplicidad de las herramientas. 

No es raro encontrar la hoja de ruta de un cliente en un archivo de Excel, el backlog funcional en un Word, el corte técnico en una herramienta de gestión de proyectos (Redmine, Mentis, Jira, etc.) y para terminar un sistema de versioning junto con un motor de integración continua que viven en autarquía. 

La multiplicidad de instrumentos y la falta de integración de estos últimos provocan una falta de legibilidad de los proyectos. La forma de proceder que se presenta en este artículo deberá responder a este problema. 

OBJETIVO 3: DEJAR DE PERDER TIEMPO 

Aunque la reestructuración de algunos grandes grupos trae un viento nuevo sobre la organización de las empresas. Incluso si la agilidad comienza a expandirse en las mentes. Francia como España siguen siendo países donde se aman las cosas complejas; se aman las organizaciones complejas; se construyen los procesos bien hechos y que responden al conjunto de los casos. 

En Madagence creemos en la proximidad, la flexibilidad y la simplicidad. Son los ejes a seguir en todas partes; tanto en la organización de las empresas, como en la gestión de los proyectos y la estructuración de las herramientas. 

Volviendo a nuestros proyectos de Salesforce Commerce Cloud B2C, estos son los elementos en los que consideramos que se pierde tiempo, sin valor real. Esto es, por supuesto, propio de Salesforce B2C Commerce. 

  • Entrar, o incluso volver a entrar manualmente nuestros tiempos 
  • Saber cuándo se llevan a cabo los despliegues 
  • Saber dónde se despliegan los tickets
  • Actualizar el estado de los tickets 
  • Construir informes manualmente 
    • Burn-Down, Sprint Load, etc. 
    • Avance de las releases 
    • Cálculo de la velocidad
  • Implementar manualmente los tickets 
  • Implementar manualmente las versiones 
  • Implementar manualmente los datos (IMPEX) 
  • Estimar tareas de manera rápida y eficiente 
  • Identificación instantánea del downtime 
  • Identificación instantánea de solicitudes con prioridad 1 

La forma de proceder deberá permitir limitar la pérdida de tiempo sobre los elementos anteriormente mencionados. 

ARQUITECTURA GLOBAL 

Para comprender de manera global la arquitectura de los intercambios entre los diferentes editores. Este es el esquema de las interacciones entre estos últimos. 

Atención, esto parece un proyecto de 70 días. ¡No te preocupes! Lo implementamos en 20 días laborables gracias a las integraciones ya existentes entre las diferentes herramientas. 

La clave del éxito; tener las herramientas adecuadas: Teams, Jira, Bitbucket, SFCC-CI. Con el uso de estas 4 herramientas, pocos problemas pueden llegar a ponerse en medio de su camino. 

El despliegue de una arquitectura de este tipo es fácil de implementar cuando se tiene poca o ninguna historia. Migrar varias decenas de proyectos bajo esta arquitectura se verá como otro par de mangas. 

Keys features

No vamos a evocar en este artículo la manera de poner en práctica una arquitectura de este tipo (es nuestro pequeño secreto). Vamos a hablar de lo más importante y por lo tanto de las características que ofrece esta manera de hacer. 

Smart Commit

Al crear una rama asociada a un ticket o al realizar la primera commit. Varias acciones se inician en Jira. 

  • El paso del bolleto de «To Do» a «In Progress» 
  • La información de «Commit» se muestra en el ticket 

En todos los commits, exigimos la normalización de los comentarios en el siguiente formato: ISSUE_KEY #time [Some amount in Jira time syntax] <Your Worklog comment text>.

Esto permite añadir una función de Time Tracking directamente a los tickets de JIRA. 

La funcionalidad de Seguimiento Temporal en JIRA permite controlar la noción de «Queda por hacer». De este modo, de un vistazo es fácil observar las tareas que toman más/menos tiempo de lo esperado. Esta funcionalidad también permite gestionar fácilmente el aterrizaje planning ya que el «Resto a hacer» está disociado de la estimación inicial. Esto nos permite extraer automáticamente una gestión de aterrizajes de nuestros lanzamientos. 

Ejemplo de una versión de prueba que sin duda será imposible de producir 😉 

Pull Request in JIRA

Durante todo su desarrollo, el desarrollador no tiene que ir a JIRA para actualizar el progreso de su ticket. La integración Bitbucket/ Jira se encarga de indexar la evolución del ticket en función del avance técnico. 

Al crear el Pull Request: 

  • Cambio de estado del ticket: «In Progress» a «Developed» 
  • Asignación automática de tareas a la persona encargada de la PR 

Al rechazar el Pull Request: 

  • Cambio de estado del ticket: «Developed» a «To Do» 
  • Asignación a la persona que creó el Pull Request 
  • Notificación Teams a la persona que creó el Pull Request 

Al aceptar el Pull Request: 

  • Cambio de estado del ticket: «Developed» a «Reviewed» 
  • Implementación automática en el entorno de «Demo» 
  • Se envía una notificación de Teams al Jefe del Proyecto Madagence para que pueda iniciar la receta

Toda la información sobre las solicitudes de Pull Request asociadas a un ticket es visible directamente en JIRA. 

Release Done in JIRA

En JIRA, la gestión de los sprints a través de las versiones ofrece una visión muy clara del avance del proyecto & técnico de los tickets presentes en el release. 

Cuando todos los tickets de una versión están en el estado «Tested», es decir, todos los tickets han sido recertidos por nuestros Jefes de Proyecto Madagence; una implementación empaquetada de todo el Release (Código Fuente + Diferencial DATA) es efectivo sobre el medio ambiente «Desarrollo». 

Para ello hemos implementado un Bitbucket Pipeline utilizando SFCC-CI. En un primer momento pasamos por el staging sin activar las versiones ni importar los datos. Luego nos desplegamos en «Development» activando la versión de código & importando los datos depositados. 

SFCC-CI y los Builds

Doblamos dos soluciones de Build que se pusieron a disposición de la plataforma Salesforce Commerce Cloud B2C. La famosa y antigua «Build Suite» y la nueva «SFCC-CI». 

Sin duda alguna; recomendamos «SFCC-CI». La utilización es más sencilla, la comprensión de la secuencia es más fácil, las mejoras de rendimiento en los edificios constatados van hasta un 70% de velocidad adicional y para terminar una implementación de 3 a 4 veces más rápida. 

A través de la solución Bitbucket Pipelines hemos implementado la suite «SFCC-CI». La lectura de la interfaz de Bitbucket Pipelines es clara, simple, eficiente. Las funciones esenciales están presentes, sin artificios que cubre el 100% de las necesidades. 

La gestión de las sucesiones de build entre los diferentes entornos está estandarizada y los despliegues entre demo, development, staging/prod son interdependientes. 

En Madagence hemos detenido el «Continious Delivery» en el entorno de «Development» porque nuestros clientes no están preparados para trabajar de esta manera en los entornos de Producción (Staging & Production). Pero en unos pocos clics la solución estaría en su lugar. 

Una vez más encontramos en JIRA, las informaciones sobre los Builds. 

Una vez más en Jira automatizamos: 

  • Cuando se implementa la versión en «Development» > Cambio del estado de la versión JIRA. El cliente puede ahora iniciar su receta. 

Environments management

Obtener una representación gráfica de lo que contiene o no un entorno en un momento dado es una ganancia de legibilidad significativa. 

Una vez más JIRA nos ofrece esta posibilidad. Directamente en el ticket es posible saber dónde se encuentra (técnicamente) una solicitud. 

También es posible recuperar el historial de despliegues. 

Incluso es posible visualizar el ciclo de vida ínter-ambiente de un ticket a través de la vista que se muestra a continuación en Bitbucket. 

Para tener una vista global y no del ticket, existe otra interfaz dentro de Bitbucket. 

DATA Deployment

La gestión de datos entre entornos siempre es un rompecabezas. Todos hemos experimentado eventos como estos: 

  • Actualización de una base de datos sobre un entorno de dev, no replicado en demo. 
  • Actualización de contenido de prueba demo, no presente en desarrollo. 

Hemos implementado a través de SFCC-CI, una carga de los cambios en los datos a los entornos de destino. Este upload se basa en datos del entorno de origen & adjuntos al commit asociado. ¡El diferencial de los cambios realizados por el desarrollador en los datos se construye automáticamente! Solo es necesario iniciar una línea de comandos al principio y al final del desarrollo y el diferencial de datos se engancha automáticamente al código fuente. 

El ahorro de tiempo & la gestión de los efectos de los bordes es significativo en este punto. Aunque difícilmente cuantificable estimamos entre 5% y 10% el ahorro de tiempo en un equipo de proyecto en fase de BUILD.  

Priority « Highest »

Tenemos cinco niveles de prioridad en Madagence, en los que nuestros SLAs están trabajando. A través de la Jira Project Automation, hemos creado vías sencillas que permiten rastrear eficazmente las alertas sobre las solicitudes prioritarias. 

Por ejemplo, en Teams notificamos las solicitudes de prioridad 1 o «Highest». 

Automation ROI

Planificamos sprints con nuestros clientes sobre la base de un solo & indicador. El R.O.I. Este indicador permite en segundos saber las tareas que tienen la relación esfuerzo/efecto más alta. 

Este indicador se calcula automáticamente de acuerdo con una receta académica y secreta de Madagence. Esta receta la hemos implementado en Jira a través de un Script Listener (Script Runner). Este script se ejecuta cada vez que se actualizan las tareas para recalcular el ROI en vivo.

Push up / down on Issue

En JIRA hemos diseñado varios scripts para gestionar la dependencia entre las tareas principales y las tareas secundarias. 

 

Por lo tanto, cuando estimamos la complejidad de las tareas durante la planificación del poker, las estimaciones se elevan automáticamente en las Stories y luego en las Epics. 

 

De manera similar, hay un script de gestión de los estados entre tareas. Cuando se actualiza un ticket: 

  • Si el ticket es una Story, entonces todos los sub tickets se indexarán automáticamente al estado de la Story 
  • Si el ticket es una Tareas; entonces la Historia que contiene la Tareas se indexa al estado más pequeño de sus sub tareas 

Cosas tontas que cada día permiten ahorrar algunos minutos; cada semana algunas horas y al final de un año varias decenas de días. 

CONCLUSIÓN 

No vamos a hacer una conclusión ampliada. Hemos enumerado a continuación los objetivos que nos habíamos fijado y cuáles son las características que apuntan a este objetivo. 

Una cosa es segura. En Madagence vemos la integración continua y la automatización del proyecto como un justo equilibrio que tiene como único objetivo: un aumento de la productividad y la calidad de nuestros servicios. 

Las posibilidades son infinitas cuando las herramientas adecuadas están en su lugar, por lo que siempre hay que tener en cuenta que la integración continua & la automatización de proyectos está al servicio del proyecto y no al revés. Para estar al servicio del proyecto, estas herramientas deben ser simples en la comprensión, en el mantenimiento. 

Nuestra conclusión: La simplicidad es la clave de la adhesión, la adhesión es la clave del éxito. 

Ba&sh Madagence Salesforce Commerce Cloud
Empresaavril 16, 2020

Madagence
x
Ba&sh

Ba&sh y Madagence en Salesforce B2C Commerce

Madagence acompaña a Ba&sh Paris desde hace más de 7 años. Más que un simple cliente, Ba&sh representa la relación perfecta de lo que Madagence desea emprender con sus clientes: ¡una aventura llena de agilidad, giros y conquistas!

Fundada en 2003 por Barbara Boccara y Sharon Krief Ba&sh es una marca de ropa ; una marca singular ; una marca a contracorriente en el difícil mercado del prêt-à-porter ; una marca conmovedora por su estilo y posicionamiento.

Landing Royal Monceau

Madagence ha acompañado a Ba&sh Paris desde su debut en Digital. Después de la implementación de un primer sitio de comercio electrónico en Prestashop en 2013, el despliegue de un sistema de gestión de almacenes (Solución Madagence) en 2015 ; este año Ba&sh nos confía su nueva plataforma de comercio electrónico bajo Salesforce B2C Commerce.

Salesforce Commerce Cloud Logo Madagence

Con nuestra voluntad de conquistar una parte del mercado de la solución Commerce Cloud B2C ; mercado que ha conocido un auge fulgurante a partir de 2016 ; hemos ampliado nuestro equipo de nuevos colaboradores certificados Salesforce B2C Commerce (Arquitecto, Líder Técnico, Jefe de Proyecto).