Fundamentos de Ingeniería del Software. Capítulo 3. Análisis de Requisitos Introducción a los casos de uso

Documentos relacionados
Fundamentos de Ingeniería del Software. Capítulo 3. Análisis de Requisitos Introducción a los casos de uso

Análisis y Diseño del Software. El Lenguaje Unificado de Modelado UML 2.0

diagramas de comportamiento con UML.

Ingeniería de requerimientos de software: Análisis. Dpto. de Ingeniería de Sistemas y Computación Universidad de los Andes

4/15/2010. Requerimientos de Software UARG.UNPA Requerimientos de Software. Requerimientos de Software

Documentación de Requisitos con Casos de Uso

Diagramas de Casos de Uso. Ingeniería del Sw-II, José Merseguer

Desarrollo Orientado a Objetos en Métrica v. 3

Ingeniería a de Software CC51A

Trabajo Práctico Nro. 7. Herramientas para el Modelado de Comportamiento Básico: Diagramas y Especificaciones de Casos de Uso

Caso de Uso. Herramienta de relevamiento. domingo, 28 de octubre de 12

Unidad II. Metodología para resolver problemas aplicando la POO. Parte 1

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERIA EAP INGENIERIA INFORMATICA CICLO ACADEMICO 2003 II SILABO

EJERCICIOS DE MODELADO DE INTERACCIÓN

Análisis y Diseño Orientado a Objetos. 2 - Análisis

1. Asignar Responsabilidades a componentes de software es la habilidad más importante del AOO. Porque:

MODELADO DE CASOS DE USO (Libro UML 2-Arlow & Neustad)

FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA

gestión para una empresa de autobuses que se dedica al transporte regional, nacional e internacional de viajeros. Las

Análisis y Diseño de Sistemas Clase 5 Ingeniería de Requerimientos El modelo de Casos de Uso

INGENIERÍA WEB. Dr. Mario Rossainz López Fac. de Cs. de la Computación Benemérita Universidad Autónoma de Puebla Otoño de 2017

Tema 10: Interfaces. Índice

Cliente. Generalización. Cliente Comercial

Tema 9: Método de Craig Larman

ALMACENES MANUAL DE USUARIO VER II

UML: Lenguaje Unificado de Modelado

Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema

Fecha de elaboración: Julio de 2010 Fecha de última actualización:

ESCUELA: UNIVERSIDAD DEL ISTMO

Universidad Ricardo Palma

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

UML (Unified Modeling Language) Octubre de 2007

Lenguaje de Modelamiento Unificado.

Caso de Uso. Por ejemplo. Sistema. Actor Actor

De Desempeño De Conocimiento SABERES ESENCIALES CONTENIDOS RUTA FORMATIVA Saber Conocer Nociones, Proposiciones, Conceptos Categorías

Guía de Usuario FileBRIDGE. Gestión de Bóveda

UML. Diagrama de Casos de Usos. Prof. Daniel Riesco

Introducción a la orientación a objetos y a UML

Una Introducción al UML. El Modelo de Casos de Uso

Ingeniería Software e Ingeniería Web

Diseño de la Arquitectura Lógica con Patrones. mayo de 2008

Presentación de la Asignatura.

1.1CONCEPTOS ORIENTADOS A OBJETOS

CASOS DE USO.

SISTEMA DE SEGUIMIENTO Y CONTROL ACADEMICO SIS.SEG.BOL. UNIDAD EDUCATICA SIMÓN BOLÍVAR VERSION 1.0 ELISA ALANOCA QUISPE MODULO GESTION DE INSCRIPCION

CLASE 3: UML DIAGRAMAS CASOS DE USO. Universidad Simón Bolívar. Ingeniería de Software. Prof. Ivette Martínez

Tema 4e: Proceso Unificado: Análisis

Modelo de Casos de Uso

Examen de Ingeniería del Software / 2º de Informática de Sistemas 21 de junio de 2007

Análisis y Negociación de Requisitos

Modelado Estructural F E B R E R O,

Análisis y Diseño de Sistemas

12/08/2017. Casos de uso. Casos de uso. Casos de uso. Casos de uso

ASPECTOS PRÁCTICOS DE LOS CASOS DE USO

ANÁLISIS Y DISEÑO DE SISTEMAS

Guía docente de la asignatura

Qué Necesita el Usuario

Ingeniería de Software. UML.

