Lo óptimo es tomar las decisiones lo más tarde posible, con más información. Esto permite soluciones más sencillas y en algunos casos evitar trabajo innecesario. Suena bien, ¿verdad?... Claro, pero ¿cómo lo hago?… Mediante ejemplos reales aprenderemos a ser unos artistas de posponer y minimizar el trabajo a realizar. Después del El arte del patadón pa'lante, ahora… el Libro de recetas. Relajate y disfruta viendo como actuan unos vagos profesionales.
11. Ej: Customer Repository
Time to Market / Opportunity cost
Sistema TV / Teléfono / Internet
Persistencia gestión clientes
Núm clientes y crecimiento bajo
Concurrencia baja
@artolamola @eferro
12. Ej: Customer Repository
Time to Market / Opportunity cost
Solución de referencia:
BD Relacional + ORM + Framework
@artolamola @eferro
14. Ej: Customer Repository
Time to Market / Opportunity cost
1 Serialización a fichero
@artolamola @eferro
2 Python text indexer
3 Python text indexer + Redis
4 MySQL Full text search + Redis
15. Ej: Customer Repository
Time to Market / Opportunity cost
Siguientes pasos:
@artolamola @eferro
- ¿PostgreSQL?
- ¿Mongo?
- a saber...
17. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
Sistema colas para aplicación
Cloud
Uso desde varios servicios
Desplegado en AWS
@artolamola @eferro
18. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
1 Uso API aws SQS en cada servicio
@artolamola @eferro
2 Encapsulación reusable (simple)
19. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
20. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
3 Encapsulación MultiQueue (envío
con prioridades)
@artolamola @eferro
21. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
22. Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
Siguientes pasos:
- ¿RabbitMQ? ¿Redis?
- ¿Compresión datos? ¿Formatos?
- a saber...
29. Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
Gestión de usuarios complicada
B2B. Publicidad. Partners,
Advertisers, Agencias, Brands… etc.
Startup en modo exploración.
@artolamola @eferro
30. Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
Solución de referencia:
Sistema usuarios / roles /
organizaciones / login
31. Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
1 Sin usuarios / API KEY (api)
2 Usuarios creados manual (api)
3 Usuarios suplantan otros (api)
4 Registro con activación manual
(Web UI)
32. Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
Siguientes pasos:
- ¿activación y datos de pago?
- ¿uso servicio externo?
- a saber...
34. Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
Sin experiencia con AWS.
Herramienta para:
- Desplegar servicios
- Ver estado cluster / colas / DBs
- Ver configuraciones y log
@artolamola @eferro
35. Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
@artolamola @eferro
Solución de referencia:
Selección de herramienta para uso
directo (ansible, terraform, chef)
46. Referencias
@artolamola @eferro
● CAS2016 El arte del patadon pa’lante
● CAS2016 Problemas vs Soluciones. Carlos Blé
● Real options
● Embracing Uncertainty
● The art of destroying software
● Lean Software Development