4. Necesidades, problemas, objetivos y requerimientos

4.1 Introducción

Para trabajar correctamente con requerimientos es necesario distinguir cuatro conceptos que suelen mezclarse: necesidades, problemas, objetivos y requerimientos. Aunque están relacionados, no significan lo mismo.

Muchas dificultades en proyectos de software aparecen porque se salta demasiado rápido desde una queja o una idea inicial hacia una solución técnica. Por ejemplo, alguien dice "necesitamos una aplicación móvil", pero tal vez el problema real sea que los vendedores no pueden consultar precios fuera de la oficina.

Comprender estas diferencias permite hacer mejores preguntas, evitar soluciones prematuras y construir requerimientos que tengan sentido para el negocio y para los usuarios.

4.2 Relación general entre los conceptos

Los conceptos se pueden ordenar como una cadena de razonamiento:

Problema o necesidad → objetivo → requerimientos → solución de software

El problema o la necesidad explica por qué se quiere cambiar algo. El objetivo expresa qué resultado se desea lograr. Los requerimientos describen qué debe cumplir el sistema para contribuir a ese objetivo. La solución define cómo se implementará todo eso.

Si se confunden estos niveles, el equipo puede terminar construyendo una solución sin haber comprendido el propósito real.

4.3 ¿Qué es un problema?

Un problema es una situación actual que genera dificultad, costo, riesgo, demora, error o insatisfacción. Describe algo que no funciona como debería o que impide alcanzar un resultado deseado.

Ejemplos de problemas:

  • Los clientes esperan demasiado tiempo para recibir una respuesta.
  • Los empleados cargan la misma información en varios sistemas.
  • La empresa pierde ventas porque no conoce el stock actualizado.
  • Los reportes se preparan manualmente y contienen errores frecuentes.
  • Los usuarios no pueden consultar el estado de sus trámites.

Un problema bien descrito ayuda a justificar el proyecto. También permite evaluar si la solución propuesta realmente ataca la causa principal o solo trata un síntoma.

4.4 ¿Qué es una necesidad?

Una necesidad expresa algo que una persona, área u organización requiere para trabajar mejor, resolver un problema o alcanzar un objetivo. Puede surgir de una dificultad actual, una oportunidad de mejora, una obligación legal o un cambio en el negocio.

La necesidad suele expresarse en lenguaje del negocio, no en lenguaje técnico. Por ejemplo:

  • Necesitamos reducir el tiempo de atención de reclamos.
  • Necesitamos conocer el stock disponible antes de confirmar una venta.
  • Necesitamos evitar errores al calcular descuentos.
  • Necesitamos que los alumnos puedan consultar sus inscripciones.
  • Necesitamos cumplir con una nueva norma de protección de datos.

Una necesidad todavía no indica exactamente qué debe hacer el sistema, pero orienta la búsqueda de requerimientos.

4.5 Diferencia entre problema y necesidad

Problema y necesidad están muy relacionados. El problema describe una situación no deseada; la necesidad expresa lo que se requiere para mejorarla o resolverla.

Problema Necesidad asociada
Los pedidos se demoran porque se registran en planillas separadas. Centralizar el registro y seguimiento de pedidos.
Los clientes llaman para preguntar el estado de sus reclamos. Permitir que los clientes consulten el estado del reclamo por cuenta propia.
Los supervisores no detectan tareas atrasadas hasta el final del día. Contar con información actualizada sobre tareas pendientes y vencidas.
Los cálculos manuales de comisiones generan errores. Automatizar el cálculo de comisiones según reglas aprobadas.

Esta relación permite pasar de la queja inicial a una necesidad más clara y accionable.

4.6 ¿Qué es un objetivo?

Un objetivo describe el resultado que se quiere alcanzar. Mientras una necesidad indica algo requerido, el objetivo expresa hacia dónde se quiere llegar y, cuando es posible, cómo se medirá el éxito.

