• No se han encontrado resultados

Introducción a la Ingeniería de Requisitos

N/A
N/A
Protected

Academic year: 2021

Share "Introducción a la Ingeniería de Requisitos"

Copied!
17
0
0

Texto completo

(1)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1 © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la

Ingeniería de Requisitos

Grupo de Ingeniería del Software y Bases de Datos

Departamento de Lenguajes y Sistemas Informáticos

Universidad de Sevilla

septiembre 2013

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Objetivos del tema

Conocer el concepto de requisito y su terminología

relacionada.

Conocer los diferentes tipos de requisitos.

Entender el proceso de la ingeniería de requisitos

y su relación con el resto de procesos de

desarrollo.

(2)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Ingeniería de Requisitos

septiembre 2013

Terminología sobre requisitos

No hay un consenso claro sobre la terminología

relacionada con los requisitos.

Nosotros usaremos la misma que en CMMI-DEV*

Stakeholder

needs

Customer

requirements

Product

requirements

* Ver el tema de Introducción a la Ingeniería del Software de IISSI.

2 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Ingeniería de Requisitos

septiembre 2013

Terminología sobre requisitos

Stakeholder needs

Stakeholder

: clientes, usuarios finales, responsables

TIC,… cualquier persona con interés en el sistema a

desarrollar (o a mantener).

Las

stakeholders needs

son todas aquellas

necesidades, expectativas, restricciones, etc. que

tienen los

stakeholders

con respecto a (los procesos

de negocio de) su organización.

Puede que algunas necesidades estén por escrito en

informes internos, auditorias, etc., pero la mayoría

están implícitas en la mente de los

stakeholders

y a

veces ni siquiera son conscientes de ellas

.

También denominadas

necesidades de negocio,

necesidades de usuario, necesidades de cliente,

etc.

Stakeholder

needs

(3)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Ingeniería de Requisitos

septiembre 2013

Terminología sobre requisitos

Customer requirements

Son las

stakeholder needs

una vez elicitadas

y especificadas en algún tipo de documento.

Deben estar expresadas en el lenguaje de los

stakeholders

, usando su vocabulario.

Suelen estar relacionados con los procesos de

negocio a los que el sistema a desarrollar debe dar

apoyo.

Deben estar priorizados, para poder organizar las

iteraciones en el desarrollo.

También denominados

requisitos de cliente,

requisitos de usuario, objetivos de negocio, etc.

Customer

requirements

4 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Terminología sobre requisitos

Product requirements

Describen un sistema que debe satisfacer los

customer requirements

, a los que deben estar

trazados

.

Pueden usar un vocabulario más técnico que los

requisitos de cliente.

Suele empezarse por requisitos generales u objetivos

del sistema a desarrollar, y luego por requisitos más

detallados.

Los requisitos más detallados se suelen dividir en

requisitos funcionales y requisitos no funcionales.

También denominados

requisitos de sistema*,

requisitos software, o simplemente requisitos.

* Normalmente, cuando se habla de sistema, se incluye hardware y software.

Product

requirements

(4)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Ingeniería de Requisitos

septiembre 2013

Terminología sobre requisitos

Product requirements

En sistemas muy complejos, el producto

puede dividirse en diferentes componentes o

subsistemas, cada uno con sus

product component

requirements

o

subsystem requirements

.

En esos casos, los requisitos suelen ser muy

técnicos.

Product

requirements

6 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Ingeniería de Requisitos

septiembre 2013

Definiciones de requisito

Glosario IEEE 610.12

a) Una condición o capacidad que un usuario necesita para

resolver un problema o lograr un objetivo.

b)Una condición o capacidad que debe tener un sistema o un

componente de un sistema para satisfacer un contrato,

una norma, una especificación u otro documento formal.

c) Una representación en forma de documento de una

condición o capacidad como las expresadas en a) o en b).

Norma MIL-STD-498

Característica del sistema que es una condición para su

aceptación.

Goguen

Propiedad que un sistema debería tener para tener éxito

en el entorno en el que se usará.

(5)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Ingeniería de Requisitos

septiembre 2013

Definiciones de requisito

