Así Empieza PlatziDocs
Clase 20 de 24 • Curso de Fundamentos de Arquitectura de Software
Resumen
La arquitectura de software aplicada a un problema cotidiano de gestión de información puede transformar procesos tediosos en soluciones elegantes y eficientes. A continuación, exploraremos cómo analizar, diseñar y proponer alternativas para resolver un problema real utilizando conceptos arquitectónicos y herramientas que pueden aplicarse en diversos contextos.
¿Cómo aplicar técnicas de arquitectura de software a problemas cotidianos?
El proceso de diseño arquitectónico puede aplicarse a situaciones diarias que enfrentamos. En este caso, analizaremos un problema específico: la transferencia de información interesante desde Telegram hasta un dispositivo de lectura Remarkable. Este flujo actualmente requiere varios pasos manuales que resultan tediosos y repetitivos.
Para abordar este problema podemos utilizar la técnica de los "6 sombreros para pensar" de Edward de Bono, que nos permite analizar la situación desde diferentes perspectivas:
Análisis usando los 6 sombreros
-
Sombrero Azul (Proceso): Evalúa el flujo de información desde que se encuentra hasta que se consume.
-
Sombrero Blanco (Hechos):
- El usuario no quiere cambiar las herramientas actuales (Telegram y Remarkable)
- Se necesita reprocesar información histórica acumulada
- Deseo de enriquecer datos con etiquetas de forma automática
- Mantener las interfaces actuales para recolectar y consumir enlaces
-
Sombrero Rojo (Sentimientos):
- Frustración por coleccionar información valiosa que luego no se utiliza
- Potencial satisfacción si se implementa un sistema semiautomático para recuperar información valiosa
-
Sombrero Negro (Dificultades):
- Resistencia a cambiar herramientas
- Desafíos de integración con Telegram y Remarkable
- Preguntas abiertas: ¿cómo encontrar nueva información? y ¿cómo enriquecer contenido sin cambiar el flujo de trabajo?
-
Sombrero Amarillo (Beneficios):
- Aprovechar tiempo durante episodios de insomnio
- Reemplazar scroll infinito por lectura de valor
-
Sombrero Verde (Creatividad):
- Usar un sistema externo que reemplace Telegram y Remarkable
- Etiquetado automático de artículos
- Generación automática de resúmenes semanales
Este análisis completo proporciona los insumos necesarios para mantener una conversación productiva con modelos de IA o con colegas sobre posibles soluciones.
¿Qué historias de usuario podemos identificar y priorizar?
A partir del análisis anterior, se identificaron cuatro historias de usuario principales relacionadas con:
- Enviar información al dispositivo de lectura
- Buscar información previamente encontrada
- Convertir información no textual a formatos compatibles con el dispositivo
- [Historia adicional no especificada en el transcript]
Matriz de priorización
Para establecer un orden de desarrollo, utilizamos una matriz de priorización basada en importancia y urgencia:
- Importante y Urgente: Reemplazar el método actual de transferencia de datos desde Telegram hasta Remarkable
- Importante pero No Urgente: Mejorar el mecanismo de búsqueda
- Urgente pero No Importante: Despliegue rápido de una solución
- Ni Urgente ni Importante: Capacidad de agregar notas o comentarios al contenido
Esta priorización nos ayuda a enfocarnos en lo que realmente generará valor inmediato.
¿Cómo definir un MVP efectivo para este problema?
Con apoyo de modelos de IA, se propuso un MVP (Producto Mínimo Viable) con los siguientes componentes:
- Mecanismo de integración con Telegram (bot o API)
- Base de datos para almacenar y gestionar la información
- Interfaz web o aplicación sencilla para gestionar enlaces
- Botón en la interfaz para enviar contenido a Remarkable
- API externo para convertir contenido no textual a formatos compatibles
Arquitectura del MVP propuesto por la IA
El diagrama C4 del MVP muestra dos subsistemas principales:
- Subsistema de integración con Telegram
- Subsistema de integración con herramientas de conversión y Remarkable
Este diseño contiene tres contenedores principales:
- Integración con Telegram
- Base de datos para almacenamiento
- Componente de integración con convertidor de documentos y Remarkable
Nota: En este modelo solo hay un actor (el usuario en su rol de lector).
Propuesta simplificada de MVP
Una versión más simplificada del MVP podría aprovechar las capacidades nativas de Remarkable para integrarse con sistemas de almacenamiento en la nube como Google Drive o Dropbox. Esta aproximación:
- Reduce la arquitectura a un solo subsistema
- Agrega una dependencia externa estandarizada
- Simplifica la conexión con el dispositivo de lectura
- Aumenta la flexibilidad y reduce la complejidad de decisiones futuras
Evaluación comparativa
Criterio | Sistema externo | MVP propuesto por IA | MVP simplificado |
---|---|---|---|
Contenedores | N/A | 4 | 1 + integración externa |
Integraciones | N/A | 4 | 2 |
Puntos de seguridad | N/A | Múltiples | Reducidos |
Costo de construcción | Bajo (existente) | Alto | Medio |
Costo de operación | Alto (servicio) | Medio-Alto | Bajo |
El desafío consiste en evaluar cuál de estas alternativas representa el verdadero MVP que equilibra la simplicidad con la funcionalidad necesaria para resolver el problema principal.
Es importante considerar también qué requisitos no funcionales podrían afectar cada solución y cómo cada una podría extenderse en futuros ciclos de desarrollo, ya que este es solo el primer paso en la evolución del sistema.
Aplicar estos principios arquitectónicos a problemas cotidianos nos permite analizar situaciones complejas de manera estructurada y encontrar soluciones elegantes que realmente resuelvan nuestras necesidades. ¿Qué problemas de tu día a día podrías resolver aplicando estos mismos conceptos? Comparte tus ideas y experiencias en los comentarios.