410 likes | 952 Views
Especificación de Requerimientos. Perspectiva del Comportamiento. Especificación Informal. Punto de Decisión. Planificación/ Extracción. Análisis/. Negociación. Reqs. Aceptados. ESRE y Reporte de Validación. Validación. Especificación. ESRE preliminar. Temario.
E N D
Especificación de Requerimientos Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Perspectiva del Comportamiento Especificación Informal Punto de Decisión Planificación/ Extracción Análisis/ Negociación Reqs. Aceptados ESRE y Reporte de Validación Validación Especificación ESRE preliminar Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Temario • Utilidad de los requerimientos. • Especificación de requerimientos no funcionales. • ESRE de IEEE. • ESRE de VORD. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Temario • Utilidad de los requerimientos. • Especificación de requerimientos no funcionales. • ESRE de IEEE. • ESRE de VORD. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Temario • Utilidad de los requerimientos. • Especificación de requerimientos no funcionales. • ESRE de IEEE. • ESRE de VORD. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Independencia de Dispositivos Autocontenido Portabilidad Seguridad Completitud Confiabilidad Robustez Usabilidad Eficiencia Consistencia Auditabilidad Ingeniería Humana Eficiencia de Recursos Utilidad General de un Sistema Accesibilidad Testeabilidad Comunicatividad Mantenibilidad Autodescripción Entendibilidad Estructuración Concisión Modificabilidad Legibilidad Aumentabilidad El Modelo de Calidad de Boehm Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Requerimientos no Funcionales • Requerimientos de Comportamiento. • Confiabilidad. • Eficiencia. • Ingeniería Humana. • Requerimientos no Comportamentales. • Portabilidad. • Testeabilidad. • Entendibilidad. • Modificabilidad. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Ingeniería Humana • Requerimientos de interfaz con el usuario. • Usabilidad. • Amigabilidad. • Definir estándares de diálogos. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Temario • Utilidad de los requerimientos. • Especificación de requerimientos no funcionales. • ESRE de IEEE. • ESRE de VORD. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
¿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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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... Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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... Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Organización de un ESRE de IEEE 1. 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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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... Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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... Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
2. Descripción General 2.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.) . . . Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. . . . Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Ejemplo 3. 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 Usuario RNF1. 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. . . . Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
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. . . . Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Otra Organización de un ESRE de IEEE 3. 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. . . . Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Otro Ejemplo 3. 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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Temario • Utilidad de los requerimientos. • Especificación de requerimientos no funcionales. • ESRE de IEEE. • ESRE de VORD. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Organización de ESRE de VORD 3. Requerimientos Específicos. Viewpoints Identificador (referencia y nombre del viewpoint) A. Descripción Breve descripción del viewpoint. B. tipo Tipo del viewpoint, incluyendo sus ancestros. C. Atributos Lista de atributos del viewpoint. D. Especializaciones Lista de otros viewpoint en los que se especializa este. E. Historia Descripción de la evolución del viewpoint y sus requerimientos. Apoya las actividades de SCM. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Organización de ESRE de VORD (cont.) F. Requerimientos F1. Servicios Identificador (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 funcionales Identificador (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) Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Ejemplo de ESRE de VORD 3. Requerimientos Específicos. Viewpoints 2. Cliente del Banco A. Descripción El viewpoint cliente del banco representa a los clientes que pertenecen al banco y a los clientes de otros bancos. B. tipo /Directo/Operador C. Atributos 1. Nro_Tarjeta 2. Nro_Cuenta 3. PIN D. Especializaciones 2.1. Clientes del mismo Banco 2.2. Clientes de otros Bancos E. Historia Referencia Fecha Descripción del Cambio Relación 2. Cliente del Banco 25/4/99 Creación del viewpoint 2.2 Retiro de caja 25/6/99 Se cambio la especificación Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Documentación de Requerimientos de Viewpoints Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Ejemplo de ESRE de VORD (cont.) F. Requerimientos F1. Servicios 2.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 funcionales 2.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. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.
Bibliografía • Capítulo 3, Software Requirements: Objects, Functions and States, Alan M. Davis; capítulo 9, Requirements Engineering, Gerald Kotonya and Ian Sommerville. Ingeniería de Requerimientos. Especificación de requerimientos. Alvaro Ortas.