26
Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS Asignatura: Fundamentos de Ingeniería del Software Curso Actualización : 2006 Profesor: Ernesto Gómez Vargas

Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Embed Size (px)

Citation preview

Page 1: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Fundamentos de Ingeniería de Software

Facultad de IngenieriaUniversidad Distrital Francisco José de Caldas

ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Asignatura: Fundamentos de Ingeniería del SoftwareCurso Actualización : 2006Profesor: Ernesto Gómez Vargas

Page 2: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Introducción

• Este documento es solo una guía elemental para el proceso de búsqueda de requerimientos por parte del grupo encargado.

Page 3: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Requerimientos

• Construir software de alta calidad, en tiempo y presupuesto estimados.

• Planear el proyecto y los recursos que se usarán en él.

• Especificar el tipo de verificaciones que se habrán de realizar al sistema

• Planear la estrategia de prueba a la que habrá de ser sometido el sistema

• Son el fundamento del ciclo de vida del proyecto.

Page 4: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Características de un requerimiento

Los requerimientos deben ser:

Especificados por escrito. Como todo contrato o acuerdo entre dos partesPosibles de probar o verificar. Si un requerimiento no se puede comprobar, entonces ¿cómo sabemos si cumplimos con él o no?Deben tener como fundamento las necesidades de los usuarios actuales o potenciales del sistema.Descritos como una característica del sistema a entregar. Esto es: Que es lo que el sistema debe de hacer (y no como debe de hacerlo)Lo más claro y conciso posible. Para evitar malas interpretaciones.

Page 5: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

COMO REALIZAR EL ANÁLISIS DE REQUERIMIENTOS

• Los requerimientos de un sistema de software, cuando se ven en su conjunto son extensos y detallados, y además contienen múltiples relaciones entre si.

• Obtenemos la posibilidad de especificar sistemas complejos al documentar especificaciones simples y concisas para el sistema. Esto se logra mediante la clasificación, estructuración y organización de todo lo que el sistema debe de hacer.

Page 6: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

ANÁLISIS DE REQUERIMIENTOS (1)

•1) Obtener información por diferentes medios de lo que los usuarios desean y dejar escritas esas necesidades

•2) Clasificar esas necesidades para poder estructurar los requerimientos o necesidades del sistema.

Page 7: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• 3) Identificar los niveles de jerarquía del sistema y empezar a alojar los requerimientos en el nivel que les corresponda.

• 4) Especificar los requerimientos de acuerdo al nivel de audiencia que se requiera

• 5) Especificar completamente cada necesidad, sin ahorrar tiempo y espacio en su descripción.

ANÁLISIS DE REQUERIMIENTOS (2)

Page 8: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• 6) Entender correctamente las necesidades y cuando afecten dos o mas usuarios, para llegar a acuerdos entre las partes.

• 7) Manejar las expectativas y estar dispuesto a realizar cambios.

ANÁLISIS DE REQUERIMIENTOS (3)

Page 9: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• 8) Involucrar a todos los que tengan inherencia en el proyecto (Jefes, subalternos, usuarios en general)

• 9) Se debe mantener una perfecta comunicación entre todos quienes participan en el proceso de levantamiento de los requerimientos

ANÁLISIS DE REQUERIMIENTOS (4)

Page 10: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

COMO OBTENER INFORMACIÓN (1)

• Los requerimientos son el punto de acuerdo entre el usuario y el proyecto de desarrollo de software, este entendimiento es necesario para poder construir software que satisfaga las necesidades de los usuarios.

Page 11: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• Si los requerimientos se enfocan a describir las necesidades del usuario, entonces es lógico que para recabarlos haya que obtener la información de primera mano. Esto es, mediante entrevistas con el usuario o recabando documentación que describa la manera que el usuario desea que funcione el sistema de software.

COMO OBTENER INFORMACIÓN (2)

Page 12: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

RELACION BASICA DE REQUERIMIENTOS

Responsable de la dependencia

Información recopilada por

Nombre de la dependencia

NUMERO FECHA DESCRIPCION FUNCIONARIO

01

02

03

04

COMO OBTENER INFORMACIÓN (3)

Formato 01

Page 13: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• Las necesidades y/o requerimientos del usuario evolucionan con el tiempo y cada cambio involucra un costo. Por eso es necesario tener archivada una copia de la documentación original del usuario, así como cada revisión o cambio que se haga a esta documentación. Para poder establecer o estimar el costo de un proyecto es necesario contar con los requerimientos iniciales en su mejor nivel de detalle