TRABAJO FINAL LA MUJER Y LA NIÑA EN LA CIENCIA Y LA TECNOLOGÍA INGENIERÍA DE SOFTWARE I 2º DE GRADO EN INGENIERÍA INFORMÁTICA CURSO 2017/2018

Requerimientos Funcionales y No Funcionales. Juan Pablo Quiroga Dpto. de Ingeniería de Sistemas y Computación Universidad de los Andes

CASOS DE USO Exploración de Requerimientos

Interacción Persona - Ordenador

CIDE, SA. RIF: J NIT: MODELO FUNCIONAL

Programa Educativo: PROGRAMA DE ESTUDIO Área de Formación : Horas teóricas: Horas prácticas: Total de Horas: Total de créditos:

SILABO DEL CURSO DISEÑO DE SOFTWARE 1. DATOS GENERALES

Requerimientos Funcionales y No Funcionales

Planificaciones Análisis de la Información. Docente responsable: GONZALEZ NORBERTO DANIEL. 1 de 6

DIAGRAMAS DE UML DIAGRAMAS DE CASO DE USO

Tema 2. Casos de Uso C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A B E L

DIAGRAMAS DE CASOS DE USO. Prof. Hooberth Chávez Bedoya

Proceso Unificado de Desarrollo de Software. Fase de Inicio

Un caso de uso es una tarea que debe poder llevarse a cabo con el apoyo del sistema que se está desarrollando, se representa mediante un óvalo.

TEST (2 0 puntos, 0 20 puntos por pregunta correcta, puntos por error) [Marcar sólo una opción]

ORGANIZACIÓN DOCENTE del curso

Obligatoria asignatura Programa elaborado por:

UML El Lenguaje Unificado de Modelado Grady Booch, Jim Rumbaugh e Ivar Jacobson

Modelado de Conducta Análisis de Casos de Uso

(Clase del 3 de mayo de 2011)

Horas Contacto. Objetivos Se pretende que el estudiante asimile los conceptos fundamentales de análisis y diseño orientado a objetos

PROYECTO MULTIPLAN. Captura de Requerimientos

Oscar Alberto, Custodio Izquierdo Carlos Arturo, Hernández Torruco José Fecha de elaboración: 28 de Mayo de 2010 Fecha de última actualización:

PRN315 Programación III Ciclo II Guía de Ejercicios de Diseño Orientado a Objetos (DOO)

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN HORAS SEMANA

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ

Horas Contacto. Modelar gráficamente la solución de problemas con un enfoque Orientado a Objetos, usando un lenguaje de modelado, en este caso UML.

Nombre de la materia. Departamento. Academia

Ingeniería del Software de Gestión

Registrar información o datos de una persona REQUERIMIENTO QUE LO UTILIZA O ESPECIALIZA:

Unified modeling language

USECASE. CASOS de USO

Mentor: MsC(c) Esp Alexis Olvany Torres Ch

Documentación n de Requisitos mediante Casos de Uso

Ejemplo de Casos de Uso. Gestión básica de una biblioteca.

INGENIERÍA DEL SOFTWARE

DOCUMENTO DE ANÁLISIS DE REQUERIMIENTOS FIT POR: JUAN DIEGO A. RESTREPO CARLOS A. VALENCIA CAMILO VIEIRA 2008 UNIVERSIDAD EAFIT

UML Unifield Modeling Languaje

Universidad Tecnológica Nacional Facultad Regional San Francisco. Ingeniería en Sistemas de Información. Análisis de Sistemas

Programa Educativo: Licenciatura en Ciencias Comptacioanales PROGRAMA DE ESTUDIO. Área de Formación : Sustantiva Profesional

Proceso Unificado de Desarrollo de Software. 13 de sep de 2006

Transcripción:

Fundamentos de Ingeniería del Software Capítulo 3. Análisis de Requisitos Introducción a los casos de uso

Introd. a los casos de uso. Estructura Introducción Diagramas de casos de uso Actores Casos de uso Descripción Relaciones entre casos de uso Granuralidad de los casos de uso Escenarios y casos de uso Especificación de requisitos con casos de uso Desarrollo dirigido por los casos de uso

