Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de...

35
Ingeniería de Requerimientos. Especificación de requerimient os. Alvaro Ortas. 1 Especificación de Requerimientos

Transcript of Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de...

Page 1: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 1

Especificación de Requerimientos

Page 2: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 2

Perspectiva del Comportamiento

Planificación/

Extracción

Análisis/

Validación Especificación

ESRE y

Reporte de

Validación

ESRE preliminar

Reqs.

Aceptados

Especificación InformalPunto de

Decisión

Negociación

Page 3: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 3

Temario

• Utilidad de los requerimientos.• Especificación de requerimientos no funcionales.• ESRE de IEEE.• ESRE de VORD.

Page 4: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 4

Temario

Utilidad de los requerimientos.

• Especificación de requerimientos no funcionales.

• ESRE de IEEE.

• ESRE de VORD.

Page 5: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 5

Utilidad de los Requerimientos• Para QUIENES y para QUE.• Desde una perspectiva del QUE (hace el sistema).

– Clientes y usuarios.– Analistas de requerimientos.– Constructor.– Administradores de proyectos.

• Desde una perspectiva del COMO (construirlo).– Desarrolladores.– SCMers.– SQAers.– Diseñadores de testing.– Testers.– Escritores técnicos.

Page 6: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 6

Temario

Utilidad de los requerimientos. Especificación de requerimientos no funcionales.• ESRE de IEEE.• ESRE de VORD.

Page 7: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 7

El Modelo de Calidad de Boehm

Utilidad General de un Sistema

Eficiencia de Recursos

Accesibilidad

Comunicatividad

Autodescripción

Estructuración

Concisión

Legibilidad

Aumentabilidad

Independencia deDispositivos

Autocontenido

Seguridad

Completitud

Robustez

Consistencia

Auditabilidad

Portabilidad

Confiabilidad

Eficiencia

Ingeniería Humana

Testeabilidad

Entendibilidad

Modificabilidad

Mantenibilidad

Usabilidad

Page 8: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 8

Requerimientos no Funcionales• Requerimientos de Comportamiento.

– Confiabilidad.– Eficiencia.– Ingeniería Humana.

• Requerimientos no Comportamentales.– Portabilidad. – Testeabilidad.– Entendibilidad.– Modificabilidad.

Page 9: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 9

Confiabilidad

• Es la capacidad de un sistema para comportarse consistentemente desde el punto de vista del usuario.

• Ejemplo: un sistema operativo que puede perder archivos anteriormente generados no es muy confiable.

• Considerarla en función de como puede impactar sobre los clientes:– Pérdidas económicas.

– Detención del funcionamiento de la empresa.

– Pocas inconveniencias.

– Etc.

• Medición tentativa: cantidad de fallas en un período dado.

Page 10: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 10

Eficiencia• Es el nivel en que el software optimiza el uso de los recursos

de hardware y software de base.• Atributos.

– Capacidad.• Cantidad máxima de usuarios conectados a la vez.• Cantidad de registros en un archivo.• Etc.

– Tiempo de respuesta.• Cuanto demora en responder un sistema frente a un estímulo.• Ej.: Desde el ENTER al despliegue de datos no pueden transcurrir más de 2

segundos.

– Degradación del servicio.• Mide la cantidad de elementos que el sistema puede manejar con el mismo

tiempo de respuesta.

Page 11: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 11

Ingeniería Humana

• Requerimientos de interfaz con el usuario.

– Usabilidad.

– Amigabilidad.

• Definir estándares de diálogos.

Page 12: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 12

Portabilidad

• Es el grado de capacidad de un sistema para ejecutarse en más de un ambiente.

• Una medida tentativa: el tiempo que requiere migrar un sistema a un ambiente determinado.

• Conviene definir una escala.

Page 13: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 13

Testeabilidad, Entendibilidad y Modificabilidad

• Se deben definir estándares de los productos resultantes y herramientas de cada fase de desarrollo.– Ing. de Requerimientos.– Diseño.– Programación.– Prueba.– Manuales de usuario.

Page 14: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 14

Clasificación de Restricciones• Requerimientos de interfaz hombre-máquina.

• Requerimientos de interfaz con otros sistemas.

• Requerimientos de datos.

• Requerimientos de confiabilidad.

• Requerimientos de eficiencia.

• Requerimientos de portabilidad.

• Requerimientos de escalabilidad.

• Requerimientos de seguridad.

• Requerimientos de auditoría.

• Requerimientos de software.

• Requerimientos de hardware.

• Requerimientos de testeabilidad.