Ejemplos de objetivos:

  • Reducir el tiempo promedio de registro de pedidos de 10 minutos a 3 minutos.
  • Disminuir en un 50% las consultas telefónicas sobre el estado de reclamos.
  • Permitir que el 90% de las inscripciones se realicen sin intervención administrativa.
  • Reducir errores de facturación causados por carga manual de datos.
  • Cumplir con los controles mínimos exigidos por una normativa de seguridad.

Los objetivos ayudan a priorizar requerimientos. Si un requerimiento no contribuye a ningún objetivo, conviene revisar si realmente es necesario.

4.7 Objetivos medibles

Siempre que sea posible, los objetivos deben expresarse de manera medible. Esto permite evaluar si el proyecto produjo el resultado esperado y no solo si se entregó una lista de funciones.

Objetivo débil Problema Objetivo más claro
Mejorar la atención al cliente. No indica qué significa mejorar. Reducir el tiempo promedio de primera respuesta de 24 horas a 4 horas.
Hacer más eficiente la carga de datos. No indica qué proceso se mide. Reducir el tiempo de carga de una solicitud completa de 15 minutos a 5 minutos.
Tener mejor control de stock. No indica qué control falta ni cómo se evaluará. Actualizar el stock disponible en menos de 1 minuto después de cada venta confirmada.

4.8 ¿Qué es un requerimiento?

Un requerimiento describe una condición, capacidad, característica o restricción que el sistema debe cumplir. Surge a partir de problemas, necesidades y objetivos, pero tiene un nivel de precisión mayor.

Ejemplos de requerimientos derivados de objetivos:

  • El sistema debe permitir registrar un reclamo indicando cliente, motivo, descripción, prioridad y canal de ingreso.
  • El sistema debe enviar una notificación al cliente cuando el estado del reclamo cambie.
  • El sistema debe impedir confirmar una venta si no existe stock suficiente.
  • El sistema debe calcular automáticamente las comisiones según las reglas vigentes para cada vendedor.
  • El sistema debe registrar fecha, hora y usuario responsable de cada modificación realizada sobre una solicitud.

Un requerimiento debe orientar la construcción y permitir alguna forma de verificación.

4.9 Diferencia entre objetivo y requerimiento

El objetivo indica el resultado que se quiere lograr. El requerimiento indica qué debe cumplir el sistema para contribuir a ese resultado.

Objetivo Requerimientos posibles
Reducir llamadas telefónicas sobre estado de reclamos. Permitir consultar el estado del reclamo en línea. Enviar notificaciones por correo cuando cambie el estado. Mostrar historial de acciones realizadas.
Evitar ventas de productos sin stock. Validar stock antes de confirmar la venta. Reservar unidades durante el proceso de compra. Actualizar stock al confirmar o cancelar una operación.
Disminuir errores en liquidación de comisiones. Registrar reglas de comisión por categoría. Calcular comisiones automáticamente. Generar reporte de liquidación para revisión.

Un mismo objetivo puede requerir varias funciones y restricciones. También puede necesitar cambios organizativos que no dependen solamente del software.

4.10 La solución no debe aparecer demasiado pronto

Un error habitual es comenzar por la solución. Por ejemplo: "queremos un tablero con gráficos", "necesitamos una aplicación móvil" o "hay que agregar un botón". Estas frases pueden ser útiles como ideas, pero no deben reemplazar el análisis del problema.

Antes de aceptar una solución propuesta conviene preguntar:

  • ¿Qué problema intenta resolver?
  • ¿Qué necesidad hay detrás de este pedido?
  • ¿Qué objetivo se quiere alcanzar?
  • ¿Quién se beneficia con esta solución?
  • ¿Existe una alternativa más simple o más adecuada?
  • ¿Cómo sabremos si la solución funcionó?
Una solución propuesta puede ser correcta, pero primero debe entenderse la necesidad que la justifica.

4.11 De una frase inicial a requerimientos

Veamos cómo una frase inicial puede transformarse en información más útil.

