Definición de Requerimientos de Negocio para Desarrolladores Backend
Clase 7 de 25 • Curso Práctico de Arquitectura Backend
Resumen
¿Cuál es el objetivo de la definición de los requerimientos del negocio?
Una de las habilidades más cruciales al iniciar un proyecto es saber definir claramente los requerimientos del negocio, es decir, entender exactamente qué es lo que necesita el cliente. En este caso, estamos hablando de un cliente ficticio que busca crear un sitio web de reseñas de cámaras fotográficas, donde profesionales comparten sus opiniones para ayudar a los usuarios a decidir qué cámara comprar.
El propósito principal de este proceso es obtener una interpretación clara y precisa de lo que el negocio demanda, lo cual nos guiará en el desarrollo, desde la codificación inicial hasta la implementación completa del sistema.
¿Cómo interpretar los requerimientos del cliente para un sitio web de reseñas?
Al desarrollar un sitio web de reseñas de cámaras, varios puntos deben ser considerados para cumplir con las expectativas del cliente. A continuación se enumeran las solicitudes y características clave:
- Página web para reviews: El cliente desea una página donde editores compartan reseñas de cámaras.
- Usuarios finales: Los usuarios consumen estas reseñas para tomar decisiones de compra.
- Editores profesionales: Solo ellos pueden subir nuevas reseñas al sistema.
- Componentes técnicos:
- La empresa ya tiene un equipo de front-end; deberás encargarte del desarrollo del back-end.
- Se requiere la creación de APIs que permitan estas funcionalidades.
- Alcance geográfico:
- El mercado principal está en América del Sur, pero el sitio también debe servir a usuarios en ubicaciones globales.
¿Cuáles son los casos de uso principales del sistema?
A medida que se desglosa la información proporcionada por el cliente, podemos identificar los casos de uso esenciales para el sistema:
- Editor sube reviews: Un editor envía una reseña al sistema en la nube.
- Este proceso es fundamental para la entrada de nuevos contenidos.
- Usuarios acceden y leen reviews:
- Los usuarios no requieren registro, pueden simplemente acceder al contenido de las reseñas.
- Las operaciones principales son de obtención de datos, como "get content".
Estos casos de uso no solo describen las acciones básicas, sino que también ayudan a prever los desafíos técnicos que se deben enfrentar al diseñar el sistema.
¿Qué desafíos y consideraciones específicas implica este proyecto?
El desarrollo de este sistema implica enfrentar y planificar para ciertos desafíos:
-
Escalabilidad:
- Imagina que crece la base de usuarios hacia miles o millones, accediendo diariamente a las reseñas.
- Contrástalo con el número relativamente limitado de editores (aproximadamente 10) que crean contenido.
-
Distribución global:
- Si bien los editores están localizados en Sudamérica, los usuarios estarán distribuidos globalmente.
- Este aspecto requiere una infraestructura preparada para carga internacional.
-
Optimización de recursos:
- Dado que el número de usuarios es alto y los editores son pocos, el sistema debe optimizar la gestión de recursos para lectura masiva sin saturar la capacidad de edición.
Estas consideraciones permiten prever y mitigar problemas antes de que se materialicen. Al abordar estos desafíos, se potencia la capacidad del sistema para ofrecer un servicio eficaz y adaptable al crecimiento en tiempo real.
Mediante este enfoque estructurado de interpretación y análisis de requerimientos, se puede asegurar que el desarrollo del sitio web cumpla con todos los requisitos del cliente y sea escalable y eficiente en su propósito. ¿Listo para seguir aprendiendo? ¡La aventura apenas comienza!