• Requerimientos de entendibilidad.

• Requerimientos de modificabilidad.

• Otras restricciones.

Page 15: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 15

Temario

Utilidad de los requerimientos.Especificación de requerimientos no funcionales. ESRE de IEEE.• ESRE de VORD.

Page 16: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 16

¿Qué es un ESRE?

• ESRE (Documento de Especificación de Requerimientos): – Es un documento que describe exactamente

QUE es lo que se debe CONSTRUIR.– Captura los resultados de la Extracción,

Análisis y Negociación de Requerimientos.– Incluye solamente los requerimientos del

producto.

Page 17: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 17

Ejemplos• El sistema debe emitir un informe de estado de situación

patrimonial...• El sistema debe realizar la liquidación de haberes a

destajistas, personal contratado, personal estable...• El sistema debe implementar un álgebra que posibilite cubrir

toda la casuística de la liquidación de haberes sin reprogramación.

• El sistema debe capturar cualquier regla de liquidación de haberes sin necesidad de intervención del fabricante del producto.

• El sistema debe tener un archivo de movimientos...

Page 18: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 18

Ejemplos

• El sistema debe correr sobre WINDOWS XP o más.

• El sistema debe estar desarrollado en JAVA.

• El sistema deberá ser desarrollado en 10 meses...

Page 19: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 19

Organización de un ESRE de IEEE1. Introducción.

[Introducción general al ESRE.]1.1. Identificación. [Nombre del Sistema.] 1.2. Propósito del ESRE. [Sumario, motivación, audiencia, etc..] 1.3. Alcance del Producto.[Que cubre y que no cubre el producto. Diagrama de Contexto.] 1.4. Glosario. [Definiciones, siglas y abreviaturas.] 1.5. Referencias. [Libros, estándares, documentos, etc..] 1.6. Generalidades del ESRE. [Descripción general de cada una de las partes restantes.]

2. Descripción General.[Factores que afectan al sistema y sus requerimientos.]2.1. Perspectiva del Producto.[Resumen de los objetivos del sistema.]2.2. Funciones del Producto.[Lista de las funciones más importantes del sistema]2.3. Características de los usuarios.[Identificación y descripción los roles de los actores del sistema.]2.4. Restricciones Generales. [Resumen de las restricciones más importantes del sistema.]2.5. Supuestos y dependencias. [Aclaraciones de supuestos de que se parte para la

construcción del sistema y las relaciones de dependencia con otros sistemas y ambientes.]3. Requerimientos Específicos.

Lista de requerimientos.Apéndices.Indices.

Page 20: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 20

1. Introducción

1.1. Identificación.– Sistema de Gestión de Call Centers (SGCC).

1.2. Propósitos del ESRE.– Este documento surge porque... e intenta

reunir... y está orientado a ...

1.3. Alcance del Producto.– SGCC busca solucionar la problemática tal... en

el contexto tal...

Page 21: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 21

1. Introducción (Cont.)1.4. Glosario.

– Contact Center: es la entidad del negocio que realiza...– SQA: Software Quality Assurance.

1.5. Referencias.– [JAC1]. Object-Oriented Software Engineering. Ivar

Jacobson. ...

1.6. Generalidades.– Los restantes apartados del capítulo 1 describen los propósitos (QUE, PARA

QUE y PARA QUIENES) de este documento ...

– El capítulo 2 presenta una...

– En el capítulo 3 se describe...

Page 22: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 22

2. Descripción General2.1. Perspectiva del Producto.

– SGCC tiene como objetivos:

1) Ayudar a gestionar el funcionamiento operativo de un Call Center.

2) Brindar información para mejora de los procesos del Call Center.

2.2. Funciones del Producto.1) Posibilitar recepción y atención de llamadas de los clientes.

2) Registrar y recuperar métricas de llamadas recibidas.

3) Posibilitar la administración de los parámetros de funcionamiento del Call Center (RRHH, actividad, etc.)

.

.

.

Page 23: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 23

2. Descripción General (Cont.)2.3. Características de los usuarios.

– Cliente: usuario que utiliza el servicio del Call Center...

– Operador: es el usuario que que recibe y responde llamadas...

– Supervisor: es el usuario que administra el Call Center y define...

2.4. Restricciones generales.1) Está orientado a cubrir la problemática de call centers pequeños y

medianos.

2) A ejecutarse en PCs y redes locales.

3) Sistemas operativos “visuales”.

2.5. Supuestos y Dependencias.– La empresa deberá poseer un sistema de gestión de RRHH (SGRH).

