SlideShare une entreprise Scribd logo
1  sur  41
UT5. Introducción a UML.
      Casos de Uso
            “Entornos de Desarrollo”
        Ciclo DAW- IES Clara del Rey
                   Curso 2011 – 2012
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 Uso




IES Clara del Rey     UT5. Introducción a UML. Casos de Uso 2
¿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
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
Modelado Visual
• Beneficios del Modelado Visual




IES Clara del Rey       UT5. Introducción a UML. Casos de Uso 5
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
Claves en el desarrollo del Software




IES Clara del Rey   UT5. Introducción a UML. Casos de Uso 7
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 clases




IES Clara del Rey           UT5. Introducción a UML. Casos de Uso 8
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 procesos




IES Clara del Rey                UT5. Introducción a UML. Casos de Uso 9
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 componentes

IES Clara del Rey       UT5. Introducción a UML. Casos de Uso 10
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 anteriores




IES Clara del Rey       UT5. Introducción a UML. Casos de Uso 11
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
UML. Evolución




IES Clara del Rey    UT5. Introducción a UML. Casos de Uso 13
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ámica




IES Clara del Rey                      UT5. Introducción a UML. Casos de Uso 14
Relación entre diagramas




IES Clara del Rey        UT5. Introducción a UML. Casos de Uso 15
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.html




IES Clara del Rey        UT5. Introducción a UML. Casos de Uso 16
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 uso
IES Clara del Rey          UT5. Introducción a UML. Casos de Uso 17
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 adecuada


IES Clara del Rey            UT5. Introducción a UML. Casos de Uso 18
Ejemplo




IES Clara del Rey   UT5. Introducción a UML. Casos de Uso 19
Ejemplo




IES Clara del Rey   UT5. Introducción a UML. Casos de Uso 20
Elementos del Diagrama de Casos de Uso
• Un actor representa el rol que adopta una entidad externa que interacciona
directamente 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 en
cada 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/sistema
Caso de
                        • Escenario básico: Todo va bien
  Uso                   • Escenario alternativo: excepcionales (ej. La password en un cajero es
                        incorrecta)
Consultar
Informes          • 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 proporcionar
IES Clara del Rey                    UT5. Introducción a UML. Casos de Uso 21
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 activamente




IES Clara del Rey                UT5. Introducción a UML. Casos de Uso 22
Ejemplo:Feria de subastas.
                    Ejemplo gráfico ilustrativo incompleto




IES Clara del Rey            UT5. Introducción a UML. Casos de Uso 23
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
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
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
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 relaciones




IES Clara del Rey        UT5. Introducción a UML. Casos de Uso 27
Ejercicio Caso de Uso




IES Clara del Rey       UT5. Introducción a UML. Casos de Uso 28
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 base




IES Clara del Rey                       UT5. Introducción a UML. Casos de Uso 29
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 uso



IES Clara del Rey        UT5. Introducción a UML. Casos de Uso 30
Ejemplo Casos de uso
• Diagrama incompleto que no representa los actores




IES Clara del Rey       UT5. Introducción a UML. Casos de Uso 31
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
Escritura básica de un caso de uso
• Plantilla de casos de uso
                                                  Plantilla de Casos
                                                         de Uso



Nombre                    Subastar artículo
Actores                   Vendedor
Objetivo                  Registrar los datos de una artículo para que salga a subasta
Precondiciones            Usario registrado como Vendedor
Postcondiciones           Artículo registrado
Escenario básico          1.-Insertar tarjeta magnética
                          2.-Abrir sesión como vendedor
                          3.-Introducir datos del artículo
                          4.-Confirmar
Escenario alternativo o   3.1.- Si artículo ya existe mostrar error
excepciones




IES Clara del Rey                    UT5. Introducción a UML. Casos de Uso 33
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 libro




IES Clara del Rey          UT5. Introducción a UML. Casos de Uso 34
Solución posible a gestión biblioteca




IES Clara del Rey    UT5. Introducción a UML. Casos de Uso 35
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 posible




IES Clara del Rey           UT5. Introducción a UML. Casos de Uso 36
Documentación generada
Se 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
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 ema




IES Clara del Rey                  UT5. Introducción a UML. Casos de Uso 38
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
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 eedor



IES Clara del Rey             UT5. Introducción a UML. Casos de Uso 40
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ás




IES Clara del Rey             UT5. Introducción a UML. Casos de Uso 41

Contenu connexe

Tendances

casos de uso
casos de usocasos de uso
casos de usostill01
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)Erik Emanuel Amador Saldaña
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemaUniversidad Tecnológica
 