Introd. a los casos de uso. Bibliografía UML Gota a gota. M. Fowler, K. Scott. Ed. Addison-Wesley Longman. 1999. (Cap. 3) UML y Patrones (2ª Edición). C. Larman. Ed. Prentice-Hall. 2003. (Cap. 6) El lenguaje unificado de modelado. G. Booch et al. Ed. Addison-Wesley. 1999. (Caps. 16 y 17) Object-Oriented Software Engineering. A Use Case Driven Approach. I. Jacobson et al. Ed. Addison-Wesley. 1992. Applying Use Cases. G. Schneider, J. P. Winters. Ed. Addison-Wesley. 1998.

Casos de uso Técnica de recolección y especificación de requisitos. Fáciles de comprender/validar por los usuarios. Guían todo el proceso de desarrollo. Ayudan a la planificación/desarrollo incremental. Tradicionalmente ligados a la OO pero no obligatorio Ayudan a determinar la interfaz de usuario.

Casos de uso. Ejemplo Realizar llamada telefónica <<extend>> Red telefónica Recibir llamada telefónica Usar agenda Realizar llamada de conferencia <<extend>> Recibir llamada adicional Teléfono móvil Usuario (Booch et al. 99)

Éxito de los casos de uso Concebidos por I. Jacobson - Objectory/OOSE (Jacobson et al. 92) Presentes en casi cualquier nuevo método de desarrollo de software. Incluidos en UML y Métrica 3. Fuerte actividad investigadora en los últimos años.

Diagramas de casos de uso Elementos: Actores: roles que juegan los usuarios con respecto al sistema. Casos de uso: interacciones típicas entre usuarios y el sistema. Dar OK vuelo Piloto Comprobar tabla de vuelos Confirmar reserva Sistema de vuelo (Jacobson et al. 92) Oficinista

Actores. Características Inician la ejecución de los casos de uso. No tienen que ser personas necesariamente. Un mismo rol puede ser jugado por más de un usuario. Un usuario puede jugar más de un rol.

Actores. Características (II) En UML, se pueden generalizar actores. p.ej. Cliente Cliente individual Cliente corporativo

Actores. Características (III) Ayudan a capturar los casos de uso...aunque algunos casos de uso no tienen actores (de inicio) asociados... p.e. enviar factura (nadie la pide) (Fowler 99) Dos posibles soluciones: (Schneider Winters 98) que el sistema pueda iniciar el caso de uso (no permitido en UML, pero estos autores creen que sería útil) crear un actor como Tiempo (para un caso de uso que se debe iniciar automáticamente cada cierto intervalo de tiempo) o Sistema

Actores. Características (IV) Ayudan a configurar el sistema para cada usuario crear profiles o perfiles de usuario Ayudan a tomar soluciones de compromiso durante el desarrollo se observa quién (qué actor) necesita cada caso de uso.

Encontrar los actores Qué se considera un actor? podemos preguntarnos Porqué se construye el sistema? Los actores ganan valor con la ejecución del caso de uso (actor primario del caso de uso), o pueden sólo participar en él (actores secundarios del caso de uso)

Casos de uso. Características Capturan una función visible para el usuario. Consiguen un objetivo para el usuario del sistema. Caso de uso Breve descripción en lenguaje natural Por cada caso de uso: Un camino básico Caminos alternativos (describir tantos como sea posible para aumentar la robustez del sistema)

Casos de uso Descripción textual Un escenario primario y varios secundarios. P.ej.: Caso de uso Ordenar pedido Precondición: Un usuario válido ha entrado en el sistema Flujo de eventos: Camino básico 1. El caso de uso comienza cuando el usuario selecciona Ordenar pedido. 2. El usuario introduce su nombre y dirección. 3. Si el usuario sólo introduce el código postal, el sistema mostrará la ciudad y provincia. 4. El usuario introduce los códigos de los productos deseados. 5. El sistema proporcionará la descripción y el precio de cada elemento. 6. El sistema mostrará el coste total de los elementos introducidos hasta el momento. 7. El usuario introduce información de pago mediante tarjeta de crédito. 8. El cliente seleccionará Enviar. 9. El sistema verificará la información, guardará el pedido como pendiente y enviará la información de pago al sistema de contabilidad. (Schneider Winters 98) 10. Cuando el pago es confirmado, el pedido se marca Confirmado, un ID de pedido se manda al usuario y termina el caso de uso. Caminos alternativos En el paso 7, si cualquier información es incorrecta, el sistema pedirá al usuario corregir la información. Post-condición: El pedido ha sido guardado en el sistema y marcado como Confirmado.