– El SGCC interactuará para recibir y enviar información al SGRH.

Page 24: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 24

Organización de ESRE de IEEE (Cont.)3. Requerimientos Específicos.

3.1. Requerimientos Funcionales.Requerimiento Funcional 1. [Identificación del Requerimiento.]

Descripción. [Breve descripción del requerimiento.]Especificación. [Según el método elegido.]

...Requerimiento Funcional N. [Identificación del Requerimiento.]

Descripción. [Breve descripción del requerimiento.]Especificación. [Según el método elegido.]

3.2. Requerimientos de Interfaz Externa.3.2.1. Interfaces con el Usuario.[Formato de presentación de los datos.]3.2.2. Interfaces con otros Sistemas.3.2.3. Interfaces de comunicación.

3.3. Requerimientos de Eficiencia.3.4. Restricciones de Diseño.

3.4.1. Requerimientos de hardware.3.4.2. Requerimientos de software.3.4.3. Requerimientos de Estándares.

...

Page 25: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 25

Ejemplo3. Requerimientos Específicos.

3.1. Requerimientos Funcionales.RF1. Recepción de consultas de Clientes vía Telefónica.

Descripción: El sistema interactuará con el cliente a través de mensajes pregrabados y permita informar al cliente de las tarifas, características del servicio y estado actual del mismo. Posteriormente el sistema comunicará al cliente con el primer operador disponible.

Especificación: Caso de uso 4....

3.2. Requerimientos de Interfaz Externa.3.2.1. Interfaces con el UsuarioRNF1. Estándar de Diálogos.

Descripción: el sistema deberá apegarse totalmente al estándar de diálogo hombre-máquina definido por Microsoft en The Standard Windows Interface.

RNF2. Configuración de funciones.

Descripción: esta función debe ser “configurable” de manera que se puedan agregar/quitar/modificar fácilmente atributos sin necesidad de reprogramación....

Page 26: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 26

Ejemplo (Cont.)3. Requerimientos Específicos.

3.3. Requerimientos de Eficiencia.RNF15. Tiempo de respuesta del chat.

Descripción: el tiempo de respuesta, desde que se pulsa “enter” hasta el despliegue de la información en pantalla, tanto de parte del(los) operador(es) como del cliente, no podrá superar los 2 segundos, con un ancho de banda de 56 K, considerando que:

1) Una sesión de chat puede involucrar a un cliente y hasta 5 operadores.

2) Un operador puede atender hasta 4 sesiones de chat a la vez.

3) Pueden haber hasta 100 operadores en chat simultáneamente.

4) Pueden haber hasta 400 clientes en chat simultáneamente.

5) Pueden haber hasta 1000 clientes en línea, fuera del chat, en el portal simultáneamente.

Casos de uso afectados: CU5....

Page 27: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 27

Otra Organización de un ESRE de IEEE3. Requerimientos Específicos.

3.1. Requerimiento Funcional 1. 3.1.1. Requerimientos de Interfaz Externa.

3.1.1.1. Interfaces con el Usuario.3.1.1.2. Interfaces con otros Sistemas.3.1.1.3. Interfaces de comunicación.

3.1.2. Restricciones de Diseño.3.1.2.1. Requerimientos de hardware.3.1.2.2. Requerimientos de software.3.1.2.3. Requerimientos de Estándares.

3.2. Requerimiento Funcional 2. 3.2.1. Requerimientos de Interfaz Externa.

3.2.1.1. Interfaces con el Usuario.3.2.1.2. Interfaces con otros Sistemas.3.2.1.3. Interfaces de comunicación.

3.2.2. Restricciones de Diseño.3.2.2.1. Requerimientos de hardware.3.2.2.2. Requerimientos de software.3.2.2.3. Requerimientos de Estándares.

...

Page 28: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 28

Otro Ejemplo3. Requerimientos Específicos.

3.1. Requerimientos Funcionales.RF1. Recepción de consultas de Clientes vía Telefónica.

Descripción: El sistema interactuará con el cliente a través de mensajes pregrabados y permita informar al cliente de las tarifas, características del servicio y estado actual del mismo. Posteriormente el sistema comunicará al cliente con el primer operador disponible.

Especificación: Caso de uso 4....

3.1.1. Requerimientos de Eficiciencia.

RNF15. Tiempo de respuesta del chat.

Descripción: el tiempo de respuesta, desde que se pulsa “enter” hasta el despliegue de la información en pantalla, tanto de parte del(los) operador(es) como del cliente, no podrá superar los 2 segundos, con un ancho de banda de 56 K, considerando que:

