Considere el siguiente requerimiento que fue planteado como parte de un sistema de Comercio Electrónico para una farmacia. Indique si el requerimiento es Funcional o No Funcional y si cumple con todas las características (no ambiguo, completo, correcto, factible, cks vistas en clase para los requerimientos, justificando su respuesta.
Para determinar si un requerimiento es funcional o no funcional, primero es importante entender la diferencia entre ambos:
- Un **requerimiento funcional** describe una función específica o una acción que el sistema debe ser capaz de realizar. Por ejemplo, “El sistema debe permitir a los usuarios registrar una cuenta” o “El sistema debe mostrar una lista de productos disponibles”.
- Un **requerimiento no funcional** se refiere a cómo se debe comportar el sistema. Esto incluye aspectos como el rendimiento, la seguridad, la usabilidad, la escalabilidad, etc. Por ejemplo, “El sistema debe procesar las transacciones en menos de 2 segundos” o “El sistema debe ser capaz de gestionar hasta mil usuarios simultáneamente”.
Ahora, para evaluar si un requerimiento cumple con las características de calidad (no ambiguo, completo, correcto, factible), tomemos un ejemplo ficticio de un requerimiento de comercio electrónico para una farmacia:
"El sistema debe enviar un correo electrónico de confirmación al cliente después de que complete una compra."
1. **Funcional o No Funcional**: Este requerimiento es **funcional**, ya que describe una acción específica que el sistema debe realizar.
2. **No ambigüo**: Es claro que el sistema debe enviar un correo electrónico de confirmación. Sin embargo, se podría clarificar qué información debe incluir el correo (número de orden, detalles de los productos, etc.) para eliminar cualquier ambigüedad.
3. **Completo**: El requerimiento parece incompleto. No especifica los detalles necesarios, como el contenido del correo y las condiciones bajo las cuales se enviará (por ejemplo, solo después de pagos exitosos). Un requerimiento completo debería incluir toda la información necesaria para que el equipo de desarrollo entienda claramente lo que se debe hacer.
4. **Correcto**: Si el correo electrónico de confirmación es una funcionalidad que se espera en un sistema de comercio electrónico, entonces se puede considerar correcto, siempre y cuando se alinee con los requerimientos del cliente.
5. **Factible**: En general, enviar correos electrónicos es una funcionalidad técnicamente factible en la mayoría de los sistemas de comercio electrónico actuales. Sin embargo, necesitaríamos evaluar si el equipo tiene los recursos y herramientas necesarias (como un servicio de correo electrónico) para implementarlo.
En resumen, para mejorar este requerimiento, se debe volver a redactar teniendo en cuenta las observaciones realizadas, agregando detalles importantes para que sea más claro y completo. Esto implicaría trabajar en colaboración con los stakeholders para asegurar que todos tengan la misma comprensión de lo que se necesita, un aspecto crítico en metodologías ágiles como Scrum, donde la comunicación regular y la colaboración con los interesados son claves para el éxito del proyecto.