Glosario IEEE 610.12

a) Una condición o capacidad que un usuario necesita para

resolver un problema o lograr un objetivo.

b)Una condición o capacidad que debe tener un sistema o un

componente de un sistema para satisfacer un contrato,

una norma, una especificación u otro documento formal.

c) Una representación en forma de documento de una

condición o capacidad como las expresadas en a) o en b).

Norma MIL-STD-498

Característica del sistema que es una condición para su

aceptación.

Goguen

Propiedad que un sistema debería tener para tener éxito

en el entorno en el que se usará.

¿A qué tipo de

requisito CMMI

corresponde cada

definición?

8 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Tipos de requisitos (de producto)

Requisito general

(objetivo)

(detallado)

Requisito

Requisito

Requisito

funcional

Requisito no

funcional

Requisito de

información

Regla de

negocio

Caso de uso

Requisito de

fiabilidad

Requisito de

usabilidad

Requisito de

seguridad

Requisito de

interfaz

Restricción

técnica

(6)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Objetivos

Son requisitos generales, de alto nivel, denominados también

features o características cuando se trata de productos

orientados al mercado.

Enuncian una condición que deberá cumplir el sistema pero a

un nivel de detalle insuficiente como para que a partir de ellos

pueda implementarse una solución.

Ejemplos:

El sistema deberá gestionar los préstamos de los libros de la

biblioteca.

El sistema deberá permitir a los contribuyentes realizar su

declaración del IRPF a través de Internet.

Ingeniería de Requisitos

septiembre 2013

[ ]

Icono en

REM*

* Herramienta de documentación de requisitos que veremos en el laboratorio.

10 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Objetivos

Lo habitual en sistemas medianamente complejos es que los

objetivos se organicen jerárquicamente en subobjetivos a

distintos niveles.

Suele ser el primer nivel de requisitos que se obtienen en el

proceso de desarrollo. Posteriormente se van refinando para

obtener los requisitos detallados.

Ingeniería de Requisitos

septiembre 2013

[ ]

Icono en

REM*

* Herramienta de documentación de requisitos que veremos en el laboratorio.

(7)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Requisitos funcionales

Definen los servicios que debe ofrecer el sistema a los usuarios

para alcanzar los objetivos.

Tradicionalmente se han documentado como párrafos de texto

libre, por ejemplo:

El sistema deberá imprimir, a petición de los usuarios, un listado de

los préstamos cuyo plazo haya expirado al menos una semana

antes de la fecha actual.

Cada vez es más frecuente que gran parte de estos requisitos

se expresen mediante casos de uso, especialmente en el caso

de sistemas de información interactivos.

Ingeniería de Requisitos

septiembre 2013

[ ]

12 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Requisitos de (almacenamiento de)

información

Describen qué información debe almacenar el sistema para

poder cumplir los requisitos generales/objetivos de nivel

superior.

Deben identificar el concepto relevante sobre el que se debe

guardar información así como qué datos específicos relativos al

concepto son importantes para cumplir los objetivos del

sistema.

Ejemplo:

El sistema deberá almacenar la información correspondiente a los

préstamos realizados en la biblioteca. En concreto: el socio que

realiza el préstamo, el libro o los libros prestados, la fecha en la que

se realizó el préstamo y, para cada libro prestado, la fecha de

devolución prevista y la fecha de la devolución efectiva, si ésta se

ha producido.

concepto

relevante

datos específicos

(8)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Requisitos de reglas de negocio

(restricciones)

Definen restricciones, reglas o políticas del negocio que deben

ser respetadas por el sistema a desarrollar.

Ejemplos:

El sistema deberá respetar la siguiente regla de negocio: no se

podrán eliminar del sistema los datos correspondientes a un cliente

mientras éste tenga registradas facturas pendientes de pago o

pedidos pendientes de ser servidos.

El sistema deberá respetar la siguiente regla de negocio: un socio

de la biblioteca no puede tener en préstamo simultáneamente más

de 3 libros a la vez.

Suelen ser requisitos relativamente inestables, p.e. la sanción

por devolución tardía o el número máximo de préstamos