1) Una sesión de chat puede involucrar a un cliente y hasta 5 operadores.

2) Un operador puede atender hasta 4 sesiones de chat a la vez.

3) Pueden haber hasta 100 operadores en chat simultáneamente.

4) Pueden haber hasta 400 clientes en chat simultáneamente.

5) Pueden haber hasta 1000 clientes en línea, fuera del chat, en el portal simultáneamente.

Page 29: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 29

Temario

Utilidad de los requerimientos.Especificación de requerimientos no funcionales.ESRE de IEEE. ESRE de VORD.

Page 30: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 30

Organización de ESRE de VORD

3. Requerimientos Específicos.ViewpointsIdentificador (referencia y nombre del viewpoint)

A. DescripciónBreve descripción del viewpoint.B. tipoTipo del viewpoint, incluyendo sus ancestros.C. AtributosLista de atributos del viewpoint.D. EspecializacionesLista de otros viewpoint en los que se especializa este.E. HistoriaDescripción de la evolución del viewpoint y sus requerimientos.

Apoya las actividades de SCM.

Page 31: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 31

Organización de ESRE de VORD (cont.)

F. RequerimientosF1. ServiciosIdentificador (identificador único)

Descripción (breve descripción del objetivo del servicio)Fuente (viewpoint que origina el servicio)Prioridad (importancia del servicio en relación a los otros servicios)Escenario (referencia al documento que contiene el escenario

implementado con DTE)Especificación (referencia al documento que contiene las

especificaciones del servicio)F2. Requerimientos no funcionalesIdentificador (identificador único)

Descripción (breve descripción del requerimiento no funcional)Fuente (viewpoint que origina el servicio)Prioridad (importancia del requerimiento en relación a los otros

requerimientos)Servicios afectados (lista de servicios afectados o restringidos por el

requerimiento)Especificación (formal, de ser necesaria)

Page 32: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 32

Ejemplo de ESRE de VORD3. Requerimientos Específicos.Viewpoints2. Cliente del BancoA. DescripciónEl viewpoint cliente del banco representa a los clientes que pertenecen al banco y a los

clientes de otros bancos.B. tipo/Directo/OperadorC. Atributos1. Nro_Tarjeta2. Nro_Cuenta3. PIND. Especializaciones2.1. Clientes del mismo Banco2.2. Clientes de otros BancosE. HistoriaReferencia Fecha Descripción del Cambio Relación2. Cliente del Banco 25/4/99 Creación del viewpoint2.2 Retiro de caja 25/6/99 Se cambio la especificación

Page 33: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 33

Documentación de Requerimientos de ViewpointsViewpoint Requerimiento Tipo

2 Cliente delBco.

2.1 Acceso a servicios en función de su PIN. sv

2.2 Retiro de fondos. sv

2.3 El servicio de retiro de fondos debe estardisponible 999 veces cada 1000 solicitudes.

nf

2.4 El servicio de retiro de fondos debe untiempo de respuesta de no más de 1 minuto.

nf

2.1 Cliente delmismo Bco.

2.1.1 Transferencia de fondos. sv

2.1.2 Impresión de recibo de últimatransacción

sv

2.1.3 Impresión de estados de cuenta. sv

Page 34: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 34

Ejemplo de ESRE de VORD (cont.)F. Requerimientos

F1. Servicios2.2. Retiro de Fondos.Descripción: el ATM deberá proveer servicios de retiro de fondos a todos los clientes habilitados.Fuente: 4. Banco.Prioridad: 9.Escenario: véase RetiroFondos.doc.Especificación véase RetiroFondos.doc.

F2. Requerimientos no funcionales2.3. Disponibilidad de Retiro de Fondos.Descripción: el servicio de retiro de fondos debe estar disponible 999 veces cada 1000

solicitudes.Fuente: 2. Cliente del Banco.Prioridad: 5.Servicios afectados: 2.2. Retiro de Fondos.

2.4. Tiempo de Respuesta de Retiro de Fondos.Descripción: el servicio de Retiro de Fondos debe tener un tiempo de respuesta de no más de

1minuto.Fuente: 2. Cliente del Banco.Prioridad: 5.Servicios afectados: 2.2. Retiro de Fondos.

Page 35: Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.1 Especificación de Requerimientos.

Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas. 35

Bibliografía

• Capítulo 3, Software Requirements: Objects, Functions and States, Alan M. Davis; capítulo 9, Requirements Engineering, Gerald Kotonya and Ian Sommerville.