Definición del problema
Introducción
Definir correctamente el problema es la primera y más crítica etapa del proceso de programación asistida. Este paso determina si el código generado será útil, funcional e incluso eficiente. Si no se define adecuadamente, puede llevar a soluciones que no resuelven el problema real o a problemas más complejos y costosos para resolver en etapas posteriores.
Explicación principal con ejemplos
Comunicar claramente los requisitos funcionales
Un buen ejemplo de definición del problema es cuando una empresa necesita un sistema para gestionar inventario. Los detalles importantes que deben incluirse son:
- Requisitos funcionales: El sistema debe permitir el ingreso y salida de productos, registro de proveedores, generación de reportes de stock y seguimiento de pedidos.
- Restricciones técnicas: El sistema debe ser compatible con la base de datos actual y utilizar una API existente para comunicarse con otros sistemas.
Ejemplo de prompt
Crea un sistema que permita el ingreso, salida y seguimiento de productos en inventario. Debe ser compatible con nuestra base de datos MySQL y usar la API existente del sistema ERP.
Errores típicos / trampas
- Requisitos insuficientes: Olvidar detalles clave como el registro de proveedores o pedidos puede llevar a una solución incompleta.
- Suposiciones erróneas: Asumir que la base de datos es compatible con un tipo específico de API sin verificarlo previamente puede resultar en incompatibilidades y errores costosos.
- Falta de contexto: No incluir detalles sobre el flujo de trabajo real, como la necesidad de generar reportes diarios a partir del inventario actual.
Checklist accionable
- Identificar los requisitos funcionales:
- Define con claridad lo que debe hacer el sistema.
- Incluye todos los aspectos del problema real.
- Incluir restricciones técnicas:
- Comprueba la compatibilidad de las tecnologías existentes.
- Identifica cualquier API o base de datos que deben ser utilizados.
- Registrar casos límite y excepciones:
- Define cómo se manejarán los escenarios inesperados, como un producto sin stock o una conexión fallida a la base de datos.
- Considerar el flujo de trabajo real:
- Describe cómo se utilizará el sistema en la práctica.
- Incluye detalles sobre los usuarios y sus roles.
- Validar con stakeholders:
- Asegúrate de que los requisitos sean comprensibles para todos los involucrados.
- Obtén feedback antes de avanzar en el desarrollo.
Cierre
Siguientes pasos
- Documentar los requisitos: Escriba una documentación detallada del problema y las soluciones propuestas.
- Desarrollar prompts técnicos: Utilice estos requisitos para diseñar prompts efectivos para la generación de código.
- Implementar en etapas: Desarrolle el sistema en pequeñas partes, probando cada componente antes de integrarlo.
Mediante la definición precisa del problema y el cuidado a las detalles técnicos, puedes asegurarte de que el código generado resuelva efectivamente el problema real, facilitando así un desarrollo más seguro y eficiente.