Nivel Ejemplo
Frase inicial Necesitamos una app para los vendedores.
Problema Los vendedores no conocen el precio y stock actualizado cuando visitan clientes.
Necesidad Permitir que los vendedores consulten información comercial actualizada fuera de la oficina.
Objetivo Reducir en un 40% las ventas demoradas por falta de información de stock o precios.
Requerimiento El sistema debe permitir consultar productos por código, nombre o categoría, mostrando precio vigente y stock disponible.
Solución posible Aplicación móvil o sitio web adaptable para uso desde celulares.

Este ejemplo muestra que la frase inicial no debe tomarse como requerimiento final. Debe analizarse para comprender qué se necesita realmente.

4.12 Preguntas útiles para aclarar necesidades

Durante la elicitación y el análisis, las preguntas correctas ayudan a separar problemas, necesidades, objetivos y requerimientos.

  • ¿Qué situación actual se quiere mejorar?
  • ¿Qué ocurre si no se resuelve este problema?
  • ¿Quiénes son los afectados?
  • ¿Qué tareas se realizan hoy y con qué dificultades?
  • ¿Qué resultado sería considerado exitoso?
  • ¿Qué indicadores podrían mostrar una mejora?
  • ¿Qué reglas deben respetarse?
  • ¿Qué restricciones existen?
  • ¿Qué parte debe resolver el software y qué parte corresponde al proceso de trabajo?

Estas preguntas evitan que el equipo documente requerimientos superficiales sin comprender el contexto.

4.13 Errores frecuentes

Al trabajar con estos conceptos, suelen aparecer errores como los siguientes:

  • Confundir una solución sugerida con un requerimiento obligatorio.
  • Registrar deseos sin analizar el problema que los origina.
  • Definir objetivos tan generales que no pueden evaluarse.
  • Escribir requerimientos que no se relacionan con ninguna necesidad real.
  • Intentar resolver con software problemas que son principalmente organizativos.
  • Ignorar a usuarios que conocen excepciones importantes del trabajo diario.
  • No distinguir entre una función necesaria y una preferencia de interfaz.

Estos errores reducen la calidad de los requerimientos y pueden llevar a construir funcionalidades poco útiles.

4.14 Caso práctico breve

Una empresa de mantenimiento recibe esta solicitud: "queremos un sistema para que los técnicos carguen fotos". Antes de convertirla en requerimiento, el analista investiga el contexto.

Después de conversar con supervisores y técnicos, descubre lo siguiente:

  • Problema: los clientes reclaman que algunos trabajos no fueron realizados, y la empresa no siempre tiene evidencia suficiente.
  • Necesidad: registrar evidencia del estado antes y después de cada trabajo.
  • Objetivo: reducir reclamos no verificables y mejorar el seguimiento de intervenciones técnicas.
  • Requerimiento: el sistema debe permitir adjuntar al menos una foto antes y una foto después de cerrar una orden de trabajo.
  • Restricción: las fotos deben almacenarse asociadas a la orden, fecha, hora y técnico responsable.

La solicitud inicial era útil, pero recién el análisis permitió comprender su propósito y formular requerimientos más completos.

4.15 Qué debes recordar de este tema

  • Un problema describe una situación actual no deseada.
  • Una necesidad expresa algo requerido para resolver o mejorar esa situación.
  • Un objetivo define el resultado que se desea alcanzar.
  • Un requerimiento describe qué debe cumplir el sistema.
  • Una solución explica cómo se implementarán los requerimientos.
  • No conviene saltar directamente desde una frase inicial hacia una solución técnica.
  • Los requerimientos deben relacionarse con necesidades y objetivos reales.

4.16 Conclusión

Distinguir necesidades, problemas, objetivos y requerimientos permite comprender mejor el sentido de un proyecto de software. Esta separación ayuda a formular mejores preguntas, evitar malentendidos y construir requerimientos que realmente aporten valor.

Un buen analista no se limita a tomar pedidos literalmente. Busca entender qué ocurre, por qué importa, qué resultado se quiere lograr y qué debe cumplir el sistema para contribuir a ese resultado.

En el próximo tema estudiaremos a los interesados del sistema: usuarios, clientes, patrocinadores y equipo técnico, porque los requerimientos dependen de las personas y organizaciones afectadas por la solución.