COMO OBTENER INFORMACIÓN (4)

Page 14: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Como cada necesidad del sistema de información es tratada de diferente forma, es necesario clasificar estas necesidades para saber cuales de ellas serán satisfechas por el software que se quiere desarrollar y cuales por algún otro producto del sistema.

COMO OBTENER INFORMACIÓN (5)

Page 15: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

TOPICOS BÁSICOS PARA REALIZAR EL LEVANTAMIENTO DE REQUERIMIENTOS (1)

1) Un problema puede surgir de la diferencia entre las cosas como se realizaron y como se desean. Por eso es necesario tener en cuenta que en el proceso de levantamiento o búsqueda de requerimientos se pueden presentar problemas que es necesario solucionar.

Page 16: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

2) Para solucionar el problema se deben tener en cuenta:

a.  Generar acuerdo entre las partes involucradas

b.  Construir un vocabulario comúnc.  Identificar los involucradosd.  Definir los límites del sistemae.  Identificar restriccionesF. Dejar todo claro y definido en un

documento.

TOPICOS BÁSICOS PARA REALIZAR EL LEVANTAMIENTO DE REQUERIMIENTOS (2)

Page 17: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

3) Manejar diferentes técnicas de levantamiento

a.  Entrevistasb.     Encuestasc.      Talleres de requerimientosd.     Lluvia de ideas• Prototipos f.. Escenerario

TOPICOS BÁSICOS PARA REALIZAR EL LEVANTAMIENTO DE REQUERIMIENTOS (3)

Page 18: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

4) Mecanismos de fácil comunicación Durante el proceso se debe facilitar la

comunicación entre todos los participantes, de tal forma que todos los usuarios puedan participar aportando sus puntos de vista y sus necesidades.

5) Se debe realizar una especificación formal de todos los acuerdos con las diferentes personas, para que quede constancia expresa de que se tuvieron en cuenta los puntos de vista de los diferentes usuarios.

TOPICOS BÁSICOS PARA REALIZAR EL LEVANTAMIENTO DE REQUERIMIENTOS (4)

Page 19: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

6) Administrar los cambios. Se debe estar presto a realizar las modificaciones que se presenten durante el proceso de análisis de requerimientos. Después puede ocasionar costos o demoras en el proceso de desarrollo.

TOPICOS BÁSICOS PARA REALIZAR EL LEVANTAMIENTO DE REQUERIMIENTOS (5)

Page 20: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

RESUMEN (1)

Para avanzar en esta fase preliminar se deben realizar en resumen las siguientes actividades.

• Analizar la situación de cada una de las dependencias teniendo en cuenta la participación de todos y cada uno de los involucrados en los procesos.

• Generar acuerdo entre los involucrados si hay diferencias, de tal forma que se trabaje en el mismo sentido.

Page 21: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

RESUMEN (2)

• Hacer el proceso de análisis de requerimientos, utilizando técnicas como las descritas, teniendo en cuenta especialmente quién usa o va a utilizar el sistema.

• Especificar completamente los requerimientos, en forma escrita y clara para cada una de las dependencias, sin omitir posibles o potenciales usuarios.

Page 22: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• Controlar el alcance, para que se pueda limitar el proyecto.

• Comunicar a todos los usuarios acerca de que se está adelantando el proceso de levantamiento de los requerimientos, mediante encuestas, etc. Según se mencionó anteriormente.

• Almacenar en archivos de bases de datos preferiblemente los requerimientos, de tal forma que se puedan procesar fácilmente.

RESUMEN (3)

Page 23: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

• Los errores en el proceso de obtención de requerimientos son de los mas costosos por eso es importante tener cuidado en este proceso.

• Por último los requerimientos deben ser: No ambiguos, concretos, completos y consistentes.

RESUMEN (4)

Page 24: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Formato 02ANALISIS DE REQUERIMIENTOS

Numero: 01Nombre del requerimiento

Escena 1:

Papeles Escena 2:

Utensilios Escena 3:

Condiciones de entrada Escena 4:

Condiciones de salida Escena 5:

Page 25: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

Formato 03LISTADO DE ACTORES

NUMERO ACTOR (ROL)

USUARIO COMENTARIO

01

Page 26: Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS

•MUCHAS GRACIAS