Ingeniería de Requerimientos - WordPress.com...DESARROLLO DEL TEMA DE CLASE 5. RETROALIMENTACIÓN...

Post on 24-Feb-2020

1 views 0 download

Transcript of Ingeniería de Requerimientos - WordPress.com...DESARROLLO DEL TEMA DE CLASE 5. RETROALIMENTACIÓN...

Ingeniería de Requerimientos

Herramientas y Técnicas de la Ingeniería de Requerimientos

2

Alexander Guevara Vega

Master en ISW

maximus.guevara@gmail.com

Agenda

1. PRESENTACIÓN Y ACUERDOS

2. OBJETIVO DE LA CLASE

3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS

4. DESARROLLO DEL TEMA DE CLASE

5. RETROALIMENTACIÓN DE CONOCIMIENTOS

6. EVALUACIÓN DE CONOCIMIENTOS

7. CONCLUSIONES

3

Agenda

1. PRESENTACIÓN Y ACUERDOS

2. OBJETIVO DE LA CLASE

3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS

4. DESARROLLO DEL TEMA DE CLASE

5. RETROALIMENTACIÓN DE CONOCIMIENTOS

6. EVALUACIÓN DE CONOCIMIENTOS

7. CONCLUSIONES

4

5

Objetivo de la Clase

• Conocer las diferentes Herramientas y Técnicas de la Ingeniería

de Requerimientos.

• Conceptos y fundamentos para su aplicabilidad en desarrollo de

software,

• Mediante la comprensión de textos y manejo de recursos

digitales, para que el alumno sea capaz de aplicar

adecuadamente el proceso de recolección, análisis, verificación y

validación adecuada de las necesidades del cliente.

Agenda

1. PRESENTACIÓN Y ACUERDOS

2. OBJETIVO DE LA CLASE

3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS

4. DESARROLLO DEL TEMA DE CLASE

5. RETROALIMENTACIÓN DE CONOCIMIENTOS

6. EVALUACIÓN DE CONOCIMIENTOS

7. CONCLUSIONES

6

Agenda

1. PRESENTACIÓN Y ACUERDOS

2. OBJETIVO DE LA CLASE

3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS

4. DESARROLLO DEL TEMA DE CLASE

5. RETROALIMENTACIÓN DE CONOCIMIENTOS

6. EVALUACIÓN DE CONOCIMIENTOS

7. CONCLUSIONES

7

8

Introducción

• El desafío está en encontrar los defectos que tendrían mayor

impacto negativo para el negocio del cliente antes de que el

producto se haya entregado.

• Para lograr este objetivo, existen herramientas y técnicas para

minimizar los errores generados en el proceso de abstracciónde los requerimientos.

Procesos + Herramientas + Técnicas +

Estándares

9

Calidad en Software

La calidad del software

es el grado con el que un sistema,

componente o proceso

cumple los requerimientos especificados y

las necesidades o expectativas

del cliente o usuario.

Definición del Instituto de Ingenieros Eléctricos y Electrónicos

(IEEE, Std. 610-1990)

10

Herramientas para la Gestión de Requerimientos

• Tiene la finalidad de mejorar la productividad y calidaden el desarrollo de los proyectos de software.

• Necesidades a cubrir por estas herramientas está la

disponibilidad de la información de los distintos tipos de

requisitos en un repositorio al cual se pueda acceder por los

distintos usuarios con el fin de ser reutilizados.

• Anteriormente las herramientas para la gestión de requisitos

de software se limitaban a editores de texto

11

Tipos de Herramientas

• Herramientas comerciales

• Rational Requisite Pro: Es una herramienta centrada en documentos.

• CaliberRM: Es para sistemas grandes y complejos y proporciona una

base de datos de requisitos con trazabilidad.

• IRqA (Integral Requisite Analizer): Es una de las herramientas de

Gestión de Requisitos más completas del mercado.

• Gather Space: Es una herramienta de administración de

requerimientos en línea, que permite realizar la gestión sin preocuparse

por las actualizaciones y el mantenimiento, además promueve la

colaboración entre el equipo del proyecto para manejar los

requerimientos durante el ciclo de vida del proyecto.

12

Herramienta Cloud Gather Space

13

Tipos de Herramientas

• Herramientas libres• REM (Requisite Management): Aunque es una herramienta de uso