simultáneos en una biblioteca podría cambiar en el futuro

debido a cambios en la política de la biblioteca.

Ingeniería de Requisitos

septiembre 2013

[ ]

14 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Requisitos de interfaz

Definen qué interfaces debe usar el sistema cuando se

comunique con otros sistemas.

Ejemplos:

El sistema deberá acceder al Sistema Central de Recursos

Humanos a través de la Intranet corporativa mediante los servicios

web XML que se describen a continuación …

El sistema deberá ser capaz de comunicarse con dispositivos que

dispongan de interfaz inalámbrica Bluetooth.

El sistema deberá permitir a sus usuarios

acceder con su cuenta de Facebook.

El sistema deberá publicar la actividad de

los usuarios que lo soliciten en sus cuentas

de Twitter.

Ingeniería de Requisitos

(9)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Casos de uso

Son una forma de expresar requisitos funcionales en los que se

describe como se usaría el sistema a desarrollar por parte de uno

o más usuarios (denominados actores) para lograr un determinado

objetivo.

Ejemplo: Sacar dinero de un cajero automático

El sistema deberá comportarse tal como se describe en el siguiente

caso de uso:

1. El usuario introduce su tarjeta en la ranura del cajero automático.

2. El cajero automático solicita el PIN al usuario.

3. El usuario introduce el PIN.

4. El cajero solicita el tipo de operación a realizar.

5. El usuario selecciona la operación de sacar dinero.

6. El cajero solicita el importe.

7. El usuario introduce el importe.

8. El cajero solicita confirmación del importe.

9. El usuario confirma el importe.

10. El cajero devuelve la tarjeta al usuario.

11. El usuario retira su tarjeta.

12. El cajero imprime el recibo y proporciona el dinero.

13. El usuario retira el recibo y el dinero.

Ingeniería de Requisitos

septiembre 2013

[ ]

16 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Requisitos no funcionales

Son condiciones que se le imponen al sistema a desarrollar

relacionadas con aspectos principalmente de calidad:

usabilidad, rendimiento, disponibilidad, fiabilidad, seguridad,

compatibilidad con hardware o software, etc.

Ejemplos:

El sistema deberá soportar un máximo de 1000 usuarios

concurrentes sin que el tiempo de respuesta medio aumente más

de un 10%.

El sistema deberá funcionar en ordenadores personales con

sistema operativo Linux y entorno gráfico KDE.

El sistema deberá funcionar en un servidor AS/400 con la siguiente

configuración: …

(10)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Visión tradicional de los requisitos

Tradicionalmente se ha supuesto que la elaboración de los

requisitos era responsabilidad única del cliente.

Todos los procesos de desarrollo comenzaban con el análisis

de unos requisitos supuestamente proporcionados por el

cliente.

Esta es una de las razones que han provocado los problemas

identificados en los informes CHAOS.

Actualmente, se asume que la elaboración de los requisitos es

una responsabilidad compartida entre clientes, usuarios y

desarrolladores.

Esta nueva visión es la que ha llevado a

definir una ingeniería de requisitos.

Ingeniería de Requisitos

septiembre 2013 18 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Problemas de comunicación

Ingeniería de Requisitos

(11)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Problemas de comunicación

Ingeniería de Requisitos

septiembre 2013

Stakeholder

needs

Customer

requirements

requirements

Product

?

20 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Problemas de comunicación

Stakeholder

needs

Customer

(12)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Ingeniería de requisitos

[Hsia et al. 1993]

Todas las actividades de la ingeniería de

sistemas/software relacionadas con:

Identificación y documentación de necesidades de

clientes y usuarios.

Creación de un documento que describe la conducta

externa y las restricciones asociadas [de un sistema]

que satisfarán dichas necesidades.

Análisis y validación del documento de requisitos

para asegurar consistencia, compleción y viabilidad.

Evolución de las necesidades.

Ingeniería de Requisitos

septiembre 2013

Evaluación

Versiones

22 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Ingeniería de requisitos

[Christel y Kang 1992]

El proceso sistemático de desarrollar requisitos

mediante un proceso iterativo y cooperativo de

analizar el problema, documentar las

