Con esto en mente, trate de identificar una necesidad real de las compañías en donde podría usarse este patrón arquitectónico de solución, que no sea algo tan fuera de un contexto corporativo tradicional como el bitcoin, y entonces como todos los momentos creativos en mi vida, una pequeña luz de suerte toco a mi cerebro mientras tenia una conversación de temas del día a día. El proceso creativo pasa por fases en donde la idea se diagrama, toma fuerza, en algunos casos se debilita y finalmente con algo de información, puede llegar a identificarse un real caso potencial que podría llegar a implementarse. Quiero compartirles algunas @platanizaciones de los conceptos de BlockChain, según mi entendimiento. Si alguien es experto en esto y puede darme su feedback NO teorico sino practico, sera mas que bienvenido. Empecemos con el caso de uso:
En un conglomerado de empresas, no se tiene la capacidad de identificar al cliente de una única manera, por lo que es difícil pensar en servicios de @cross selling, @up selling, y demás términos mercadologicos que enmarcan la capacidad de explotar el contar con distintos productos/servicios que pueden ofrecerse al mismo cliente, desde empresas independientes, o en conglomerados, o en sociedades, o en cualquier relacion entre empresas que brindan distintos servicios, y hasta en empresas del mismo servicio. Para este momento, seguramente varios se habrán desconectado de este escrito y estarán pensando, eso ya se puede hacer, existen ETL, DataWharehouses, etc. Y si todo eso es cierto, hasta existen dblinks entre bases de datos, lagos de información, un sinfín de tecnologías que nos permiten compartir información, para este caso, del cliente, entonces ¿Por qué blockchain?. Bueno, existen para mi tres conceptos fascinantes de esta arquitectura:
1. Consenso: Los distintos nodos operativos deben tener un consenso, según la mayoría de definiciones, un consenso debe ser de mas del 50%. Esto difiere tremendamente del concepto tradicional en donde las transacciones solo tienen una respuesta verdadera de un único validador, en esta arquitectura tengo a mas de uno, y puedo tener un resultado de una transacción sin que el 100% de los participantes estén en el consenso, es una democratización de una transacción entre sistemas. Increíble!!!.
2. Ledger:Entendiendo el concepto sin visitarlo mas a fondo técnicamente, es un lugar en donde residen todas estas transacciones que requieren verificación, y el blockchain no es mas que ese orden de bloques que permite hacer esas validaciones con otras entidades distribuidas, NO existe una única verdad, pero al ser una verdad validada por varios, las posibilidades de disminuir problemas de seguridad son inmensas.
3. Contrato:Este concepto, que data de arquitecturas como servicio, en mi concepto, finalmente toma un valor mas grande, pues enmarca los datos del activo que son compartidos, como se comparten, que puede hacerse con ellos, etc.
Entonces, regresemos al caso que planteaba en el principio. Identificación de un cliente dentro de un conglomerado de empresas. En el modo tradicional seguramente estaríamos pensando en hacer una conexión entre bases de datos, crear un datawhareouse en el que correremos complejos algoritmos para hacer match entre campos, o en el mejor de los casos crear un servicio web que nos permita validar ese cliente frente a otros dentro de la compañía y con alguna capacidad de acertar, solo alguna, identificar a ese cliente. Y porque digo alguna? Porque la informacion de los clientes cambia, la forma de escribir nombres y apellidos, suelen tener distintos documentos de identificación, distintos correos electrónicos, y sobre todo, debido a lo invasivo del internet y otros medios canales digitales, suelen entregarnos información incorrecta de contacto, para comprarse un momento de tranquilidad y no ser agobiados por mensajes y correos electrónicos. Seguramente esta identificación la haríamos tardía, no en linea, y seguramente TODAS nuestras bases de datos de clientes dentro de una misma empresa y ni digamos de un grupo de empresas tiene registros repetidos innimaginables de las mismas personas, lo que los aleja de esta vision de cliente, de estas tan famosas estrategias que estan de moda de girar en torno al cliente.
Bueno, he estado pensando como podríamos hacer una solución usando blockchain y se las comparto. Definamos que el activo, ósea la @transaccion es la informacion de un cliente, su información básica, personal y de contacto. Y que el ledger no es mas que una base de datos tradicional en donde colocamos estas transacciones, y finalmente, el consenso no es mas que la verificación de esta transacción por los distintos servidores participantes de las distintas empresas que desean identificar al cliente. Se define un contrato común sobre la informacion que se compartirá y las reglas con las que el blockchain validara la transacción ejecutada sobre la informacion del cliente, miremos un ejemplo para dos operaciones del cliente, create and update information:
1. Create: En alguno de los sistemas de alguna de las empresas dentro del blockchain se crea la informacion de un nuevo cliente, o al menos un nuevo cliente de esa empresa en particular. Esta informacion se envía al blockchain con los siguientes datos según el contrato:
a. Nombre y apellido
b. Fecha de nacimiento
c. Documento de identidad
d. Teléfono
e. Correo Electrónico
Ahora, digamos que las reglas del blockchain para la transacción de @create, indican que se validara mediante algoritmos de comparación, las siguientes opciones:
f. Nombre y apellido + Correo electronico
g. Fecha de nacimiento + Nombre y apellido
h. Documento de identidad + Nombre y apellido
i. Teléfono + nombre y apellido
j. Correo Electrónico + teléfono
Estas combinaciones y muchas otras que pueden definirse como parte de las reglas del blockchain se validarían en todos los repositorios de las empresas asociadas a la transacción, y con un consenso según las definiciones de la arquitectura se identificaran distintas posibilidades y sus acciones asociadas:
2. UPDATE:
a. El cliente ya es cliente de una empresa asociada, por lo que puede dársele un trato preferencial, validar con el si es el mismo cliente y de ser así, traer informacion que puede ser relevante para la empresa, inclusive un score que puede permitir saber el valor potencial de ese cliente, comportamiento de pago, comportamientos de compra, etc.
Adicionalmente si es así, puede ser que este cliente halla entregado informacion en esa empresa distinta a la que tenia en la anterior por lo que según el consenso y las reglas puedo disparar una actualizacion de datos que me asegure tener siempre una vision lo mas cercana a única de cliente. Si se dio el consenso en que el cliente existía pero las otras empresas tienen un numero de teléfono de contacto diferente, según como se definan la reglas del blockchain puede decidirse actualizar el numero, o al menos disparar una actividad a un sistema de CRM de buscar contactar al cliente y validar si se dio un cambio en su numero de contacto de manera pro activa.
b. El cliente no es cliente de ninguna empresa asociada, por lo que se procede a crearlo y a por ejemplo según la información que se capte de el, que puede relacionarse con data no estructura, definir ingresarlo como un LEAD en otras empresas asociadas que identifiquen según las reglas, productos/servicios que pueden ofertarse, para que ellas desde sus sistemas CRM o como estén definidas puedan incrementar su portafolio de clientes.
Me pregunto que sentirán ahora, los creadores de los negocios de puntos y millas, donde según su conveniencia le dan valor a estos @puntos que en realidad en muchas empresas son dinero con el que pueden comprarse boletos aéreos, iPads, hoteles y demás. Como usuarios no se han preguntado cuanto es el valor real de esa milla? 10.000 millas por un boleto cuanto dinero es? Y si mediante algoritmos identificáramos el valor de esa milla en distintos comercios y pudiéramos valorizarla para que supiera en realidad cuanto le esta costando esa redención según el consenso del blockchain? Lo que podemos hacer es inimaginable.
Esos son dos pequeños ejemplos, ahora pensemos en un ejemplo real y aplicado a alguna industria. Yo tengo muchos en mente, pero para no alargarme mas, debo confesarles que una vez se entiende mas a detalle lo que significa esta arquitectura, mas allá del bitcoin, es un concepto maravilloso que cambia la típica transacción computacional con respuestas de 1 y 0, a un esquema democrático de votación, es un cambio de concepto muy interesante, que permite terminar con intermediarios, con procesamientos batch, informacion duplicada y que nos puede permitir darle un verdadero trato de VALOR a nuestros activos, en mi humilde comprensión, es una arquitectura Peer2Peer en donde entidades reales pueden hacer parte de la cadena de validación y en donde todos pueden beneficiarse de la misma.