UML. un analisis comparativo para la diagramación de software
UML.  un analisis comparativo para la diagramación de softwareUML.  un analisis comparativo para la diagramación de software
UML. un analisis comparativo para la diagramación de softwareYaskelly Yedra
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebaschoselin
 
Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesJaqueline Luna
 
modelos de calidad de software
modelos de calidad de softwaremodelos de calidad de software
modelos de calidad de softwareHernan Espinoza
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoMarvin Zumbado
 
Cuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoCuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoFreddySantiago32
 
Metodologías del análisis y diseño de sistemas
Metodologías del análisis y diseño de sistemasMetodologías del análisis y diseño de sistemas
Metodologías del análisis y diseño de sistemasAndoni Vasquez
 
análisis y desarrollo de un sistema de control de asistencia
análisis y desarrollo de un sistema de control de asistenciaanálisis y desarrollo de un sistema de control de asistencia
análisis y desarrollo de un sistema de control de asistenciadr31k
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 

Tendances (20)

casos de uso
casos de usocasos de uso
casos de uso
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)
 
Factores de calidad del software
Factores de calidad del softwareFactores de calidad del software
Factores de calidad del software
 
10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes
 
Fase de Elaboración RUP
Fase de Elaboración RUPFase de Elaboración RUP
Fase de Elaboración RUP
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
 
UML. un analisis comparativo para la diagramación de software
UML.  un analisis comparativo para la diagramación de softwareUML.  un analisis comparativo para la diagramación de software
UML. un analisis comparativo para la diagramación de software
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebas
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móviles
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
 
modelos de calidad de software
modelos de calidad de softwaremodelos de calidad de software
modelos de calidad de software
 
UML: CASOS DE USO
UML: CASOS DE USOUML: CASOS DE USO
UML: CASOS DE USO
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Cuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoCuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientado
 
Metodologías del análisis y diseño de sistemas
Metodologías del análisis y diseño de sistemasMetodologías del análisis y diseño de sistemas
Metodologías del análisis y diseño de sistemas
 
Sistemas y Modelos (Teoria)
Sistemas y Modelos (Teoria)Sistemas y Modelos (Teoria)
Sistemas y Modelos (Teoria)
 
análisis y desarrollo de un sistema de control de asistencia
análisis y desarrollo de un sistema de control de asistenciaanálisis y desarrollo de un sistema de control de asistencia
análisis y desarrollo de un sistema de control de asistencia
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 

Similaire à Ut5. introduccion a uml. casos de uso

Similaire à Ut5. introduccion a uml. casos de uso (20)

Uml pres
Uml  presUml  pres
Uml pres
 
Teoria del modelado de objetos modificado
Teoria del modelado de objetos modificadoTeoria del modelado de objetos modificado
Teoria del modelado de objetos modificado
 
Uml
UmlUml
Uml
 
S03.s3-Material 2.pptx
S03.s3-Material 2.pptxS03.s3-Material 2.pptx
S03.s3-Material 2.pptx
 
S03.s3-Material 2 (1).pptx
S03.s3-Material 2 (1).pptxS03.s3-Material 2 (1).pptx
S03.s3-Material 2 (1).pptx
 
Lenguaje de modelado unificado uml
Lenguaje de modelado unificado   umlLenguaje de modelado unificado   uml
Lenguaje de modelado unificado uml
 
UML
UMLUML
UML
 
Uml
UmlUml
Uml
 
analisis y diseño 2.pdf
analisis y diseño 2.pdfanalisis y diseño 2.pdf
analisis y diseño 2.pdf
 
Uml juan pablo cueto galindo
Uml juan pablo cueto galindoUml juan pablo cueto galindo
Uml juan pablo cueto galindo
 
Introduccion a UML
Introduccion a UMLIntroduccion a UML
Introduccion a UML
 
Curso
CursoCurso
Curso
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Uml
UmlUml
Uml
 
Diseño de sistemas - UML - compendio
Diseño de sistemas  -  UML - compendioDiseño de sistemas  -  UML - compendio
Diseño de sistemas - UML - compendio
 
Ads tbd (modelado)
Ads    tbd  (modelado)Ads    tbd  (modelado)
Ads tbd (modelado)
 
Sem 8 Modelo De Analisis
Sem 8 Modelo De AnalisisSem 8 Modelo De Analisis
Sem 8 Modelo De Analisis
 
Uml (presentación 6)
Uml (presentación 6)Uml (presentación 6)
Uml (presentación 6)
 