observaciones resultantes en varios formatos de

representación y comprobar la precisión del

conocimiento obtenido.

Ingeniería de Requisitos

septiembre 2013

Evaluación

Versiones

23

(13)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

La IR en el ciclo de vida

La IR comienza con el proyecto y continúa durante

toda la vida del software.

Normalmente, el esfuerzo principal en IR se realiza

al comienzo del proyecto.

Ingeniería de Requisitos

septiembre 2013

Clientes y

Usuarios

Entregables

de Cambio

Peticiones

Desarrollo /

Mantenimiento de

Software

Equipo de

Desarrollo

de Requisitos

Ingeniería

de Requisitos

Ingeniero

Requisitos

24 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Actividades básicas de la IR

Actividad con participación fundamental de clientes y usuarios

Elicitación

de Requisitos

Documentación

de Requisitos

Negociación

de Requisitos

Análisis de

Requisitos

Verificación

de Requisitos

Validación

de Requisitos

Gestión de

Requisitos

Obtener

información

Resolver

conflictos

Especificar

requisitos

Identificar

conflictos

Identificar

defectos

Asegurar consistencia

con intenciones de

clientes y usuarios

Controlar el proceso

y generar baselines

(14)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Modelo de procesos de IR

septiembre 2013

Ingeniería de Requisitos

Elicitación

de Requisitos

Información

elicitada

Documentación

de Requisitos

[borrador]

Requisitos

Análisis de

Requisitos

de Requisitos

Verificación

de Requisitos

Validación

Requisitos

[analizados]

Requisitos

[verificados]

Requisitos

[validados]

Gestión de

Requisitos

Requisitos

[versionados]

Defectos

Conflictos

[pendientes]

Negociación

de Requisitos

Conflictos

[resueltos]

26 1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Gestión de requisitos

La gestión de los requisitos se ocupa de:

Controlar el proceso de Ingeniería de Requisitos.

Generar el documento base (baseline) de requisitos.

Gestionar las peticiones de cambio en los requisitos.

Definir los atributos (metainformación) de los

requisitos.

Mantener la trazabilidad (rastreabilidad).

(15)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Gestión de requisitos

Documento base de requisitos (baseline)

Es un documento acordado con clientes y usuarios

que contiene todos los requisitos del sistema a

desarrollar conocidos en la fecha del acuerdo.

Cualquier petición de cambio posterior al acuerdo

debe seguir el procedimiento de control de cambios

acordado para el proyecto, pudiendo ser necesario

una modificación en los costes, recursos y fecha de

entrega inicialmente acordados.

Cuanto mejor sea el documento base de requisitos,

menos cambios deberían realizarse a lo largo del

proyecto y la probabilidad de cumplir los plazos y

presupuesto iniciales aumentaría.

septiembre 2013

Ingeniería de Requisitos

28

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Peticiones de cambio en los requisitos

En el caso de que se generen peticiones de cambio en los

requisitos, el proceso a seguir suele ser:

1. Se registra la petición de cambio

(request for change

)

.

2. Se analiza el impacto del cambio.

3. El Comité de Control de Cambios (

Change Control Board

), formado

por clientes y desarrolladores, toma la decisión de aceptar o

rechazar el cambio en función del informe de análisis de impacto

del cambio.

4. Si se acepta el cambio, se revisan los acuerdos previos sobre

costes, recursos y fechas de entrega, se incorporan los cambios

oportunos en una nueva versión acordada del documento base de

requisitos y se hace un seguimiento del cambio en el resto del

desarrollo.

5. Si se rechaza el cambio, se registran las causas del rechazo y se

informa a los solicitantes.

Las peticiones de cambio suelen venir de clientes y usuarios

con nuevas necesidades, pero también pueden venir del

equipo de desarrollo por dificultades técnicas no previstas.

(16)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Atributos de los requisitos

Los requisitos no son únicamente el texto que describe la

condición que debe cumplir el sistema a desarrollar.

Los atributos habituales de los requisitos son:

identificador único (imprescindible para rastreabilidad)

versión y fecha

autores

fuentes (de información)

dependencias (trazas)