libre puede ser utilizada únicamente sobre Windows, ha sido utilizada con frecuencia para fines educacionales.

• DRES: Está basado en PHP y la administración de los proyectos se lleva a cabo en un navegador web. Puede ser de gran utilidad para grupos de trabajo distribuidos, ya que se puede acceder al trabajo realizado en incluso hacer modificaciones vía Internet.

• OSRMT (Open Source Requeriments Management Tool): es una herramienta diseñada para dar cobertura a todo el ciclo de vida de desarrollo del software. Dispone de control de versiones, permite definir requerimientos derivados entre otras funcionalidades.

14

Herramienta OSRMT

15

Importancia de la Gestión de IR

La Ingeniería de requisitos no es la

solución definitiva a los

inconvenientes y/o problemas

presentados en la crisis del

software, pero ayuda en gran

medida al descubrimiento y

solución de falencias en etapas

tempranas del desarrollo de

proyectos software, reduciendo

costos y tiempo en el ciclo de vida.

16

Técnicas de Revisión de la IR

• ¿Quién hace las revisiones de la IR?

• Los ingenieros de software / requisitos

• ¿Por qué son importantes?

• Evitar que los errores no se transformen en defectos

• Reduce costos y tiempos de entrega al cliente

17

Técnicas para la abstracción de requerimientos

TÉCNICAS EN LA INGENIERÍA DE REQUERIMIENTOS

ENTREVISTAS Y ENCUESTAS

Del Usuario

Del Proceo

Del Producto

PROTOTIPOS

Prototipo Rápido

Prototipo Evolutivo

CASOS DE USOSISTEMAS

EXISTENTESLLUVIA DE IDEAS

Las técnicas de la ingeniería de requerimientos

permiten facilitar el proceso de abstracción de la necesidades del cliente y transformarlas en requisitos para ser implementados en el sistema

18

Casos de Uso

19

Características de un buen requerimiento

• Correcto: No se debe especificar requisitos erróneos.

• No Ambiguo: No se debe especificar requisitos que se presten a varias interpretaciones.

• Completo: Cada requisito debe ser citado de forma completa, esto implica que todos los requisitos deben ser significativos a los usuarios del proyecto.

• Consistente: Cada requisito no debe contradecirse con los definidos anteriormente o posteriormente.

• Verificable: Debe poder corroborarse cada requisito con algún representante de la organización.

• Rastreable: Debe poder identificar el estado del requisito y saber si cumplió con el objetivo de cada uno.

20

Elicitación de Requerimientos

• Una definición más detallada

de elicitación se definiría

como la especificación de

todos los requisitos de un

sistema, restricciones y

condiciones definidas por los

usuarios para el correcto,

eficiente y eficaz

funcionamiento del sistema a

construir.

21

Requisitos de Información y Funcionales

• Recopilan todos los datos con

los que trabaja la organización y

que soportan información.

• Hay que distinguir muy

claramente lo que es

documento (es soporte de

información) de lo que es dato

(es la información).

• Describen la funcionalidad del

sistema

• Dependen del tipo de software,

del sistema a desarrollar y de los

usuarios del mismo

• Los del usuario pueden ser

sentencias muy generales sobre

lo que el sistema debería hacer.

• Los del sistema deben describir

los servicios que hay que

proporcionar con todo detalle.

Requisitos de Información Requisitos Funcionales

22

Requisitos No Funcionales

• Conforman restricciones

de los servicios o

funciones ofrecidos por

el sistema, incluye

restricciones de tiempo,

sobre el proceso de

desarrollo, así como el

cumplimiento de

estándares.

Agenda

1. PRESENTACIÓN Y ACUERDOS

2. OBJETIVO DE LA CLASE

3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS

4. DESARROLLO DEL TEMA DE CLASE

5. RETROALIMENTACIÓN DE CONOCIMIENTOS

6. EVALUACIÓN DE CONOCIMIENTOS

7. CONCLUSIONES

23

24

Propósito

• El propósito de la

Ingeniería de

Requerimientos es

entender las

expectativas del

cliente en términos

de calidad, y poner

en práctica un plan

proactivo para

satisfacer esas

expectativas.

25

Recursos Digitales

alexanderguevara.wordpress.com

Alexander Guevara

Master en Ingeniería

de Software

maximus.guevara@gmail.com

GRACIAS