Generacion en los diferentes diagramas de uml
Generacion en los diferentes diagramas de uml Generacion en los diferentes diagramas de uml
Generacion en los diferentes diagramas de uml
 
Uml
UmlUml
Uml
 

Ut5. introduccion a uml. casos de uso

  • 1. UT5. Introducción a UML. Casos de Uso “Entornos de Desarrollo” Ciclo DAW- IES Clara del Rey Curso 2011 – 2012
  • 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 Uso IES Clara del Rey UT5. Introducción a UML. Casos de Uso 2
  • 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. 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. Modelado Visual • Beneficios del Modelado Visual IES Clara del Rey UT5. Introducción a UML. Casos de Uso 5
  • 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. Claves en el desarrollo del Software IES Clara del Rey UT5. Introducción a UML. Casos de Uso 7
  • 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 clases IES Clara del Rey UT5. Introducción a UML. Casos de Uso 8
  • 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 procesos IES Clara del Rey UT5. Introducción a UML. Casos de Uso 9
  • 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 componentes IES Clara del Rey UT5. Introducción a UML. Casos de Uso 10
  • 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 anteriores IES Clara del Rey UT5. Introducción a UML. Casos de Uso 11
  • 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. UML. Evolución IES Clara del Rey UT5. Introducción a UML. Casos de Uso 13
  • 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ámica IES Clara del Rey UT5. Introducción a UML. Casos de Uso 14
  • 15. Relación entre diagramas IES Clara del Rey UT5. Introducción a UML. Casos de Uso 15
  • 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.html IES Clara del Rey UT5. Introducción a UML. Casos de Uso 16
  • 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 uso IES Clara del Rey UT5. Introducción a UML. Casos de Uso 17
  • 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 adecuada IES Clara del Rey UT5. Introducción a UML. Casos de Uso 18
  • 19. Ejemplo IES Clara del Rey UT5. Introducción a UML. Casos de Uso 19
  • 20. Ejemplo IES Clara del Rey UT5. Introducción a UML. Casos de Uso 20
  • 21. Elementos del Diagrama de Casos de Uso • Un actor representa el rol que adopta una entidad externa que interacciona directamente 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 en cada 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/sistema Caso de • Escenario básico: Todo va bien Uso • Escenario alternativo: excepcionales (ej. La password en un cajero es incorrecta) Consultar Informes • 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 proporcionar IES Clara del Rey UT5. Introducción a UML. Casos de Uso 21
  • 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 activamente IES Clara del Rey UT5. Introducción a UML. Casos de Uso 22
  • 23. Ejemplo:Feria de subastas. Ejemplo gráfico ilustrativo incompleto IES Clara del Rey UT5. Introducción a UML. Casos de Uso 23
  • 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. 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. 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. 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 relaciones IES Clara del Rey UT5. Introducción a UML. Casos de Uso 27
  • 28. Ejercicio Caso de Uso IES Clara del Rey UT5. Introducción a UML. Casos de Uso 28
  • 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 base IES Clara del Rey UT5. Introducción a UML. Casos de Uso 29
  • 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 uso IES Clara del Rey UT5. Introducción a UML. Casos de Uso 30
  • 31. Ejemplo Casos de uso • Diagrama incompleto que no representa los actores IES Clara del Rey UT5. Introducción a UML. Casos de Uso 31
  • 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. Escritura básica de un caso de uso • Plantilla de casos de uso Plantilla de Casos de Uso Nombre Subastar artículo Actores Vendedor Objetivo Registrar los datos de una artículo para que salga a subasta Precondiciones Usario registrado como Vendedor Postcondiciones Artículo registrado Escenario básico 1.-Insertar tarjeta magnética 2.-Abrir sesión como vendedor 3.-Introducir datos del artículo 4.-Confirmar Escenario alternativo o 3.1.- Si artículo ya existe mostrar error excepciones IES Clara del Rey UT5. Introducción a UML. Casos de Uso 33
  • 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 libro IES Clara del Rey UT5. Introducción a UML. Casos de Uso 34
  • 35. Solución posible a gestión biblioteca IES Clara del Rey UT5. Introducción a UML. Casos de Uso 35
  • 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 posible IES Clara del Rey UT5. Introducción a UML. Casos de Uso 36
  • 37. Documentación generada Se 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. 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 ema IES Clara del Rey UT5. Introducción a UML. Casos de Uso 38
  • 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. 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 eedor IES Clara del Rey UT5. Introducción a UML. Casos de Uso 40
  • 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ás IES Clara del Rey UT5. Introducción a UML. Casos de Uso 41