prioridad (importancia y urgencia)

estado (borrador, analizado, verificado, …)

estimación de estabilidad

comentarios

etc.

En función de las necesidades del proyecto, se pueden usar

otros atributos (coste, dificultad, etc.).

septiembre 2013

Ingeniería de Requisitos

30

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Rastreabilidad de los requisitos

La rastreabilidad, también denominada trazabilidad

(traceability), es una propiedad que permite conocer las

dependencias entre los distintos artefactos que se van

generando durante el desarrollo, incluyendo los requisitos.

Cada vez que se crea un nuevo artefacto (un objetivo, un

requisito, un elemento de modelado, un módulo, un fichero de

código fuente, una prueba, etc.) se debe registrar de qué

elementos de nivel superior y de su mismo nivel depende.

Es la única forma de poder realizar un análisis de impacto

cuando se solicita un cambio.

Cuando se produce un cambio en un artefacto, todos los que

dependen de él, tanto directa como indirectamente, están

expuestos a posibles cambios.

(17)

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos © D ise ñ o d e A m a d o r D u rá n T o ro , 2 0 1 1

Propiedades deseables de los documentos

de requisitos (I)

Comprensible por clientes, usuarios y desarrolladores.

Correcto, sin requisitos innecesarios o redundantes.

No ambiguo y con el nivel de precisión necesario.

Completo, que no falten requisitos y que todas las

respuestas del sistema a entradas tanto válidas como

inválidas estén especificadas.

Consistente, sin conflictos ni contradicciones entre los

requisitos o con documentos de nivel superior y con una

terminología única.

Verificable, que pueda comprobarse que el sistema final

cumple los requisitos mediante un proceso finito y de

coste razonable.

septiembre 2013

Ingeniería de Requisitos

32

1. El concepto de requisito 2. Tipos de requisitos 3. Visión tradicional de los requisitos 4. Definición de Ingeniería de Requisitos 5. El proceso de la Ingeniería de Requisitos 6. Gestión de Requisitos 7. Calidad de los Requisitos A m a d o r D u rá n T o ro , 2 0 1 1

Introducción a la Ingeniería de Requisitos

Propiedades deseables de los documentos

de requisitos (II)

Fácilmente modificable, organizada, con los requisitos

identificados y con control de configuración.

Rastreable, de forma que se conozcan las dependencias

de los requisitos hacia detrás y hacia delante.

Priorizada, indicando la importancia de los requisitos.

Anotada con estabilidad, para conocer posibles fuentes

de cambios durante el desarrollo.

Independiente del diseño y la implementación, para

evitar complejidades innecesarias y no limitar a los

diseñadores.

Referencias

Documento similar

Estudio de la introducción al diseño de software Objetivos específicos: Objetivos específicos: Objetivos específicos: Objetivos específicos: 2, 3, 4, 5 3, 4, 5 6, 7 6, 8, 9

Finalmente, para completar la definición de la Ingeniería de Requisitos, se va explica la Gestión o administración de Requisitos: su Concepto, la Evolución de los

Definición del Modelo de Referencia para la Ingeniería de Requisitos en proyectos de Bioinformática INeR. Los resultados de una encuesta aplicada por la autora a desarrolladores

1 Gu?a de Requisitos de Acceso de Alimentos a China 2 INDICE I RESUMEN EJECUTIVO 3 II INFORMACION GENERAL 4 2 1 RECOMENDACI?N CON RESPECTO A LA NORMATIVIDAD CHINA 5 2 2

La Ingeniería de Requisitos tiene como objetivo realizar la definición de los requisitos de un sistema de software, lo más completa posible. Diferentes autores han

2 Universidad de Medellín, Colombia Los requisitos de calidad (también llamados requisitos no-funcionales) son aquellos que permiten asegurar la calidad del software. Incluyen

de Informática y Automática n Los casos de uso n Como elementos fundamentales en la ingeniería de requisitos n Como directores del proceso software n Difusión a través de su

Los ingenieros de requisitos no pueden poner una marca al lado de cada requisito para indi- car si se cumple o no, porque la especificación reutiliza requisitos asignados a