Jan. 31, 2021
Construyendo una plataforma de producto
Diseñando para la reutilización, la flexibilidad y la extensibilidad
Este mes estoy aprovechando las capacidades de la plataforma para lanzar un nuevo producto. A lo largo de los años he desarrollado la plataforma "Lemmid", un conjunto de bloques de construcción que me permiten desarrollar rápidamente nuevos productos. Diseñar una plataforma requiere algunas consideraciones adicionales, pero si sigues algunas reglas simples, ¡puedes hacerlo tú mismo!
¿Qué es una plataforma?
En pocas palabras, una plataforma es algo sobre lo que se puede construir. La clave que diferencia una plataforma de un simple producto es que la plataforma puede hacer (o convertirse en) otras cosas que no se previeron originalmente en el momento de su diseño inicial.

Los teléfonos inteligentes modernos con sus capacidades de hardware y sus respectivas tiendas de aplicaciones pueden considerarse plataformas. La plataforma permite todo tipo de funcionalidades originalmente imprevistas al permitir a los desarrolladores utilizar las capacidades de la plataforma de formas novedosas y en nuevas combinaciones.

Reutilización, flexibilidad y extensibilidad
Si estás diseñando una plataforma, debes tener en cuenta la reutilización, la flexibilidad y la extensibilidad. En cierto sentido, estás diseñando para un futuro desconocido. Para entender cómo diseñar una plataforma es una buena idea echar un vistazo a los bloques de Duplo.

La simplicidad de un bloque de Duplo es engañosa, pero el diseño es increíblemente brillante, ya que permite:
- Reutilización: Coges un bloque, lo usas en algún lugar y cuando terminas, puedes sacarlo y usarlo en otro lugar.
- Flexibilidad: Incluso un solo bloque de Duplo se puede utilizar de muchas maneras, puedes conectarlo a otros bloques creando muchas combinaciones diferentes.
- Extensibilidad: Los tacos estandarizados de los bloques de Duplo permiten una fácil extensibilidad: las piezas nuevas y futuras pueden conectarse a los bloques existentes si incorporan el mismo "estándar de tacos".
Estos tres principios de diseño permiten que los bloques de Duplo se conviertan en una plataforma, permitiendo la creación de nuevas cosas. Si estás diseñando una plataforma, puedes pensar en estos bloques de Duplo. Los componentes que crees deben ser compatibles con el "principio de plataforma".

La mejor manera de diseñar una plataforma es centrarse en un solo bloque. Será la pieza elemental de tu plataforma, imagina cómo puede conectarse a otras piezas y cómo vas a estandarizar esa (inter)conexión. Si lo haces bien, te sorprenderá lo fácil que resulta incorporar ideas nuevas y novedosas.


Lemmid
A lo largo de los años he desarrollado la plataforma "Lemmid", que es un conjunto de bloques de construcción digitales que proporcionan una base para prácticamente cualquier producto que desarrollo. Esto incluye aplicaciones, sitios web, tiendas web e incluso juegos.

La plataforma está diseñada como un conjunto de micro servicios que comparten una interfaz y un principio de diseño comunes. Cada pieza "desconoce" a sus hermanos en términos de diseño: tienen un alcance local y son lo más simples posible. Solo pueden conectarse entre sí utilizando un protocolo estandarizado que diseñé para que también sea lo más simple posible.
Por ejemplo, hay un bloque "Lemmid Bill" que es capaz de enviar facturas. A "quién y qué" es desconocido para este bloque, otras piezas pueden usar el bloque "Bill" para enviar facturas digitales. Se puede reutilizar y funciona para facturas con cosas que ni siquiera he imaginado todavía.
Otro ejemplo es el bloque "Lemmid Manager", que es capaz de gestionar contenido. Se utiliza de múltiples maneras por diferentes productos que he creado. A veces se utiliza como sistema de gestión de contenidos de un sitio web y otras veces se utiliza para gestionar un catálogo de productos (impulsando tiendas web). ¡Es capaz de gestionar contenido para sitios y aplicaciones que aún no he creado!
Aprovechando las capacidades de la plataforma
La food ordering app, conocida como "Lemmid Store", que he creado sobre la plataforma Lemmid aprovecha sus capacidades utilizando los bloques de construcción individuales para:
- permitir que las tiendas estén en línea: servidor web, registro de nombres de dominio, enlaces dns, etc.
- permitir que las tiendas se llenen de productos: gestión de textos, precios, fotos de productos, categorías de productos, etc.
- permitir que las tiendas acepten pedidos: comprobar la capacidad, aceptar la información del cliente, procesar los pagos.
- permitir la autenticación de los propietarios de las tiendas: para asegurar la gestión de las tiendas.
- permitir la comercialización del producto mediante el envío de facturas
- permitir que se registren nuevos clientes

Conclusión
Tómate un momento para considerar si estás construyendo solo un producto o si podría convertirse en una plataforma por sí mismo. Si esto último es cierto, puede ser prudente diseñar para el futuro y adoptar la reutilización, la flexibilidad y la extensibilidad.
"Me encanta cuando un plan sale bien" es exactamente lo que pienso si soy capaz de aprovechar las capacidades de mi plataforma. Lanzar nuevos productos y poder utilizar el poder de los bloques de construcción existentes es "agradable", parafraseando al mismo Hannibal Smith del Equipo A.