Casos de uso Descripción textual (II) Disponibles muchas plantillas P.ej., la plantilla de Coleman: Caso de Uso Ordenar Fabricación Descripción Se crearán órdenes de trabajo para cada producto solicitado en el pedido, y serán enviadas al jefe de producción para su planificación. Actores Jefe técnico Asunciones - Es viable la fabricación de cada producto solicitado en el pedido. - Existe una plantilla de fabricación para cada producto solicitado. Pasos 1. REPETIR 1.1 Obtener un producto del pedido. 1.2 Buscar la plantilla de fabricación asociada al producto. 1.3 Crear la orden de trabajo. 1.4 Almacenar la orden de trabajo con el estado pendiente. Variaciones - Req. No Funcionales - Cuestiones -

Encontrar los casos de uso Es útil encontrar primero los actores Se puede diferenciar entre (Fowler 99): Objetivos del usuario: formatear un documento Interacciones del sistema: def. un estilo, mover un estilo a otro doc. Guía útil: primero buscar los objetivos del usuario, y luego cubrir cada objetivo con interacciones del sistema.

Relaciones entre casos de uso (en OOSE, Jacobson et al. 92) Extends: el caso de uso que extiende realiza una acción en un punto del caso de uso extendido, si se cumple una condición. Denota un punto de extensión. Sirve para representar las condiciones de error y poco usuales, que podrían oscurecer el caso de uso base. Uses: se factorizan acciones que se utilizan en más de un caso de uso (se incluye siempre).

Relaciones entre casos de uso (en UML, Booch et al. 99) En UML también existe la generalización uses se denota <<include>> extends se denota <<extend>> Imprimir Ptos. de extensión papel atascado <<include>> <<extend>> (papel atascado) Validar usuario Desatascar papel

include y extend. Ejemplo Establecer límites Actualizar cuentas Gerente de comercio Analizar riesgo Negociar precio <<include>> <<include>> Valoración Sistema de Contabilidad Capturar negociación Comerciante <<extend>> Límite excedido Agente de Ventas (Fowler 99)

Casos de uso. Ejemplo Máquina de reciclado: Botes Recibo Cajas de botellas Botellas Extraído de (Jacobson 92)

Casos de uso. Ejemplo (II) Máquina de reciclado de botes, botellas y envases de plástico Como cada ítem tiene precios y dimensiones distintas el sistema debe identificar el tipo de ítem que acaba de recibir El sistema registra el número de ítems recibidos y, si el cliente pide un recibo, imprime el número de ítems recibidos, su tipo, los precios parciales y el total que será devuelto al cliente en la caja, al presentar ese recibo impreso Un operador puede, al final del día, solicitar un listado de todos los ítems recuperados ese día El operador también puede cambiar la información del sistema (precios, tipos, etc.)

Casos de uso. Ejemplo (III) Primero determinar los actores: Usuario y Operador Después determinar los objetivos de los actores: Usuario: puede devolver ítems (el CdU incluye desde la devolución de ítems a la impresión del recibo) Operador: puede pedir listado diario o bien modificar información de ítems Devolver ítems Modif. ítems Actor Usuario Asociación Listar diario Operador

Granularidad de los casos de uso Pueden ser grandes o pequeños: p.ej. en un procesador de textos... poner texto en negrita crear tabla de contenidos formatear el documento Qué criterio adoptar? Proyecto 10 personas/año Valores esperados : Según I. Jacobson: 20 casos de uso. Según M. Fowler: 100 casos de uso.

Escenarios y Casos de Uso Interacción típica entre el usuario y el sistema Distintas acepciones: (a veces) Escenario = Caso de uso En UML, escenario = camino dentro de un caso de uso (una combinación especial de condiciones dentro de un caso de uso.)

Escenarios y Casos de Uso (II) $$$ Interactuar con ATM CASO DE USO ESCENARIO

Especificación de requisitos El SRS (Software Requirements Specification) puede estar formado por: Diagrama de casos de uso Modelo del dominio (Para cada caso de uso) Descripción textual (usando una plantilla) Descripciones de las interfaces de usuario En el diseño... colaboraciones en UML Interacciones entre clases AOO/DOO

Desarrollo dirigido por los casos de uso Diagrama de casos de uso puede ser expresado en términos de estructurado por realizado por implementado por probado en class... OK OK FAIL Modelo de objetos del dominio Modelo de análisis Modelo de diseño Modelo de implementación Modelo de pruebas