Ut5. introduccion a uml. casos de uso

5,220 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
5,220
On SlideShare
0
From Embeds
0
Number of Embeds
25
Actions
Shares
0
Downloads
129
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ut5. introduccion a uml. casos de uso

  1. 1. UT5. Introducción a UML. Casos de Uso “Entornos de Desarrollo” Ciclo DAW- IES Clara del Rey Curso 2011 – 2012
  2. 2. Indice• Modelado de Sofwtare• Claves en el desarrollo del Software• Enfoques del modelo de análisis – Análisis Estructurado – Metodologías Orientadas a Objetos• UML• Diagramas de Casos de UsoIES Clara del Rey UT5. Introducción a UML. Casos de Uso 2
  3. 3. ¿Qué es un Modelo? Un Modelo es una simplificación de la realidad Un modelo es resultado de un proceso de abstracción y ayuda a comprender y razonar sobre una realidad Un modelo software es una descripción de un aspecto del sistema, expresada en un lenguaje bien definido.IES Clara del Rey UT5. Introducción a UML. Casos de Uso 3
  4. 4. Modelado de Software• El modelado es el análisis y diseño de aplicaciones software antes de escribir el código.• Se crean un conjunto de modelos (“planos del software”) que permiten especificar aspectos del sistema como los requisitos, la estructura y el comportamiento.• “Una empresa software con éxito es aquella que produce de manera consistente software de calidad que satisface las necesidades de los usuarios”• “El modelado es la parte esencial de todas las actividades que conducen a la producción de software de calidad”IES Clara del Rey UT5. Introducción a UML. Casos de Uso 4
  5. 5. Modelado Visual• Beneficios del Modelado VisualIES Clara del Rey UT5. Introducción a UML. Casos de Uso 5
  6. 6. Utilidad del Modelado• Hay estructuras que no son visibles en los programas.• Ayuda a razonar sobre el cómo se implementa.• Se facilita la comunicación entre el equipo al existir un lenguaje común.• Se dispone de documentación que trasciende al proyecto.• Generación de código a partir de modelos – Ha surgido un nuevo paradigma de desarrollo de software a partir de modelos (p.e. MDA de OMG)• Los modelos: – visualizan cómo es o queremos que sea el sistema – especifican la estructura y comportamiento del sistema. – guían la construcción del sistema. – documentan las decisiones.IES Clara del Rey UT5. Introducción a UML. Casos de Uso 6
  7. 7. Claves en el desarrollo del SoftwareIES Clara del Rey UT5. Introducción a UML. Casos de Uso 7
  8. 8. Enfoques del modelo de Análisis• Análisis Estructurado – Separación datos y procesos – Modelado de Datos (E/R) • Atributos y relaciones – Modelado de Procesos (DFD) • Transformación de datos• Análisis Orientado a Objetos – Definición de clases – Colaboración entre las clasesIES Clara del Rey UT5. Introducción a UML. Casos de Uso 8
  9. 9. Análisis Estructurado – Ciclo de Vida• Herramientas de documentación del Análisis Estructurado – �Diagramas de Flujo de Datos (DFDs) – �Diccionario de Datos (DD) – �Diagramas de Entidad-Relación (ER) – Diagramas de Estructura – �Diagramas de Transición de Estado (DTEs) – �Especificaciones de procesosIES Clara del Rey UT5. Introducción a UML. Casos de Uso 9
  10. 10. Metodologías Orientado a Objetos• La esencia del desarrollo orientado a objetos es la identificación y organización de conceptos del dominio de la aplicación y no tanto de su representación final en un lenguaje de programación.• Se eliminan fronteras entre fases debido a la naturaleza iterativa del desarrollo orientado al objeto.• Aparece una nueva forma de concebir los lenguajes de programación y su uso al incorporarse bibliotecas de clases y otros componentes reutilizables.• Las metodologías OO – Son interactivas e incrementales. – Fácil de dividir el sistema en varios subsistemas independientes. – Se fomenta la reutilización de componentesIES Clara del Rey UT5. Introducción a UML. Casos de Uso 10
  11. 11. Metodologías orientadas a objetos• Ejercicio – Identificar las tareas a realizar en Métrica 3 cuando se trata de realizar el desarrollo de un sistema siguiendo una metodología orientada a objetos – Identificar los objetivos de las tareas anterioresIES Clara del Rey UT5. Introducción a UML. Casos de Uso 11
  12. 12. UML. Introducción• UML o el Unified Modeling Language• UML es una especificación de notación orientada a objetos• La notación UML se deriva y unifica las tres metodologías de análisis y diseño OO más extendidas: – Metodología de Grady Booch para la descripción de conjuntos de objetos y sus relaciones. – Técnica de modelado orientada a objetos de James Rumbaugh (OMT: Object- Modeling Technique). – Aproximación de Ivar Jacobson (OOSE: Object- Oriented Software Engineering) mediante la metodología de casos de uso (use case).• Los “Tres Amigos” son socios en la compañía Rational Software.• Object Constraint Language Specification (OCL): – El UML incorpora el lenguaje de restricción de objetos a fin de superar las deficiencias que poseen los elementos UML para definirse a sí mismos.• El UML es un lenguaje para construir modelos; no guía al desarrollador en la forma de realizar el análisis y diseño orientados a objetos ni le indica cuál proceso de desarrollo adoptar.• UML permite describir un sistema en diferentes niveles de abstracción, simplificando la complejidad sin perder información, para que tanto usuarios, líderes y desarrolladores puedan comprender claramente las características de la aplicación. IES Clara del Rey UT5. Introducción a UML. Casos de Uso 12
  13. 13. UML. EvoluciónIES Clara del Rey UT5. Introducción a UML. Casos de Uso 13
  14. 14. UML. Diagramas• Los Diagramas de Estructura enfatizan en los elementos que deben existir en el sistema modelado:• Los Diagramas de Comportamiento enfatizan en lo que debe suceder en el sistema modelado:• Los Diagramas de Interacción son un subtipo de diagramas de comportamiento, que enfatiza sobre el flujo de control y de datos entre los elementos del sistema modelado: – Visión estática vs visión dinámicaIES Clara del Rey UT5. Introducción a UML. Casos de Uso 14
  15. 15. Relación entre diagramasIES Clara del Rey UT5. Introducción a UML. Casos de Uso 15
  16. 16. UML. Ejercicio Teórico• Localizar de entre los diagramas anteriores, aquéllos que son usados en Metrica V3 y para qué sirven• Material – http://www.csae.map.es/csi/metrica3/index.htmlIES Clara del Rey UT5. Introducción a UML. Casos de Uso 16
  17. 17. Diagramas de Casos de Uso (I)• Captura información de cómo un sistema o negocio trabaja.• Objetivo: identificar los requisitos funcionales del sistema, estructurados en torno a las diversas categorías de usuarios• Un caso de uso es un “uso típico del sistema” – Secuencia de acciones realizadas por el sistema, que producen un resultado observable y valioso para un usuario en particular – Tiene lugar bajo ciertas circunstancias • Es iniciado por un actor • Se puede describir como un conjunto de actividades • Produce un resultado de valor observable para algún actor• Se utiliza para representar la funcionalidad del sistema desde el punto de vista de los usuarios. – Presentan actores, casos de uso y relaciones• El modelo de casos de uso se representa gráficamente mediante uno o varios diagramas de casos de usoIES Clara del Rey UT5. Introducción a UML. Casos de Uso 17
  18. 18. Casos de uso (II)• ¿Por qué utilizar Casos de Uso? – Se utilizan para recoger los requisitos funcionales de un sistema – Un caso de uso ayuda a responder a las siguientes preguntas • ¿Quién hace qué? • ¿Cuándo lo hace? • ¿Qué actividades se realizan? • ¿Qué elementos del sistema se utilizan?• Alcance del caso de uso – Determinar el alcance de un caso de uso consiste en identificar qué elementos forman parte de dicho caso de uso – Tan importante como identificar qué forma parte del caso de uso es identificar lo que NO forma parte del caso de uso• Si el diagrama ayuda visualmente a entender qué hace el sistema, es más importante que la escritura del caso de uso sea adecuadaIES Clara del Rey UT5. Introducción a UML. Casos de Uso 18
  19. 19. EjemploIES Clara del Rey UT5. Introducción a UML. Casos de Uso 19
  20. 20. EjemploIES Clara del Rey UT5. Introducción a UML. Casos de Uso 20
  21. 21. Elementos del Diagrama de Casos de Uso• Un actor representa el rol que adopta una entidad externa que interaccionadirectamente con el sistema• Los actores significan roles, no entidades concretas ACTOR•Un actor puede participar en varios casos de uso, desempeñando un rol diferente encada uno, por tanto un actor, más que un rol, es un conjunto coherente de roles•Tipos de actores (Agentes externos, como concepto más amplio que usuario) •Personas o cosas (otro sistema, un sensor, agua, fuego, tiempo…) •Primarios o secundarios (realizan tareas administrativas o de mantenimiento) • Un escenario es una secuencia de acciones que describen una interacción usuario/sistemaCaso de • Escenario básico: Todo va bien Uso • Escenario alternativo: excepcionales (ej. La password en un cajero es incorrecta)ConsultarInformes • Un caso de uso describe un comportamiento del sistema: •Especificación de secuencias de acciones , incluyendo variantes y secuencias de error, que un sistema, subsistema o clase puede llevar a cabo interaccionando con actores externos •Representa una tarea, o unidad coherente de funcionalidad que el sistema está obligado a proporcionarIES Clara del Rey UT5. Introducción a UML. Casos de Uso 21
  22. 22. Ejemplo : Feria de Subastas• Se desea modelar un sistema informático para gestionar las transacciones en un recinto ferial de subastas. Cualquier persona que haya logrado acceso al recinto de la feria puede conectarse al sistema a través de alguno de los muchos terminales disponibles, y participar en las subastas que tengan lugar, en alguna de las modalidades ofrecidas por el sistema, es decir, como comprador, como vendedor, o como simple observador• Para subastar algún artículo es necesario darse de alta como vendedor. El vendedor puede sacar artículos a subasta, rellenando una ficha por cada artículo, que sale así inmediatamente a subasta.• Análogamente para participar en una subasta es necesario darse de alta como comprador. El comprador puede pujar por cualquiera de los artículos subastados en la feria. Cuando no se produce ninguna nueva puja, el artículo queda definitivamente adjudicado al comprador. Si un artículo no ha recibido ninguna puja, el vendedor puede modificar alguno de sus datos• Cualquier persona puede participar como observador en una subasta, es decir, puede consultar la lista de artículos subastados y seleccionar uno de ellos par a examinar la lista de pujas, pero necesita registrarse como vendedor o comprador para participar activamenteIES Clara del Rey UT5. Introducción a UML. Casos de Uso 22
  23. 23. Ejemplo:Feria de subastas. Ejemplo gráfico ilustrativo incompletoIES Clara del Rey UT5. Introducción a UML. Casos de Uso 23
  24. 24. Relaciones entre Casos de Uso• CU -Actor – La relación entre una actor y un caso de uso es una relación de comunicación que indica que el actor interviene en el caso de uso y normalmente aporta información o la recibe (unidireccional o bidireccional). – La dirección refleja quién inicia la comunicación – Asociación “comunica” (<<comunicates>>)• CU – CU – La relación entre casos de uso es normalmente unidireccional y significa que un caso de uso “usa” o “extiende” otro – Relación <<include>> y <<extend>> o <<usa>> y <<extiende>>IES Clara del Rey UT5. Introducción a UML. Casos de Uso 24
  25. 25. Relaciones entre Casos de Uso• Relación “usa” (<<include>>) – Comportamiento común reutilizable – Un CU puede ser incluido por uno o más Casos de Uso – Se reduce la duplicación de funcionalidad al factorizar el comportamiento común – La relación “usa” se utiliza cuando se quiere reflejar un comportamiento común en varios casos de uso. Es decir, si los casos de uso A y B presentan una parte común, ésta se puede sacar a un tercer caso de uso C. Entonces, habrá una relación “usa” del caso de uso A al C y otra del B al C.IES Clara del Rey UT5. Introducción a UML. Casos de Uso 25
  26. 26. Relaciones entre Casos de Uso• Relación “extiende” <<extends>> – Un caso de uso puede extender el comportamiento de otro caso de uso – Un caso de uso extiende a otro cuando agrega tareas adicionales al primero – Por ejemplo, se tiene el caso de uso A que representa un comportamiento habitual del sistema. Sin embargo, dependiendo de algún factor, este caso de uso puede presentar un comportamiento adicional o ligeramente diferente, que se podría reflejar en un caso de uso B. En este caso, habrá una relación “extiende” del caso de uso B al A. • Ej. Si antes de modificar un tipo particular de pedido de cliente, un usuario necesita obtener una aprobación, entonces el caso de uso “obtener aprobación” puede extender opcionalmente el caso de uso “Modificar pedido”IES Clara del Rey UT5. Introducción a UML. Casos de Uso 26
  27. 27. Ejercicio Caso de Uso• Enunciado – Modelar el diagrama de casos de uso de una máquina expendedora de café • Representar los Casos de Uso • Representar los actores • Representar las posibles relacionesIES Clara del Rey UT5. Introducción a UML. Casos de Uso 27
  28. 28. Ejercicio Caso de UsoIES Clara del Rey UT5. Introducción a UML. Casos de Uso 28
  29. 29. Relaciones entre casos de uso• Generalización de casos de uso – Un caso de uso puede tener especializaciones con el fin de : • Añadir asociaciones con actores que requieran distintas variantes • Añadir o sobreescribir pre/postcondiciones – El caso de uso hijo hereda la especificación del caso de uso padre – El hijo puede añadir o redefinir el comportamiento del padre – El hijo puede ser colocado en cualquier lugar donde aparezca el padre – NO CONFUNDIR CON <<extends>> • El caso de uso que extiende no puede modificar el comportamiento del caso de uso del cual se extiende. Solamente puede agregar tareas nuevas en los puntos de extensión • El caso de uso derivado (heredado) puede modificar alguna de las tareas del caso de uso baseIES Clara del Rey UT5. Introducción a UML. Casos de Uso 29
  30. 30. Ejercicio Caso de Uso• Enunciado – Se necesita realizar un sistema que permita el acceso al personal del departamento de compras el hacer pedidos, teniendo en cuenta que se quiere contemplar el que haya pedidos urgentes. – Una vez hecho el pedido se quiere poder realizar un seguimiento del mismo – Tanto para hacer el seguimiento como para poder realizar pedidos hay que estar validado en el sistema, que se puede hacer conociendo la clave o por reconocimiento de la retina. • Realizar el diagrama de casos de usoIES Clara del Rey UT5. Introducción a UML. Casos de Uso 30
  31. 31. Ejemplo Casos de uso• Diagrama incompleto que no representa los actoresIES Clara del Rey UT5. Introducción a UML. Casos de Uso 31
  32. 32. Generalización de actores• Generalización de actores – Un actor A puede requerir el mismo servicio que otro actor B – Posibles soluciones • Hay instancias de A que también son instancias de B (no generalización) • El actor A es subtipo de actor B (= todo A es un B) • Los actores A y B son subtipos del actor C (posible actor abstracto)IES Clara del Rey UT5. Introducción a UML. Casos de Uso 32
  33. 33. Escritura básica de un caso de uso• Plantilla de casos de uso Plantilla de Casos de UsoNombre Subastar artículoActores VendedorObjetivo Registrar los datos de una artículo para que salga a subastaPrecondiciones Usario registrado como VendedorPostcondiciones Artículo registradoEscenario básico 1.-Insertar tarjeta magnética 2.-Abrir sesión como vendedor 3.-Introducir datos del artículo 4.-ConfirmarEscenario alternativo o 3.1.- Si artículo ya existe mostrar errorexcepcionesIES Clara del Rey UT5. Introducción a UML. Casos de Uso 33
  34. 34. Ejercicio• Realizar estudio de los requisitos de una aplicación que gestiona los préstamos y reservas de una biblioteca y representarlos mediante un diagrama de casos de uso• Escribir el caso de uso prestar libroIES Clara del Rey UT5. Introducción a UML. Casos de Uso 34
  35. 35. Solución posible a gestión bibliotecaIES Clara del Rey UT5. Introducción a UML. Casos de Uso 35
  36. 36. Solución posible caso de uso préstamo Mensaje: La escritura descriptiva siempre es libre, hay que ser lo más esquemático y preciso posibleIES Clara del Rey UT5. Introducción a UML. Casos de Uso 36
  37. 37. Documentación generadaSe tendrán los siguientes diagramas de casos de uso: (no obligatorio)• Diagrama de contexto: presenta el general del sistema y los actores que intervienen en él.• Diagrama general del sistema: donde se persenten todos los casos posibles del sistema y sus interacciones.• Diagrama de casos de uso por cada escenario del sistema• Descripción detallada de cada caso de uso.IES Clara del Rey UT5. Introducción a UML. Casos de Uso 37
  38. 38. Diagrama de Contexto EJEMPLO• Se representa el total del sistema y los actores que intervienen en el mismo. Usuario General Usuario Público Sistema Control de Calidad Administrador Sist emaIES Clara del Rey UT5. Introducción a UML. Casos de Uso 38
  39. 39. Diagrama de Casos de uso del sistema• Se puede representar un diagrama de casos de uso general del sistema. Por ejemplo: EJEMPLO El actor Usuario Privad o acced e a d iver sos casos d e uso q ue el actor Ad m inistrador no, p or eso se relaciona este actor solamente con los casos d e uso "Tratar Pr ocesos d e Muestr eo" y "Consultar Estad ís. .. Tr atar Pr ocesos d e Muestreo Usuario Privad o < < uses> > Consultar Estad ísticas Existe una generaliz ación d el Usuario Privad o y d el Administrad or en Usuario Gener al, esto es d eb ido < < uses> > a q ue com part en varios casos d e < < uses> > uso, y la manera más clar a d e rep resentar lo es ésta. Usuario General Recup er ar Datos XML Gestionar Lotes < < uses> > Gestionar Pr oveedor es < < uses> > Autent ificar Usuar io Sistem a Enviar Mail Ad ministrad or S ut iliza un usuario S e istem a Gestionar Emp resas < < uses> > p or q ue para recup er ar Datos Ad ministr ad or d e Pr ocesos d e Muestr eo es el p r op io sistema el q ue realiz a la p etición. En caso d e no existir < < uses> > este usuar io y est e caso d e uso, Usuario Púb lico no se p od ría tener inform ación d e los Procesos d e Muestreo Gestionar Ad ministrad or es existentes. Consultar Pr ocesos De Muestr eo El actor Ad ministr ad or acced e a d iver sos casos d e uso q ue el actor Usuario Pr ivad o no, p or eso se Consultar Datos r elaciona este actor solamente con los casos d e uso "Gestionar Ad ministrad ores" y "Consultar Datos"IES Clara del Rey UT5. Introducción a UML. Casos de Uso 39
  40. 40. Diagrama de casos de uso para cada escenario EJEMPLO• En el ejemplo anterior el escenario GESTIONAR PROVEEDORES, tiene el siguiente diagrama de casos de uso: < < subsy st em> > Gest ionar Pr oveedor es Alt a Nuev o Pr oveedor < < u ses> > < < u ses> > Baja Pr ov eedor < < u ses> > Usuar io Gener al Modif icar Dat os Pr ov eedor Aut ent if icar Usuar io < < u ses> > Enviar Mail Pr ov eedorIES Clara del Rey UT5. Introducción a UML. Casos de Uso 40
  41. 41. Ejemplo Caso De Uso: Acceso al sistema• Suelen existir situaciones físicas que tiene en común una secuencia de acciones previa a la ejecución de los demás casos de uso: – Identificación o validación de usuarios – Inicio de sesión – Abrir un documento sobre el que se van a realizar diversas operaciones – Etc• Posibles soluciones – Caso de uso aparte usado como <<include>> (no recomendable) • Complica innecesariamente el diagrama de casos de uso • Es parte de los demás casos de uso sólo la primera vez que se ejecutan – Secuencia opcional de acciones en el diagrama de actividad del caso de uso. – Caso de uso aparte cuyo resultado es usado como precondición para los demásIES Clara del Rey UT5. Introducción a UML. Casos de Uso 41

×