Uml Diagramas

119
UML. SISTEMA DE COMERCIALIZACIÓN UNIFIED MODELING LANGUAGE Modelando un Sistema de Comercialización Ing. PERCY TITO RIVERA [email protected] ING. PERCY TITO RIVERA SESION – Página 1

description

uml

Transcript of Uml Diagramas

  • UML. SISTEMA DE COMERCIALIZACIN

    UNIFIED MODELING LANGUAGE

    Modelando un

    Sistema de Comercializacin

    Ing. PERCY TITO RIVERA

    [email protected]

    ING. PERCY TITO RIVERA SESION Pgina 1

  • UML. SISTEMA DE COMERCIALIZACIN

    La crisis del Software

    Algo ms ...

    W. Gibbs, "Software's Chronic Crisis", cientifico americano, Sept. 1994, pp.

    86-95:

    "[...] a pesar de 50 aos de progreso, la industria del software permanece aos - tal vez dcadas

    - atrasada con respecto a las disciplinas de ingeniera necesarias para cumplir las demandas de una sociedad en la edad de la informacin. http://www.standishgroup.com/chaos.html :

    Las invstigaciones del grupo Standish muestran que 31.1% de los proyectos se cancelarn antes

    de que se completen. Otros resultados indican que 52.7% de los proyectos costarn 189% de la estimacin original. El costo de estas fallas y excesos son slo la punta del iceberg. Los costos de oportunidades perdidas son inconmensurables, pero podran llegar a los trillones de

    dlares. Basta mirar a la ciudad de Denver para darse cuenta del alcance de este problema. El fracaso en

    la produccin de software confiable para manejar equpaje en el nuevo aeropuerto le est costando a la ciudad US$1.1 millones al da. Basado en esta investigacin, The Standish Group estiman que en 1995 compaas y agencias de

    gobierno de EE.UU. gastarn US$81 billones en proyectos de software cancelados. Y otros US$59 billones en proyectos de software completados, pero que excedern las estimaciones iniciales

    En nuestro medio,,, El grupo GLORIA cuando adquiri un pool de empresas elctricas en el ao 1999 hizo estimaciones de concluir su Software en Setiembre de 1999, con miras al

    ao 2000, pas el nuevo siglo y no se termin...."

    Qu opinan algunos gerentes de corporaciones nacionales ... Pensamos que cada vez que entregamos dinero a nuestras reas de Informtica no obtenemos ningn beneficio, la informacin que deseamos de los sistemas es muy

    escasa, y sin embargo seguimos aprobando presupuesto para que las otras reas no se detengan en sus operaciones.... Gerentes Nacionales Extractos curso de Modelamiento de Datos. Maestra Ingeniera de Sistemas 2002.

  • ING. PERCY TITO RIVERA SESION Pgina 2

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 01

    INTRODUCCIN AL UML

    ING. PERCY TITO RIVERA SESION Pgina 3

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 01: INTRODUCCIN AL UML

    Debido a la creciente demanda de la incorporacin del UML como lenguaje estandar de modelado en los procesos de construccin de los sistema, surge la necesidad de conocer, dominar y saber aplicar los distintos diagramas que los conforman. A continuacin revisaremos algunos conceptos sobre el xito en

    un proyecto, sus componentes, RUP y los diagramas que conforman UML

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Tringulo del xito

    Rational Unified Process

    Unified Modeling Language

    Breve Descripcin de los diagramas

    Conocer un Modelo de Negocio

    El Triangulo del xito de un Proyecto

    ING. PERCY TITO RIVERA SESION Pgina 4

  • UML. SISTEMA DE COMERCIALIZACIN

    Rational Unified Process (RUP)

    RUP es un proceso de Ingeniera de Software. Proporciona una disciplina asignando tareas y responsabilidades en conjunto con el desarrrollo de la organizacin. Su meta

    es asegurarnos un software de alta calidad que desarrolle las necesidades de los usuarios finales.

    RUP es desarrollado y mantenido por Rational Software (m) y es una parte de una suite

    de herramientas de desarrollo. Est disponible desde Rational Software en un CD-ROM o a travs de Internet.

    RUP ha capturado mucha de las mejores practicas modernas de desarrollo de software

    de una forma que puede ser usada en distintos proyectos y organizaciones, en particular cubre las 6 prcticas sgts:

    Las Mejores Prcticas de Ingeniera de Software

    Unified Modeling Language (UML)

    Qu es UML ?

    UML es un lenguaje para visualizar, especificar, construir y documentar los artefactos de un sistema que involucra una gran cantidad de software, desde

    una perspectiva Orientada a Objetos.

    Por qu Modelar ?

    El modelo es una simplificacin de la realidad El modelo es la parte central que conducen a la produccin de Software de

    Calidad

    Construimos modelos para comprender mejor el sistema que estamos modelando

    ING. PERCY TITO RIVERA SESION Pgina 5

  • UML. SISTEMA DE COMERCIALIZACIN

    Utilidades del modelo: o Visualizar cmo es que queremos que sea el sistema o Especificar la estructura y comportamiento del sistema o Proporcionan plantillas que guan la construccin del sistema o Documentar decisiones o Facilita la comunicacin entre el equipo al existir un lenguaje comn

    Utilidad de UML

    Permite especificar todas las decisiones de anlisis, diseo e implementacin,

    construyndose modelos precisos, no ambiguos y completos. UML puede conectarse a lenguajes de programacin:Ingeniera directa e inversa

    Permite documentar todos los artefactos de un proceso de desarrollo (requisitos, arquitectura, pruebas, versiones,..)

    Entradas a UML

    Evolucin de UML

    ING. PERCY TITO RIVERA SESION Pgina 6

  • UML. SISTEMA DE COMERCIALIZACIN

    Diagramas de UML

    Diagramas de Casos de Uso Diagramas de Actividad

    Diagramas de Clases

    Diagramas de Objetos

    Diagramas de Interaccin

    Diagrama Secuencia

    Diagrama Colaboracin

    * Diagramas de Estados

    Diagramas de Componentes

    Diagramas de Despliegue

    Diagramas de Casos de Uso del Negocio

    Son usados para representar la funcionalidad de la organizacin como una unidad. Responde a las preguntas:

    Qu hace la organizacin ? Por qu construir el Sistema ?

    Son usados durante las actividades del modelamiento del negocio como contexto del sistema y formar un fundamento para la creacin de los casos de uso y son graficados desde la perpectiva

    de la organizacin, no diferencian entre procesos manuales y automatizados 1 (a diferencia de los casos de uso que se focalizan en los procesos automatizados).

    Cundo necesitamos realizar un Modelamiento del Negocio ?

    Cuando el grupo de trabajo es nuevo en la organizacin. Se han aplicado recientemente proceso de re-ingenieria. La organizacin est planeando aplicar re-ingeniera.

    1 UML with Rational Rose 2002 Wendy Boggs 2002

    ING. PERCY TITO RIVERA SESION Pgina 7

  • UML. SISTEMA DE COMERCIALIZACIN

    Est construyendo un software que ser usado en una parte significativa de la

    organizacin. Existen flujos complejos y no existe una buena documentacin.

    Diagramas de Casos de Uso

    Un caso de uso representa la funcionalidad del sistema, los requerimientos del sistema a partir de

    la perspectiva del usuario. Muestra las iteraciones entre casos de uso y actores .

    Los diagramas de casos de usan centran su atencin en los procesos automatizados,.}

    Diagramas de Actividad

    Los diagramas de actividad ilustran el flujo de la funcionalidad en un sistema. Ellos podran ser

    usados en el modelamiento del negocio para visualizar un flujo de trabajo del negocio, as como ser usados al obtener los requerimientos que ilustran el flujo de eventos de un caso de uso. Estos diagramas se caracterizan por definir el inicio, las actividades, el orden en que ocurren y el final de los flujos de trabajo.

    Se recomienda incluir este tipo de diagramas especialmente cuando se tengan flujos largos y complejos.

    Diagramas de Secuencia

    Corresponde a la categora de diagramas de Iteracin y muestra el flujo funcional dentro de un

    caso de uso. Estos flujos se encuentran ordenados en el tiempo. Permite conocer los objetos y clases involucrados en un determinado escenario y la secuencia de mensajes intercambiados entre los objetos necesarios para conocer su funcionalidad.

    Por ejemplo, el caso de uso Registrar Liquidaciones tiene una serie de posible secuencias para el escenario de crear una Hoja de Liquidacin

    Diagramas de Colaboracin

    Un diagrama de colaboracin es otra alternativa para mostrar un escenario. A diferencia del

    Diagrama de Secuencias, este tipo de diagrama de secuencia muestra las iteraciones organizadas

    a travs de los objetos y sus asociaciones con otros.

    Diagramas de Estados

    Los casos de uso y escenarios proporcionan un modo de describir el comportamiento del sistema,

    como es, las interacciones entre los objetos del sistema. Alguna vez es necesario mirar el comportamiento interno de un objeto. Un diagrama de estados muestra los estados de un objeto los eventos y mensajes que causan la transicin desde un estado a otro y las

    acciones como resultado de los cambios de estado.

    Diagramas de Clases

    Muestra interaciones entre las clases en un sistema. Identifica los roles comunes y las responsabilidades de las entidades que proporcionan el comportamiento del sistema.

    ING. PERCY TITO RIVERA SESION Pgina 8

  • UML. SISTEMA DE COMERCIALIZACIN

    Diagrama de Objetos

    Muestra un conjunto de objetos y sus relaciones. Representa instancias de las cosas halladas en

    un diagrama de clases. Estos diagramas direccionan la vista esttica del sistema y son importantes porque muestran la organizacin y modelamiento del comportamiento del sistema.

    Diagramas de Componentes

    Un diagrama de componentes muestra una vista fsica del modelo, muestra los componentes del software en el sistema y las relaciones entre ellos.

    Diagramas de Despliegue

    Los diagramas de despliegue muestran el entorno fsico de una red y donde residirn los distintos componentes del sistema.

    A continuacin veremos en detalle cada uno de los diagramas aplicado a un Sistema de Comercializacin

    ING. PERCY TITO RIVERA SESION Pgina 9

  • UML. SISTEMA DE COMERCIALIZACIN

    ING. PERCY TITO RIVERA SESION Pgina 10

  • UML. SISTEMA DE COMERCIALIZACIN

    El Modelo del Negocio Si no se tiene una idea cabal de la organizacin en general a implementar, es necesario modelar el negocio. El modelo de Negocio implica como es que la organizacin ve la que realiza, no importa si los procesos son manuales o automatizados. Veamos algunas caractersticas:

    El modelo de negocios es estudiar la organizacin.

    Consiste en examinar la estcutura de la organizacin y mirar los roles que desmepea y como ellos se relacionan.

    Se examinan los flujos de trabajos, los procesos principales que desarrolla.

    Se debe tratar de comprender el negocio dentro y fuera del mismo

    Por qu modelar el Negocio?

    Comprender la visin de la organizacin

    o Comprender que hace la organizacin o Modelar los procesos de negocios

    Posible aplicacin de Re-ingeniera de ciertos procesos o En tanto que muestra los flujos de trabajo de un proceso de negocios es posible

    determinar la conveniencia o no de este flujo. o Permite delinear nuevos flujos como parte de nuevas propuestas

    Muestra un contexto para una solucin del Software o Puede ser un documento de inicio para comprender el contexto del sistema

    Sirve como documento para que nuevos involucradas tengan una idea general del negocio.

    Casos en que se necesita preparar un Modelo de Negocios

    Ud y su equipo de trabajo son nuevos en la organizacin.

    Se han producido recientes proceso de re-ingeniera

    La organizacin est planeando realizar proceso de re-ingeniera

    Est construyendo software que ser usado por una parte significativa de la organizacin.

    Existen flujos complejos dentro de la organizacin y no han sido documentados adecuadamente.

    Componentes de un Modelo de Negocios

    Business Actors (agentes empresariales)

    o Es externo a la organizacin o Ejemplo: cliente, proveedor, banco, SUNAT

    ING. PERCY TITO RIVERA SESION Pgina 11

  • UML. SISTEMA DE COMERCIALIZACIN

    Business Workers (trabajadores de negocios)

    o Es un rol que desempea la organizacin. o Por ejemplo: Agente de Ventas,

    Business Use Cases (casos de uso del negocio)

    o Es un flujo de trabajo dentro de la organizacin que proporciona valor a los actores del negocio

    o Dicen qu hace la organizacin o Por ejemplo: preparar pedidos, elaborar ordenes de compra, generar cotizaciones.

    Business Use Case diagrams (el uso de diagramas de casos de negocio)

    Business entities (entidades de negocios)

    Pedidos

    ING. PERCY TITO RIVERA SESION Pgina 12

  • UML. SISTEMA DE COMERCIALIZACIN

    Lab 01: Introduccin

    Objetivos

    Conocer los modos de autenticacin que administra SQL Server Implementar Roles de Servidor Implementar Roles de Base de Datos Administrar Permisos

    Ejercicio 01 Conociendo Rational Rose

    1. Cargar Rational Enterprise Editon

    2. Seleccione Rational UnifiedProcess

    3. Veamos una descripcin de la interfaz principal de Rational Rose

    ING. PERCY TITO RIVERA SESION Pgina 13

  • UML. SISTEMA DE COMERCIALIZACIN

    Ejercicio 02. Representacin de las Vistas en Rational Rose

    ING. PERCY TITO RIVERA SESION Pgina 14

  • UML. SISTEMA DE COMERCIALIZACIN

    Ejercicio 03. Preparando el Modelo de Negocios Creando Actores del Negocio

    1. Desde el Browser ubicarse en la vista de casos de uso (Use Case

    View), Ver Fig. 1

    2. Hacer cbd (clic botn derecho) New Actor

    3. En el Browser se incorporar un nuevo actor: digitar el nombre del actor.

    a. AgenteVentas

    b. AsistenteComercializacion c. Contabilidad d. SUNAT

    e. ClienteEmpresa

    Especificando Estereotipo de Actores

    Aadir una breve descripcin para cada actor en el modelo. La descripcin debe identificar el rol que al actor juega cuando interacta con el sistema.

    Para realizar la descripcin de cada actor proceda de la siguiente manera:

    ESPEFICANDO STEREOTIPO DE LOS ACTORES

    1. En el Browser, seleccionar el actor respectivo y haga doble clic

    2. En StereoType elija:

    a. AgenteVentas : Business Worker

    b. AsistenteComercializacin: Business Worker c. Contabilidad : Business Worker d. SUNAT : Business Actor

    e. ClienteEmpresa: Business Actor

    ING. PERCY TITO RIVERA SESION Pgina 15

  • UML. SISTEMA DE COMERCIALIZACIN

    Creando Casos de Uso del Negocio en Rational

    A continuacin mostramos una lista de casos de uso a incorporar en el modelo

    CREANDO CASOS DE USO EN RATIONAL ROSE

    1. Desde el Browser ubicarse en la vista de casos de uso (Use Case

    View), Ver Fig. 1

    2. Hacer cbd (clic botn derecho) New Use Case

    3. En el Browser se incorporar un nuevo Caso de Uso: digitar el nombre de los casos de Uso detallados a continuacin

    a. CapturarPedidos

    b. RegistrarPedidosClientes

    c. GenerarDocumentosVenta

    4. Especificar para los casos de uso definidos el Estereotipo:

    Business Use Case

    Preparando el Diagrama de Casos de Uso

    CREANDO EL DIAGRAMA DE CASOS DE USO DE NEGOCIO PARA PEDIDOS 1. Ubicarse en la vista de casos de uso

    2. Haga cbd elija : New Use Case Diagram

    3. Digite: Modelo de Negocio de Pedidos

    4. Incluya los casos de uso sgtes:

    a. CaptarPedidosCampo

    b. RegistrarPedidosCliente

    c. GenerarDocumentosVenta

    5. Incluya los BusinessWorkers y Actores del Negocio a. AgenteVentas : Business Worker b. AsistenteComercializacin: Business Worker c. Contabilidad : Business Worker d. SUNAT : Business Actor

    e. ClienteEmpresa: Business Actor Para incluir las asociaciones lo haremos con el cono Asociacin Unidireccional, que lo podemos

    ver a continuacin,

    ING. PERCY TITO RIVERA SESION Pgina 16

  • UML. SISTEMA DE COMERCIALIZACIN

    Creando Asociaciones

    CREANDO ASOCIACIONES

    1. Ubicarse en el Diagrama de Casos de Uso:Modelo de Negocios de Pedidos.

    2. Haga clic en el cono de Asociacin Unidireccional

    3. Haga clic en al Actor del Negocio Cliente y arrastre hasta el caso de uso

    CaptarPedidoCampo

    4. Realice las sgts asociaciones repitiendo el paso 2 y el paso 3 para las siguientes actores y casos de uso

    ACTOR CASO DE USO Agente Ventas CaptarPedidoCampo AgenteVentas RegistrarPedidoCliente AsistenteComercializacion RegistrarPedidoCliente AsistenteComercializacion GenerarDocumentosVentas Contabilidad GenerarDocumentosVentas SUNAT GenerarDocumentosVentas ClienteEmpresa CaptarPedidoCampo

    Esquema final del Modelo de Negocio de Pedidos

    ING. PERCY TITO RIVERA SESION Pgina 17

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 02

    COMPORTAMIENTO DEL SISTEMA

    ING. PERCY TITO RIVERA SESION Pgina 18

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 02: COMPORTAMIENTO DEL SISTEMA

    Uno de las primeras etapas en la construccin del Software constituye en determinar el comportamiento del sistema, e identificar los requerimientos funcionales del sistema a desarrollar. Para ello utilizaremos los

    diagramas de casos de uso y diagramas de actividad

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes: Comportamiento del Sistema

    Casos de Uso

    Diagramas de Casos de Uso

    Comportamiento del Sistema El comportamiento de un Sistema es cmo acta y reacciona. Constituye la funcionalidad del

    sistema.

    El comportamiento del sistema es capturado mediante los casos de uso. Un caso de Uso describe:

    El Sistema (funciones que debe cumplir ) El Ambiente (actores) La relacin entre el sistema y su ambiente (diagrama de casos de uso)

    Conceptos Importantes al Modelar el Caso de Uso

    ING. PERCY TITO RIVERA SESION Pgina 19

  • UML. SISTEMA DE COMERCIALIZACIN

    Actor: representan cualquier cosa que interacta con el sistema.

    Caso de Uso: secuencia de acciones que un sistema realiza y que produce un resultado observable de valor.

    Qu es un modelo de casos de Uso ?

    Un modelo de caso de uso es un modelo de las funciones previstas del sistema (casos

    de uso) y su entorno (actores) El mismo modelo de caso de uso es usado en anlisis de requisitos, diseo y prueba. Especifica una secuencia de acciones, incluyendo variantes, que el sistema puede incluir,

    y que produce un resultado observable de valor para un actor.

    El propsito principal del modelo de caso de uso es comunicar las funciones y el comportamiento del sistema al cliente o al usuario final

    Beneficios del Modelo de Casos de Uso

    Es usado para comunicarse con el usuario final y el experto del dominio Proporciona credibilidad en una etapa inicial del desarrollo del sistema Asegura una comprensin mutua de los requisitos

    Es usado para identificar Quin interactuar con el sistema y qu deber hacer el sistema Qu interfaz deber tener el sistema

    Es usado para verificar que: Se capturan todos los requisitos

    Que los desarrolladores hayan entendido los requisitos

    ING. PERCY TITO RIVERA SESION Pgina 20

  • UML. SISTEMA DE COMERCIALIZACIN

    Actor

    Los actores no son parte del sistema, ellos representan roles que un

    usuario del sistema puede desempear

    Un actor puede intercambiar activamente la informacin con el

    sistema Un actor puede ser un

    recipiente pasivo de la informacin Un actor puede representar a un

    humano, una mquina u otro sistema Encontrando Actores Qu constituye un buen Actor ?

    Esta identificacin debe realizarse de una manera iterativa. Proponer una lista inicial, en base a las siguientes preguntas

    Quin est interesado en cierto requisito? El Supervisor de Comercializacin deseaba obtener un conocimiento de los niveles de morosidad de los clientes por zona y por vendedor El Asistente Comercial quera tener un control de los Pedidos que los cliente hacan y que el sistema le permita generar los documentos de venta (facturas, boletas de venta, notas de crdito, etc)

    Dnde en la organizacin se utilizar el sistema? El Gerente de la Empresa desea ingresar al sistema para conocer estadsticas de Ventas y Compras y definir las polticas de cambios de precios. Quin proveer, utilizar y eliminar esta informacin del sistema? Los clientes definen los productos que desean a comprar a los vendedores, quines diariamente los visitan, Los vendedores envan la informacin de los pedidos y las cobranzas realizadas al Departamento comercial para el control respectivo. Quin utilizar esta funcin? Quin realizar la funcin de cobranzas a los clientes? ->Vendedor Quin registrar en el sistema la informacin de pedidos? -> Asistente Comercial Quines preparan la mercaderas en funcin a los pedidos efectuados por los clientes? -> Almacenero Quin le dar soporte y Mantenimiento al sistema? Quines harn las instalaciones del producto. Quines harn el afinamiento a la BD Quines administrarn la Seguridad Usa el sistema un recurso externo? Se necesita conocer ciertos datos de las empresas, por lo que habr necesidad de recurrir a la SUNAT Qu actores necesita el caso de uso? Un actor desempea varios roles? Los trabajadores pueden adquirir productos, en ese caso se consideran clientes especiales (Rol Trabajador, Cliente)

    Un usuario puede actuar como varios Actores (Roles)

  • ING. PERCY TITO RIVERA SESION Pgina 21

  • UML. SISTEMA DE COMERCIALIZACIN

    Algunos Actores encontrados para el Sistema Comercial

    Agentes Comerciales : informan sobre los pedidos y liquidaciones de los clientes Clientes realizan : pedidos, realizan gestin para crditos Supervisor Comercial : necesita informacin de morosidad Proveedores : proveen de productos a empresa SUNAT : brinda informacin tributaria del cliente Asistente Comercial : controla y registra pedidos, emite documentos de pago Gerencia General : actualiza polticas de precios, comisiones a los Agentes

    Comerciales Almacenero : prepara mercadera a fin de ser distribuda. Contabilidad : necesita informacin de Registro de Ventas y Compras del

    sistema.

    Caso de Uso

    Un caso de uso modela un dilogo entre los actores y el sistema

    Un caso de uso puede ser iniciado por un actor para invocar una cierta funcionalidad en el sistema

    Un caso de uso es un flujo de eventos completos y significativos

    Tomados al mismo tiempo, todos los casos de uso constituyen todas las formas posibles de utilizar el sistema

    Debe generar un valor para el actor

    ING. PERCY TITO RIVERA SESION Pgina 22

  • UML. SISTEMA DE COMERCIALIZACIN

    Por ejemplo el Caso de Uso Registrar Pedidos

    Permitir conocer al Almacenero los pedidos que la empresa debe entregar a sus clientes. As mismo a los Agentes Comerciales conocer que cobranzas realizar en caso de que los pedidos hallan sido ejecutados al crdito.

    Al Asistente Comercial controlar adecuadamente los estados de cuenta de los clientes y las operaciones de los Agentes Comerciales.

    Encontrando Casos de Uso Cules son las tareas de este actor? El actor, crear, guardar, cambiar, eliminar o leer la informacin en el sistema? Cul caso de uso crear, guardar, cambiar, eliminar o leer esta informacin? Necesitar el actor informar al sistema sobre cambios externos e imprevistos? Es necesario que el actor est informado sobre ciertas ocurrencias en el sistema? Le proporciona una correcta secuencia el sistema a las tareas? Cules casos de uso le darn soporte y mantenimiento al sistema? Pueden todos los requerimientos funcionales ser realizados por los casos de uso?

    Fuentes de Informacin para los Casos de Uso Especificaciones del sistema / Manifestacin del problema - entrevistas Literatura relevante del dominio Entrevistas con expertos del dominio Conocimiento personal del dominio Sistema heredados Manual de funciones Documentacin de entrada y salida

    Algunos Casos de Uso encontrados para el Sistema Comercial

    Preparar Pedido Registrar Pedido ConsultarDocumentos Verificar Datos del Cliente Actualizar Datos del Producto Generar Documentos de Venta Reportar Pedidos Actualizar Precios de Productos Actualizar tipos de clientes Actualizar datos de proveedores Actualizar comisiones por lnea de producto

    Flujo de Eventos para un Caso de Uso Constituye una descripcin de los eventos necesarios para cumplir el comportamiento requerido del caso de uso. Este flujo de eventos es escrito en trminos de qu debe hacer el sistema (lenguaje del dominio) y no de cmo lo va ha hacer(trminos de implementacin. El flujo incluye:

    Cundo y cmo empieza y termina el caso de uso. Qu interaccin tiene el caso de uso con los actores. Qu datos son necesarios en el caso de uso

    ING. PERCY TITO RIVERA SESION Pgina 23

  • 2 [Booch, Rambaugh, Jacobson 94] The Unified Modeling Language User Guide

    UML. SISTEMA DE COMERCIALIZACIN

    La secuencia normal de eventos La descripcin de cualquier flujo alternativo o de excepcin

    El flujo de excepcin es aadido e indica, qu hacer si...

    A continuacin proponemos un esquema del flujo de eventos:

    X Flujo de eventos del Caso Uso

    X.1 Precondiciones

    X.2 Flujo principal

    X.3 Sub-Flujos (opcionales) X.4 Flujos Alternativos X.5 Postcondiciones

    Diagrama de Casos de Uso Definicin Un diagrama de Casos de Uso muestra un conjunto de casos de uso, actores y sus relaciones. Constituye uno de los diagramas que forman parte de UML y permiten conocer los aspectos

    dinmicos del sistema (Adems de los diagramas de actividad, diagramas de estado, diagramas de secuencia y diagramas de colaboracin)2

    Contiene:

    Casos de uso. Actores. Relaciones de dependencia, generalizacin y asociacin.

    Veamos un diagrama de Casos de uso

    ING. PERCY TITO RIVERA SESION Pgina 24

  • UML. SISTEMA DE COMERCIALIZACIN

    Usos Comunes Modelar el Contexto del Sistema:

    Identificar los actores del ambiente del sistema Organizar actores que son similares a otros usando generalizacin. Proporcionar, de ser necesario, esterotipos3 para cada actor.

    Modelar los requerimientos del sistema

    Relaciones entre los Casos de Uso

    La relacin normal entre un Actor y un caso de uso est definida por una asociacin del

    esterotipo el cual se acostumbra a no incluirlo, ya que constituye una relacin natural, veamos el grfico sgte

    < >

    Regis trarPedido

    As is tenteCom ercia

    Equivalente Regis trarPedido

    As is tenteCom ercial

    Cmo debe ser el sentido de las flechas Una asociacin puede navegar en 2 direcciones (actor hacia caso de uso y caso de uso hacia actor) o podra navegar en una sola direccin (actor hacia caso de uso o caso de

    uso hacia actor). La direccin de una asociacin representa quien inicia la comunicacin 4.

    RELACIONES

    Hay 2 tipos de relaciones que podran existir entre casos de uso: include y extend. Muchos casos de uso podran combinar la funcionalidad de otros casos de uso

    Una relacin Include entre casos de uso significa que el caso de uso base incorpora explcitamente el comportamiento de otro caso de uso en una instancia especfica.

    Una relacin include es dibujado como una dependencia desde el caso de uso base hacia el caso de uso usado. Esta relacin implica obligatoriedad.

    Por ejemplo: imaginemos el caso de uso Registrar Pedido (caso de uso base)

    incorpora el comportamiento del caso de uso Generar Documento.

    3 EstereoTipo: extienden el vocabulario de UML, representa la subclasificacin de un elemento del modelo. Pueden

    crearse otros. Se denotan con 4

    Visual Modeling with Rational Rose 2000 and UML. Terry Quatrani- 2001

    ING. PERCY TITO RIVERA SESION Pgina 25

  • UML. SISTEMA DE COMERCIALIZACIN

    Cada vez que registra un Pedido en el sistema este deber de generar documentos sobre los cuales se manejarn las factura o boletas de pago, a partir de los mismos se harn seguimiento de los pagos. Este caso de uso implica una relacin ya que Registrar Pedido adquiere todo el comportamiento de GenerarDocumentos.

    Una relacin Extend entre casos de uso significa que el caso de uso base incorpora el implcitamente el comportamiento de otro caso de uso en una instancia especfica. Es usada para mostrar:

    Comportamiento opcional Comportamiento que es ejecutado bajo ciertas condiciones como un disparador o alarma Diferentes flujos que pueden ejecutarse bajo una eleccin del actor.

    Presentamos un resumen de las relaciones en los casos de uso

    Generalizacin Se pueden elegir una clase genrica de actores como Cliente y especializarlas como: ClienteFijo

    y ClienteTemporal. Esto se denomina Generalizacin.

    Para el caso ha desarrollar los clientesFijos son aquellos que estn sujetos de crdito y tienen precios preferenciales. Un cliente normalmente cuando compra por primera vez es un

    Cliente Temporal, luego bajo ciertas requisitos el SupervisorComercial puede cambiarle de tipo.

    ING. PERCY TITO RIVERA SESION Pgina 26

  • UML. SISTEMA DE COMERCIALIZACIN

    Lab 02: Creando Diagramas de Casos de Uso.

    Objetivos

    Conocer los modos de autenticacin que administra SQL Server Implementar Roles de Servidor Implementar Roles de Base de Datos Administrar Permisos

    Ejercicio 01.

    Identificando Posibles Actores De acuerdo al caso planteado se pueden distinguir los siguientes actores:

    1. AgentComercial

    2. Asistente Comercial

    3. SupervisorComercial

    4. Almacenero

    5. AuxiliarContable

    6. Clientes

    7. Gerente

    Ejercicio 02.

    Identificando Posibles Casos de Uso

    1. RegistrarPedido

    2. AdministrarCliente

    3. AdministrarCreditos

    4. ConsultarDocumentos

    5. GenerarDocumentos

    6. AdministrarDatosProducto

    7. ReportarKardexProducto

    8. RealizarTomaInventario

    9. ActualizarPrecios

    10. RegistrarCobranzas

    11. EmitirEstadoCuentaCliente

    12. GenerarDevolucionesNC

    13. GenerarRegistroCompraVenta

    14. ImprimirDocumento

    ING. PERCY TITO RIVERA SESION Pgina 27

  • UML. SISTEMA DE COMERCIALIZACIN Ejercicio 03.

    Creando Actores en Rational

    1. Cargar el archivo SistemaComercial.mdl de la prctica anterior.

    2. Desde el Browser ubicarse en la vista de casos de uso (Use Case

    View), Ver Fig. 1

    3. Hacer cbd (clic botn derecho) New Actor

    4. En el Browser se incorporar un nuevo actor: digitar el nombre del actor.

    Documentacin de los Actores Aadir una breve descripcin para cada actor en el modelo. La descripcin debe identificar el rol

    que al actor juega cuando interacta con el sistema. Para realizar la descripcin de cada actor proceda de la siguiente manera:

    DOCUMENTANDO ACTORES EN RATIONAL ROSE

    1. En el Browser, seleccionar el actor respectivo

    2. Ubicarse en la ventana de documentacin, ver Fig. 2. Si esta ventana no aparece activa ubicar en el men View , activar Documentation

    ING. PERCY TITO RIVERA SESION Pgina 28

  • UML. SISTEMA DE COMERCIALIZACIN

    Ejercicio 04.

    Creando Casos de Uso en Rational

    A continuacin mostramos una lista de casos de uso a incorporar en el modelo

    CREANDO CASOS DE USO EN RATIONAL ROSE

    1. En el archivo SistemaComercial.mdl. 2. Desde el Browser ubicarse en la vista de casos de uso (Use Case

    View), Ver Fig. 1

    3. Hacer cbd (clic botn derecho) New Use Case 4. En el Browser se incorporar un nuevo Caso de Uso: digitar el

    nombre de los casos de Uso definidos en la lista.

    Breve descripcin de un caso de uso Es recomendable que cada caso de uso se documente al momento de su creacin. Una breve descripcin que explique brevemente lo que realiza el caso de uso puede servir como documentacin. Por ejemplo para el caso de uso RegistrarPedidos

    El caso de uso es iniciado por el Asistente Comercial cuando desea

    realizar transacciones con los pedidos histricos o desea registrar los pedidos efectuados por los Agentes Comerciales a los Clientes. Le proporciona la capacidad de

    crear, modificar, eliminar y consultar pedidos Para realizar la documentacin proceda de la sgte. Manera:

    DOCUMENTANDO CASOS DE USO RATIONAL ROSE

    1. En el Browser, seleccionar el caso de uso respectivo

    2. Ubicarse en la ventana de documentacin, ver Fig. 2. Si esta

    ventana no aparece activa ubicar en el men View , activar Documentation

    ING. PERCY TITO RIVERA SESION Pgina 29

  • UML. SISTEMA DE COMERCIALIZACIN

    Una muestra quedara de esta manera:

    Ejercicio 05. Estableciendo Flujo de Eventos para el caso de uso Registrar Pedidos

    Cargar el Word y documentar el Flujo de Eventos de acuerdo al formato del archivo :

    [Modelo para documentar un Caso de Uso.doc]

    El texto es el sgte.

    Una vez concluido grabarlo con el nombre: [Caso de Uso Registrar Pedidos.doc]

    Ejercicio 06.

    Ligando el documento de Flujo de Eventos al Rational

    LIGANDO EL DOCUMENTO DE FLUJO DE EVENTOS AL RATIONAL ROSE

    1. Ubicarse en el caso de Uso RegistarPedido

    2. cbd: New - File

    3. Ubique el archivo deseado. Clic Open

    ING. PERCY TITO RIVERA SESION Pgina 30

  • UML. SISTEMA DE COMERCIALIZACIN

    Ejercicio 07

    Preparando el Diagrama de Casos de Uso a. Administracin de Pedidos

    CREANDO EL DIAGRAMA DE CASOS DE USO PARA REGISTRO DE PEDIDOS

    1. Ubicarse en la vista de casos de uso

    2. Haga cbd elija : New Use Case Diagram

    3. Digite: Administrar Pedidos

    4. Incluya los casos de uso sgtes:

    a. AdministrarCliente b. ConsultarPedidos c. ReportarPedidos

    d. GenerarDocumentos e. RegistrarPedidos

    f. AdministrarDatosProducto

    5. Incluya los Actores

    a. AgenteComercial

    b. AsistenteComercial c.Almacenero d. SupervisorComercial

    Para incluir las asociaciones lo haremos con el cono Asociacin Unidireccional, que lo podemos

    ver a continuacin,

    ING. PERCY TITO RIVERA SESION Pgina 31

  • UML. SISTEMA DE COMERCIALIZACIN

    CREANDO ASOCIACIONES

    1. Ubicarse en el Diagrama de Casos de Uso Administrar Pedidos.

    2. Haga clic en el cono de Asociacin Unidireccional

    3. Haga clic en al Actor Cliente y arrastre hasta el caso de uso Preparar

    Pedido

    4. Realice las sgts asociaciones repitiendo el paso 2 y el paso 3 para las siguientes actores y casos de uso

    ACTOR CASO DE USO Agente Comercial RegistrarPedido SupervisorComercial ConsultarPedidos AsistenteComercial ConsultarPedidos AsistenteComercial GenerarDocumentos Almacenero AdministrarProductos

    CREANDO RELACIONES

    1. Ubicarse en el Diagrama de Casos de Uso Administrar Pedidos.

    2. Haga clic en el cono de Asociacin Unidireccional

    3. Haga clic en el caso de uso RegistrarPedidos y arrastre hacia el caso de uso GenerarDocumentos

    4. Haga doble clic sobre la lnea de asociacin unidireccional creada, con lo que aparecer la sgte interfaz

    5. En StereoType elija : include 6. Clic ok

    CREANDO RELACIONES

    1. Ubicarse en el Diagrama de Casos de Uso Administrar Pedidos.

    2. Haga clic en el cono de Asociacin Unidireccional

    3. Haga clic en el caso de uso RegistrarPedidos y arrastre hacia el caso de uso ConsultarDocumento

    4. Haga doble clic sobre la lnea de asociacin unidireccional creada, 5. En StereoType elija : extend 5. Clic ok 6. Realice un entre RegistrarPedido y AdministrarProducto

    ING. PERCY TITO RIVERA SESION Pgina 32

  • UML. SISTEMA DE COMERCIALIZACIN

    b. Contine con el resto de los diagramas de caso propuestos.

    Diagrama: Administrar Productos

    Diagrama: Administrar Liquidaciones ING. PERCY TITO RIVERA SESION Pgina 33

  • UML. SISTEMA DE COMERCIALIZACIN

    Diagrama: Administrar Documentos

    ING. PERCY TITO RIVERA SESION Pgina 34

  • UML. SISTEMA DE COMERCIALIZACIN

    Diag. Administrar Clientes

    ING. PERCY TITO RIVERA SESION Pgina 35

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 03

    DIAGRAMAS DE ACTIVIDAD

    ING. PERCY TITO RIVERA SESION Pgina 36

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 03: DIAGRAMAS DE ACTIVIDAD

    Cada que se necesite modelar el flujo de trabajo de las actividades de una determinada funcin podemos recurrir a los diagramas de actividad. Estos permite visualizar el flujo de uno o ms casos de uso.

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Diagramas de Actividad

    Contenido de un Diagrama de Actividad

    Ejemplos de un diagrama de actividad

    Diagrama de Actividad

    Definicin Un diagrama de actividad permite modelar la parte dinmica del sistema. Son flujos que representan el flujo de trabajo del sistema, esto es: ellos muestran el flujo de

    control desde una actividad a otra actividad en el sistema, qu actividades pueden ser hechas en paralelo, y cualquier ruta alternativa a travs del flujo. As como el flujo de un

    objeto que se mueve de un estado a otro entre los diferentes puntos del flujo de control. Puede utilizarse para representar el flujo a travs los diferentes casos de uso o de un caso de uso

    en particular.

    Veamos los smbolos utilizados en UML:

    Contiene:

    Estados Actividad y Estados Accin Transiciones Objetos

    ING. PERCY TITO RIVERA SESION Pgina 37

  • UML. SISTEMA DE COMERCIALIZACIN

    Swimlines

    Estados Actividad y Estados Accin Un Estado de Actividad permite la representacin de una o varias operaciones que originan un cambio en el sistema. Se dice que no son atmicas por lo que pueden ser

    descompuestas y normalmente pueden demandar un tiempo para ser completadas.

    Un Estado Accin constituye una actividad que no puede descomponerse ms. Se dice que son

    atmicas y por lo que trabajo de un estado accin no puede ser interrumpido.

    Transiciones

    Son usados para pasar al flujo de control al siguiente estado o actividad una vez completados Las transiciones muestran la ruta desde una accin o actividad a la siguiente accin o actividad

    Efectuar Pedido

    Transicin Re gis trar Pedido

    Decisiones Representan rutas alternativas basadas en una condicin o expresin Booleana. Se recomienda

    incluir la palabra else para determinar la ruta en caso de que la condicin a evaluar sea falsa. Veamos el sgte ejemplo que muestra la decisin de poder atender un pedido dependiendo de:

    Rene condiciones para venta ? As si un cliente solicita comprar al crdito y tuviera capacidad de crdito con la empresa, se procede a: Anotar Pedido, Sino (else) el pedido finaliza o se replantea las items pedidos en Efectuar Pedido

    Of receProducto Ef ectuar Pe di do

    Ev aluar

    Condiciones

    Reune c ond icion es

    pa ra ve nta ?

    Anotar Pedido

    ING. PERCY TITO RIVERA SESION Pgina 38

  • UML. SISTEMA DE COMERCIALIZACIN

    Barras Sincronizadas

    En un flujo de trabajo normalmente existen algunas actividades que pueden ejecutarse paralelamente. Las barras de sincronizacin le permiten especificar que actividades pueden hacerse concurrentemente.

    Las barras de sincronizacin son usadas tambin para mostrar uniones entere flujo de trabajos, esto es, que actividades deben completarse antes de realizar procesos siguientes.

    Observe el ejemplo: una vez que se Anota Pedido se procede a :

    Entregar Copia de Pedido al Cliente

    El asistenteComercial recepciona el Pedido

    Anotar Pedido

    Recepcionar

    Pedido Entregar Copia

    de Pedido

    ING. PERCY TITO RIVERA SESION Pgina 39

  • UML. SISTEMA DE COMERCIALIZACIN

    Swimlines

    Son usados para particionar un diagrama de actividades.

    Normalmente se usan para mostrar qu persona o unidad organizativa es responsable de las actividades contenidas en el Swimline.

    Veamos el sgte ejemplo de un Diagrama de Actividades para Capturar Pedidos, donde se

    dividen las actividades en 3 swimlines ING. PERCY TITO RIVERA SESION Pgina 40

  • UML. SISTEMA DE COMERCIALIZACIN

    Lab 03: Creando Diagramas de Actividad

    Objetivos

    Conocer los modos de autenticacin que administra SQL Server Implementar Roles de Servidor Implementar Roles de Base de Datos Administrar Permisos

    Ejercicio 01.

    a. Reconociendo la Barra de Herramienta para Crear Un Diag Actividad

    ING. PERCY TITO RIVERA SESION Pgina 41

  • O MENDOZA RIVERA SESION Pgina 42

    NG. RICA

    UML. SISTEMA DE COMERCIALIZACIN

    b. Creando el Diagrama de Actividad

    CREANDO EL DIAGRAMA DE ACTIVIDAD PARA REGISTRO DE PEDIDOS

    1. Ubicarse en la vista de casos de uso del Browser

    2. Haga cbd elija : New Activity Diagram

    3. Digite: Atender Pedidos

    CREANDO SWIMLINES 1. En el Diagrama RegistrarPedido

    2. Haga clic en SwimLine, clic en el Diagrama y escriba: AreaComercial

    3. Haga clic en SwimLine, clic en el Diagrama y escriba: AgenteComercial

    4. Haga clic en SwimLine, clic en el Diagrama y escriba: Almacen-Reparto

    5. Haga clic en SwimLine, clic en el Diagrama y escriba: Cliente

    CREANDO ACTIVIDADES 1. Haga clic en Activity de la Barra de Herramientas, luego clic dentro

    de AreaComercial, digite Recepcionar Docum Pedido

    2. Repita paso 1, e incluya las sgts actividades a. Digitar Condiciones Venta

    b. Digiter Items c. Grabar Pedido

    d. Generar Docum Venta e. Imprimir Docum Venta

    3. Haga clic en Activity de la Barra de Herramientas, luego clic dentro de AgenteComercial digite: Dar Conformidad Pedido

    4. Repita paso 3, e incluya las sgts actividades a. Rechazar Pedido

    5. Haga clic en Activity de la Barra de Herramientas, luego clic dentro de Almacn-Reparto, digite: ActualizarStock

    6. Repita paso 5, e incluya las sgts actividades a. Preparar Items Pedido b. Transportar Pedido y Docum

    7. Haga clic en Activity de la Barra de Herramientas, luego clic dentro de Cliente, digite: Recepcionar Pedido-Docum

    I RD

    CREANDO TRANSICIONES 1. De la barra de herramientas seleccione: State Transiction

    2. Clic en la actividad origen, luego arrastre hacia la actividad deseada

    3. Trate de llegar al sgte diagrama

  • UML. SISTEMA DE COMERCIALIZACIN

    ING. PERCY TITO RIVERA SESION Pgina 43

  • UML. SISTEMA DE COMERCIALIZACIN

    CREANDO PUNTOS DE DECISION

    1. De la barra de herramientas seleccione: Decision

    2. Clic en el swimline deseado y digite el texto respectivo

    3. Trate de llegar al sgte diagrama:

    4. Para la palabra [No] inclyalo con un TextBox desde la barra de herramientas

    ING. PERCY TITO RIVERA SESION Pgina 44

  • UML. SISTEMA DE COMERCIALIZACIN

    CREANDO BARRAS DE SINCRONIZACION

    1. De la barra de herramientas seleccione: Horizontal Sincronization

    2. Clic en el swimline deseado

    3. Trate de llegar al sgte diagrama incluyendo las transiciones respectivas

    4. Para lograr una barra ms amplia ubicarse sobre la barra y arrastre hasta el tamao deseado.

    ING. PERCY TITO RIVERA SESION Pgina 45

  • UML. SISTEMA DE COMERCIALIZACIN

    CREANDO ACTIVIDADES DE INICIO Y FIN 1. De la barra de herramientas seleccione: Start State o EndState, segn

    necesite 2. Clic en el swimline deseado

    3. Trate de llegar al sgte diagrama incluyendo las transiciones respectivas

    ING. PERCY TITO RIVERA SESION Pgina 46

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 04

    OBJETOS Y CLASES

    ING. PERCY TITO RIVERA SESION Pgina 47

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 04: OBJETOS Y CLASES

    Una de las etapas ms importantes y posiblemente ms trabajosas es determinar las clases que soportarn el comportamiento del sistema. Para ello existen una serie de formas de poder identificar las clases, como veremos ms adelante. En esta

    sesin conoceremos los estereotipos ms comunes de las clases que permitirn ser usados en los diagrama de iteracin y de clases respectivos

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Definicin de objeto y clase

    Abstraccin y ejemplos de clase

    Nombrando a una clase

    Clases en UML

    Stereotipos de clases.

    OBJETOS Y CLASES

    Qu es un Objeto Un objeto es una representacin de una entidad del mundo real o conceptual. Un objeto puede

    representar algo concreto como: El carro de Jorge Una comptadora Un concepto como un proceso qumico Una transaccin bancaria Una orden de pedido Una tasa de inters Una cuenta corriente de una determinado cliente

    Estado, Comportamiento e Identidad

    ING. PERCY TITO RIVERA SESION Pgina 48

  • UML. SISTEMA DE COMERCIALIZACIN

    Estado de un Objeto El Estado de un objeto es uno de las posibles condiciones en que el objeto puede existir El estado normalmente cambia en el transcurso del tiempo

    El estado es implementado por un conjunto de propiedades, llamadas atributos -que normalmente son estticos-, con los valores de las propiedades que

    normalmente son dinmicos- , adems de las conexiones que deben tener con otros objetos

    Por ejemplo el objeto cliente puede manejar 2 estados: Activo o Inactivo. Cuando deseamos realizar una transaccin de venta slo lo podremos hacer con los clientes que tienen estado activo.

    ING. PERCY TITO RIVERA SESION Pgina 49

  • UML. SISTEMA DE COMERCIALIZACIN

    Comportamiento de un Objeto El comportamiento de un objeto determina cmo ste acta y reacciona frente

    a las peticiones de otros objetos

    El comportamiento de un objeto es modelado por un conjunto de mensajes a los que puede responder (las operaciones que el objeto puede realizar)

    El comportamiento es implementado por una serie de operaciones para un objeto. Cuando se desea registrar un pedido, este puede tener un comportamiento para crearlo, modificarlo o

    eliminarlo

    Identidad de un Objeto

    Cada objeto tiene una identidad nica, incluso si su estado es idntico al de otro objeto Por ejemplo el pedido 000900 corresponde al AgenteComercial J.Clark, el pedido 000901 al

    AgenteComercial J.Clark y el pedido 000999 al AgenteComercial J.Clark

    En UML, los objetos son representados por rectngulos y el nombre del objeto es subrayado, como se muestra a continuacin.

    Qu es una Clase ?

    ING. PERCY TITO RIVERA SESION Pgina 50

  • UML. SISTEMA DE COMERCIALIZACIN

    Una clase es una descripcin de un grupo de objetos con propiedades comunes (atributos), comportamiento comn (operaciones), relaciones comunes con otros objetos (asociaciones y agregados) y semntica comn 5.

    Una clase es un molde para crear objetos. Se dice que un objeto es una instancia de una clase. Una clase es una abstraccin en donde: Se enfatizan las caractersticas relevantes. Se suprimen las que no nos sirven. La abstraccin nos ayuda a trabajar con cosas complejas

    La abstraccin est en funcin de la perspectiva del usuario y de lo que se desea modelar

    fundamentalmente. Veamos el sgte. Grfico:

    5 [Booch, Rambaugh, Jacobson 94] The Unified Modeling Language User Guide

    ING. PERCY TITO RIVERA SESION Pgina 51

  • UML. SISTEMA DE COMERCIALIZACIN

    Ejemplos de Clase

    El Agente Comercial J.Clark ha efectuado el pedido 000900 , y el Agente Comercial J.Clarck

    ha efectuado el pedido 000901. Cada objeto debe tener un valor para los atributos y acceder a las operaciones especificadas por la clase Pedidos.

    Una buena clase captura una y slo una abstraccin. Por ejemplo, una clase debe tener la capacidad de mantener informacin acerca del Agente Comercial (tal como su nombre, direccin,

    ING. PERCY TITO RIVERA SESION Pgina 52

  • UML. SISTEMA DE COMERCIALIZACIN

    telfono, etc. y no debe incluir la informacin del pedido (NroPedido, Fecha del Pedido, etc). Esta

    clase debe ser dividida en 2 relacionadas: AgenteComercial y Pedidos.

    Relacin entre Clases y Objetos De acuerdo a la definicin dada, y desde la perspectiva de vida o no, se pueden identificar dos clases: animales y artefactos, segn el diagrama siguiente. Puede identificar otras clases?

    Una clase es una definicin abstracta de un objeto Define la estructura y el comportamiento compartidos por los objetos. Sirve como modelo para crear objetos Los objetos pueden ser agrupados en clases

    Un objeto no es una clase 6

    Cliente: Lpez

    Objetos

    Cliente: Rojas

    Cliente:Roca

    6 [Booch 94] Anlisis y Diseo Orientado a Objetos

    ING. PERCY TITO RIVERA SESION Pgina 53

  • UML. SISTEMA DE COMERCIALIZACIN

    Nombrando Una Clase Una clase debe ser nombrada como un sustantivo que mejora caracterice a la abstraccin. Pueden ser usados acrnimos que tengan el mismo significado para todos los involucrados.

    Si al nombrar una clase encontramos un problema es seal de que la abstraccin realizada no ha sido la adecuada. Ejemplos: Cliente, FormaPago, Zona, Pedido, Proveedor

    Representando Clases

    Nombre Clase

    Atributos

    Operaciones

    Compartimientos de una clase

    Una clase est formada por 3 compartimientos La primera seccin contiene el nombre de la clase La segunda seccin muestra la estructura (atributos) La tercera seccin muestra el comportamiento (operaciones)

    Formas de representar una clase

    ING. PERCY TITO RIVERA SESION Pgina 54

  • UML. SISTEMA DE COMERCIALIZACIN

    Estereotipos y Clases Recordemos que un Estereotipo proporciona la capacidad de crear una nueva clase de elementos a modelar.

    Un estereotipo es un nuevo tipo de elemento de modelado que extiende la semntica del metamodelo Los estereotipos son mostrados en el compartimiento del nombre de la clase encerrados entre >

    Algunos estereotipos comunes para una clase son:

    Entidad (entity) Frontera (boundary) Control (control) Utilidad (utility)

    Excepcin (exception)

    Veamos algunos estereotipos manejados por Rational Rose

    Cada clase debe tener por lo menos un estereotipo.

    Clase Entidad

    Modela informacin y asocia comportamientos que generalmente son de larga duracin

    (persistentes)

    o Puede reflejar un fenmeno de la vida real o Tambin puede ser necesitada por la tarea interna del sistema o Los valores de estos atributos normalmente son entregados por un actor o El comportamiento es independiente del entorno

    Las clases entidades en el caso de uso Registrar Pedidos: o Cliente o Producto o Pedido o Forma de Pago

    Clase Frontera

    Modela la comunicacin entre el entorno del sistema y su funcionamiento interno. Ejemplo tpicos: Interfaces de usuario (windows) Protocolos de comunicacin (interfaces con otros sistemas) Para nuestro caso sera un Formulario de Pedido, otro para Registrar Liquidaciones, etc.

    ING. PERCY TITO RIVERA SESION Pgina 55

  • UML. SISTEMA DE COMERCIALIZACIN

    Clase Control

    Una clase control modela el comportamiento especifico de uno o ms casos de usos La clase control

    o Normalmente controla las operaciones que pueden darse en las clases tipo entidad. o Constituye el cumplimiento de las reglas de negocio o polticas que una empresa pueda

    incluir a sus procesos. o Crea, inicializa y borra objetos controlados o Controla la secuencia o coordina la ejecucin de los objetos controlados o Controla asuntos concurrentes para las clases controladas o Es usualmente la implementacin de un objeto intangible

    En el escenario del Registrar Pedidos, la clase AdministradorDePedido controla los procesos

    de registro.

    ING. PERCY TITO RIVERA SESION Pgina 56

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 05

    INTERACCIN ENTRE OBJETOS ING. PERCY TITO RIVERA SESION Pgina 57

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 05: INTERACCIN ENTRE OBJETOS

    En esta sesin veremos como se produce la interaccin entre objetos en el sistema. Mostraremos paso a paso los flujos de un escenario a travs de un caso de uso: qu objetos son necesarios para el flujo , qu mensajes los objetos se

    mandan entre ellos , qu actor inicia el flujo. Para ello UML proporciona los Diagramas de Iteracin: los diagramas de secuencia y los diagramas de colaboracin , como paso previo a la elaboracin de los diagramas de clase.

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Escenarios de un caso de uso

    Diagramas de Interaccin

    Diagramas de Secuencia

    Diagramas de Colaboracin

    Mensajes entre Objetos

    INTERACCIN ENTRE OBJETOS

    Escenarios de un Caso de Uso

    Qu es un Escenario ?

    Un escenario es una instancia de un caso de uso, es una representacin de un caso de

    uso de acuerdo a ciertas condiciones que puedan presentarse a travs del caso de uso cuando el actor interacta con los objetos que pueden identificarse en l.

    Cada caso de uso tendr una red de escenarios, es decir diferentes posibilidades que van

    desde flujos Primarios : que significa la forma normal que debe sigue un caso de uso Secundarios: que muestra las excepciones posibles en los casos de uso primarios

    Ejemplo de un Caso de USo

    ING. PERCY TITO RIVERA SESION Pgina 58

  • UML. SISTEMA DE COMERCIALIZACIN

    Un Escenario para el Caso de Uso Registrar Pedidos. Crear Pedido

    Csar al elegir la opcin de creacin de pedidos, e ingresa el Nro de Pedido

    040001, el sistema valida el nro, a continuacin el sistema le presenta la

    lista de Agentes Comerciales, Csar selecciona a Panchito Lpez. El

    sistema le permite ingresar el cdigo del cliente CL200 , el mismo que se valida.

    El sistema le ofrece la posibilidad de buscarlo tambin por su razn social Los

    Cocos, en caso de que el cdigo ingresado sea errneo. A continuacin el

    sistema le indica que registre la fecha del pedido que corresponde al

    09/09/2002. Csar debe elegir la forma de pago al crdito de la lista que le ofrece el

    sistema con lo cual el sistema valida la seleccin.

    A continuacin el sistema le da la posibilidad a Csar de ingresar los 2 items del

    pedido 040001, para ello elige el botn Agregar a continuacin ingresa el cdigo del

    producto 050100 el cual es validado en el sistema, si el cdigo no existe le

    ofrece seleccionarlo de una lista. En cualquier caso le muestra el nombre del

    producto Ace de 1kg, la unidad de medida Bolsa y el precio unitario 30.12 as

    mismo el sistema le indica que registre la cantidad, Csar ingresa 20 la

    misma que es validada en el sistema. Luego Csar procede a registrar el

    siguiente item......

    OOAD usando UML.

    [email protected]

    Interaccin entre objetos, hoja 4

    Algunos Escenarios Secundarios a considerar

    Si el sujeto no est sujeto de crdito y Csar eligi forma de pago al crdito? El cdigo del cliente ingresado no existe No hay stock suficiente de la cantidad seleccionada para ese producto

    El monto de crdito es superior a la capacidad de crdito del cliente

    Algunos Escenarios Secundarios a considerar ?

    Respuesta simple: tantos como sea necesario para entender el funcionamiento del

    sistema. Regla del pulgar:

    o Escenarios primarios Elabore aproximadamente el 80% de estos escenarios

    o Escenarios secundarios Elabore unos pocos de los escenarios secundarios interesantes y de alto

    riesgo.

    Diagramas de Interaccin El flujo de escenarios que es capturado en texto son capturados mediante diagramas llamados diagramas de interaccin, los mismos que pretenden mostrar paso a paso los flujos de un

    ING. PERCY TITO RIVERA SESION Pgina 59

  • UML. SISTEMA DE COMERCIALIZACIN

    escenario a travs de un caso de uso: qu objetos son necesarios para el flujo, qu mensajes los objetos se mandan entre ellos , qu actor inicia el flujo.

    Un diagrama de interaccin es una representacin grfica de interacciones entre objetos Existen dos tipos de diagramas de interaccin

    o Diagramas de secuencia o Diagramas de colaboracin

    Cada uno entrega un punto de vista distinto de la misma interaccin o Los diagramas de secuencia son ordenados en el tiempo o Los diagramas de colaboracin pueden incluir flujo de datos

    Un diagrama de interaccin contiene:

    Objetos : Un diagrama de interaccin puede usar nombres de objetos, nombres de clases o mbos

    Mensajes : A travs de un mensaje un objeto puede requerir alguna funcin de otro objeto.

    Diagramas de Secuencia

    Un diagrama de secuencia muestra las interacciones de objetos ordenadas en una secuencia de tiempo

    El diagrama muestra o Los objetos participando en la interaccin o La secuencia de mensajes intercambiados

    Un diagrama de secuencia contiene: o Objetos con sus lneas de vida o Mensajes intercambiados entre objetos en una secuencia ordenada o Linea de Vida Activa (opcional)

    Nombrando Objetos en un Diagrama de Secuecias

    Los objetos son dibujados como rectngulos con nombres subrayados Las lneas de vida de los objetos estn representadas por lneas rayadas en descenso

    Ejemplo de un caso de uso

    ING. PERCY TITO RIVERA SESION Pgina 60

  • UML. SISTEMA DE COMERCIALIZACIN

    Mostrando la Interaccin entre objetos

    La interaccin de objetos est indicada por flechas horizontales las cuales son dirigidas

    desde la lnea vertical representada por el objeto cliente a la lnea representada por el objeto proveedor

    Las flechas horizontales estn etiquetadas con mensajes

    El orden de los mensajes con respecto al tiempo, est indicado por la posicin vertical.

    Enumerar las flechas horizontales es opcional ya que el orden est basado en la posicin vertical

    ING. PERCY TITO RIVERA SESION Pgina 61

  • UML. SISTEMA DE COMERCIALIZACIN

    Diagramas de Colaboracin

    Un diagrama de colaboracin es una manera alternativa de representar

    mensajes intercambiados por un conjunto de objetos

    El diagrama muestra interacciones organizadas alrededor de los objetos y las conexiones entre ellos

    Un diagrama de colaboracin contiene: o Objetos o Conexiones entre objetos o Mensajes intercambiados entre objetos o Datos fluyendo entre objetos, si los hubiera

    Ejemplo de un Diagrama de Colaboracin

    Representacin de Objetos

    Es similar como en los diagramas de secuencia.

    ING. PERCY TITO RIVERA SESION Pgina 62

  • UML. SISTEMA DE COMERCIALIZACIN

    SE PUEDE OBTENER UN DIAGRAMA DE COLABORACIN PRESIONANDO F5 Representando Conexiones

    Una conexin en un diagrama de colaboracin se representa como una lnea que une conos de objetos

    Una conexin indica que existe un camino para establecer una comunicacin entre los objetos conectados

    Mensajes entre Objetos

    Una de conexin en un diagrama de colaboracin puede mostrar los mensajes enviados

    entre los objetos. o Un mensaje se representa con una flecha apuntando desde el objeto cliente a el

    objeto proveedor o El nombre del mensaje con una lista opcional de parmetros y/o un

    valor de retorno

    o Un nmero de secuencia opcional que muestra el orden relativo en el cual los mensajes son enviados

    Mensajes

    ING. PERCY TITO RIVERA SESION Pgina 63

  • UML. SISTEMA DE COMERCIALIZACIN

    Lab 05: Elaborando Diagramas de Interaccin

    Objetivos

    Conocer la forma en que son ingresadas las clases Identificar los esteretipos de las clases para un determinada caso de uso. Iniciar el trabajo en la vista lgica.

    Ejercicio 01

    a. Preparando el Diagrama de Secuencia para Actualizacin de Precios

    ING. PERCY TITO RIVERA SESION Pgina 64

  • UML. SISTEMA DE COMERCIALIZACIN

    b. Preparando el Diagrama de Secuencia

    Ubicarse en el diagrama de Secuecia respectivo y Pulse F5

    ING. PERCY TITO RIVERA SESION Pgina 65

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 06

    ENCONTRANDO CLASES

    ING. PERCY TITO RIVERA SESION Pgina 66

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 06: ENCONTRANDO CLASES

    Luego de haber visto una serie de conceptos asociados a las clases y los diagramas que nos servirn para modelar las interacciones entre ellas vamos a tratar de encontrar clases analizando los casos de uso. As mismo una vez identificadas

    las clases podremos incluirlas dentro de paquetes de datos, de control y de interfaz.

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Anlisis de casos de uso

    Encontrando Objetos entidad

    Encontrando clases entidad

    Encontrando clases frontera

    Encontrando clases entidad

    Diseo de prototipos

    OBJETOS Y CLASES

    Qu es el Anlisis de Casos de Uso ?

    El anlisis de casos de uso es el proceso de examinar los casos de uso para descubrir objetos y clases, para el sistema que est siendo desarrollado

    Los escenarios son detallados y mostrados grficamente en diagramas de interaccin

    o Se crean las entidades, las interfaces y las clases de control o Las clases son agrupadas en paquetes

    Son creados los diagramas de clases

    Los objetos entidad son identificados examinando los nombres y las frases del escenario analizado

    Los nombres encontrados pueden ser: o Objetos o Descripciones del estado de un objeto o Entidades externas y/o actores o Nada de lo anterior

    Filtrando Nombres

    Cuando est identificando nombres, tenga cuidado que:

    o Varios trminos pueden referirse al mismo objeto o Un trmino puede referirse a ms de un objeto

    ING. PERCY TITO RIVERA SESION Pgina 67

  • UML. SISTEMA DE COMERCIALIZACIN

    o El lenguaje natural es bastante ambiguo Este acercamiento puede identificar varios objetos sin importancia

    o La lista de nombres debe ser filtrada Una palabra de atencin

    o Cada nombre puede ser tratado como verbo; cada verbo puede ser tratado como

    nombre

    El resultado depende fuertemente de la habilidad para escribir de los autores

    Un Escenario para el Caso de Uso

    Registrar Pedidos. Crear Pedido

    Csar al elegir la opcin crear pedido, e ingresa el Nro de Pedido 040001, el sistema valida el nmero, a continuacin el sistema le presenta la lista de Agentes Comerciales, Csar selecciona a Panchito Lpez. El sistema le permite ingresar el cdigo del

    cliente CL200 , el mismo que se valida. El sistema le ofrece la posibilidad de buscarlo tambin por su razn social Los Cocos, en caso de que el cdigo ingresado

    sea errneo. A continuacin el sistema le indica que registre la fecha del pedido que corresponde al

    09/09/2002. Csar debe elegir la forma de pago al crdito de la lista que le ofrece el sistema con lo cual el sistema valida la seleccin.

    A continuacin el sistema le da la posibilidad a Csar de ingresar los 2 items del

    pedido 040001, para ello elige el botn Agregar producto a continuacin ingresa el cdigo del producto 050100 el cual es validado en el sistema, si el cdigo

    no existe le ofrece seleccionarlo de una lista de productos. En cualquier caso le muestra el nombre

    del producto Ace de 1kg, la unidad de medida Bolsa y el precio unitario 30.12 as mismo el sistema le indica que registre la cantidad, Csar ingresa 20 la

    misma que es validada en el sistema. Luego Csar procede a registrar el siguiente item con cdigo de producto 060200......

    Identificando Nombres

    Csar al elegir la opcin de crear pedido, e ingresa el Nro de Pedido 040001,

    el sistema valida el nmero, a continuacin el sistema le presenta la lista de

    Agentes Comerciales, Csar selecciona a Panchito Lpez. El sistema le permite ingresar el cdigo del cliente CL200 , el mismo que se valida. El sistema le

    ofrece la posibilidad de buscarlo tambin por su razn social Los Cocos, en caso de que

    el cdigo ingresado sea errneo. A continuacin el sistema le indica que registre la fecha del pedido que corresponde al 09/09/2002. Csar debe elegir la forma de

    pago al crdito de la lista que le ofrece el sistema con lo cual el sistema valida la seleccin.

    A continuacin el sistema le da la posibilidad a Csar de ingresar los 2 items del pedido 040001, para ello elige el botn Agregar producto a continuacin ingresa el

    cdigo del producto 050100 el cual es validado en el sistema, si el cdigo no existe le ofrece seleccionarlo de una lista de productos. En cualquier caso le muestra el

    nombre del producto Ace de 1kg, la unidad de medida Bolsa y el precio unitario

    30.12 as mismo el sistema le indica que registre la cantidad, Csar ingresa 20 la misma que es validada en el sistema. Luego Csar procede a registrar el siguiente item con cdigo de producto 060200......

  • ING. PERCY TITO RIVERA SESION Pgina 68

  • UML. SISTEMA DE COMERCIALIZACIN

    Qu nombres deben ser filtrados?

    Csar Cdigo producto 060200 Sistema Lista de productos Pedido Ace de 1kg Nmero de pedido 040001 Unidad de medida Bolsa Lista de Agentes Comerciales Precio Unitario 30.12 Panchito Lpez Cantidad 20 Cdigo del cliente CL200 Razn Social LOS COCOS Cdigo ingresado Fecha de pedido 09-09-2002 Forma de Pago al crdito Dos items del pedido

    Cdigo producto 050100

    Decisiones de Filtrado

    Csar -- filtrado (actor) Pedido candidato a objeto Nmero de pedido 040001 -- filtrado (propiedad de un pedido) Sistema -- filtrado (lo que est siendo construido) Agente Comercial candidato a objeto-- filtrado Panchito Lpez -- filtrado (lo mismo que agente comercial) Cliente -- candidato a objeto Cdigo del cliente CL200l -- filtrado (propiedad del cliente) Razn social LOS COCOS -- filtrado (propiedad del cliente) Fecha del pedido -- filtrado (propiedad del pedido) FormaPago -- candidato a objeto

    Forma de pago al crdito-- filtrado (propiedad de la forma de pago) Cdigo del produto 050100 -- candidato a objeto Cdigo del produto 060200 -- candidato a objeto Ace de 1 kg filtrado (propiedad del producto) Bolsa filtrado (propiedad del producto) Precio Unitario -- filtrado (propiedad del producto)

    Cantidad 20 -- filtrado (propiedad del pedido)

    Candidatos a Objeto en el Escenario

    ING. PERCY TITO RIVERA SESION Pgina 69

  • UML. SISTEMA DE COMERCIALIZACIN

    Pedido lista de los cursos de un alumno en un semestre Lista de Agentes Comerciales lista de todos los cursos

    impartidos en un semestre Cliente una oferta para el semestre Forma de Pago -- una oferta para el semestre Cdigo del Producto 050100 -- una oferta del producto

    Cdigo del Producto 060200 -- una oferta del producto

    Creando Clases

    Los objetos encontrados son agrupados en clases

    o Basados en estructuras y/o comportamientos similares Este es un intento inicial

    o Las clases pueden cambiar mientras ms escenarios son examinados

    Candidatos a Clase en el Escenario CreandoPedido

    Pedido lista de las condiciones del pedido Items de Pedido detalle de los productos requeridos AgenteComercial lista de los agentes que realizan las ventas Cliente -- lista de clientes FormaPago lista de las formas de pago ofrecidas por la empresa

    Producto lista de los productos ofrecidos

    Encontrando Clases Frontera Examine cada par actor/escenario y cree clases de frontera obvias

    o Durante el diseo, la clase ser definida basada en los mecanismos de la interfaz

    de usuario elegida Ejemplo:

    o El estudiante se presenta con diferentes opciones en el caso Registrar Pedidos Una clase de frontera llamada FormularioPedido se crea para permitir al Asistente

    Comercial administrar pedidos Prototipo de la clase frontera: FormularioPedido

    ING. PERCY TITO RIVERA SESION Pgina 70

  • UML. SISTEMA DE COMERCIALIZACIN

    Encontrando Clases Control

    Las clases de control tpicamente contienen informacin de secuencia o Atencin: las clases de control NO deben asumir las responsabilidades que

    tpicamente corresponden a las clases de interfaz o de entidad

    ING. PERCY TITO RIVERA SESION Pgina 71

  • UML. SISTEMA DE COMERCIALIZACIN

    A este nivel de anlisis, una clase de control es tpicamente creada para cada caso de

    uso

    o Responsable por el flujo de los eventos en el caso de uso Esto es solo el primer corte

    o Mientras ms casos y escenarios son desarrollados, las clases de control pueden

    ser eliminadas, divididas o combinadas

    Ejemplo

    Una clase de control llamada AdministradorRegistro es creada o Recibe informacin de la clase frontera FormularioPedido o Para cada uno de los pedidos registrados o Pregunta la forma de pago

    Revisa objeto cliente si est sujeto de crdito en caso de que el

    Asistente Comercial haya elegido forma pago crdito Muestra la lista de productos activos Pregunta la cantidad ingresada

    Verifica si existe stock suficiente Al grabar

    o Verifica el objeto Cliente y determina lnea de crdito

    disponible si a elegido el objeto formapago al crdito o Crea el objeto DocumentoVenta

    Qu es un Paquete ?

    Un paquete es un mecanismo de propsito general utilizado para organizar elementos en

    grupos El nmero de clases crece a medida que ms casos de uso y escenarios son analizados

    o Las clases pueden ser agrupadas en paquetes Proveen la habilidad de organizar el modelo en desarrollo

    Un paquete es representado como una carpeta

    Paquetes en RegistrarPedidos Las clases del Sistema de Registros pueden ser agrupadas en tres paquetes

    o Artefactos del Pedido, Reglas de negocios e Interfaces Artefactos del Pedido

    ING. PERCY TITO RIVERA SESION Pgina 72

  • UML. SISTEMA DE COMERCIALIZACIN

    o Producto, Pedido, FormaPago, ItemsPedido, Cliente, AgenteComercial Reglas de negocio

    o AdministradorRegistro Interfaces

    o FormularioPedido, FormularioConsulta

    Qu son los Diagramas de Clases?

    La vista lgica esta conformada de muchos paquetes y clases Un diagrama de clases es la vista de unos pocos (o todos) los paquetes y clases de la

    vista lgica o Generalmente hay varios diagramas de clases

    El diagrama de clases principal es tpicamente una vista de los paquetes de alto nivel de

    la vista lgica Tpicamente cada paquete tiene su propio diagrama de clases principal Se agregan diagramas de clases adicionales si son necesarios

    o La vista de las clases participantes de un escenario o La vista de las clases privadas de un paquete o La vista de una clase y sus atributos y operaciones o La vista de la jerarqua de herencia

    ING. PERCY TITO RIVERA SESION Pgina 73

  • UML. SISTEMA DE COMERCIALIZACIN

    Lab 06: Encontrando Clases

    Objetivos

    Identificar clases a partir del anlisis de un caso de uso Preparar los paquetes respectivos Entidades. Control. Interfaces.

    Parte A: Encontrando Clases del Caso de Uso Registrar Pedidos

    Ejercicio 01. Preparando los Paquetes respectivos En el archivo: comercial.mdl del laboratorio 03, proceda de la sgte manera: Ubicarse sobre la vista Lgica Clic botn derecho, New Package Ingrese el nombre de : Interfaz

    Proceda de la misma manera para crear los paquetes: Control Entidades

    Ejercicio 02 . Incoporando clases:

    Clases Interfaz (asegurarse del estereotipo respectivo)

    o FormularioPedidos o FormularioConsulta

    Clases Interfaz (asegurarse del estereotipo respectivo)

    o AdministradorPedidos

    Clases Entidad (asegurarse del estereotipo respectivo)

    o Pedido o DetaPedido o Producto o FormaPago o Cliente

    ING. PERCY TITO RIVERA SESION Pgina 74

  • UML. SISTEMA DE COMERCIALIZACIN

    o AgenteComercial

    Ejercicio 03. Proceda a la elaboracin de los Diagramas de Interaccin de:

    Secuencia Colaboracin

    Parte B: Encontrando Clases del Caso de Uso Realizar Liquidaciones

    Lea la descripcin del Caso de Uso Registrar Liquidaciones, que se presenta al

    final del ejercicio.

    Elija un caso de uso desarrollado en la leccin anterior Diagrame al menos un escenario en un diagrama de interaccin

    + Cree todas las clases de entidad, interfaz y/o control necesarias

    + Cree una definicin para cada clase

    Cree paquetes para el modelo

    Acomode las clases descubiertas en paquetes Cree el diagrama de clases inicial

    DESCRIPCIN DEL CASO DE USO REGISTRAR LIQUIDACIONES

    ING. PERCY TITO RIVERA SESION Pgina 75

  • UML. SISTEMA DE COMERCIALIZACIN

    1. CASO DE USO: Registrar Liquidaciones

    1.1 Descripcin Breve El caso de uso es iniciado por el Asistente Comercial cuando desea registra los pagos que los cliente realizan en el sistema ha medida que van cancelando sus

    documentos. Le proporciona la capacidad de crear, modificar, grabar, revertir y consultar pedidos; adems de finalizar.

    2. Flujo de Eventos

    2.1 Pre-condiciones El Asistente Comercial debe haber generado en el sistema los documentos de pago respectivo Se debe tener la informacin de los Agentes Comerciales.

    2.2 Flujo Bsico 1. El sistema muestra las actividades que se pueden seleccionar: Agregar, Modificar, Grabar,

    Revertir, Consultar, Eliminar, Imprimir, Grabar y Salir.

    2. El Asistente Comercial selecciona la actividad que desea realizar.

    3. Si la actividad seleccionada es registrar, el flujo alternativo A-1: Crear Liquidacin es

    ejecutado.

    4. Si la actividad seleccionada es modificar, el flujo alternativo A-2: Modificar Liquidacin es

    ejecutado.

    5. Si la actividad seleccionada es grabar, el flujo alternativo A-4: Grabar Liquidacin es

    ejecutado.

    6. Si la actividad seleccionada es revertir, el flujo alternativo A-5: Revertir Liquidacin es

    ejecutado.

    7. Si la actividad seleccionada es consultar, el flujo alternativo A-6: Consultar Liquidacin es

    ejecutado.

    8. Si la actividad seleccionada es imprimir, el flujo alternativo A-7: Imprimir Liquidacin es

    ejecutado.

    9. Si la actividad seleccionada es Salir, el caso de uso finaliza.

    2.3 Sub- Flujos A-1 Crear Liquidacin

    1. El sistema permite ingresar el Nro de Liquidacin 2. El sistema verifica si existe el numero de Liquidacin (E-1)

    3. El usuario selecciona el vendedor respectivo

    4. El usuario confirma o cambia la fecha del pedido y selecciona la forma de pago que

    el sistema valida.

    5. Por cada documento el usuario ingresa a. Tipo de Documento b. Numero de Documento con (E-4)

    c. El sistema muestra la razn social del cliente y el saldo del documento

    d. El usuario ingresa el monto respectivo ha amortizar para el documento (E-5) ING. PERCY TITO RIVERA SESION Pgina 76

  • UML. SISTEMA DE COMERCIALIZACIN

    e. El usuario ingresa Tipo de Pago (Cheque, Efectivo, Letra) respectivo (E-6).

    6. El sistema le da la posibilidad de Eliminar alguna lnea en el detalle. 7. El sistema muestra total de la liquidacin de todo el documento ingresado.

    8. Terminado el ingreso, si el Asistente Comercial elige

    a. La actividad Grabar se ejecuta el flujo alternativo A-4: Grabar pedido

    b. La actividad Revertir se ejecuta el flujo alternativo A-5: Revertir pedido

    9. El caso de uso comienza nuevamente.

    A-2 Modificar Liquidacin

    1. Puede modificar el documento editado o el Asistente Comercial selecciona el pedido a modificar a partir del caso de uso: Consultar Documento

    2. El sistema muestra el contenido de la liquidacin seleccionado.

    3. El usuario elige la opcin de modificar.

    4. Por cada documento el usuario ingresa a. Tipo de Documento b. Numero de Documento con (E-4)

    c. El sistema muestra la razn social del cliente y el saldo del documento

    d. El usuario ingresa el monto respectivo ha amortizar para el documento (E-5)

    e. El usuario ingresa Tipo de Pago (Cheque, Efectivo, Letra) respectivo (E-6).

    5. El sistema le da la posibilidad de Eliminar alguna lnea en el detalle.

    6. El sistema muestra total de la liquidacin de todo el documento ingresado.

    7. Terminado el ingreso, si el Asistente Comercial elige

    a. La actividad Grabar se ejecuta el flujo alternativo A-4: Grabar pedido

    8. La actividad Revertir se ejecuta el flujo alternativo A-5: Revertir pedido

    9. El caso de uso comienza nuevamente. A-.4 Grabar Liquidacin

    1. El sistema guarda la informacin ingresada (E-6). A-.5 Revertir Liquidacin

    1. El sistema deshecha los cambios efectuados

    2. El caso de uso comienza nuevamente.

    A-6 Consultar Liquidacin

    1. El Asistente Comercial selecciona el pedido a modificar a partir del caso de uso: Consultar Liquidacin.

    2. Mostrar datos de la Liquidacin Seleccionado

    E-7 Imprimir Liquidacin

    1. Puede imprimir el documento editado o el Asistente Comercial selecciona el pedido a

    imprimir a partir del caso de uso: Consultar Liquidacin. 2. El sistema muestra contenido de la Liquidacin.

    3. El usuario elige imprimir la Liquidacin

    4. El sistema muestra la interfaz de impresin de Windows .

    5. El caso de uso comienza nuevamente.

    2.4 Flujos Alternativos o de Excepcin

    ING. PERCY TITO RIVERA SESION Pgina 77

  • UML. SISTEMA DE COMERCIALIZACIN

    E-1 : Verifica la existencia de la liquidacion, si existe un mensaje es mostrado y se

    permite el reingreso del nro del liquidacin

    E-4 : Se verifica si el documento ingresado existe en el sistema, caso contrario emite

    mensaje y no deja avanzar hasta que se ingrese el Documento correcto.

    E-5 : Al momento de grabar se procede a la actualizacin de los saldos de cliente respectivo.

    .

    2.5 Post-condiciones Actualizar saldos de cliente.

    3. Puntos de Extensin

    3.1 Consultar Liquidacin Si el Asistente Comercial desea buscar un pedido previamente ingresado, puede elegir la opcin Buscar, que le permite buscar la Liquidacin por su nro o por fechas.

    4. Prototipo de Interfaz de usuario

    ING. PERCY TITO RIVERA SESION Pgina 78

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 07

    RELACIONES

    ING. PERCY TITO RIVERA SESION Pgina 79

  • UML. SISTEMA DE COMERCIALIZACIN

    SESION 07.RELACIONES

    Una vez establecidas las clases nos damos cuentan de que ellas intercambian mensajes entre si, para que estos mensajes puedan ser intercambiados es necesario de que existan relaciones entre las clases. La relacin permitir conocer a una clase conocer

    acerca de los atributos, operaciones y relaciones de otra clase. Existen 2 tipos de relaciones como veremos a continuacin.

    PLANIFICACIN DE LA CLASE

    Veremos los tpicos siguientes:

    Necesidad de las Relaciones

    Tipos de Relaciones

    Nombrando Relaciones

    Roles

    Relaciones Reflexivas

    Hallando Relaciones

    Relaciones entre paquetes

    La necesidad de las Relaciones Dado a que los sistemas abarcan muchas clases y objetos debe existir una colaboracin entre

    ellos mismos para contribuir en el comportamiento del sistema. Existen 2 tipos de relaciones: Asociaciones Agregaciones

    Relaciones de Asociacin

    Una asociacin es una relacin semntica bidireccional entre clases.

    Esto implica que existe una conexin entre objetos en las clases asociadas Por ejemplo una asociacin entre la clase Cliente y la clase Pedido, significar que objetos en la clase Cliente estn conectados a objetos en la clase Pedido.

    El nmero de objetos conectados depende de la multiplicidad de una asociacin, como veremos ms adelante

    Los datos pueden fluir en una o ms direcciones a lo largo de la asociacin

    Navegacin ING. PERCY TITO RIVERA SESION Pgina 80

  • UML. SISTEMA DE COMERCIALIZACIN

    Una asociacin es una relacin bi-direccional

    Dada la instancia de AdministradorPedido existe asociado un objeto Pedido

    Dada la instancia de Pedido existe asociado un objeto AdministradorPedido

    Nombrando Relaciones

    Una asociacin podra ser nombrada,

    Normalmente el nombre es un verbo que comunica el significado de la relacin.

    El nombre se representa como una etiqueta ubicada a lo largo de la lnea de asociacin en medio de las clases que se estn relacionando.

    Definiendo Roles

    Un rol denota el propsito por el que se asocia una clase con otra

    Los roles son tpicamente sustantivos

    Se ubica cercano a la clase que modifica

    Multiplicidad para Asociaciones

    Multiplicidad es el nmero de instancias de una clase que se relacionan

    con una instancia de otra clase o Para cada asociacin, hay dos decisiones de multiplicidad por hacer: una para

    cada final de la asociacin

    Por ejemplo, en la conexin que existe entre las instancias que cumplen el rol de cliente y pedido

    o Para cada instancia de cliente, muchos (ej. cero o mas) pedidos sern realizados o Para cada instancia de pedido, exactamente una persona es el cliente

    Los indicadores de multiplicidad se indican a continuacin

    ING. PERCY TITO RIVERA SESION Pgina 81

  • UML. SISTEMA DE COMERCIALIZACIN

    Las decisiones de multiplicidad exponen muchas suposiciones ocultas acerca del

    problema que esta siendo modelado

    o Puede ser posible que un cliente no tenga ningn pedido? o Puede un pedido tener dos clientes?

    Significado de la Multiplicidad

    La multiplicidad responde a dos preguntas

    o La asociacin es obligatoria u opcional? o Cul es el nmero mximo o mnimo de instancias que pueden ser ligadas a una

    instancia?

    Qu le dice el diagrama anterior?

    Multiplicidad para Asociaciones

    La agregacin es una forma especial de asociacin donde un todo se relaciona con sus

    partes o Tambin se conoce como una parte de o una relacin de contencin.

    Una agregacin est representada como una asociacin con un diamante al lado de su

    clase denotando el agregado.

    La multiplicidad se representa de la misma manera que en las otras asociaciones.

    ING. PERCY TITO RIVERA SESION Pgina 82

  • UML. SISTEMA DE COMERCIALIZACIN

    Algunas formas de comprobar la Agregacin

    Es la frase una parte de usada para describir la relacin?

    o Una puerta es una parte de un Automvil. Son algunas operaciones sobre el todo, automticamente aplicables a todas sus partes?

    o Mover el Automvil, Mover la Puerta Son algunos de los atributos de los valores propagadas del todo hacia todas sus partes

    o solo a algunas en particular?

    o El Automvil es azul, la Puerta es Azul Existe una simetra intrnseca en la relacin donde una clase es subordinada de otra?

    o Una puerta ES parte de un Automvil, pero un Automvil NO ES parte de una Puerta

    Asociacin o Agregacin ?

    Si dos objetos estn unidos firmemente por una relacin todo-parte

    o La relacin es una agregacin Si dos objetos son usualmente considerados como independientes, aun cuando

    comnmente estn unidos

    o La relacin es una asociacin

    Asociacin Reflexiva

    En una asociacin reflexiva, los objetos de una misma clase estn relacionados

    Indica que mltiples objetos en la misma clase colaboran en conjunto del mismo modo

    Agregacin Reflexiva

    Las agregaciones tambin pueden ser reflexivas

    Esto indica una asociacin recursiva ING. PERCY TITO RIVERA SESION Pgina 83

  • UML. SISTEMA DE COMERCIALIZACIN

    Clase Asociacin

    Deseamos llevar un historial de las zonas que administra cada trabajador en el tiempo La relacin entre Trabajador y zona es una relacin de muchos a muchos

    Donde situamos los atributos de las fechas asignadas?

    El atributo de fecha de asignacin no puede ser situado en la clase Zona porque

    existen (potencialmente) muchas relaciones a muchos objetos de Trabajador Por lo tanto, el atributo pertenece realmente a la relacin individual Zona-Trabajador

    Una clase asociacin es usada para almacenar informacin sobre la relacin

    Denotando