Según la Guía SWEBOK V3.0 (IEEE, 2014), el área de conocimiento Software Requirements se organiza en los subprocesos de elicitación (obtención), análisis, especificación y validación. Los requerimientos se clasifican en funcionales (qué debe hacer el sistema, sus funciones y servicios) y no funcionales (restricciones y atributos de calidad como desempeño, seguridad y usabilidad). Modelos como FURPS+ (Functionality, Usability, Reliability, Performance, Supportability y restricciones) e ISO/IEC 25010:2011 (ocho características de calidad del producto) enmarcan lo no funcional; Wiegers distingue tres niveles: requerimientos de negocio, de usuario y funcionales.
Elicitación. SWEBOK reconoce entrevistas, escenarios, prototipos, reuniones facilitadas (talleres/JAD), observación e historias de usuario. El prototipado obtiene y refina requerimientos mostrando al usuario una versión preliminar del sistema. Los casos de uso y las historias de usuario sirven como insumo del análisis y la negociación, donde se resuelven conflictos y se acuerda el alcance.
Priorización. Técnicas frecuentes:
Validación y verificación. Según Boehm, la verificación responde «¿estamos construyendo el producto correctamente?» y la validación «¿estamos construyendo el producto correcto?». La IEEE Std 830-1998 exige una SRS correcta, no ambigua, completa, consistente, clasificada por importancia/estabilidad, verificable, modificable y rastreable (8 características). La ISO/IEC/IEEE 29148:2018, que la reemplaza, define 9 características de un requerimiento individual (necesario, apropiado, no ambiguo, completo, singular, factible, verificable, correcto y conforme) y 5 de un conjunto (completo, consistente, factible, comprensible y validable).
Trazabilidad y gestión de cambios. La trazabilidad debe ser bidireccional: hacia adelante (de los requerimientos al diseño, código y pruebas) y hacia atrás (de los artefactos a su requerimiento origen), documentada en una Matriz de Trazabilidad de Requerimientos (RTM). La línea base es el conjunto de requerimientos revisados y acordados; todo cambio posterior debe pasar por un proceso formal de gestión de cambios.
1. Según la Guía SWEBOK V3.0 del IEEE, ¿cuál de las siguientes es una técnica de elicitación (obtención) de requerimientos reconocida dentro del área de conocimiento 'Software Requirements'?
SWEBOK V3.0 enumera entrevistas, escenarios, prototipos, reuniones facilitadas, observación e historias de usuario como técnicas de elicitación; las otras opciones son actividades de construcción de software, no de obtención de requerimientos. (Guide to the Software Engineering Body of Knowledge (SWEBOK) V3.0, IEEE Computer Society, KA 'Software Requirements', 3.3 'Elicitation Techniques')
2. Un analista de requerimientos prepara una lista fija de preguntas que aplicará en el mismo orden a todos los usuarios entrevistados, sin desviarse del guion. ¿Qué tipo de entrevista está utilizando?
La entrevista estructurada usa un cuestionario fijo aplicado de manera uniforme a todos los entrevistados; la no estructurada permite explorar libremente temas emergentes según las respuestas. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3; Wiegers & Beatty, 'Software Requirements', 3a ed., Microsoft Press (2013))
3. El único patrocinador del proyecto, quien tiene la autoridad final para definir el alcance y el presupuesto, dispone de apenas 45 minutos para reunirse con el equipo. El analista necesita profundizar en sus prioridades de negocio mediante preguntas de seguimiento según las respuestas que reciba. ¿Qué técnica de elicitación conviene aplicar?
Con un único interesado clave y tiempo limitado para ahondar dinámicamente en sus respuestas, la entrevista individual es la técnica adecuada; el taller JAD requiere múltiples participantes y el cuestionario no permite profundizar en tiempo real. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3 'Elicitation Techniques')
4. ¿Cuál es la característica principal de un taller de Diseño Conjunto de Aplicaciones (JAD, Joint Application Design)?
El taller JAD (reunión facilitada) congrega a los interesados en sesiones intensivas y colaborativas para elicitar y consensuar requerimientos; las demás opciones describen otras técnicas (cuestionario, observación) o artefactos distintos. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3 'Elicitation Techniques' (reuniones facilitadas))
5. Un proyecto tiene varios departamentos (ventas, finanzas y logística) con visiones distintas y a veces contradictorias sobre cómo debe funcionar un nuevo módulo de facturación. El equipo cuenta con un facilitador capacitado y necesita llegar a un consenso en una sola sesión intensiva de trabajo. ¿Qué técnica de elicitación conviene aplicar?
El taller JAD, facilitado y con participación simultánea de todos los interesados, está diseñado para resolver visiones divergentes y lograr consenso en una sola sesión; las entrevistas separadas no generan ese consenso conjunto. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3)
6. A diferencia de una serie de entrevistas individuales, ¿qué ventaja distintiva ofrece un taller JAD para la obtención de requerimientos?
La reunión facilitada permite que los interesados negocien y resuelvan discrepancias en el momento; esto no ocurre con entrevistas separadas, y el JAD no prioriza automáticamente ni elimina la figura del facilitador. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3)
7. ¿En qué situación resulta más apropiado utilizar un cuestionario como técnica de elicitación de requerimientos?
El cuestionario es eficiente para recabar información estandarizada de muchos usuarios distantes entre sí; no permite el seguimiento dinámico propio de la entrevista ni el consenso en tiempo real propio del taller JAD. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3)
8. Una empresa con 500 usuarios de un sistema de recursos humanos, distribuidos en 12 sucursales del país, necesita conocer de forma cuantificable qué tan satisfechos están con las funciones actuales del sistema antes de definir requerimientos para una nueva versión. El presupuesto y el tiempo disponibles son limitados. ¿Cuál técnica de elicitación resulta más costo-efectiva para este caso?
El cuestionario permite recolectar datos cuantificables de una población grande y dispersa con bajo costo y tiempo; entrevistar u observar a 500 usuarios, o reunirlos a todos en un taller, resulta impráctico. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3)
9. Dentro del diseño de un cuestionario para elicitar requerimientos, ¿qué distingue a una pregunta cerrada de una pregunta abierta?
Por definición, las preguntas cerradas restringen la respuesta a opciones fijas (facilitan el análisis cuantitativo) y las abiertas permiten respuestas libres; las demás opciones inventan restricciones que no corresponden a la técnica. (Práctica estándar de diseño de cuestionarios en ingeniería de requerimientos; SWEBOK V3.0, KA 'Software Requirements', 3.3)
10. ¿Cuál es la principal ventaja de la técnica de observación (o etnografía) para la obtención de requerimientos?
La observación directa del trabajo real del usuario permite descubrir conocimiento tácito y procedimientos implícitos; la opción de consenso corresponde al taller JAD y la de respuestas cuantificables al cuestionario. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3 'Elicitation Techniques' (observación))
11. Un analista necesita documentar cómo los operadores de una línea de producción manejan excepciones y 'atajos' no documentados en el manual de procedimientos, mismos que ellos consideran obvios y no mencionan al ser entrevistados. ¿Qué técnica de elicitación es más adecuada para descubrir estos procedimientos implícitos?
Cuando el conocimiento es tácito y los usuarios no lo verbalizan por considerarlo obvio, la observación directa es la técnica indicada, pues revela el comportamiento real más allá de lo declarado en entrevistas o cuestionarios. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3)
12. ¿Qué significa la categoría 'Must have' dentro de la técnica de priorización MoSCoW?
'Must have' designa los requerimientos obligatorios e indispensables para el éxito de la entrega; 'Should have' corresponde a lo deseable y 'Won't have this time' a lo pospuesto, categorías distintas a la descrita. (DSDM Agile Project Framework (Dynamic Systems Development Method), Consorcio DSDM — técnica MoSCoW)
13. De las siguientes, ¿cuál NO es una de las cuatro categorías de la técnica de priorización MoSCoW?
Las cuatro categorías oficiales de MoSCoW son Must have, Should have, Could have y Won't have (this time); 'Nice to have' es un término coloquial que no forma parte del acrónimo MoSCoW. (DSDM Agile Project Framework, Consorcio DSDM)
14. En un proyecto de comercio electrónico con plazo fijo e inamovible de entrega, el equipo clasificó 'permitir pago con tarjeta de crédito' como un requerimiento sin el cual el sistema no puede lanzarse, y 'permitir pago con criptomonedas' como una función que se agregará solo si el tiempo lo permite, sin comprometer la fecha de entrega. Según MoSCoW, ¿cómo deben clasificarse respectivamente estos dos requerimientos?
El pago con tarjeta es indispensable para el lanzamiento (Must have) y el pago con criptomonedas es una mejora que se incluye solo si sobra tiempo, sin comprometer el plazo (Could have); 'Should have' implicaría una importancia mayor a la descrita. (DSDM Agile Project Framework, Consorcio DSDM)
15. Un equipo de proyecto clasificó el 90% de los requerimientos del sistema como 'Must have' bajo la técnica MoSCoW. ¿Cuál es el principal problema de negociación y planeación que genera esta clasificación?
MoSCoW funciona como herramienta de negociación de alcance; si casi todo es 'Must have', no queda margen para ajustar el alcance ante restricciones de tiempo o presupuesto, contradiciendo el propósito de la técnica. (DSDM Agile Project Framework, Consorcio DSDM (principio de fijar el tiempo y ajustar el alcance))
16. En la técnica de priorización por valor/costo, un equipo asignó a cuatro requerimientos los siguientes porcentajes relativos de valor para el cliente y de costo de implementación: R1 (valor 40%, costo 10%), R2 (valor 30%, costo 30%), R3 (valor 20%, costo 50%) y R4 (valor 10%, costo 10%). Calculando la razón valor/costo de cada uno, ¿cuál requerimiento debe priorizarse primero?
La razón valor/costo de R1 es 40/10=4.0, superior a la de R2 (30/30=1.0), R3 (20/50=0.4) y R4 (10/10=1.0); el error común es comparar el valor absoluto o el costo por separado en vez de calcular la razón. (Karlsson & Ryan, 'A Cost-Value Approach for Prioritizing Requirements', IEEE Software, vol. 14, no. 5 (1997))
17. En la matriz de priorización valor/esfuerzo, un requerimiento clasificado en el cuadrante de alto valor para el cliente y bajo costo de implementación corresponde a:
El cuadrante de alto valor y bajo costo corresponde a las 'victorias rápidas', de mayor prioridad; las tareas ingratas son de bajo valor y alto costo, los proyectos mayores de alto valor y alto costo, y los de relleno de bajo valor y bajo costo. (Matriz de priorización valor vs. esfuerzo (cuadrantes: quick wins, major projects, fill-ins, thankless tasks), técnica de uso común en gestión ágil de producto)
18. Un equipo evaluó dos requerimientos con la técnica valor/costo: R5 tiene un valor relativo de 25% y un costo relativo de 5%; R6 tiene un valor relativo de 45% y un costo relativo de 45%. Considerando la razón valor/costo de cada uno, ¿cuál requerimiento ofrece mayor valor por unidad de costo invertido?
La razón valor/costo de R5 es 25/5=5.0, mientras que la de R6 es 45/45=1.0; el error común es comparar el valor absoluto o suponer que mayor costo implica mayor beneficio, en vez de calcular la razón. (Karlsson & Ryan, 'A Cost-Value Approach for Prioritizing Requirements', IEEE Software, vol. 14, no. 5 (1997))
19. A diferencia de la técnica MoSCoW, que clasifica los requerimientos en categorías discretas de importancia, ¿qué aporta específicamente el enfoque de priorización por valor/costo?
El valor/costo aporta una escala cuantitativa continua, basada en estimaciones relativas de valor y costo, para ordenar requerimientos, mientras que MoSCoW usa categorías discretas; no sustituye la negociación de alcance ni coincide con las categorías de MoSCoW. (Karlsson & Ryan, 'A Cost-Value Approach for Prioritizing Requirements', IEEE Software, vol. 14, no. 5 (1997); DSDM Agile Project Framework)
20. Según la ISO/IEC/IEEE 29148:2018, la trazabilidad de requerimientos debe ser bidireccional. ¿Qué significa esto?
La trazabilidad bidireccional implica rastreo hacia adelante (requerimiento hacia diseño/código/pruebas) y hacia atrás (artefacto hacia su requerimiento origen), documentado típicamente en una Matriz de Trazabilidad de Requerimientos (RTM). (ISO/IEC/IEEE 29148:2018; Guide to SWEBOK V3.0, KA 'Software Requirements')
21. Durante una auditoría de calidad se necesita verificar que un caso de prueba específico corresponde efectivamente a un requerimiento aprobado en la línea base, y que no fue agregado sin respaldo. ¿Qué herramienta documental permite realizar esta verificación de manera sistemática?
La RTM vincula cada requerimiento con los artefactos derivados (diseño, código, casos de prueba) y permite verificar hacia atrás que cada caso de prueba tiene un requerimiento origen documentado. (ISO/IEC/IEEE 29148:2018; Guide to SWEBOK V3.0, KA 'Software Requirements' (trazabilidad))
22. Un equipo descubre que un módulo de código fue implementado, pero al revisar la documentación no logra identificar a qué requerimiento de la especificación corresponde dicho módulo. ¿Qué tipo de trazabilidad falló en este caso?
Rastrear desde un artefacto de código hasta su requerimiento origen es trazabilidad hacia atrás; la trazabilidad hacia adelante va del requerimiento hacia los artefactos derivados, en el sentido opuesto al descrito en el caso. (ISO/IEC/IEEE 29148:2018; Guide to SWEBOK V3.0, KA 'Software Requirements')
23. ¿Cuál de las siguientes opciones NO es un beneficio típico de mantener actualizada una matriz de trazabilidad de requerimientos durante el proyecto?
La matriz de trazabilidad vincula requerimientos con artefactos de diseño, código y prueba para el análisis de impacto y la detección de huérfanos, pero no asigna categorías de priorización MoSCoW, que es una técnica independiente. (ISO/IEC/IEEE 29148:2018; Guide to SWEBOK V3.0, KA 'Software Requirements' (trazabilidad); DSDM Agile Project Framework)
24. Dentro de las técnicas de obtención (elicitación) de requerimientos, ¿cuál es el propósito principal de construir un prototipo durante las primeras etapas del proyecto?
El prototipado permite a usuarios y stakeholders experimentar con una versión preliminar del sistema, reduciendo la ambigüedad de requerimientos poco claros; no reemplaza la especificación formal ni sirve para medir desempeño de bases de datos o estándares de código. (Guide to SWEBOK V3.0, IEEE Computer Society, KA 'Software Requirements', 3.3 'Elicitation Techniques')
25. Según la Guía SWEBOK V3.0 (IEEE), ¿cuál de las siguientes opciones corresponde a un conjunto de técnicas reconocidas para la elicitación (obtención) de requerimientos?
SWEBOK ubica entrevistas, prototipos, reuniones facilitadas (JAD), observación e historias de usuario como técnicas de elicitación; las demás opciones corresponden a prácticas de construcción, estimación o gestión de configuración. (Guide to SWEBOK V3.0, IEEE Computer Society, KA 'Software Requirements', 3.3 'Elicitation Techniques')
26. Un equipo construye un prototipo únicamente para que los usuarios validen el flujo de una pantalla compleja; una vez aclarado el requerimiento, el prototipo se descarta y el sistema se construye desde cero con la arquitectura definitiva. ¿Qué tipo de prototipo describe mejor esta situación?
Al descartarse tras cumplir su propósito de aclaración, corresponde a un prototipo desechable o exploratorio; el evolutivo, en cambio, se conserva y refina hasta ser el producto final. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3; doctrina clásica de ingeniería de requerimientos sobre tipos de prototipo)
27. Los usuarios de un sistema nuevo no logran describir con precisión cómo debe organizarse la pantalla principal ni qué controles necesitan, aunque reconocen fácilmente una interfaz adecuada cuando la ven. ¿Qué técnica de obtención de requerimientos es más adecuada para este caso?
El prototipado es la técnica indicada cuando el usuario 'sabe lo que quiere cuando lo ve'; redactar sin validar, priorizar con Kano o trazar no resuelven la ambigüedad inicial sobre la interfaz. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3 'Elicitation Techniques')
28. Un analista presenta a la dirección un prototipo de alta fidelidad, con apariencia casi idéntica al producto final, para validar un módulo crítico. Días después, la dirección exige la entrega inmediata del sistema, pues asume que 'ya está terminado'. ¿Cuál es el riesgo del prototipado que se manifestó en este caso?
Un riesgo documentado del prototipado de alta fidelidad es que los interesados lo perciban como el producto casi terminado, generando expectativas irreales de plazos; el prototipo no elimina la especificación ni la trazabilidad. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3; doctrina de ingeniería de requerimientos sobre riesgos del prototipado)
29. Durante una sesión temprana de obtención de requerimientos, el equipo dibuja a mano bocetos en papel de las pantallas propuestas para discutirlas rápidamente con los usuarios, sin invertir tiempo en detalles visuales ni de navegación real. ¿Qué tipo de prototipo se está utilizando?
Los bocetos en papel sin detalle visual ni funcional corresponden a un prototipo de baja fidelidad, útil para explorar ideas rápido y a bajo costo; la alta fidelidad requiere mayor semejanza con el producto final. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3; práctica general de prototipado (baja vs. alta fidelidad))
30. Un equipo construye un prototipo que muestra la navegación completa entre todas las pantallas del sistema, pero ninguna de ellas procesa datos reales ni ejecuta lógica de negocio. ¿Qué tipo de prototipo corresponde a esta descripción?
Cubrir toda la navegación sin profundidad funcional es característico del prototipo horizontal; el vertical, en cambio, profundiza en un solo módulo con su lógica y datos reales. (Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3; práctica de ingeniería de requerimientos sobre alcance de prototipos)
31. ¿Cuál de las siguientes definiciones corresponde a un caso de uso dentro del análisis de requerimientos?
Un caso de uso describe la interacción actor-sistema orientada a lograr una meta del actor; no es un listado de atributos de calidad, una técnica de priorización numérica ni un diagrama de arquitectura física. (Guide to SWEBOK V3.0, KA 'Software Requirements' (casos de uso como técnica de análisis); Ivar Jacobson, Object-Oriented Software Engineering)
32. ¿Cuál es el formato estándar que se utiliza para redactar una historia de usuario en el desarrollo ágil de software?
El formato 'Como/quiero/para' es el estándar de las historias de usuario; el formato 'Dado/cuando/entonces' corresponde a criterios de aceptación (Gherkin), no a la historia misma. (Mike Cohn, 'User Stories Applied' (2004); Guide to SWEBOK V3.0, KA 'Software Requirements', 3.3 (historias de usuario))
33. El acrónimo INVEST se utiliza para evaluar la calidad de una historia de usuario bien redactada. ¿Qué característica corresponde a la letra 'T' de este criterio?
La 'T' de INVEST corresponde a Testable (comprobable); la trazabilidad, un plazo fijo o el detalle técnico no forman parte de este criterio. (Bill Wake, criterio INVEST para historias de usuario (Independent, Negotiable, Valuable, Estimable, Small, Testable))
34. Un equipo de análisis debe elegir entre documentar un requerimiento como caso de uso detallado (formato 'fully dressed') o como historia de usuario breve. ¿Cuál es la diferencia principal entre ambos insumos de análisis?
El caso de uso detallado documenta formalmente los flujos alternos y de excepción; la historia de usuario es intencionalmente breve y funciona como recordatorio para conversar con el equipo. (Alistair Cockburn, 'Writing Effective Use Cases'; Mike Cohn, 'User Stories Applied'; Guide to SWEBOK V3.0, KA 'Software Requirements')
35. Un equipo que trabaja con Scrum necesita documentar un requerimiento pequeño, negociable con el cliente y que pueda estimarse e implementarse en un solo sprint. ¿Qué insumo de análisis es más adecuado para este requerimiento?
Un requerimiento pequeño, negociable y estimable en un sprint corresponde por definición a las características INVEST de una historia de usuario; el caso de uso fully dressed es más pesado de lo necesario aquí. (Bill Wake, criterio INVEST; Mike Cohn, 'User Stories Applied' (2004))