Creación de Documentos de Diseño en Markdown para Proyectos de Software
Clase 9 de 25 • Curso Práctico de Arquitectura Backend
Resumen
¿Cómo iniciar un documento de diseño?
Elaborar un documento de diseño puede parecer un proceso complejo, pero al desglosarlo en pasos simples, se convierte en una tarea manejable. Es importante comenzar obteniendo el template necesario; este recurso te guiará a lo largo del proceso. Luego, copia la fuente en Markdown y crea tu archivo propio. Markdown es particularmente útil si piensas compartir el documento en plataformas como GitHub, aunque puedes escoger cualquier formato con el que te sientas cómodo.
¿Qué título otorgar al documento?
El título debe ser descriptivo y reflejar claramente el enfoque del documento. En este ejemplo, se utiliza "Camera Reviews" como título, lo que inmediatamente indica el tema central. Asegúrate de que el título resuene con el contenido y objetivo del proyecto.
¿Cómo definir el problema a resolver?
Identifica claramente el problema que buscas solucionar. Esta sección establece el contexto para todo el documento de diseño. Puedes copiar y pegar la definición del problema proporcionada por el cliente, asegurándote de incluir los detalles esenciales que guiarán el desarrollo.
Definiendo el alcance y los casos de uso
Definir el alcance y los casos de uso es crucial para determinar las capacidades del sistema y las limitaciones. Estos elementos no solo guían el desarrollo, sino que también ayudan a gestionar las expectativas del cliente.
¿Cómo empezar con los casos de uso?
Aunque opcional, los casos de uso son fundamentales porque establecen lo que el sistema debe soportar. Por ejemplo:
- Como editor, me gustaría poder subir una review de una cámara.
- Como editor, me gustaría poder subir una review de un lente para cámaras.
Estos ejemplos clarifican los requisitos fundamentales y alinean el diseño con las necesidades reales.
¿Qué implica el alcance?
El alcance debe complementarse con los casos de uso, detallando lo que está dentro y fuera de sus límites. Por ejemplo, un usuario no registrado no debería poder subir una review, solo leerlas. Esta claridad es vital para evitar malentendidos durante el desarrollo.
Consideraciones arquitectónicas y limitaciones
La arquitectura del sistema y las limitaciones cuantificables son secciones cruciales que definen cómo se estructurará el sistema.
¿Qué incluir en la arquitectura?
La arquitectura puede abarcar desde diagramas hasta modelos de datos. Este componente ofrece una representación visual y teórica de cómo interactúan los diferentes elementos del sistema. Puedes utilizar herramientas y formatos que mejor se adapten a tus necesidades.
¿Cuáles son las limitaciones conocidas?
Identificar y enumerar las limitaciones te permite establecer parámetros claros para el desempeño del sistema. Por ejemplo:
- La llamada al API no debe exceder una latencia de 500 milisegundos al subir una review.
- La latencia para obtener reviews debe ser menor a 100 milisegundos.
Estas restricciones son necesarias para asegurar la eficiencia y funcionalidad del sistema a medida que crece.
Herramientas y recomendaciones adicionales
El uso de herramientas adecuadas puede mejorar dramáticamente la calidad del documento de diseño.
¿Cuáles herramientas utilizar para diagramas?
Herramientas para crear diagramas te ayudarán a visualizar el sistema y sus procesos. Estas herramientas están disponibles en la sección de recursos y son altamente recomendadas para mejorar la claridad y comprensión del diseño.
¿Qué importancia tiene cuantificar el costo?
Cuantificar costos potenciales, especialmente en sistemas grandes, es opcional pero muy beneficioso. Puedes prever gastos según el tráfico y el uso esperado del sistema, asegurando que el proyecto sea económicamente viable.
Animamos a todos los interesados en la creación de documentos de diseño a continuar explorando, aprendiendo y experimentando con diferentes metodologías y herramientas. La práctica constante y la atención a los detalles te convertirán en un profesional experto en el desarrollo de sistemas eficientes y bien documentados.