Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Like this? Share it with your network

Share

01 fundamentos de ir

on

  • 2,328 views

 

Statistics

Views

Total Views
2,328
Views on SlideShare
2,328
Embed Views
0

Actions

Likes
2
Downloads
96
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

01 fundamentos de ir Presentation Transcript

  • 1. Ingeniería de Requisitos Tema 1: Fundamentos de Ingeniería de Requisitos (Dr. Ricardo Quintero)
  • 2. Temas
    • Definición de Requisito
    • Desarrollo y Administración de Requisitos
    • Características de Requisitos excelentes
    • Los Requisitos desde la perspectiva del cliente
    • Buenas prácticas de la Ingeniería de Requisitos.
  • 3. Definición de Requisito
    • En el trabajo día a día suele utilizarse el término “ Requisito ”* sin clara distinción de un tipo específico.
    • Esto conlleva a la necesidad de su definición más precisa .
    • * Requisito=Requerimiento
  • 4. Definición de Requisito
    • Def. IEEE : Incluye la vista del usuario –stakeholder- (externa) y del desarrollador (interna):
      • Una condición o capacidad necesaria por un usuario para resolver un problema o alcanzar un objetivo.
      • Una condición o capacidad que debe ser satisfecha o poseída mediante un sistema o un componente de un sistema para satisfacer un contrato, especificación u otro documento formalmente impuesto.
      • Una representación documentada de una condición o capacidad tal como 1 o 2.
  • 5. Definición de Requisito
    • Def. Sommerville y Sawyer :
    • “ Los Requisitos son una especificación de lo que debe ser implementado. Son descripciones de cómo el sistema se debe comportar, o de una propiedad o atributo del sistema . Podrían ser restricciones sobre el proceso de desarrollo del sistema”
  • 6. Definición de Requisito
    • Claramente no hay una definición universal de lo que es un Requisito, para facilitar la comunicación se necesita acordar un conjunto de adjetivos que modifiquen el término Requisito.
    • Además es importante apreciar el valor de registrar los Requisitos en una forma compartida .
    • IMPORTANTE: “El equipo debe establecer claramente los tipos de requisitos a fin de lograr comunicación común”
  • 7. Niveles de Requisitos
    • Tres son los niveles que se suelen utilizar para los Requisitos software:
      • Requisitos del Negocio ( Business requirements ).
      • Requisitos de Usuario ( User Requirements ).
      • Requisitos Funcionales ( Functional Requirements ).
    • Además de los Requisitos No Funcionales.
  • 8. Niveles de Requisitos Tipos de Requisitos Contenedores de Requisitos
  • 9. Requisitos del Negocio
    • Son los Objetivos de Alto Nivel de la organización o cliente que solicita el sistema.
    • Típicamente provienen del patrocinador del proyecto, del cliente.
    • Describen porqué la organización está implementando el sistema .
    • Suelen documentarse en un Documento de Visión y Alcance .
  • 10. Requisitos de Usuario
    • Describen los Objetivos de Usuario o Tareas que los usuarios deben ser capaces de realizar con el producto.
    • Formas valiosas de representarlos son: Casos de Uso , Escenarios y Tablas Evento-Respuesta .
  • 11. Requisitos Funcionales
    • Especifican la Funcionalidad Software que los desarrolladores deben construir en el producto para habilitar a los usuarios para que cumplan sus Tareas y al hacerlo satisfacer los Objetivos del Negocio .
    • Suelen llamárseles “Requisitos de comportamiento”.
    • Se documentan en el “ Documento de Especificación de Requisitos Software ( DERS )”
  • 12. Otros Requisitos
    • Requisitos de Sistema : describen requisitos de alto nivel para un producto que contiene múltiples subsistemas (software, hardware, personas)
  • 13. Reglas del Negocio (RN)
    • Incluyen las políticas corporativas , regulaciones gubernamentales , estándares de la industria , prácticas contables , algoritmos computacionales .
    • IMPORTANTE : no son en sí mismas Requisitos software porque existen fuera de las fronteras de un típico sistema software. Sin embargo suelen restringir quien puede realizar ciertos casos de uso o dictan que el sistema contenga funcionalidad para cumplir con las reglas pertinentes.
  • 14. Reglas del Negocio (RN)
    • Alguna veces las RN son el origen de ciertos atributos de calidad que son implementados en funcionalidad.
    • Por lo que se debe poder trazar la génesis de ciertos requisitos funcionales hacia atrás a una cierta RN .
  • 15. Requisitos No Funcionales
    • Incluyen Objetivos de Desempeño y Descripciones de Atributos de Calidad .
    • Los Atributos de Calidad aumentan la descripción de la funcionalidad del producto describiendo las características del mismo en varias dimensiones importantes a usuarios o desarrolladores.
    • Las características incluyen: usabilidad, portabilidad, integridad, eficiencia y robustez .
  • 16. Requisitos No Funcionales
    • Otros Requisitos No Funcionales describen interfases entre el sistema y el mundo exterior y restricciones de diseño e implementación .
    • Las restricciones imponen límites en las opciones disponibles al desarrollador para el diseño y construcción del producto.
  • 17. Features (Características)
    • Es un conjunto lógicamente relacionado de Requisitos Funcionales que proveen una capacidad al usuario y le posibilita la satisfacción de un objetivo de negocios .
    • IMPORTANTE: Una lista de “ Features ” deseados de un producto no es el equivalente a la descripción de las necesidades y sus tareas-de-usuario relacionadas. Un “ Feature ” puede abarcar múltiples CU. Cada CU requiere la implementación de múltiples Requisitos Funcionales para permitir que el usuario realice la tarea.
  • 18. Ejemplo-Todos los Requisitos
    • Considere un “Procesador de palabras (PP)”:
    • RN : “El producto permitirá a los usuarios corregir eficientemente errores ortográficos en el documento”
    • Feature : el PP incluye un “Corrector ortográfico”.
  • 19. Ejemplo-Todos los Requisitos
    • RU : “Buscar errores ortográficos”, “Agregar una palabra al diccionario”.
    • RF : “Buscar y resaltar una palabra con error ortográfico”, “Desplegar un cuadro diálogo con reemplazos sugeridos”, “Reemplazar palabras erróneas con correctas”.
    • Atributo de calidad: usabilidad : ¿Qué se entiende por “eficiente” en el RN?
  • 20. Requisitos y roles
    • Los niveles estratégicos y de gestión de la organización definen los RN .
    • Los RU se deben alinear a los RN .
    • A partir de los RU el analista deriva los RF que permitirán a los usuarios realizar sus tareas con el producto.
    • A partir de los RF y RNF los desarrolladores diseñan las soluciones que implementan la funcionalidad requerida y logran los objetivos de calidad y desempeño , dentro los límites que imponen las restricciones .
  • 21. Lo que NO son Requisitos
    • Los Requisitos no incluyen:
      • Detalles de diseño o implementación
      • Información de planeación del proyecto .
      • Información de pruebas .
    • IMPORTANTE: Separe esta información de los Requisitos de tal manera que las actividades de Requisitos se enfoquen en entender lo que los equipos intentan construir.
  • 22. Temas
    • Definición de Requisito
    • Desarrollo y Administración de Requisitos
    • Características de Requisitos excelentes
    • Los Requisitos desde la perspectiva del cliente
    • Buenas prácticas de la Ingeniería de Requisitos.
  • 23. Desarrollo y Administración de Requisitos
    • La Ingeniería de Requisitos cubre todas las actividades relacionadas con su Desarrollo y Administración .
  • 24. Desarrollo y Administración de Requisitos-Gráficamente
  • 25. Desarrollo de Requisitos
    • Comprende todas las actividades involucradas en la obtención , evaluación y documentación de un sistema software, incluyendo:
      • Identificar las clases de usuarios del producto esperadas.
      • Levantar las necesidades de individuos que representan cada clase de usuario.
      • Analizar la información recibida de los usuarios para distinguir objetivos de requisitos funcionales, no funcionales, reglas de negocio, soluciones sugeridas e información extraña.
  • 26. Desarrollo de Requisitos
    • (Cont…):
      • Asignar porciones de los requisitos de alto nivel a componentes software definidos en la arquitectura del sistema.
      • Entender la importancia relativa de los atributos de calidad .
      • Negociar las prioridades de implementación.
      • Traducir las necesidades de usuario recolectadas en modelos de especificación de requisitos escritos.
      • Revisar los requisitos documentados para asegurar un entendimiento común de los requisitos de usuario y para corregir todos los problemas antes de que el grupo de desarrollo los acepte.
  • 27. La importancia del enfoque iterativo
    • En el caso de proyectos nuevos el enfoque iterativo es clave para el éxito.
    • Se debe planear para múltiples ciclos de exploración de requisitos , refinamiento de requisitos de alto nivel en detalles y confirmar su certeza con los usuarios .
  • 28. Administración de Requisitos
    • Abarca “ establecer y mantener un acuerdo con el cliente sobre los requisitos del proyecto software ”
    • El acuerdo está en las especificaciones escritas y los modelos.
  • 29. Administración de Requisitos
    • La aceptación del cliente es la mitad de la ecuación necesaria para la aprobación de los requisitos, la otra mitad es la aceptación de la especificación y el acuerdo de los desarrolladores para construirlos en el producto.
  • 30. Actividades de la Administración de Requisitos
    • Definir la línea base de los Requisitos (una “foto en el tiempo” que representa el cuerpo de los requisitos acordados para el release actual).
    • Revisar los cambios propuestos a los requisitos y evaluar el impacto de cada cambio antes de aprobarlo.
    • Incorporar de forma controlada los cambios aprobados al proyecto.
    • Mantener los planes del proyecto actuales con los Requisitos.
  • 31. Actividades de la Administración de Requisitos
    • Negociar nuevos compromisos basados en el impacto de los cambios de Requisitos.
    • Trazar los Requisitos individuales a los diseños, código fuente y casos de prueba correspondientes.
    • Monitorear el status de los Requisitos y su actividad de cambio a lo largo de todo el proyecto.
  • 32. Desarrollo y Administración de Requisitos
  • 33. Temas
    • Definición de Requisito
    • Desarrollo y Administración de Requisitos
    • Características de Requisitos excelentes
    • Los Requisitos desde la perspectiva del cliente
    • Buenas prácticas de la Ingeniería de Requisitos.
  • 34. Características de Requisitos Excelentes
    • En un “mundo ideal” cada RN, RU y RF debería exhibir las siguientes cualidades:
    • Completo : debe describir completamente la funcionalidad a entregar . Debe contener toda la información necesaria para que el desarrollador diseñe e implemente esa fracción de funcionalidad. Si algo faltare señálelo (TBD-” To be determined ”).
  • 35. Características de Requisitos Excelentes
    • Correcto : debe describir exactamente la funcionalidad a ser construida. Solamente representantes de usuarios pueden determinar la exactitud de los RU (por eso la importancia de su participación).
  • 36. Características de Requisitos Excelentes
    • Factible : debe ser posible implementar cada requisito dentro de las capacidades y limitaciones del sistema y su ambiente operativo . Para esto es importante que el desarrollador trabaje con el analista a lo largo del proyecto. Él puede determinar lo que se puede hacer o no técnicamente o de lo que se puede hacer solamente a un costo muy alto. Las “pruebas de concepto” pueden ayudar en este rubro también.
  • 37. Características de Requisitos Excelentes
    • Necesario : cada Requisito debe documentar una capacidad que los clientes realmente necesiten o uno que es requerido para satisfacer un requisito de sistema externo o un estándar. Cada requisito debe partir de una fuente autorizada. Traza cada requisito una “entrada de voz autorizada de cliente” (CU, RN o algún otro origen).
  • 38. Características de Requisitos Excelentes
    • Priorizado : se debe asignar una prioridad de implementación a cada RF, Feature o CU para indicar que tan esencial es para un cierto release .
    • Si todos tuvieran la misma prioridad será difícil para el líder de proyecto responder a recortes de presupuesto, tiempos “ajustados”, pérdida de personal o nuevos requisitos agregados durante el desarrollo.
  • 39. Características de Requisitos Excelentes
    • No ambiguos : todos los lectores del requisito deben llegar a una única interpretación consistente de él, pero el lenguaje natural es muy propenso a la ambigüedad.
    • Los requisitos se deben escribir de forma simple , concisa , en un lenguaje directo apropiado al dominio del usuario . “ Comprensibilidad ” es un atributo de calidad relacionado con la “no ambigüedad”: los lectores deben ser capaces de entender lo que cada requisito está diciendo . Defina los términos especializados y términos que puedan confundir a los lectores en un glosario .
  • 40. Características de Requisitos Excelentes
    • Verificable : busque definir pruebas o estrategias de verificación (inspección o demostración) para determinar si un producto implementa apropiadamente cada requisito.
  • 41. Características de Especificación de Requisitos
    • Además de requisitos individuales excelente, se requiere que en conjunto exhiban otras características excelente.
  • 42. Características de Especificación de Requisitos
    • Completo : ningún requisito o información necesaria debería estar ausente. Enfocarse en tareas de usuario más que en funciones de sistema puede ayudar a evitar falta de completitud.
  • 43. Características de Especificación de Requisitos
    • Consistente: requisitos consistentes no tienen conflicto con otros del mismo tipo o con otros de más alto nivel (RN, RS o CU).
    • Los desacuerdos entre requisitos se deben resolver antes de proceder al desarrollo.
  • 44. Características de Especificación de Requisitos
    • Modificable: debes ser capaz de revisar el DERS y mantener una historia de los cambios hechos a cada requisito. Esto implica etiquetar de forma individual cada requisito y expresarlos de forma separada a otros requisitos. En lugar de duplicar establezca referencias cruzadas.
  • 45. Características de Especificación de Requisitos
    • Trazable: un requisito trazable se puede enlazar hacia atrás a su origen y hacia adelante a sus elementos de diseño y código fuente que lo implementan y a los casos de prueba que verifican que su implementación es correcta.
  • 46. Siguientes pasos …
    • Escribe los problemas relacionados con requisitos que has encontrado en tus proyectos. Clasifícalos como de desarrollo o administración de requisitos. ¿Cuál ha sido el impacto que han tenido cada problema y sus causas raíz?
  • 47. Temas
    • Definición de Requisito
    • Desarrollo y Administración de Requisitos
    • Características de Requisitos excelentes
    • Los Requisitos desde la perspectiva del cliente
    • Buenas prácticas de la Ingeniería de Requisitos.
  • 48. Introducción
    • Lea la siguiente historia .
    • ¿ Ha tenido usted alguna experiencia similar ? Comente en el grupo.
  • 49. Introducción
    • Parte del problema que presenta Gerhard es que no distingue entre RN , RU y RF , porque finalmente él no será un usuario del sistema .
    • Los usuarios , en cambio, pueden describir las tareas que realizarán con el sistema, pero quizá no podrán describir todos los RF que los desarrolladores deben implementar para posibilitar dichas tareas.
    • El involucramiento comprometido del usuario es fundamental para el éxito del sistema (práctica común en métodos ágiles).
  • 50. ¿Quién es el cliente?
    • Def .- Es el individuo u organización quien deriva directa o indirectamente beneficios del producto .
    • Los clientes software incluyen los stakeholders del proyecto que solicitan, pagan, seleccionan, especifican o reciben la salida generada por un producto software.
    • Los clientes pueden estar a diferente nivel:
      • Ejecutivo : los que definen los RN.
      • Usuario final : los que usan directamente el producto (RU)
    • El gran problema es que suele ser común que ambos “nunca tengan tiempo” y todo se deja al analista con consecuencias finales fatales: requisitos pobres.
  • 51. ¿Quién es el cliente?
    • En ocasiones ambos tipos de usuarios presentan conflictos porque: el usuario final desconoce el trasfondo de los RN del Ejecutivo y suelen tener conflictos con los desarrolladores que pueden no entender cabalmente las razones del usuario final.
    • Clara comunicación acerca de los objetivos del proyecto y sus restricciones pueden ayudar a disminuir las tensiones.
    • El analista de sistemas debe trabajar con representantes claves de usuarios y patrocinadores del producto para reconciliar cualquier conflicto.
  • 52. La paternidad cliente-desarrollador
    • Excelentes productos software son el resultado de diseños bien ejecutados basados en excelente requisitos .
    • Requisitos de alta-calidad resultan de la comunicación y colaboración efectiva entre desarrolladores y clientes (una paternidad ).
  • 53. La paternidad cliente-desarrollador
    • La “ Carta de los Derechos de los Clientes Software ” lista las 10 expectativas que los clientes pueden tener legítimamente respecto a sus interacciones con los clientes y los desarrolladores durante las actividades de Ingeniería de Requisitos.
    • Cada derecho del cliente implica una responsabilidad de los desarrolladores o analistas.
  • 54. Carta de los Derechos de los Clientes Software-Tiene derecho a…
    • Esperar que los analistas hablen su lenguaje .
    • Esperar que los analistas aprendan sobre el negocio y objetivos del sistema.
    • Esperar que los analistas estructuren la información que les presentas (en especificación de requisitos software) durante el levantamiento de requisitos.
    • Que los analistas expliquen todos los work-products creados durante el proceso de requisitos.
    • Esperar que los analistas y desarrolladores te traten con respeto y mantener una actitud colaborativa y profesional a través de las interacciones
  • 55. Carta de los Derechos de los Clientes Software-Tiene derecho a…
    • Que los analistas y desarrolladores provean ideas y alternativas para tus requisitos y para la implementación del producto.
    • Describir las características del producto que lo harán fácil y disfrutable de utilizar.
    • Dar oportunidades para ajustar tus requisitos para permitir el reuso de componentes software existentes.
    • Recibir estimaciones de “buena-fe” de los costos, impactos y negociaciones cuando solicites un cambio en los requisitos.
    • Recibir un sistema que satisfaga tus necesidades funcionales y de calidad en la medida en que tales necesidades han sido comunicadas y acordadas con los desarrolladores.
  • 56. Carta de las Responsabilidades de los Clientes Software-Eres responsable de…
    • Educar a los analistas y desarrolladores sobre el negocio y definir los términos del dominio.
    • Invertir el tiempo que requiere la provisión de requisitos, clarificarlos e iterativamente obtenerlos.
    • Ser específico y preciso cuando ofrezcas entradas sobre los requisitos del sistema.
    • Tomar decisiones a tiempo sobre los requisitos cuando se te pida.
    • Respetar la evaluación de los desarrolladores sobre el costo y factibilidad de los requisitos.
  • 57. Carta de las Responsabilidades de los Clientes Software-Eres responsable de…
    • En colaboración con los desarrolladores, establecer prioridades para requisitos funcionales, características del sistema o casos de uso.
    • Revisar los documentos de requisitos y evaluar prototipos.
    • Comunicar cambios en los requisitos tan pronto como sabes de ellos.
    • Seguir el procedimiento indicado para la solicitud de cambios de requisitos.
    • Respetar los procesos que los analistas utilizan para Ingeniería de Requisitos.
  • 58. ¿Qué con respecto a la firma del “documento de requisitos”?
    • Muchas organizaciones utilizan una firma del compromiso del documento de requisitos como una señal de la aprobación del cliente de tales requisitos.
    • Es importante que todos los que firman tengan claro el significado de tal firma , de lo contrario pueden surgir problemas (evitar problemas como “firmé sin leer lo que firmaba…”)
  • 59. ¿Qué con respecto a la firma del “documento de requisitos”?
    • Igualmente problemático es el jefe de desarrollo que ve la firma como una forma de “congelar los requisitos” .
    • Una actitud así de ambas partes ignora la realidad de que es imposible conocer todos los requisitos desde el inicio del proyecto y que los requisitos cambiarán sin lugar a duda.
  • 60. ¿Qué con respecto a la firma del “documento de requisitos”?
    • Más importante que firmar es el concepto de establecer una línea base del acuerdo de los requisitos: una imagen de ellos en el tiempo (un milestone ).
    • Con esto se establece que el documento es “el mejor entendimiento actual de los requisitos” y que cualquier cambio tendrá que pasar por el proceso definido de cambio s y que implicará una renegociación de los compromisos de costos, tiempos y recursos.
  • 61. ¿Qué con respecto a la firma del “documento de requisitos”?
    • Es decir después que el analista define la línea base, colocará los requisitos bajo el control de cambios .
    • Esto permitirá al equipo modificar el alcance del proyecto cuando sea necesario de una forma controlada que incluya analizar el impacto de cada cambio propuesto .
  • 62. Siguientes pasos …
    • Identifica los clientes responsables de los RN y los RU de tus proyectos. ¿Cuáles puntos de las cartas de derechos y responsabilidades practican? ¿Cuáles no? ¿Porqué?
    • Discute con tus clientes las cartas de derechos y responsabilidades. Ajústala a tu contexto.
    • Escribe una definición de lo que significa la firma para la aprobación de tu documento de requisitos.
  • 63. Temas
    • Definición de Requisito
    • Desarrollo y Administración de Requisitos
    • Características de Requisitos excelentes
    • Los Requisitos desde la perspectiva del cliente
    • Buenas prácticas de la Ingeniería de Requisitos.
  • 64. Buenas prácticas de la Ingeniería de Requisitos
    • Se pueden dividir en las siguientes:
      • Conocimiento
      • Elicitación de requisitos.
      • Análisis de requisitos
      • Especificación de requisitos.
      • Validación de requisitos.
      • Administración de requisitos.
      • Administración de proyectos.
  • 65. Conocimiento
    • Los analistas deben recibir entrenamiento en IR .
    • Todos los stakeholders del proyecto deberían entender los conceptos y prácticas de la IR.
    • Un buen analista de requisitos es paciente y bien organizado, tiene habilidades interpersonales y de comunicación efectivas, entiende el dominio de la aplicación y tiene un buen bagaje de técnicas de IR.
  • 66. Buenas prácticas de Elicitación de requisitos
    • Definir el proceso de desarrollo de requisitos : como se levantarán, analizarán, especificaran y validarán los requisitos.
    • Escribir el documento de visión y alcance : centrado en los RN.
    • Identificar clases de usuarios y sus características.
    • Seleccionar un campeón de producto por cada tipo de usuario.
    • Trabaja con representantes de usuarios para identificar los CU.
  • 67. Buenas prácticas de Elicitación de requisitos
    • Manejar talleres de requisitos .
    • Observar a los usuarios realizando sus trabajos.
    • Examinar reportes de problemas de los sistemas actuales para ideas de requisitos.
    • Reutilizar requisitos a través de todos los proyectos.
  • 68. Buenas prácticas de Análisis de requisitos
    • El Análisis de Requisitos implica refinar los requisitos para asegurarse de que todos los stakeholders los entienden y escudriñan para localizar errores, omisiones u otras deficiencias.
    • El Análisis incluye descomponer requisitos de alto-nivel en detalles, construir prototipos, evaluar factibilidad y negociar prioridades.
    • El objetivo es desarrollar los requisitos con suficiente calidad y detalle que los administradores puedan construir estimaciones realistas del proyecto y el staff técnico pueda diseñar, construir y probar.
  • 69. Buenas prácticas de Análisis de requisitos
    • Frecuentemente es útil representar los requisitos en múltiples formas (textual o gráfica) . Estas vistas diferentes revelan aspectos internos y problemas que una sola vista no puede proveer.
  • 70. Buenas prácticas de Análisis de requisitos
    • Las múltiples representaciones conllevan a las prácticas de Análisis de Requisitos :
      • Construir el Diagrama de Contexto.
      • Crear el Diccionario de Datos.
      • Modelar los requisitos.
      • Crear prototipos técnicos e interfases de usuario.
      • Priorizar los requisitos.
      • Asignar los requisitos a los subsistemas.
  • 71. Buenas prácticas de Especificación de requisitos
    • No importa como se obtienen los requisitos, se deben documentar de una forma consistente, accesible y revisable .
  • 72. Buenas prácticas de Especificación de requisitos
    • Adoptar una plantilla del Documento de Especificación de Requisitos Software (DERS).
    • Identificar las fuentes de los requisitos.
    • Etiquetar de forma única cada requisito.
    • Registrar las Reglas del Negocio .
    • Especificar los Atributos de Calidad (desempeño, eficiencia, confiabilidad, usabilidad, etc.).
  • 73. Buenas prácticas de Validación de requisitos
    • La Validación asegura que los estatutos de requisitos son correctos , que demuestran las características de calidad deseadas y que satisfacerán las necesidades de los usuarios.
  • 74. Buenas prácticas de Validación de requisitos
    • Inspección de los documentos de requisitos : un pequeño equipo multidisciplinario (analistas, clientes, desarrolladores y testers ) examina el DERS, modelos, etc. buscando defectos.
    • Probar los requisitos : crear, ejecutar los casos de prueba para validar los requisitos.
    • Definir el criterio de aceptación : pedir a los usuarios que describan como determinarán si el producto satisface sus necesidades.
  • 75. Administración de Requisitos
    • Una vez que se cuenta con el cuerpo inicial de requisitos, lo siguiente es definir mecanismos que permitan manejar de forma organizada los inevitables cambios .
    • La Administración efectiva de Cambios demanda un proceso para proponer cambios y evaluar su potencial costo e impacto en el proyecto.
  • 76. Administración de Requisitos
    • La figura del Change Control Board (CCB) decide cuales cambios incorporar.
    • El CCB está compuesto por stakeholders clave .
    • También es importante monitorear el status de cada requisito conforme pasa del desarrollo a las pruebas (su ciclo de vida ).
    • Aquí se pueden utilizar las mismas prácticas de gestión de configuración (control de cambios) que se utilizan para el código.
  • 77. Buenas prácticas de Administración de Requisitos
    • Definir un proceso de control de cambios de requisitos.
    • Establecer un CCB .
    • Realizar análisis de impacto de los cambios de requisitos.
    • Establecer líneas base y control de versiones de los documentos de requisitos.
    • Mantener una historia de los cambios de requisitos.
    • Monitorear el status de cada requisito.
  • 78. Buenas prácticas de Administración de Requisitos
    • Medir la volatilidad de los requisitos .
    • Usar una herramienta de gestión de requisitos .
    • Crear una matriz de trazabilidad de requisitos .
  • 79. Administración de Proyectos
    • Los procesos de Administración de Proyectos están muy relacionados con los procesos de Administración de Requisitos .
    • Basa los recursos del proyecto , sus cronogramas y compromisos en los requisitos que se van a implementar.
    • Como los cambios de requisitos afectarán los planes del proyecto, los planes deberían anticipar cambios de requisitos y alcance .
  • 80. Buenas prácticas de Admon. De Proyectos (en relación con requisitos)
    • Selecciona un ciclo de vida de desarrollo de software apropiado (cascada, iterativo, etc.).
    • Basa los planes del proyecto en los requisitos .
    • Renegocia los compromisos del proyecto cuando los requisitos cambien.
    • Documenta y gestiona los riesgos relacionados con los requisitos.
    • Monitorea el esfuerzo invertido en IR.
    • Revisa las lecciones aprendidas respecto a los requisitos de tus proyectos.
    • * Muchas de las prácticas que sugiere PMP soportan estás buenas prácticas.
  • 81. Iniciando con las Buenas Prácticas
    • Aunque todas las prácticas pueden ser benéficas, se puede empezar con aquellas que tienen alto impacto y que resultan fáciles de implementar .
    • Revise la siguiente tabla .
  • 82. Un proceso de Desarrollo de Requisitos
    • No se espera que todas las prácticas se realicen de forma secuencial .
    • En la práctica se realizan entrelazadas , incrementales e iterativas
  • 83. Un proceso de Desarrollo de Requisitos
    • Típicamente, como analista:
      • Haces preguntas, escuchas respuestas. Ves lo que se hace ( elicitación ).
      • Procesas la información para entenderla, la clasificas en categorías y relacionas necesidades y requisitos software ( análisis ).
  • 84. Un proceso de Desarrollo de Requisitos
    • Además, como analista:
      • Estructuras la entrada del cliente y derivas requisitos como documentos escritos y diagramas ( especificación ).
      • Finalmente pedirás a representes de clientes que confirmen que lo que has escrito es correcto y completo y corriges cualquier error ( validación )
  • 85. Un proceso de Desarrollo de Requisitos iterativo-Gráficamente
  • 86. Un proceso de Desarrollo de Requisitos basado en CU priorizados Realizar por cada incremento o release Realizar 1 vez al inicio del proyecto