UML - Guia Visual

Embed Size (px)

Citation preview

  • 7/31/2019 UML - Guia Visual

    1/47

  • 7/31/2019 UML - Guia Visual

    2/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]

    Autor: Josep Vilalta

    UMLGua Visual

    Cmo crear formas de vida organizativa

    Presentacin

    Esta gua describe como definir, organizar y visualizar lo que denominamos formas de

    vida organizativa (VIO) con la notacin Unified Modelling Language (UML). Una VIO

    representa un ciclo de actividad realizado por uno o varios agentes con un propsito

    concreto, en base a una prctica consensuada para utilizar los recursos disponibles y

    para tomar las decisiones que caracterizan el comportamiento de una organizacin.

    A diferencia de los sistemas biolgicos, las VIO nacen y se desarrollan a partir de una

    voluntad compartida, de una idea y de un liderazgo. Pero de la misma manera que la

    seleccin natural acta en los sistemas biolgicos la continuidad de una VIO est

  • 7/31/2019 UML - Guia Visual

    3/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]

    Autor: Josep Vilalta

    Nuestros lmites para entender esta realidad estn en nuestro lenguaje. El mundo es la

    suma total de lo que podemos definir, organizar y visualizar. Cabe preguntarse de qu

    manera un modelo en UML representa nuestra experiencia?. Ensear a utilizar un

    lenguaje formal siempre es problemtico. Es necesario mostrarcomo este lenguaje

    puede ser aplicado a la realidad tal como la conocemos y tal como la compartimos conlos dems. Con esta gua visual mostramos de manera precisa las tcnicas bsicas para

    usar UML en diferentes contextos. La clave est en discriminar cuales son aquellos

    procedimientos esenciales que nos permiten evitar costosas confusiones conceptuales.

    No es mediante el descubrimiento de nuevos objetos y de sus mltiples conexiones que

    avanzamos en las respuestas a nuestros interrogantes cuando modelamos un dominio,

    sino mediante la disolucin de las contradicciones que existen entre los trminos

    (conceptos) ya conocidos y, en ltimo caso, mediante la reduccin de su nmero

    despejando aquellos conceptos que no aaden valor a la comprensin de dicho dominio.

    Reconsiderar lo obvio, desenmascarar presunciones, desambigar conceptos conocidos,

    todo en busca de la simplicidady la usabilidad.

  • 7/31/2019 UML - Guia Visual

    4/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]

    Autor: Josep Vilalta

    Mucha gente cree que la principal utilidad de la orientacin a objetos es la reutilizacin

    del cdigo para conseguir un desarrollo ms rpido de las aplicaciones (Rapid

    Application Development). No comparto esta opinion. Si hay algo que caracteriza un

    entorno de desarrollo actual es la constante del cambio. Todo proyecto que sobrepase

    los tres meses est amenazado por la aparicin de nuevas plataformas ms exigentes, laextincin de herramientas sin previo aviso y, de manera sistemtica, por la rotacin del

    personal crtico encargado del proyecto. Tambin est sometido, como no, a los

    cambios de requerimientos del cliente que a su vez estn plenamente justificados por la

    readaptacin de sus procesos de negocio a un mercado inestable.

    Ante este cuadro de incertidumbre, el mayor desafio de una metodologa de desarrollo

    es su adaptacin para el cambio. Esto significa crear modelos que faciliten la

    comunicacin entre todos los agentes involucrados en el sistema en construccin; que

    hagan visible la trazabilidadentre la concepcin de los componentes, su especificacin,

    implementacin e instalacin; significa el diseo de arquitecturas que faciliten la

  • 7/31/2019 UML - Guia Visual

    5/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    A quin va dirigida esta gua visual?

    Esta gua ha sido escrita y diseada para los profesionales involucrados en todos los

    ciclos de actividad del desarrollo de sistemas de informacin (concepcin, anlisis y

    diseo, implementacin, instalacin de aplicaciones, gestin y certificacin deproyectos); tambin para los que tengan responsabilidades en la especificacin de

    procesos de negocio con el propsito de evaluar posibles reingenieras de procesos y/o

    diseo de bases de conocimiento; y finalmente, para aquellos equipos que estn

    inmersos en la preparacin e implementacin de certificaciones de calidad.

    La claridad conceptual y los recursos didcticos utilizados en la exposicin de los

    distintos procedimientos sern de utilidad para los estudiantes que sigan programas de

    autoaprendizaje y usen esta gua como complemento para sus lecturas de libros sobre

    UML. Tambin los centros acadmicos y profesores dispondrn con esta gua de

    material interesante para completar sus diseos curriculares y proporcionar ejemplos

  • 7/31/2019 UML - Guia Visual

    6/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    Un plan de estudio para realizar una progresiva asimilacin de los conceptos podra

    empezar con los Casos de Uso (CU) y continuar con el anlisis de los flujos de trabajo

    de un grupo de CU mediante los diagramas de Actividad; a continuacin, separar los

    escenarios que agrupan una serie de actividades y hacer aflorar, a travs de los

    diagramas de Interaccin, los objetos que intercambian una serie de mensajes. A partirde este punto, disponemos del bagaje suficiente como para introducirnos en la

    abstraccin de los objetos y comprender la importancia de separar las tres perspectivas

    bsicas en nuestra representacin de las clases: concepcin, especificacin e

    implementacin. El siguiente paso es identificar alguna clase con un comportamiento

    complejo que la haga candidata a revisar todos sus posibles estados y averiguar que

    eventos son capaces de provocar un cambio de estado. El diagrama de Estados-

    Transicin ser el adecuado para representar esta dinmica de estados. Finalmente,

    abordaremos la configuracin de componentes y su despliegue en una arquitectura.

    Otra lectura de la gua puede estar mas centrada en el seguimiento de la metodologa de

  • 7/31/2019 UML - Guia Visual

    7/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    De dnde provienen las ideas expuestas?

    El contenido de esta gua ha sido elaborado a partir del trabajo de una serie de

    profesionales que el autor ha tenido la oportunidad de estudiar y aplicar en distintos

    proyectos. Desde principios de los 90, los artculos publicados en elJournal of Object

    Oriented Programming (JOOP) por James Odell, James Rumbaugh, Grady Booch,Desmond dSouza, Bertrand Meyer, Steve Cook, John Daniels, Sally Shlaer y

    Stephen J. Mellor entre otros, han sido una constante fuente de conocimiento.

    Publicaciones pioneras como el Object Oriented Technology, A Managers Guide de

    David A. Taylor, en su primera edicin de 1990 y en la segunda ampliada de 1998, han

    tenido una gran influencia en como abordar la presentacin didctica. Tambin loslibros de Peter Coad et al, Object Oriented Analysis, Design and Programming, Object

    Models y Java Modeling Color with UML, han sido de una ayuda extraordinaria. La

    obra enciclopdica The Unified Modeling Language: Reference Manual de Rumbaugh

    & Jacobson & Booch, es un punto de referencia constante. Sin duda, uno de los autores

    ms influyentes ha sido Martin Fowler. Su primer libroAnalysis Patterns continua

  • 7/31/2019 UML - Guia Visual

    8/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    Competencia y actuacin

    En los ltimos veinte aos de mi carrera profesional en el desarrollo de sistemas de

    informacin he participado en una gran diversidad de proyectos con distintos grados de

    responsabilidad e involucracin, pero siempre con un compromiso firme en la calidad y

    usabilidad del producto final.

    Entorno industrial

    o CIM para la extrusin de polietileno y fabricacin de mallas agrcolas y

    de embalaje.

    o

    CIM para el fraccionamiento de hemoderivadoso Plan Funcional para la implementacin SAP-Logstica

    Entorno sanitario

    o Gestin de Bancos de Sangre y Hemoterapia

    o Planificacin y gestin de campaas de captacin de donantes

  • 7/31/2019 UML - Guia Visual

    9/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    Entorno de ingeniera del software

    o Framework de clases de anlisis para definir mapas conceptuales

    o Framework de servicios comunes para la publicacin dinmica de

    pginas HTML

    o Framework de certificacin de entregables

    Entorno administrativo y de gestin

    o Plan Funcional para la implementacin SAP-Contabilidad

    o Cuadro de control de indicadores de actividad y calidad

    o Sistema de informacin Ejecutivo

    Entorno comercial

    o Merchandising de productos farmacuticos

    o Subastas y liquidacin de lotes

    o Gestin de redes de puntos de venta con videoconferencia

  • 7/31/2019 UML - Guia Visual

    10/47

    rg

    Proyecto: Presentacin del borrador: UML Gua Visual

    Documento: UML Gua Visual

    Historial: 03/09/01 9:03

    Situacin: Borrador en curso de revisin

    Proceso: Evaluacin de contenidos ref.- contacto:[email protected]: Josep Vilalta

    Entorno docente

    o Tutoras de proyectos de fin de carrera con UML

    o Cursos de Anlisis, Diseo y Patrones

    o Talleres de introduccin a UML

    o Talleres avanzados de UML con Rose y Visio

    o Talleres monogrficos (Casos de Uso, Mtrica, Metodologa)

    Entorno de I+D

    o Bases de conocimiento con vocabularios controlados

    o Procesador de lenguaje natural dentro del dominio mdico

    o Reconocimiento automtico de conceptos clnicos a partir de textos no

    estructurados

  • 7/31/2019 UML - Guia Visual

    11/47

    Niveles de concepcin y formalizacinde un pr oyecto

    Nivel

    Nivel 1 Nivel 2 Nivel 3 Nivel 4 Nivel 5

    P r o c e s o sP r i n c i p a l e s

    Glosar iod e C o n c e p t o s

    Matr culad e l P r o y e c t o

    Code l i ke he l l

    Espec i f icac inCasos de Uso

    F lu josde T r a ba jo

    C

    d

    igo

    D in mic aE ve n tos - E s t a dos

    C r o n o g r a m aP l a n D i r e c t o r

    I t e r a c i o n e s

    Func iona l ida dDiag ramas de

    Casos de Uso

    Use Case

    A c to r

    A c to r

    C l a s e sA n l i s i s

    D i s e o

    I m p l e m e n t a c i n

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Verificando Sirviendo

    EntregadoEsperando

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos ite

    ms disp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos ite

    msdisp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    P

    M

    * [para cada pedido seleccionado]

    EntrarReposicin

    SeleccionarPedidos

    Pendientes

    AsignarItems

    RegularizarStock

    ActivarPedido

    EntrarReposicin

    EntrarReposicin

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    PPDI

    G

    CUCU

    E sc e na r iosI n t e r a c c i n

    d e o b j e t o s

    tieneStock:= comprobar ( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedidoUn pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : Item de Expedicin : Item de Pedido de reposicin

    tieneStock:( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedido

    Un pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : I te m de E xp ed i ci n : I te m de P ed i do d e r e po s ic i n

    1

    VilaltaConsultores2001-TRADUM

    D_

    esp-Rev.

    5.2-

    [email protected]

  • 7/31/2019 UML - Guia Visual

    12/47

    E s f u e r z o d e d e s a r r o l l oP D P

    ProductoProcesos

    Actividades

    Entregables

    TiempoFases

    Iteraciones

    M i s i n

    Concepc in Forma liza c in Const rucc in Tra nsic in

    I t e r a c i o n e s

    I te rac ionespre l iminares I ter # 1 I ter # 2 I ter # n

    Iter# n+ 1 Iter # n

    Iter# n+ 2

    Iter# n+ 1

    M o d e l o

    C o m p o n e n t e s

    C e r t i f i c a c i n

    P r o t o t i p o

    VilaltaConsultores2000-TRAD

    PDPiteraciones_

    esp-Rev.

    4.2-

    jvilalta@

    vico.org

    2

  • 7/31/2019 UML - Guia Visual

    13/47

    VilaltaConsultores2001-TRADPD

    Pmisin_

    esp2-Rev.

    5.2-

    [email protected]

    rg

    M i s i n

    C on c ep c i n F or ma li za c i n C on st ru c ci n Tr a ns ic i n

    I t e r a c i o n e s

    Iteracionesprel iminares I t e r # 1 I t e r # 2 I t e r # n

    Iter# n+ 1 Iter # n

    Iter# n+ 2

    Iter# n+ 1

    M o d e l o

    C o m p o n e n t e s

    C e r t i f i c a c i n

    P r o t o t i p oP l a n D ir e c t o r d e P r o y e ct oP D P

    C o n c e p c i n

    Anteproyec to

    Pa t r o n es d e

    Anlisis

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacinP

    Pa t r o n es d e

    Fu n c io n a l id ad

    U se C ase

    A c to r 2

    A c to r 1

    U se C ase

    U se C ase

    U se C ase

    U se C ase

    U se C ase

    P

    P r o c e s o s

    pr inc ipa l e s

    Matr cula

    d e l p r o y e c t o

    Glosar iod e C o n c e p t o s

    C r o n o g r a m aP l a n D i r e c t o r

    I t e r a c i o n e s

    PM

    PPDIG

    Misin

    3

  • 7/31/2019 UML - Guia Visual

    14/47

    VilaltaConsultores2001-TRADPD

    Pmodelo

    _esp2-Rev.

    5.3-

    [email protected]

    M i s i n

    C on c ep c i n F or ma li za c i n C on st ru c ci n Tr a ns ic i n

    I t e r a c i o n e s

    Iteracionesprel iminares I t e r # 1 I t e r # 2 I t e r # n

    Iter# n+ 1 Iter # n

    Iter# n+ 2

    Iter# n+ 1

    M o d e l o

    C o m p o n e n t e s

    C e r t i f i c a c i n

    P r o t o t i p oP la n D ir e c t o r d e P r o y ec t o

    P D P

    F o r m a l i z a c i n

    Pa t r o n es d e

    Anlisis

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacinP

    Pa t r o n es d e

    Fu n c io n a l id ad

    Use Case

    A c to r 2

    A c to r 1

    U se C ase

    U se C ase

    U se C ase

    U se C ase

    U se C ase

    PModelo

    Func iona l ida dDiag ramas de

    Casos de Uso

    C l a s e sA n l i s i s

    y D i s e o

    U se C ase

    A c to r

    A c to r

    Pedido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    Comercial

    C lient eC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Espec i f icac inCasos de Uso

    F lu jos deT r a ba jo

    D in mic aE ve n tosE s t a dos

    Verificando Sirviendo

    EntregadoEsperando

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslosite

    msd

    ispo

    nibl

    es]

    Entregadorimer item

    rimer item

    rimer item

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos item

    s disp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    CU * [para cada pedido seleccionado]

    Entrar

    Reposicin

    SeleccionarPedidos

    Pendientes

    AsignarItems

    RegularizarStock

    ActivarPedido

    EntrarReposicin

    EntrarReposicin

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    E sc e na r iosI n t e r a c c i n

    d e o b j e t o s

    tieneStock:= comprobar ( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedidoUn pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : It e m d e Ex p ed i ci n : It e m d e Pe d id o de r ep o si c i n

    tieneStock:( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedido

    Un pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : I te m de E xp ed i ci n : I te m de Pe d id o de re p os ic i n

    4

  • 7/31/2019 UML - Guia Visual

    15/47

    VilaltaConsultores2001-TRADPD

    Pconstruccin_

    esp2-Rev.

    5.3-

    jvilalta@

    vico.org

    M i s i n

    C on c ep c i n F or ma li za c i n C on st ru c ci n Tr a ns ic i n

    I t e r a c i o n e s

    Iteracionesprel iminares I t e r # 1 I t e r # 2 I t e r # n

    Iter# n+ 1 Iter # n

    Iter# n+ 2

    Iter# n+ 1

    M o d e l o

    C o m p o n e n t e s

    C e r t i f i c a c i n

    P r o t o t i p oP l a n D ir e c t o r d e P r o y e ct oP D P

    Pedido

    hacer /comprobacinitem

    C lient e

    Lnea de P edido

    P roduct o

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Alumno P . Gl o ba l P . E sp . ResultadoSeleccin Ver

    Destino

    Versin

    Tribunal

    Ao Acadmico*

    **FechaActa

    Alumnos

    Framework

    de Apl icac iones

    Pa t r o n es d e

    Diseo

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P

    C o n s t r u c c i n

    Alumno P . G lo ba l P . Es p. ResultadoSeleccin Ver

    Destino

    Versin

    Tribunal

    AoAcadmico*

    **FechaActa

    Alumnos

    C l a s e sD i s e o

    I m p l e m e n t a c i n

    Ba se de D a tosEsquema de Pers i s tenc ia

    A r qui t e c tu r aComponen tes

    I n t e r f a c eG r f i c o de U sua r io

    Pedido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    C omerc ial

    C lient eC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    C o mp o n e n te s

    5

  • 7/31/2019 UML - Guia Visual

    16/47

    VilaltaConsultores2001-TRADPDP

    _esp2-Rev.

    6.2-

    [email protected]

    F o r m a l i z a c i n

    M i s i n

    C on ce p ci n F or ma l iz a ci n C on st r uc c i n Tr a ns ic i n

    I t e r a c i o n e s

    Iteracionesprel iminares I t e r # 1 I t e r # 2 I t e r # n Iter# n+ 1 Iter # nIter# n+ 2 Iter# n+ 1

    M o d e l o

    C o m p o n e n t e s

    C e r t i f i c a c i n

    P r o t o t i p oP l a n D ir e c t o r d e P r o y e ct oP D P

    Modelo

    Func iona l ida dDiag ramas de

    Casos de Uso

    C l a s e sA n l i s i s

    y D i s e o

    U se C ase

    A c to r

    A c to r

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Pedido

    hacer /comprobacinitem

    C lient e

    Lnea de P edido

    P roduct o

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Espec i f icac inCasos de Uso

    F lu jos deT r a ba jo

    D in mic aE ve n tosE s t a dos

    Verificando Sirviendo

    EntregadoEsperando

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos ite

    ms disp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslosite

    msdisp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    CU * [para cada pedido seleccionado]

    EntrarReposicin

    SeleccionarPedidos

    Pendientes

    AsignarItems

    RegularizarStock

    ActivarPedido

    EntrarReposicin

    EntrarReposicin

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    C o n c e p c i n

    Anteproyec to

    P r o c e s o spr inc ipa l e s

    Matr culade l p r oye c to

    Glosar iod e C o n c e p t o s

    C r o n o g r a m aP l a n D i r e c t o r

    I t e r a c i o n e s

    PM

    PPDIG

    Misin

    C o n s t r u c c i n

    Alumno P . G l o ba l P . E s p . ResultadoSeleccin Ver

    Destino

    Versin

    Tribunal

    Ao Acadmico*

    **FechaActa

    Alumnos

    C l a s e sD i s e o

    I m p l e m e n t a c i n

    Ba se de D a tosEsquema de Pers i s tenc ia

    A r qui t e c tu r aComponen tes

    I n t e r f a c eG r f i c o de U sua r io

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de Pedido

    Producto

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Pedido

    hacer /comprobacinitem

    C lient e

    Lnea de P edido

    P roduct o

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    C o mp o n e n te s

    E sc e na r iosI n t e r a c c i n

    d e o b j e t o s

    tieneStock:= comprobar ( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedidoUn pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : I te m de E xp e di c i n : I te m de Pe d id o de r ep o si ci n

    tieneStock:( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedido

    Un pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : Item de Expedicin : Item de Pedido de reposicin

    6

  • 7/31/2019 UML - Guia Visual

    17/47

    A la bsqueda de Actores.-

    1. Quien est interesado en un requerimiento concreto ?

    2. En qu dominios de la organizacin se usar el sistema ?

    3. Quien ser beneficiario de la nueva funcionalidad ?

    4. Quien proveer, usar y/o retirar, informacin ?

    5. Quien dar soporte y administrar el sistema ?

    6. Usar el sistema un recurso externo ?

    7. Un usuario actuar con diferentes roles ?

    8. Diferentes usuarios actuarn con un mismo rol ?

    9. Interaccionar el nuevo sistema con un sistema antiguo ?

    Cmo identificar Actores ?

    Sistema en proceso de modelado

    Interaccin de unActor con el Sistema

    Interaccin del

    Sistema con un ActorCliente- Role de usuario -

    Actores

    Representan a un agente que interacta con el sistema

    No son parte del sistema que se desarrolla

    Entran informacin al s is tema

    Reciben informacin del sistema

    Entran y reciben informacin

    Relacin que indica laespecializacin a partir de una

    funcin genrica

    Realizar unatransaccin

    Usar Cajero

    Automtico> Subsis tema

    de cuentascliente

    - Role de subsis tema -

    Subsitemade certificacin

    de mediosde pago

    - Role de subsis tema -

    A c t i v a rT a r j e t a

    R e t i r a rE f e c t i v o

    C o n s u l t a rM o v i m i e n t o s

    Func iona l ida dDiag ramas deCasos de Uso

    A c to r

    A c to r

    1

    VilaltaConsultores2001-TRAD

    Actores_

    esp-Rev.

    5.1-

    [email protected]

  • 7/31/2019 UML - Guia Visual

    18/47

    A la bsqueda de Casos de Uso.-

    1. Cuales son las tareas y responsabilidades de cada actor ?

    2. Algn actor crear, almacenar, cambiar, borr ar o leer informacin del sistema ?

    3. Qu Casos de Uso crearn , almacenarn, cambiarn, borr arn o leern esta informacin ?

    4. Es necesario que un Actor informe al sistema sobre cambios externos ?

    5. Es necesario que un Actor sea informado sobre ciertas incidencias del sistema ?

    6. Qu Casos de Uso darn soporte y mantendrn el sistema ?

    7. Pueden ser realizados por los Casos de Uso todos los requerimientos funcionales documentados ?

    Cmo identificar Casos de Uso ?

    Abrir ArqueoHacer un

    Inicio de Da

    Hacer unFin de Da

    Exportarmovimientos

    Piezas de funcionalidad del sistema

    que suministran valor a un Actor y sonreutilizables en diferentes procesos

    Relacin que describe una variacinposible del comporta miento normal

    de un Use Case

    Relacin que per mite descomponer

    un Use Case con un determinadonivel de granularida d

    Imprimirdocumento

    Sistema en proceso de modelado

    Interaccin de un

    Actor con el Sistema

    Interaccin del

    Sistema con un Actor

    Supervisor- Rol de usuario -

    Importar nuevaconfiguracin

    Contabilidad- Sis tema externo -

    Cajero- Rol de usuario - Cerrar Arqueo

    >

    >

    >

    >

    >

    Relacin que indica el uso deuna funcionalidad compartida

    por otros Casos de Uso

    Func iona l ida dDiag ramas deCasos de Uso

    A c to r

    A c to r

    2

    VilaltaConsultores2001-TRAD

    UCs_

    esp-Rev.

    5.1-

    [email protected]

  • 7/31/2019 UML - Guia Visual

    19/47

    Especificacinde un Caso de Uso

    LIMIT

    Lmites: Cuando empieza y cmo termina el Caso de Uso.

    Interacciones: Comportamiento de Actores y Sistema.Accin-Reaccin dentro del Caso de Uso.

    Masa: Conjunto d e Objetos e Inter faces que requiereel Caso de Uso.

    ndice de escenarios: Flujo principal de eventos y secuenciade variaciones posibles dentro de un Caso de Uso.

    Tribulaciones: Contingencias probables que p ueden afectaral flujo de los eventos y son excepciones del Caso de Uso.

    Propsito- Regla de Negocio - P r econdiciones Activacin Flujo P r incipal Var iaciones Excepciones

    Cerrar un periodo demovimientos de cajapara obtener una

    situacin real de dineroen efectivo y endocumentos.

    Arqueo abierto Actor habilitado TPV abierto

    TPV habilitado

    A discrecin de un Actorhabilitado

    1. Sistema requiere confirmacin decierre de arqueo.

    a. Si Actor decide aparcarel cierre de arqueo,sistema activa UC Aparca_arqueo y termina

    el UC.

    2. Sistema comprueba la configuracinde TPV para identificar tipo de cierre.

    3. Sistema calcula los totales tericospara cada forma de cobro.

    4. Actor introduce totales reales para cadaforma de cobro.

    5. Sistema registra el cierre: importesreales para cada forma de cobro y

    descuadres.

    6. Sistema imprime el documentoTirade Arqueo.

    a. Cierre de arqueo de tipo abierto: Actor decide el momento de imprimir eldocumento Tira de Arqueo.

    a. Si el servidor est off-line, sistema informaal usuario, termina el UC manteniendo el

    arqueo abierto.

    b. Cierre de arqueo de tipo ciego: Sistema no muestra los totales tericos para

    cada forma de cobro.

    a. Si impresora est off-line, sistema informaal usuarioy le pide con fir ma cin para

    continuar.

    Hacer unFin de Da

    Imprimirdocumento

    Cerrar Arqueo >

    >

    Caso de Uso principal

    Casos de Uso secundarios

    Caso de Uso especializadoCaso de Uso genrico

    Imprimir

    t ira de arqueo

    Func iona l ida dDiag ramas deCasos de Uso

    A c to r

    A c to r

    3

    VilaltaConsultores2001-TRADLI

    MITUCs_

    esp-Rev.

    5.1-

    [email protected]

    g

  • 7/31/2019 UML - Guia Visual

    20/47

    Venta jas de l modeloUse Case

    Piezas de funcional idad reut i l izablesen di ferentes procesos de negocio

    1. Lenguaje de comunicacin entre usuariosy desarrolladores.

    2. Comprensin detallada de la funcionalidaddel sistema.

    3. Acotacin pr ecisa de las habilitaciones delos usuarios.

    4. Gestin de r iesgo ms eficiente par agobernar la complejidad.

    5. Estimacin ms exacta para determinartiempo, recursos y prioridades en la dosificacinde esfuerzo de desarrollo.

    6. Fiel trazabilidad para verificar la traduccinde r equer imientos en cdigo ejecutable.

    7. Mayor control para mantener las sucesivasrevisiones de los pr ogramas.

    8. Certificacin contr actual Cliente-Desarrollador.

    9. Documentacin orientada al usuario: Helps- Manual de P rocedimientos - Reglas de Negocio.

    10. Documentacin orientada al administradordel sistema: Soporte de Mantenimiento.

    Hacer unInicio de Da

    Exportarmovimientos

    Imprimirdocumento

    Importar nuevaconfiguracin

    Cerrar Arqueo

    >

    >

    >

    >

    Hacer unFin de Da

    >

    Imprimirt ira de arqueo

    Abrir Arqueo

    Func iona l ida dDiag ramas d eCasos de Uso

    A c to r

    A c to r

    4

    VilaltaConsultores2001-TRADmodeloUC

    _esp-Rev.

    5.1-

    [email protected]

  • 7/31/2019 UML - Guia Visual

    21/47

    Requerimientos y Casos de Uso

    Los Casos de Uso son requerimientos funcionales que describende una manera detallada el comportamiento del sistema con

    los distintos Actores que interactan con l.

    No definen todos los requerimientos (por ej. los tipos dedatos, interfaces externas, niveles de rendimiento esperado,etc.), pero representan el hilo conductor que vincula a todoslos requerimientos posibles (actuales y futuros) de unaaplicacin.

    Caso de Uso

    Requer

    im ientos

    Mode

    lo

    Arqui

    tectu

    ra

    Gestin

    de

    Proyecto

    Ce

    rt

    ifi

    caci

    n

    Reglasde Negocio

    y protocolos deintercambio de

    informacin

    Funcionales,no funcionalese interfaces de

    usuario

    Mapa conceptual:Clases de an lisis

    Dinmica deClases complejas

    Mapa funcional:Flujos de trabajo

    principales yvariaciones

    Escenarios deinteraccinde objetos:

    Clases de diseo

    Mtrica:Escandallo de

    recursosy actividades

    Plan Directorde Iteraciones:

    Cronogramay prioridades

    Funcionalidad,Anlisis y Diseo

    Implementacinde cdigo yRefactoring

    Func iona l ida dDiag ramas deCasos de Uso

    A c to r

    A c to r

    5

    VilaltaConsultores2001-TRAD

    Re

    qyCUs_

    esp-Rev.

    1.1-

    [email protected]

    Recepcin Evento queCU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    22/47

    Descripcinde un Flujo de Tr abajo

    Un flujo de trabajo muestra la secuencia de actividadesque se desarrollan dentro de uno o varios Casos deUso, como una pieza de funcionalidad concr eta quesatisface los requerimientos de un Actor.

    Diagrama de ActividadNotacin UML 1.3

    * [para cada lnea de pedido]

    Concurrencia dinmica de actividades

    Recepcinde un

    Pedido

    [SI vigente]

    [NO]

    Barra de s incronizacin

    Actividad

    Punto de decisin

    Barra de fusin

    Condicin lgica: verdadera o falsa,que permite la tra nsicin

    a otra actividad

    Evento que

    desencadena

    la secuencia de

    actividades

    Anlisis textual

    del Caso de Uso

    Flu jo Pr inc ipa l Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    4. Sistema comprueba la situacin delpedi do .

    a. SI se ha realizado el pago y SI todos los itemsdel pedido han sido asignados, sistema

    informa que procede a servir el pedido

    activando el CU Servir pedido .

    b. SI se ha realizado el pago y NO existensuficientes items del artculo en stock, sistema

    aparca el pedido del cliente activando el CUAparcar pedido.

    c. SI no se ha realizado el pago segn el plazoconvenido, sistema cancela el pedido.

    CU Realizar pedido

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo .

    [NO vigente]

    [NO Stock] o

    [SI umbral reposicin]

    [SI]

    [Todos l os it em s a si gnados ] [Fa lt an it em s por as igna r]

    CancelarPedido

    IdentificarCliente

    Entrarlneas pedido

    ComprobarArtculo

    ComprobarPago

    ServirPedido

    Generarreposicin

    SeleccionarArtculo alternativo

    AsignarItems

    Comprobarsituacin Pedido

    AparcarPedido

    Flu jos deT r a ba jo

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    1

    VilaltaConsultores2001-TRAD

    Ac

    tividad1

    _esp-Rev.

    7.1-

    [email protected]

    CU A t li i i

  • 7/31/2019 UML - Guia Visual

    23/47

    Descripcinde un Flujo de Tr abajo

    Diagrama de ActividadNotacin UML 1.3

    * [para cada pedido

    seleccionado]

    Recepcinde una

    Reposicin

    [Todos los items asignados] [Todos las reposiciones entradas]

    F lu jo Pr in c ip a l

    1. Usuario recepciona albaranes dereposicin que ha enviado un proveedor.

    2. Sistema localiza los pedidos de clientesaparcados que pueden cumplimentarse

    con la nueva entrada de items.

    3. Usuario selecciona los pedidos declientes aparcados que decide

    cumplimentar.

    4. Sistema asigna los items pendientes alos pedidos de cliente seleccionados.

    5. Sistema informa que procede a servirel pedido activando el CU Servirpedido..

    6. Sistema regulariza la situacin de itemsen stock y revisa los umbrales de

    reposicin automtica.

    Una diagrama de actividad descr ibe una secuencia deactividades que pueden exhibir un comport amiento enparalelo o estar sujetas a condiciones lgicas.

    Los procesos de negocio no muestran siempre una secuenciaf ija en su desarr ollo, es una ventaja as poder modelarbloques de actividades sin restr icciones de concur rencia.

    Transicin de una a ctividad a otra sujeta

    a una condicin lgica.

    Sincronizacin de actividades que

    pueden ocurrir en paralelo .

    CU Actualizar reposicin

    ServirPedido

    SeleccionarPedido

    AsignarItems

    Fin de la secuencia de

    actividades

    Anlisis textual

    del Caso de Uso

    EntrarReposicin

    BuscarPedidos aparcados

    RegularizarStock

    Flu jos deT r a ba jo

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    2

    VilaltaConsultores2001-TRAD

    Ac

    tividad2

    _esp-Rev.

    5.2-

    [email protected]

    D i iRecepcin 3

  • 7/31/2019 UML - Guia Visual

    24/47

    Descripcinde un Flujo de Tr abajo

    Diagrama de ActividadNotacin UML 1.3

    Un diagrama de actividad puede mostrar la secuencia deactividades que se desarrolla en un paquete de Casos deUso que define un proceso de negocio y sus reas deresponsabilidad.

    [SI xito]

    [NO xito]

    Contabilidad Comercial Almacn

    Lneas para acota r

    reas de responsabilidad

    (swim-lines)

    * [para cada lnea de pedido]

    Recepcinde un

    Pedido

    IdentificarCliente

    Entrarlneas pedido

    ComprobarPago

    CancelarPedido

    [NO Stock]

    o [SI umbral reposicin]

    Generarreposicin

    EntrarReposicin

    [Recepcin de Reposicin]

    [SI vigente]

    [NO vigente]Seleccionar

    Artculo alternativo

    [Todos los items asignados] [Faltan items por asignar]

    ServirPedido

    Comprobarsituacin Pedido

    AparcarPedido

    * [para cada pedido

    seleccionado]

    Seleccionar

    Pedido

    BuscarPedidos aparcados

    [Todos las reposiciones entradas]

    RegularizarStock

    ComprobarArtculo

    AsignarItems

    Flu jos deT r a ba jo

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    3

    VilaltaConsultores2001-TRADActividad3

    _esp-Rev.

    6.1-

    [email protected]

    g

    D i i 4

  • 7/31/2019 UML - Guia Visual

    25/47

    Descripcinde un Flujo de Tr abajo

    Diagrama de ActividadNotacin UML 1.3

    Su objetivo no es relacionar actividad con objetos, slocompren der qu actividades son necesarias y cuales son susrelaciones de dependencia.

    El diagrama de actividad nos permite definir en qu ordense van a realizar distintas tareas. Los diagramas de flujo(flowchart ) slo nos per miten modelar proce sos secuenciales,mientras que los diagramas de actividad nos per mitenestablecer procesos en par alelo.

    ComprobarCliente habitual

    Importe> 150.000

    ComprobarCrdito

    Pre-Pagorequerido

    [Tarjeta de Crdito]

    NO xito

    [NO xito]

    [Cheque]

    [SI xito][SI xito]

    SI xito

    [SI xito]

    [SI xito]

    [NO xito]

    [NO]

    [NO]

    [SI]

    [SI]

    [Factura]

    [NO xito]

    [NO recibido]

    NO xito

    [NO xito]

    Autorizacin

    [Efectivo]

    Descomposicinde la actividad

    ComprobarPago

    ComprobarPago

    ComprobarCheque

    Comprobarhistorial pagos

    AbrirCuenta Cliente

    Pueden procesarse distintas

    modalidades de pago de

    manera s imultanea

    Flu jos deT r a ba jo

    * [para cada pedido seleccionado]

    ActivarPedido

    RegularizarStock

    AsignarItems

    EntrarPedido

    ValidarPago

    SeleccionarPedidos

    ValidarRiesgo

    4

    VilaltaConsultores2001-TRADA

    ctividad4

    _esp-Rev.

    5.2-

    [email protected]

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    26/47

    Descripcinde un Escenar io

    Diagrama de SecuenciaNotacin UML 1.3

    2:generarPedido ( )

    4:generarLneaPedido ( )

    5:comprobarStock ( )

    6:asignarItems ( )

    7:realizarReposicin ( )

    Objetos que

    interac tan

    Mensaje

    Auto-mensaje

    Lnea de vida

    de un objeto

    durante la inte racc in

    (1 )

    Mensajes enviados entre los objetos descritos en

    el flujo de eventos de un Caso de Uso.

    Estos mensajes muestran el nivel de colaboracin

    entre los distintos objetos existentes e indican

    cuando se requiere generar nuevos objetos para

    cumplir con las responsabilidades asignadas.

    (1 )

    Utilizamos dos diagramas de interaccin:a/. Secuenciab/. Colaboracin

    Su finalidad es describir los mensajes que inter cambian losdistintos objetos para cumplir con las responsabilidadesdefinidas en un escenario con creto de un Caso de Uso.

    Diagrama de Secuencia.- Representa lasinteracciones de objetos ordenadas en un a serie temporal

    que muestr a su ciclo de vida.

    1:indentificarCliente ( )

    8:generarReposicin ( )

    Creacin de

    un nuevo

    objeto

    Un escenario muestra de que manera interactan los distintosobjetos dentro del flujo principal de eventos de un Caso deUso con alguna variacin o exten sin concr eta del mismo.

    :Comerc ia l

    3:entrarLneaPedido ( )

    Anlisis textualdel Use Case

    Flu jo Pr inc ipa l Var iac ion es

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    p

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo.

    :Una Cartera

    de Items

    en Stock

    :Un Pedido

    de

    Reposicin

    :Una Ventana de

    introduccin de

    Pedidos

    :Un Pedido:Una Lnea

    de Pedido

    E sc e na r ios

    tieneStock:( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedido

    Un pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : Item de Expedicin : Item de Pedido de reposicin

    1

    VilaltaConsultores2001-TRADS

    ecuencia

    _esp-Rev.

    6.1-

    [email protected]

    DescripcinCU Realizar pedido 2

  • 7/31/2019 UML - Guia Visual

    27/47

    Descripcinde un Escenar io

    Diagrama de ColaboracinNotacin UML 1.3

    2: generarPedido ( ) 5: comprobarStock ( )

    6: asignarItems ( )

    7: realizarReposicin ( )

    Objeto

    (Instancia de una Clase)

    Auto-mensaje

    8: generarReposicin ( )

    Nmero de secuencia

    Mensajes enviados entre los objetos descritos en

    el flujo de eventos de un Caso de Uso.

    Estos mensajes muestran el nivel de colaboracin

    entre los distintos objetos existentes e indican

    cuando se requiere generar nuevos objetos para

    cumplir con las responsabilidades asignadas.

    (1 )

    Un escenario describe una instancia del flujo de eventos deun Caso de Uso, con sus variaciones o extensiones posibles

    y las excepciones probables.

    Diagrama de colaboracin.- Representa unaposible interaccin de los objetos ordenados a partirde la t opologa qu e muestr a el envio de sus mensajes.

    Con un escenario representamos el conjunto de eventos queconfigura el compor tamiento de un Caso de Uso.

    Enlace entre

    dos objetos

    Direccin del mensaje

    Utilizamos dos diagramas de interaccin:a/. Secuenciab/. Colaboracin

    Su finalidad es describir los mensajes que intercambian losdist intos objetos par a cump lir con las r esponsabil idadesdefinidas en un escenario concr eto de un Caso de Uso.

    Anlisis textual

    del Use Case

    Flu jo Pr inc ipa l Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    CU Realizar pedido

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo .

    : Comercial

    : Una Ventana de introduccin de Pedidos

    : Un Pedido

    : Una Lnea de Pedido

    :Una Cartera de Items en Stock

    : Un Pedido de ReposicinE sc e na r ios

    tieneStock:( )

    Una ventana deintroduccin de

    pedidos

    Un itemde stock

    Una lneade pedido

    Un pedido

    [tieneStock]nuevo

    [tieneStock]

    nuevo

    : Pedido

    xxx stock : item de stockxxx lnea : Lnea de pedido

    : Item de Expedicin : Item de Pedido de reposicin

    1: identificarCliente ( )

    3: entrarLneaPedido ( )4: generarLneaPedido ( )

    Mensaje (1 )

    2

    VilaltaConsultores2001-TRADC

    olaboracin_

    esp-Rev.

    6.1-

    jvilalta@vico

    .org

    1

  • 7/31/2019 UML - Guia Visual

    28/47

    ClasesDesde una perspectiva conceptual , una Clase repr esenta unconjunto de Objetos que comparten:

    Las mismas pro piedades (Atr ibutos)

    El mismo comportamiento (Mtodos) Las mismas relaciones con otr os Objetos (Mensajes) La misma semntica dentro del sistema

    Un Objeto representa una entidad del mundo real o inventada.Es un concepto, una abstr accin o algo que dispone de unoslmites bien definidos y tiene una significacin para el sistemaque se pretend e modelar .

    Estructura y funcin: Identidad Quien soy? = Atr ibutos Pr opsito Cual es mi misin? = Justificacin Responsabil idades Qu debo hacer? = Mtodos Pr ocedencia De qu Clase provengo? = Origen Relaciones Qu mensajes entiendo? = Comportamiento

    Objetos

    Desde una perspectiva fsica, una Clase es una pieza de softwareque actua como un molde para fabricar t ipos part iculares deobjetos que disponen de los mismos atributos y mtodos.

    Estos elementos que configuran cada t ipo de objeto slo sedefinen una vez, cuand o especificamos la estructu ra de la Clasea la que pertenecen.

    Los objetos que se han cr eado a par t ir de una Clase concreta,se llaman instancias de esta Clase y se diferencian entre ellosnicamente por los valores de sus atributos (variables).

    Diagrama de ClasesNotacin UML 1.3

    PedidoFechaRecibidoConPrepagoNmeroImporteDivisa...

    Cliente

    Lnea de Pedido

    Producto

    Representante

    ClienteCorporativo

    ClientePersonal

    1*

    1

    *0..1

    *

    * 1

    facturarMes( )recordar( )

    aceptar ( )

    valorarCredito( ): string

    seleccionar ( )comprobar ( )servir ( )cerrar ( )...

    NombreDireccion

    NombreContactoValoracionCreditoLimiteCredito

    NumTargetaCredito

    CantidadImporteCumplimentada

    O b je t o s Cla se s

    Pedido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    C omerc ial

    C lient eC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    1

    VilaltaConsultores2001-TRADC

    lases1

    _esp-Rev.

    6.1-

    [email protected]

    Ab i 2

  • 7/31/2019 UML - Guia Visual

    29/47

    Abstraccin

    mtodo4

    mtod

    o1

    Atributos

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    mtodo2

    mtod

    o3

    A partir de una abstr accin del mundo real , def inimosobjetos que representan micromdulos de software ideales.Desde su creacin, se mantienen de manera independienteunos de otros, slo interaccionan con otr os objetos a travsde sus mensajes. Cada objeto co nfigura un universo ordenad o

    y autosuficiente.

    vacp 104

    2

    VilaltaConsultores2001-TRADC

    lases2

    _esp-Rev.

    3.1-

    [email protected]

    Obj 3

  • 7/31/2019 UML - Guia Visual

    30/47

    Objeto

    elevarPlataforma

    carg

    arIte

    m

    Atributos

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    moverHac

    ia

    baja

    rPlata

    form

    a

    Variables.-

    Identificacin Medidas de la carga Capacidad de carga Velocidad mxima Tipo de carga

    Estado.-

    Localizacin Orientacin Velocidad

    Todo lo que un objeto conoce est representado en susatr ibutos (variables y estado actual) , y todo lo qu e puederealizar est definido en sus mtodos (comportamiento) ,y en sus interacciones con o tros objetos a travs delintercambio de mensajes (dinmica del ciclo de vida).

    Vehculo Automtico Carga Paletsvacp104

    Qu puedo hacer?

    Qu conozco?

    Quien soy?

    3

    VilaltaConsultores2001-TRADC

    lases3

    _esp-Rev.

    2.2-

    [email protected]

    M j 4

  • 7/31/2019 UML - Guia Visual

    31/47

    Mensaje

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Una aplicacin or ientada a objetos consiste en un nmer odeterm inado de objetos que interactuan en tre si envindosemensajes unos a otr os para invocar sus mtodos. Esteintercambio de mensajes facilita su compor tamiento, cambiosde estado, destruccin o almacenamiento.

    Ya que to do lo que un objeto pued e realizar est expresadoen sus mtodos, este simple mecanismo de mensajes soportatodas las posibles interacciones entre ellos.

    elev

    arPlataforma

    cargarIte

    m

    Atributos

    moverHacia

    baja

    rPlatafo

    rma

    Objeto Receptor

    vacp104 moverHacia: binB7Objeto Emisor

    Nombre del objeto receptor

    Mtodo que se invoca para que lo ejecute el objeto receptor

    Parmetro enviado para especificar el mtodo

    Signatura del mensaje

    vacp104

    4

    VilaltaConsultores2001-TRADC

    lases4

    _esp-Rev.

    1.2-

    [email protected]

    E l i 5

  • 7/31/2019 UML - Guia Visual

    32/47

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    El empaquetado de mtodos y atributos dentro de un objetomediante una inter face de mensajes, es lo que denominamosencapsulacin.

    La clave est precisamente en este envoltorio del objeto.

    La interface que rodea p or completo al objeto acta comopunto de contacto par a todos los mensajes que llegan desdecualquier objeto emisor.

    La interface de mensajes tiene la misma funcin que lamembrana de una clula, disponer de una barr era esencialentre la estructur a interna de un objeto y el exter ior .

    Su propsito es garantizar que t odas las interacciones delobjeto tengan lugar a travs de un sistema de mensajer apredefinido con el que es capaz de entenderse y reaccionaradecuadamente.

    No existe ninguna otr a manera con la que un o bjeto externopueda acceder a los atributos y mtodos escondidos dentrode la interface de mensajes de otro objeto.

    Encapsulacin

    M e n s a j e

    In ter fa ce de me ns aje s

    vacp104 moverHacia: binB7

    vacp104

    elevarPlataform

    a

    carg

    arIte

    m

    Atributos

    moverHacia

    bajarP

    lata

    form

    a

    Conjunto de operaciones

    externamente visibles que

    define el comportamiento

    de un objeto

    5

    VilaltaConsultores2001-TRADC

    lases5

    _esp-Rev.

    3.1-

    [email protected]

    Herencia

    6

  • 7/31/2019 UML - Guia Visual

    33/47

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Es el mecanismo por el cual una clase de objetos puede serdefinida como un caso especial de otra clase ms genrica.Los casos especiales de una clase se denominan Subclases.La clase ms genrica, se conoce como la Superclase detodos sus casos especiales. Adems de los mtod os y atr ibutosque heredan, las Subclases definen sus propios mtodos y

    atr ibutos. Tambien, p ueden r edefinir algunos de losheredados (overr iding).

    Herencia

    Vehculo Automtico Carga Palets

    vac 104

    vac 104

    vac 103vacp 104

    In sta nc ias de

    Vehculo Automtico Carga Palets

    In ter fa ce de me nsa jes

    Id en tif ica dor del obje to

    M todo s

    At rib ut os

    La interface de mensajes definida para una Superclasetambin es heredada por las subclases. Esto implica quetodas las Subclases de una Superclase estan pr eparadaspara responder corr ectamente a los mismos mensajes quela Clase padre. Esta pr opiedad es extremadamente ti lporque n os permite tratar de la misma manera a t odas las

    especializaciones de una Clase.

    Vehculo AutomticoCarga Palets

    SubClase

    Vehculo AutomticoCarga Bobinas

    SubClase

    Vehculo Automtico de Carga

    SuperClase

    elevarPlataforma

    cargarIte

    m

    Atributos

    moverH

    acia

    baja

    rPlata

    form

    a

    vacp 104

    VilaltaConsultores2001-TRADC

    lases6

    _esp-Rev.

    1.2-

    [email protected]

    Composicin 7

  • 7/31/2019 UML - Guia Visual

    34/47

    Composicin

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    Comercial

    ClienteC orporat ivo

    ClienteP ersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    E n te r t i t l e h e r e

    Los objetos que contienen a otr os objetos se denominanObjetos Compuestos. Los atr ibutos de un objeto puedenutilizarse de dos maner as. Podemos usarlos para almacenarvalores como el nmer o 1 5, o bien, el texto Autorizado.

    Panel de ventana

    Tambin pueden contener referencias de otros objetos. Lasreferencias almacenadas en los atr ibutos de un objetocompuesto, per mite a este objeto enviar los mensajesapropiados a todos los objetos contenidos.

    Tab Tab control

    Scroll

    Combo box

    Slider

    Trackbar

    67%

    Progress

    Campo simple

    Botones de ventanaRestore Maximize

    ?

    Help MinimizeClose

    List box

    Grid

    Enter title here

    < B ac k N ex t > C an ce l

    Ventana Wizard

    VilaltaConsultores2001-TRADC

    lases7

    _esp-Rev.

    2.1-

    [email protected]

    Polimorfismo 8

  • 7/31/2019 UML - Guia Visual

    35/47

    Clases

    P edido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    Producto

    C omerc ial

    ClienteC orporat ivo

    C lient eP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Diferentes objetos pueden responder a un mismo mensajede diferentes maneras. El polimorfismo permite a los objetosinteractuar entre ellos sin necesidad de conocer previamentea que t ipo pertenecen.

    Un objeto puede ser d e diferentes t ipos. Por ejemplo un

    vehculo automtico de carga pued e especializarse par acargar b obinas, palets u otro t ipo de i tems. Los demsobjetos del sistema no t ienen p orque saber cuantos t iposde vehculos disponemos.

    El mismo mensaje cargarItem , acompaado del parmetroque identif ica dicho i tem, ser intrepretado de dist intamanera po r cada ob jeto receptor , el cual ya conocepreviamente como tiene que tratar la naturaleza de sucarga: bobinas, palets, etc .

    Hay una reduccin de esfuerzo muy significativa por elhecho de q ue cualquier objeto del sistema puede enviarmensajes a los vehculos automticos de carga sin necesidadde saber d e antemano q u t ipo de vehculos estan encirculacin.

    No hay necesidad as de picar un cdigo especfico paracada t ipo de vehculo, con lo cual, nos ahorr amos proli jassentencias IF o CASE que son complejas de mantener y deactualizar cuando se incor poran nuevos t ipos de objetos.

    Polimorfismo

    M e n s a j e

    cargarItem: #A234C19FZ

    Vehculo Automtico

    Carga Palets

    SubClase

    Vehculo Automtico

    Carga Bobinas

    SubClase

    elevarPlataforma

    carg

    arIte

    m

    Atributos

    moverHacia

    baja

    rPlata

    form

    a

    vacb 117

    elevarPlataforma

    cargarIte

    m

    Atributos

    moverHacia

    baja

    rPlata

    form

    a

    vacp 104

    Vehculo Automtico de Carga

    SuperClase

    VilaltaConsultores2001-TRADC

    lases8

    _esp-Rev.

    1.1-

    [email protected]

    VisibilidadP didCliente 9

  • 7/31/2019 UML - Guia Visual

    36/47

    Visibilidad Toda Clase encapsula unos elementos (atr ibutos y operaciones) que disponende ciertos criterios de visibilidad y manipulacin para otras Clases. Los elementos pblicos pueden ser usados por cualquier otr a Clase. Los elementos pr ivados pueden ser usados slo por la Clase propietar ia . Cada plataforma de desarrollo (C+ + , Smalltalk, Java) desarro lla sus propias

    reglas con respecto a la visibilidad y manipulacin de atributos y operaciones. La notacin UML especif ica que todo atr ibuto y oper acin de una Clase hade d isponer de un indicador de visibil idad.

    Clases

    Pedido

    hacer /comprobacinitem

    Cliente

    Lnea de P edido

    P roduct o

    Comercial

    C lient eC orporat ivo

    ClienteP ersonal

    1*

    1

    *0. . 1

    *

    * 1

    hacer /comprobacinitem

    hacer /comprobacin

    hacer /comprobacin

    Visib ilidad C+ + Smallt a lk Java

    + P u b l ic a

    - P r iva da

    # P r o t e gi da

    Package

    Ejemplos

    Un elemento siempre es visible en cualquier

    parte del programa y puede ser llamado y

    modificado por cualquier objeto del

    sistema.

    Un elemento slo puede ser usado por la

    Clase que lo define.

    Un elemento slo puede ser usado por laClase que lo define, o por las subclases de

    dicha Clase.

    Consideremos la Clase CLIENTE que disponede una subclase CLIENTE PERSONAL.Consideremos tambin que el objeto >, es una instancia de CLIENTEPERSONAL.

    Puede usar todo elemento pblico de cualquier

    objeto del sistema.

    Puede usar tambin todo elemento privado de

    la Clase CLIENTE PERSONAL. No puede usar los elementos privados definidos

    en la Clase CLIENTE. Puede usar los elementos protegidos definidos

    para CLIENTE y CLIENTE PERSONAL.

    Todas las operaciones son

    pblicas por defecto.

    Todas las variables

    instanciadas son privadas.

    , puede acceder acualquier variable instanciada dentro

    de su propio objeto, si dicha variable

    ha sido definida dentro de CLIENTEo CLIENTE PERSONAL. De esta

    manera, el concepto de visibilidadprivada en Smalltalk es parecido al

    concepto de visibilidad protegida en

    C++.

    Consideremos la instancia de CLIENTEPERSONAL, < >, este objetopuede acceder a cualquier elemento de , que ha sido definido tambin como unainstancia de CLIENTE PERSONAL, seapblico, privado o protegido. ,a su vez tambin puede acceder a cualquier

    elemento privado, protegido o pblico de

    En C++, podemos acceder a elementos de otros

    objetos de la propia Clase, de la misma manera

    que podemos acceder a los propios elementos

    de un objeto.

    En Smalltalk no hay diferencia con

    respecto a que un objeto sea de la

    misma Clase o no. Podemos acceder

    slo a los elementos pblicos de otro

    objeto.

    En Smalltalk, , n opuede acceder a las variables

    instanciadas privadas de , slo a sus operaciones pblicas.

    Un elemento siempre es visible en

    cualquier parte del programa y puede

    ser llamado y modificado por cualquier

    objeto del sistema.

    Un elemento slo puede ser usado por

    la Clase que lo define.

    Un elemento puede ser usado por

    subclases y tambin por cualquier otraClase en el mismo Package como la

    Clase propietaria. Esto implica que en

    Java, el concepto de visibilidad

    protegida es ms pblico que package.

    Un elemento slo puede ser usado por

    otras Clases que compartan el mismo

    Package.

    Pedido- fechaRecibidoconPrepago- nmero: Alfanm.- importe: Nm&2d.- divisa...

    Producto

    Comercial

    ClienteCorporativo ClientePersonal

    1*

    1

    *

    0..1

    *

    * 1

    + hacer /comprobacinitem

    + hacer /comprobacin

    + crear ()+ seleccionar ( )+ comprobar ( )+ servir ( )+ cerrar ( )

    Java permite marcar tambin las Clases

    como pblicas o packages. Los elementos

    de una Clase pblica pueden ser usados por

    cualquier Clase que importe el package a

    la que pertenece la Clase.

    Los elementos de una Clase package slopueden ser usados por otras Clases del

    mismo package.

    Lnea de Pedido

    + hacer /comprobacin

    9

    VilaltaConsultores2001-TRAD

    Clasesvisibilidad

    _esp-Rev.

    5.3-

    jvilalta@vic

    o.org

    Descripcin1

    Flu jo Pr in c ip a l Var iac iones

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    37/47

    Descripcinde la Dinmica del Sistema

    La dinmica de un sistema est determinada por :

    Todos los posibles estados que sus objetos pueden tener.

    Todas las posibles secuen cias de eventos que pueden

    ocurr ir . Todas las transiciones posibles, de un estado a otr o,como con secuencia de los eventos que afectan a los objetos.

    Diagrama de Estadosde un PedidoNotacin UML 1.3

    Comprobando Sirviendo

    EntregadoEsperando

    /se lec cio nar pri mer ite m

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles][No todos los items comprobados]

    /se lec cio nar sig ui ent e i tem

    [Todos los items comprobados &&

    algunos items no estan disponibles

    en stock]

    Item Recibido

    [algunos items no estan disponibles

    en stock]

    Item

    Recibid

    o

    [Tod

    oslosite

    msdisp

    onibl

    es]

    Pedido Entregado

    1

    2

    3

    4

    5

    6

    D in mic aE s t a dos

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslosite

    msdisp

    onib

    les]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    Flu jo Pr in c ip a l Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    4. Sistema comprueba la situacin delped ido .

    a. SI se ha realizado el pago y SI todos los itemsdel pedido han sido asignados, sistema

    informa que procede a servir el pedido

    activando el CU Servir pedido.

    b. SI se ha realizado el pago y NO existensuficientes items del artculo en stock, sistema

    aparca el pedido del cliente activando el CU

    Aparcar pedido.

    c. SI no se ha realizado el pago segn el plazoconvenido, sistema cancela el pedido.

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo .

    PedidofechaRecibidoconPrepagonmero: Alfanm.importe: Nm&2d.divisa...

    *

    1

    seleccionar ( )comprobar ( )servir ( )

    cerrar ( )...

    Anlisis textual

    del Use Case

    VilaltaConsultores2001-TRADD

    inmica1

    _esp-Rev.

    5.1-

    [email protected]

    rg

    Descripcin

    2Flu jo Pr inc ipa l Var iac ion es

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    38/47

    Descripcinde la Dinmica del Sistema

    Diagrama de Estadosde un PedidoNotacin UML 1.3

    Comprobando Sirviendo

    EntregadoEsperando

    /se lec cio nar pri mer it em

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [No todos los items comprobados]

    /se lec cio nar sig uie nte ite m

    [Todos los items comprobados &&

    algunos items no estan disponibles

    en stock]

    Item Recibido

    [algunos items no estan disponibles

    en stock]

    Item

    Recibi

    do

    [Tod

    oslositem

    sdisp

    onible

    s]

    Pedido Entregado

    PedidofechaRecibidoconPrepagonmero: Alfanm.

    importe: Nm&2d.divisa...

    *

    1

    seleccionar ( )comprobar ( )servir ( )cerrar ( )...

    InicioClase

    Atributos

    Operac iones

    primera Transicin

    E s t a d o

    Actividad

    Accin

    Accin

    Indicador

    Auto-Transicin

    Transicin

    12

    Evento

    3

    Utilizamos el diagrama de estados para describir elcomportam iento de una Clase dentro d e una serie temporal.

    4

    5

    6

    Procesos que ocurren de manera rpida

    dentro de un ciclo contnuo sin interrupcin.

    / Acci n Transicin

    Desencadena

    siempre

    la Transicin

    [Indicador] Transicin

    Condicin lgica con dos categorias: verdadero o falso.

    Una Transicin con [Indicador] slo ocurre si este es verdadero.

    Slo podemos extraer una Transicin para un Estado concreto.

    [Todos los items comprobados &&

    todos los items disponibles]

    D in mic aE s t a dos

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos it

    ems disp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    Sintaxis para etiquetar una transicin

    Ev en to [In dica dor] / A cci n

    Los tres eleme nto s so n op cion ales

    Anlisis textualdel Use Case

    Flu jo Pr inc ipa l Var iac ion es

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo.

    VilaltaConsultores2001-TRADD

    inmica2

    _esp-Rev.-

    5.1-

    [email protected]

    rg

    Descripcin

    3Flu jo Pr inc ipa l Var iac iones

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    39/47

    pde la Dinmica del Sistema

    Diagrama de Estadosde un PedidoNotacin UML 1.3

    Comprobando Sirviendo

    EntregadoEsperando

    /se lec cio nar pri mer it em

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles][No todos los items comprobados]

    /se lec cio nar sig uie nte ite m

    [Todos los items comprobados &&

    algunos items no estan disponibles

    en stock]

    Item Recibido

    [algunos items no estan disponibles

    en stock]

    Item

    Recibi

    do

    [Tod

    oslositem

    sdisp

    onible

    s]

    Pedido Entregado

    Construimos el diagrama de estados a p ar t ir de una claseconcreta para mostrar el comportamiento de un objetodurante su ciclo de vida.

    Inicio

    primera Transicin

    E s t a d o

    Actividad

    Accin

    Accin

    Indicador

    Auto-Transicin

    Transicin

    Implementacin

    Cuando una Transicin no dispone de unEvento

    en su etiqueta, significa que la Transicin se

    realiza tan pronto como la Acti vida dasociada

    con un Esta do es finalizada

    Procesos que ocurren de manera rpida

    dentro de un ciclo contnuo sin interrupcin.

    / Acci n Transicin

    / Acti vid a d Estado

    Procesos que ocurren dentro de un ciclo discontnuo

    y pueden ser interrumpidospor algun evento.

    [Indicador] Transicin

    Condicin lgica con dos categorias: verdadero o falso.

    Una Transicin con [Indicador] slo ocurre si este es verdadero.

    Slo podemos extraer una Transicin para un Estado concreto.

    1

    2

    Evento3

    No hay Activi dades para esteEsta do, por lo

    que el Pedido permanecer a la espera de

    un Event o.

    Desencadena

    siempre

    la Transicin

    Aunque finalize la Acti vida d

    el Pedido permanecer en

    este Esta do hasta que ocurre

    el Even to que desencadena

    su Transicin

    4

    5

    6

    D in mic aE s t a dos

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos

    itemsdisp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    Anlisis textualdel Use Case

    Flu jo Pr inc ipa l Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo .

    PedidofechaRecibidoconPrepagonmero: Alfanm.

    importe: Nm&2d.divisa...

    *

    1

    seleccionar ( )comprobar ( )servir ( )cerrar ( )...

    Clase

    Atributos

    Operac iones

    Sintaxis para etiquetar una transicin

    Ev en to [In dica dor] / A cci n

    Los tres elem ento s s on o pcio nale s

    VilaltaConsultores2001-TRAD

    Dinmica3

    _esp-Rev.

    5.1-

    [email protected]

    rg

    Descripcind l Di i d l Si

    4Flu jo Pr inc ipa l Var iac iones

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    40/47

    de la Dinmica del Sistema

    Diagrama de EstadosNotacin UML 1.3

    Un Evento no es un objeto. Un Evento es la causa q ueju st if ic a la ex istencia de una in fo r mac i n.

    Slo podemos conocer que un Evento ha ocurr ido,detectando sus efectos en nuestro mod elo.

    Slo nos interesan aquellos Eventos que provocan un cambiode estado en los objetos de nuestro modelo.

    Hay que dist inguir un Evento como tal , d el objeto querepresenta el r egistro de los efectos de dicho Evento.

    Comprobando Sirviendo

    Esperando

    /se lec cio nar pri mer ite m

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [No todos los items

    comprobados]

    /se lec cio nar

    siguiente item

    [Todos los items

    comprobados &&

    algunos items no estan

    disponibles en stock]

    Item Recibido

    [algunos items

    no estan

    disponibles en stock]

    ItemR

    ecibid

    o

    [Tod

    oslo

    site

    msdisp

    onible

    s]

    Pedido

    Entregado

    1

    2

    3

    4 5

    6

    [Todos los items comprobados &&

    todos los items disponibles]

    sin Superestados

    Comprobando Sirviendo

    EntregadoEsperando

    /sel ecci onar prim er item

    hacer /comprobacin

    item

    hacer /inicio de

    entregas

    [No todos los items

    comprobados]

    /sel ecci onar

    siguiente item

    [Todos los items

    comprobados &&

    algunos items no estan

    disponibles en stock]

    Item Recibido

    [algunos items

    no estan

    disponibles en stock]

    Item

    Recib

    ido

    [Tod

    oslosite

    msdisp

    onibles]

    Pedido

    Entregado

    1

    2

    3

    4

    5

    6

    [Todos los items comprobados &&

    todos los items disponibles]

    CanceladoPedido

    Cancelado

    Pedido

    Cancelado

    Pedido

    Cancelado

    Activo

    Cancelado Entregado

    Pedido

    Cancelado

    Nombre del Superestado

    con Superestados

    D in mic aE s t a dos

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos

    itemsdisp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    Anlisis textualdel Use Case

    Flu jo Pr inc ipa l Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items del artculo enel stock, sistema asigna items al pedido.

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo en catlogo y el nmero de

    items del artculo en stock.

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items del artculo enstock, o la asignacin de items deja la

    situacin del artculo en stock por debajo del

    nivel de reposicin, sistema genera pedido

    de reposicin activando el CU Generarpedido.

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra artculos alternativos activando el

    CU Seleccionar artculo .

    VilaltaConsultores2001-TRAD

    Dinmica4

    _esp-Rev.

    5.1-

    [email protected]

    rg

    Descripcin 5Flu jo Pr in cip al Var iac iones

    CU Realizar pedido

  • 7/31/2019 UML - Guia Visual

    41/47

    pde la Dinmica del Sistema

    Diagrama de EstadosConcurrentesNotacin UML 1.3

    Autorizandohacer /

    comprobacindel pago

    [pago NO correcto]

    Entregado

    [pago SI correcto]

    RechazadoAutorizado

    Rechazado

    Cancelado

    Entregado

    Comprobando

    Esperando

    Sirviendo

    Autorizando AutorizadoPedido Entregado

    Pedido Cancelado

    Pedido Rechazado

    Los diagramas de estados son muy tiles para describir elcomport amiento de un ob jeto a tr avs de mltiples Casosde Uso.

    Flu jo Pr in cip al Var iac iones

    2. Usuario entra lineas de pedido, con sucdigo de artculo, tipo de presentacin

    y cantidad.

    b. SI existen suficientes items...

    3. Sistema comprueba cada lnea delpedido para validar la situacin del

    artculo...

    4. Sistema comprueba la situacin delpedi do .

    a. SI se ha realizado el pago y SI todos los itemsdel pedido han sido asignados, sistema

    informa que procede a servir el pedido

    activando el CU Servir pedido .

    b. SI se ha realizado el pago y NO existensuficientes items del artculo en stock, sistema

    aparca el pedido del cliente activando el CUAparcar pedido.

    c. SI no se ha realizado el pago segn el plazoconvenido, sistema cancela el pedido.

    1. Usuario identifica el cliente que haenviado un pedido.

    c. NO existen suficientes items...

    a. Artculo NO est vigente en catlogo, sistemainforma que articulo no est vigente y

    muestra...

    Anlisis textual

    del Use Case

    D in mic aE s t a dos

    Verificando Sirviendo

    ionar primer item

    hacer /comprobacin

    item

    hacer /inicio deentregas

    [Todos los items comprobados &&

    todos los items disponibles]

    Item

    Recibid

    o

    [Tod

    oslos ite

    ms disp

    onible

    s]

    Entregadorimer item

    rimer item

    rimer item

    EntregadoEsperando

    VilaltaConsultores2001-TRAD

    Dinmica5

    _esp-Rev.

    5.1-

    [email protected]

    Arquitectur a del sistema1

  • 7/31/2019 UML - Guia Visual

    42/47

    Vista d eDistribucin F sica

    Elementos

    Vista d eImplementacin

    Ejecutables

    Arquitectur a del sistema

    Una Arquitectur a es un co njunto or ganizado de elementos.Se utiliza para especificar las decisiones estratgicas acerc ade la estru ctura y funcionalidad del sistema, las colaboraciones

    entre sus distintos elementos y su despliegue fsico paracumplir unas responsabilidades bien definidas.

    Vista de la Arqu itectur a 4+ 1Notacin UML 1.3 A r qui t e c tu r a

    Vista delModelo de Referencia

    Vista de la

    FuncionalidadUse Cases

    Vista d eComponentes

    Modulares

    VilaltaConsultores2001-TRAD

    Arquitectura1

    _esp-Rev.

    5.1-

    [email protected]

    Arquitectur a del sistemaVista delModelo de Referencia 2

  • 7/31/2019 UML - Guia Visual

    43/47

    La vista del Modelo de Referencia (Reference InformationModel) , est determinada p or la arquitectura lgica.

    La arquitectura lgica es capturada por los diagramas deClases que contienen las Clases y relaciones que rep resentanlas abstracciones esenciales del sistema a desarrollar.

    Clases Asociaciones

    Agregaciones

    Generalizacin

    Packages

    A r qu i t e c tu r a

    Vista delModelo de Referencia

    El Modelo de Referencia se construye en sucesivas

    iteraciones durante la fase de Formalizacin.

    Pedidos Clientes

    ArtculosLas Clases y Packages del modelo reflejan lasdecisiones tomadas con respecto a los mecan ismosclave del sistema.

    Una eficiente implementacin de los mecanismosclave requiere seleccionar Patrones (Patterns) quese ajusten a los requerimientos esenciales delproyecto.

    La implementacin de mecanismos clave req uiereseleccionar tambin:

    Lenguaje de programacin

    Motor de Base de Datos

    Interface grfico de usuario look and feel

    Tra tamiento de e r rores

    Mecanismos de comunicacin

    Migracin y distr ibucin de objetos

    Networking

    PedidofechaRecibido

    conPrepagonmero: Alfanm.importe: Nm&2d.divisa...

    Cliente

    Lnea de Pedido

    Producto

    Comercial

    ClienteCorporativo

    ClientePersonal

    1*

    1

    *0..1

    *

    * 1

    hacer /comprobacin

    item

    hacer /comprobacin

    hacer /comprobacin

    seleccionar ( )comprobar ( )servir ( )cerrar ( )...

    VilaltaConsultores2001-TRAD

    Arquitectura2

    _esp-Rev.

    5.1-

    [email protected]

    Arquitectur a del sistemaVista deVi d l

    3

  • 7/31/2019 UML - Guia Visual

    44/47

    Vista d eComponentes

    Modulares

    La vista d e Compon entes Modulares refleja la or ganizacinde mdulos de software dentr o del entor no de desarr ollo.

    Esta vista de arquitectura toma en cuenta los requerimientosque facilitan la programacin, los niveles de reutilizacin,y las limitaciones impuestas por el entorno de desarrollo.

    Disponemos de dos elementos para modelizar esta vista: Packages: En esta vista represent an una par ticin fsicadel sistema.

    Component es: En esta vista representan la organizacinde mdulos de c digo fuente.

    A r qu i t e c tu r a

    Los Packages estan or ganizados en una jerar quade capas que disponen de una interface bien definida:

    P a c k a g e s e s p e c f i c o s d e l d o m i n i o

    I n t e r f a c e d e U s u a r i o

    P a c k a g e s r e u t i l i za b l e s

    M e c a n i s m o s c l a v e C O R E

    P a c k a g e s d e p l a t a f o r m a ( O S - H a r d w a r e )

    4

    3

    2

    1

    Vista deComponentes

    Modulares

    Vista delModelo de Referencia

    Los Packages de la vista lgica del modelo estanmapeado s con los Packages fsicos y los componente sde software (subsistemas).

    InformacinArtculos

    P e d i d o

    Dominio

    Clientes

    Artculos

    Pedidos

    Mailing

    Interface Usuario

    AWT

    Java GUI toolkit

    Ent radaPedidos

    Interface Usuario

    VilaltaConsultores2001-TRAD

    Arquitectura3

    _esp-Rev.

    5.1-

    [email protected]

    Arquitectur a del sistemaVista deVista del

    4

  • 7/31/2019 UML - Guia Visual

    45/47

    Vista d eImplementacin

    Ejecutables

    Vista deImplementac in

    Ejecutables

    A r qui t e c tu r a

    Los componentes run-time muestran los mappings

    de las Clases a librer as de tipo ActiveX, Applets deJava y libreras dinmicas.

    ComponentesModulares

    Vista delModelo de Referencia

    Los