56
INGENIERÍA DE SOFTWARE Mg. Raul Chiquillan Salcedo LENGUAJE DE MODELAMIENTO UNIFICADO

sesion dos_ lenguaje de modelamiento.pdf

Embed Size (px)

Citation preview

  • INGENIERA DE SOFTWARE

    Mg. Raul Chiquillan Salcedo

    LENGUAJE DE MODELAMIENTO UNIFICADO

  • TEMARIO

    Definicin Diagrama de Casos de Uso Diagrama de Clases Diagrama de Objetos Diagrama de Secuencia Diagrama de Colaboracin Diagrama de Estados Diagrama de Actividad Diagrama de Componentes Diagrama de Despliegue

  • EL UML ES UN LENGUAJE GRFICO PARA LA ESPECIFICACIN, VISUALIZACIN, CONSTRUCCIN Y DOCUMENTACIN DE MODELOS ORIENTADOS A OBJETOS QUE REPRESENTAN SISTEMAS INTENSIVOS EN SOFTWARE. = UNIFIED MODELING LANGUAGE UML NO ES UN MTODO SINO UN LENGUAJE DE MODELAMIENTO

    3

    DEFINICIN

  • OBJETIVO DEL UML

    Describir cualquier tipo de sistema en trminos de diagramas orientados a objetos Algunas categoras de Sistemas

    Sistemas de Informacin Sistemas de Tiempo Real

    Sistemas Embebidos Sistemas Distribuidos Software de Sistemas Sistemas de Negocios

    4

  • UML TOMA LO MEJOR DE VARIOS MTODOS

    Rumbaugh Jacobson

    Meyer

    Harel

    Wirfs-Brock Fusion

    Embly

    Gamma et. al.

    Shlaer-Mellor

    Odell

    Booch

    Pre y Post condiciones

    Mquinas de estado

    Responsabilidades

    Descripcin de operaciones, numeracin de mensajes

    Singleton clases

    Marcos de trabajo, patrones, notas

    Ciclo de vida de objetos

    Clasificacin

    5

  • - PROPORCIONA A LOS DESARROLLADORES UN LENGUAJE DE MODELAMIENTO AMPLIAMENTE ACEPTADO Y LISTO PARA USAR. - INTEGRA LAS MEJORES PRCTICAS DEL DESARROLLO DE SOFTWARE. - PERMITE LA INTERCAMBIO DE MODELOS ENTRE LAS DIFERENTES

    HERRAMIENTAS DE SOFTWARE. - ES INDEPENDIENTE DEL LENGUAJE DE PROGRAMACIN Y DE MTODOS Y PROCESOS PARTICULARES DE DESARROLLO DE SOFTWARE.

    - PROPORCIONA SUS PROPIOS MECANISMOS DE EXTENSIN - AGRUPA LOS CONCEPTOS DE ORIENTACIN A OBJETOS DEFINIENDO SU SIGNIFICADO.

    CARACTERSTICAS del UML

    6

  • POR QU APRENDER UML

    -Porque UML es el lenguaje de modelado de objetos estndar dominante. -Porque es apoyado por metodlogos y empresas importantes en Tecnologas de Informacin. -Porque cuenta con la aprobacin de la OMG como notacin estndar. -Porque todas las herramientas modernas proporcionan soporte para UML. -Porque nos facilita el aprendizaje del enfoque orientado a objetos pues basta con aprender este estndar y no perdernos en toda la jungla de mtodos y notaciones existentes.

    7

  • - LOS LENGUAJES DE MODELADO O R I E N T A D O S A L O B J E T O COMENZARON A APARECER A MEDIADOS DE LA DCADA DE '70. - EL NMERO DE LENGUAJES QUE MODELABAN OBJETOS AUMENT DE MENOS DE 10 A MS DE 50 DURANTE EL PERODO ENTRE 1989-1994.

    BREVE HISTORIA DEL UML

    - Muchos de los que utilizaban estos lenguajes no encontraban satisfaccin completa en ninguno de ellos, esto motiv la llamada "Guerra de los Mtodos". 8

  • . . . LA GUERRA DE LOS MTODOS EXISTAN MUCHOS MTODOS Y CADA UNO TENA UN LENGUAJE DE MODELADO PROPIO. ESTO DIFICULT EL APRENDIZAJE, APLICACIN, CONSTRUCCIN, USO DE HERRAMIENTAS, ETC. PUGNA ENTRE LOS DISTINTOS GURS QUE DEFENDAN SUS PROPIOS MTODOS Y SIMBOLOGAS. SE OBSERVA LA NECESIDAD DE UNA NOTACIN ESTNDAR.

    . . . BREVE HISTORIA DEL UML

    9

  • EL DESARROLLO DEL UML COMENZ EN FINALES DE 1994 EN QUE GRADY BOOCH Y JIM RUMBAUGH DE RATIONAL SOFTWARE CORPORATION, COMENZARON SU TRABAJO SOBRE LA UNIFICACIN DE LOS MTODOS DE BOOCH Y DE OMT (OBJECT MODELING TECHNIQUE). A FINALES DE 1995, IVAR JACOBSON Y SU COMPAA DE OBJECTORY SE UNIERON A RATIONAL Y COMBINARON SUS MTODOS. BOOCH, RUMBAUGH, Y JACOBSON, DEFINIERON EL UML 0,9 Y 0,91 EN JUNIO Y OCTUBRE DE 1996.

    . . . BREVE HISTORIA DEL UML

    10

  • MODELANDO CON UML

    Use Case Diagrams Use Case Diagrams Diagramas de Casos de Uso

    Scenario Diagrams Scenario Diagrams Diagramas de Colaboracin

    State Diagrams State Diagrams Diagramas de Componentes

    Component Diagrams Component Diagrams Diagramas de Despliegue

    State Diagrams State Diagrams Diagramas de Objetos

    Scenario Diagrams Scenario Diagrams Diagramas de Estados

    Use Case Diagrams Use Case Diagrams Diagramas de Secuencia

    State Diagrams State Diagrams Diagramas de Clases

    Diagramas de Actividad

    Modelo

    11

  • DEFINICIN UN DIAGRAMA DE CASOS DE USO REPRESENTA LO QUE HACE EL SISTEMA Y COMO SE RELACIONA CON SU ENTORNO. REPRESENTA LOS DISTINTOS REQUERIMIENTOS QUE HACEN LOS USUARIOS DE UN SISTEMA. UN DIAGRAMA DE CASOS DE USO ESTA COMPUESTO POR - CASOS DE USO - ACTORES - RELACIONES ENTRE ELLOS

    DIAGRAMA DE CASOS DE USO

    12

  • Nombre

    ELEMENTOS

    CASO DE USO (USE CASE) ES UNA SECUENCIA DE ACCIONES REALIZADAS POR EL SISTEMA QUE PRODUCEN UN RESULTADO OBSERVABLE Y VALIOSO PARA ALGUIEN EN PARTICULAR. ACTOR UN ACTOR ES UN CONJUNTO EXTERNO UNIFORME DE PERSONAS, SISTEMAS, O COSAS QUE SOLICITA UN SERVICIO AL SISTEMA QUE ESTAMOS MODELANDO.

    Nombre del caso de uso

    13

  • RELACIONES ENTRE LOS ELEMENTOS

    RELACIONES ENTRE ACTORES LA NICA RELACIN PERMITIDA ENTRE LOS ACTORES ES LA RELACIN DE GENERALIZACIN.

    Director de Escuela

    Usuario

    Secretaria 14

  • . . . RELACIONES ENTRE LOS ELEMENTOS

    RELACIONES ENTRE UN ACTOR Y UN CASO DE USO LA NICA RELACIN PERMITIDA ES UNA ASOCIACIN Y SE LE CONOCE COMO RELACIN DE COMUNICACIN O .

    Secretaria

    Registra Matrcula

    15

  • RELACIONES ENTRE CASOS DE USO PUEDEN SER DE TRES TIPOS: 1. RELACIN DE GENERALIZACIN EL CASO DE USO DE A HEREDA LA ESPECIFICACIN DEL CASO DE USO B.

    B

    A

    Realizar cobranza

    Cobranza con tarjeta

    Cobranza en efectivo

    Cobranza con cheque

    . . . RELACIONES ENTRE LOS ELEMENTOS

    16

  • 2. RELACIN EL CASO DE USO A SIEMPRE INCLUYE (O USA) EL COMPORTAMIENTO DE B.

    Validar usuario

    Aperturar cursos

    Registrar matrcula

    Ejemplo:

    B

    A

    . . . RELACIONES ENTRE LOS ELEMENTOS

    17

  • 3. RELACIN EL CASO DE USO A, EXTIENDE AL CASO DE USO B. A OCURRE EN CASOS ESPECIALES PARA EXTENDER B.

    B

    A

    Registrar matrcula Registrar matrcula

    extempornea

    Ejemplo:

    . . . RELACIONES ENTRE LOS ELEMENTOS

    18

  • EJEMPLO DE DIAGRAMA DE CASOS DE USO

    Registrar matrcula extempornea

    Caso de uso Registrar Matrcula

    Validar usuario

    Aperturar cursos

    Registrar matrcula

    Director de Escuela

    Usuario

    Secretaria

    19

  • 2. DIAGRAMAS DE CLASES

    DEFINICIN UN DIAGRAMA DE CLASES MUESTRA CLASES (GRUPOS DE OBJETOS QUE TIENEN LAS MISMAS CARACTERSTICAS Y COMPORTAMIENTO) Y SUS RELACIONES. ESTOS DIAGRAMAS SON LOS MS COMUNES EN EL MODELADO DE SISTEMAS ORIENTADOS A OBJETOS. UN DIAGRAMA DE CASOS DE USO ESTA COMPUESTO POR - CLASES - RELACIONES ENTRE CLASES

    20

  • CLASES DEFINICIN: ES UN CONJUNTO DE OBJETOS QUE TIENEN LOS MISMOS ATRIBUTOS Y COMPORTAMIENTO. REPRESENTACIN: SE REPRESENTA MEDIANTE UN RECTNGULO CON TRES PARTES:

    Automovil

    Matricula Color Velocidad Arrancar( ) Acelerar( ) Frenar( )

    NombreClase

    Atributo1 Atributo2 . . . Operacion1 operacion2 . . .

    Ejemplo: La Clase Automvil

    21

  • RELACIONES ENTRE CLASES 1.- RELACIN DE DEPENDENCIA 2.- RELACIN DE GENERALIZACIN 3.- RELACIN DE ASOCIACIN 3.1.- ASOCIACIN DE AGREGACIN 3.2.- ASOCIACIN DE COMPOSICIN

    22

  • 1.- RELACIN DE DEPENDENCIA ES UNA RELACIN SEMNTICA ENTRE DOS ELEMENTOS EN LA CUAL UN CAMBIO EN UN ELEMENTO (EL ELEMENTO INDEPENDIENTE) PUEDE AFECTAR A LA SEMNTICA DEL OTRO ELEMENTO (ELEMENTO DEPENDIENTE).

    Clase dependiente

    Clase independiente

    Canal

    Video

    . . .

    . . . Grabar(c : canal)

    Televisin

    . . .

    . . . cambiar(c : canal)

    RELACIONES ENTRE CLASES

    23

  • 2.- RELACIN DE GENERALIZACIN ES UNA RELACIN ENTRE DOS CLASES EN DONDE UNA DE ELLAS, LLAMADA SUBCLASE O CLASE HIJA (SUBCLASS O CHILD), HEREDA LOS ATRIBUTOS Y EL COMPORTAMIENTO DE OTRA, LLAMADA SUPERCLASE O CLASE PADRE (SUPERCLASS O PARENT).

    Clase hija

    Clase Padre

    camin auto avin helicptero

    Areo Terrestre

    Vehculo

    WAN

    Red

    LAN

    RELACIONES ENTRE CLASES

    24

  • 3.- RELACIN DE ASOCIACIN ES UNA RELACIN ESTRUCTURAL QUE DESCRIBE UN CONJUNTO DE ENLACES O CONEXIONES ENTRE DOS O MS OBJETOS. ESTA RELACIN ENTRE CLASES PERMITE ASOCIAR OBJETOS QUE COLABORAN ENTRE SI.

    Acta Alumno 0..* 1..*

    RELACIONES ENTRE CLASES

    25

  • 3.1.- ASOCIACIN DE AGREGACIN ES UN TIPO ESPECIAL DE ASOCIACIN E INDICA QUE EL OBJETO BASE UTILIZA AL OBJETO INCLUIDO PARA PODER FUNCIONAR. SI EL OBJETO BASE DESAPARECE NO DESAPARECEN LOS OBJETOS INCLUIDOS. MUESTRA UNA RELACIN TODO - PARTE.

    Computadora

    CPU

    Hard Disk

    Teclado

    Mouse WAN

    Red

    LAN

    Monitor

    HUB

    RELACIONES ENTRE CLASES

    26

  • 3.2.- ASOCIACIN DE COMPOSICIN ES UN TIPO DE ASOCIACIN, EN DONDE EL TIEMPO DE VIDA DEL OBJETO INCLUIDO EST CONDICIONADO POR EL TIEMPO DE VIDA DEL QUE LO INCLUYE. EL OBJETO INCLUIDO SLO EXISTE MIENTRAS EXISTA EL OBJETO BASE. EL OBJETO SE CONSTRUYE A PARTIR DEL OBJETO INCLUIDO PERO NO PODRA EXISTIR SI ELLOS.

    Hombre

    Extremidades

    Tronco Cabeza

    Ejemplo: El Hombre esta formado por cabeza, tronco y extremidades

    RELACIONES ENTRE CLASES

    27

  • EJEMPLO DE DIAGRAMA DE CLASES: Vuelo de un avion comercial

    AvionCarga

    CapCarga

    Avin NroPlaca Modelo

    Vuelo de un avion comercial

    1 . . 4 1

    Boleto

    Nro

    Cliente Nombre Nacionalidad

    Motor Marca Ao

    Vuelo

    IdVuelo FechaSal Destino AvinPasajeros

    NroAsientos

    1 1

    * 1

    * 1

    28

  • 3. DIAGRAMAS DE OBJETOS

    DEFINICIN UN DIAGRAMA DE OBJETOS MUESTRA UNA INSTANCIA PROTOTPICA DE UN DIAGRAMA DE CLASES CON EL FIN DE ILUSTRAR LOS OBJETOS REALES PARTICIPANTES EN UN DETERMINADO MOMENTO. UN DIAGRAMA DE OBJETOS TIENE LOS MISMOS ELEMENTOS QUE UN DIAGRAMA DE CLASE PERO LOS OBJETOS Y SUS ATRIBUTOS TIENEN VALORES CONOCIDOS.

    29

  • EJEMPLO DE DIAGRAMA DE OBJETOS: Vuelo de un avion comercial

    1 . . 4

    :Boleto

    Nro: 102030

    :Cliente

    Nombre: Juan Prez Nacionalidad: peruana

    :Motor Marca: General Motors Ao: 1996

    :Vuelo

    IdVuelo: 666 FechaSal: 01/01/2001 Destino: Lima

    :AvinPasajeros NroPlaca: XXX123 Modelo: Boeing 777 Nro: 555 Capacidad: 100

    1 1

    * 1

    * 1

    30

  • 4. DIAGRAMAS DE SECUENCIA

    DEFINICIN UN DIAGRAMA DE SECUENCIA MUESTRA LA INTERACCIN DE UN CONJUNTO DE OBJETOS, PONIENDO NFASIS EN EL ORDEN CRONOLGICO DEL ENVO DE MENSAJES ENTRE OBJETOS. UN DIAGRAMA DE SECUENCIA ESTA COMPUESTO POR: - OBJETOS (O ACTORES) - LNEA DE VIDA DE UN OBJETO - ACTIVACIN O FOCO DE CONTROL - MENSAJES

    31

  • ELEMENTOS DE UN DIAGRAMA DE SECUENCIA

    objeto:Clase

    OBJETOS O ACTORES Son las entidades que participan en la interaccin para lograr una funcionalidad, stas envan y o reciben mensajes.

    objeto:Clase

    Lnea de vida de un objeto

    Indica la vida de un objeto durante la interaccin y se representa mediante una lnea vertical discontnua.

    32

  • objeto:Clase objeto:Clase

    Activacin o foco de Control objeto:Clase

    Mensajes

    Muestra el periodo de tiempo en el cual el objeto se encuentra desarrollando una operacin.

    Son las invocaciones que envia un objeto a otro para que realice una tarea.

    ELEMENTOS DE UN DIAGRAMA DE SECUENCIA

    33

  • TIPOS DE MENSAJES Mensaje Simple: Se usa cuando no se conocen detalles del tipo de comunicacin o cuando no resulta relevante en el diagrama.

    Mensaje Sncrono:

    Mensaje Asncrono:

    El objeto que envia el mensaje espera a que el objeto que lo recibe le termine la operacion. El mensaje sncrono ms comun es la llamada a procedimientos.

    Cuando el objeto que envia el mensaje sigue con su trabajo sin esperar respuesta del objeto receptor del mensaje. 34

  • Imprimir (arch) Imprimir(arch) [ impresora OK] Imprimir(arch) [impresora !OK] Imprimir(arch)

    :computadora :cola :impresora :ServidorImpresion

    EJEMPLO DE DIAGRAMA DE SECUENCIA UN USUARIO DESEA IMPRIMIR UN ARCHIVO PARA LO CUAL LE ENVA LA ORDEN A LA COMPUTADORA, LA CUAL A SU VEZ SE LA ENVA AL SERVIDOR DE IMPRESIN SIENDO ESTE EL ENCARGADO DE DIRIGIRLO A LA IMPRESORA. EN CASO DE QUE LA IMPRESORA ESTE OCUPADA EL ARCHIVO A IMPRIMIR SE DIRIGE HACIA LA COLA DE IMPRESIN, LA CUAL EN SU MOMENTO LE INDICAR AL SERVIDOR DE IMPRESIN QUE TIENE EL ARCHIVO PENDIENTE POR IMPRIMIR.

    35

  • 5. DIAGRAMAS DE COLABORACIN

    DEFINICIN: UN DIAGRAMA DE COLABORACIN MUESTRA LA INTERACCIN DE UN CONJUNTO DE OBJETOS, PONIENDO NFASIS EN LA ESTRUCTURA ORGANIZACIONAL DE LOS OBJETOS QUE ENVAN Y RECIBEN MENSAJES. UN DIAGRAMA DE COLABORACIN ESTA COMPUESTO POR: - OBJETOS - ENLACES - FLUJO DE MENSAJES

    36

  • Prepara( ) 1*[para cada rengln]: Prepara( ) 1.3 reorden:=NecesitaReorden( ) 1.1 Existe:=RevisaExistencia( ) 1.2 [Existe]: descuenta( ) 1.4 [reorden]: colocarOrdenCompra( ) 1.5[Existe]:Entrega( )

    :Pedido

    :renglnPedido

    :OrdenCompra :NotaSalida

    :Artculo

    EJEMPLO DE DIAGRAMA DE COLABORACIN

    UNA NOTA DE PEDIDO CONTIENE UN RENGLN POR CADA ARTCULO, QUE SE EST DESPACHANDO. SI LA CANTIDAD DEL ARTCULO QUE AN QUEDA EN ALMACN ES MENOR QUE EL PUNTO DE REORDEN, EST LANZA UNA ORDEN DE COMPRA DEL ARTCULO, SI HAY EXISTENCIAS EL PEDIDO SE ATIENDE.

    37

  • DIAGRAMAS DE SECUENCIA Y COLABORACIN AMBOS DIAGRAMAS MUESTRAN LA INTERACCIN ENTRE OBJETOS, PERO EL DIAGRAMA DE SECUENCIA RESERVA UNA DIMENSION PARA EL TIEMPO HACIENDO MS FCIL OBSERVAR EL ORDEN DE EJECUCIN DE LOS MENSAJES, MIENTRAS QUE EL DIAGRAMA DE COLABORACIN LOS ENUMERA. AMBOS DIAGRAMAS REPRESENTAN LO MISMO Y PUEDE TRANSFORMARSE DE UNO A OTRO SIN PERDIDA DE INFORMACIN.

    Imprimir (arch) 1: Imprimir(arch) 1.1: [ impresora OK] Imprimir(arch) 1.2: [impresora !OK] Imprimir(arch)

    :computadora

    :cola

    :impresora

    :ServidorImpresion 38

  • 6. DIAGRAMAS DE ESTADOS

    DEFINICIN: DESCRIBE EL COMPORTAMIENTO DE UN ELEMENTO DEL MODELO, MOSTRANDO LA POSIBLE SECUENCIA DE ESTADOS EN LOS QUE PUEDE ENTRAR EL OBJETO Y COMO CAMBIA AL REACCIONAR ANTE UN EVENTO DURANTE SU CICLO DE VIDA. UN DIAGRAMA DE ESTADOS ESTA COMPUESTO POR: - ESTADOS - EVENTOS EVENTO - TRANSICIONES 39

  • ELEMENTOS DE UN DIAGRAMA DE ESTADOS

    ESTADO: IDENTIFICA UN PERIODO DE TIEMPO DEL OBJETO (NO INSTANTNEO) EN EL CUAL EL OBJETO ESTA ESPERANDO ALGUNA CONDICIN, OPERACIN U EVENTO, TIENE CIERTO ESTADO CARACTERSTICO O PUEDE RECIBIR CIERTO TIPO DE ESTMULOS. EVENTO: ES UNA OCURRENCIA QUE PUEDE CAUSAR LA TRANSICIN DEL OBJETO DE UN ESTADO A OTRO. TRANSICIN: UNA TRANSICIN ES UNA RELACIN ENTRE DOS ESTADOS QUE INDICA QUE UN OBJETO EN UN PRIMER ESTADO PUEDE ENTRAR A UN SEGUNDO ESTADO Y EJECUTAR CIERTAS OPERACIONES, CUANDO UN EVENTO OCURRE. SE REPRESENTA COMO UNA LNEA SLIDA ENTRE DOS ESTADOS

    Estado1

    Estado inicial

    Estado2

    Estado final

    Evento( )

    Transicin

    40

  • EJEMPLO DE DIAGRAMA DE ESTADOS

    UNA CUENTA BANCARIA PUEDE ESTAR ACTIVA, SUSPENDIDA O CERRADA. CUANDO ESTA EN ACTIVA PUEDE A SU VEZ ESTAR EN AZUL (SI EL SALDO ES +) O EN ROJO (SI EL SALDO ES -). MUESTRE SU DIAGRAMA DE ESTADOS.

    suspender cuenta activar cuenta cerrar cuenta

    retiro [saldo0] / poner en azul

    en azul en rojo

    Cerrada Suspendida

    Activa

    41

  • 7. DIAGRAMAS DE ACTIVIDAD

    DEFINICIN: MUESTRA LAS OPERACIONES QUE SE REALIZAN PARA CONSEGUIR UN OBJETIVO. ES UN CASO ESPECIAL DE UN DIAGRAMA DE ESTADOS DONDE TODOS LOS ESTADOS EJECUTAN UNA TAREA. SE UTILIZAN PARA DAR DETALLE A UN CASO DE USO, MODELANDO LOS FLUJOS DE TRABAJO U OPERACIONES. UN DIAGRAMA DE ACTIVIDAD ESTA COMPUESTO POR: - ESTADOS DE ACTIVIDAD O SIMPLEMENTE ACTIVIDAD - ESTADOS DE ACCIN O SIMPLEMENTE ACCIN - TRANSICIONES

    42

  • ELEMENTOS DE UN DIAGRAMA DE ACTIVIDAD

    ESTADOS DE ACTIVIDAD (ACTIVIDAD).- SON ESTADOS QUE LLEVAN A CABO ALGUNA ACTIVIDAD. NO SON ATMICOS ES DECIR PUEDEN DESCOMPONERSE. PUEDEN SER INTERRUMPIDOS Y SE CONSIDERAN QUE TOMAN ALGN TIEMPO EN COMPLETARSE. ESTADO DE ACCIN (ACCIN).- ES UNA ACTIVIDAD QUE NO SE PUEDE DESCOMPONER Y PERMITEN MODELAR UN PASO DENTRO DE UN ALGORITMO. SE CONSIDERA QUE SU EJECUCIN TOMA UN TIEMPO INSIGNIFICANTE. TRANSICIONES.- ES EL PASO DE UN ESTADO DE ACTIVIDAD A OTRO, UNA TRANSICIN OCURRE AL FINALIZAR UNA ACTIVIDAD.

    Otros elementos Decisin Barra de Sincronizacin Carriles Estados inicial y final

    43

  • EJEMPLO DE DIAGRAMA DE ACTIVIDAD MUESTRE UN PROCESO COMN DE UNA SOLICITUD DE SERVICIO.

    Cliente Vendedor Jefe Ventas

    [Tarifa no OK]

    [Tarifa OK]

    Sol. de servicio Pide datos cliente

    Consulta tarifa

    Negoc. condiciones

    Pide datos Servicio

    Ingresa orden

    Consulta disponib.

    Decide costo

    44

  • 8. DIAGRAMAS DE COMPONENTES

    DEFINICIN: UN DIAGRAMA DE COMPONENTES MUESTRA LAS DEPENDENCIAS LGICAS ENTRE COMPONENTES SOFTWARE, TALES COMO ARCHIVOS DE CDIGO FUENTE, BINARIOS, EJECUTABLES, TABLAS, ETC. UN DIAGRAMA DE COMPONENTES ESTA COMPUESTO POR: - COMPONENTES - INTERFACES - RELACIONES DE REALIZACIN Y DEPENDENCIA

    45

  • ELEMENTOS DE UN DIAGRAMA DE COMPONENTES COMPONENTES.- SON CADA UNA DE LAS PARTES FSICAS Y REEMPLAZABLE DE UN SISTEMA. SE DICE QUE ES PARTE FSICA EN EL SENTIDO EN QUE VIVEN EN EL MUNDO DE BITS Y NO SON SLO ESQUEMAS CONCEPTUALES. SE DICE QUE ES REEMPLAZABLE PUES PUEDE SER REEMPLAZADO POR UN NUEVO COMPONENTE QUE MEJORE LA FUNCIONALIDAD O AADA ALGUNA SIN QUE AFECTE A OTROS COMPONENTES.

    nombre Esto se logra mediante el uso de interfaces bien definidas las cuales son implementadas por los componentes. 46

  • INTERFACES.- ES UNA COLECCIN DE OPERACIONES QUE SON USADAS PARA ESPECIFICAR UN SERVICIO PROVISTO POR UNA CLASE O UN COMPONENTE. ESTO PERMITE UTILIZAR LOS SERVICIOS SIN ABRUMARNOS CON SUS DETALLES DE IMPLEMENTACIN ASIMISMO SE PUEDE CAMBIAR LOS COMPONENTES PERO SI SUS INTERFACES SON LAS MISMAS ENTONCES ESTE CAMBIO ES INMEDIATO Y NO AFECTA AL RESTO DEL SISTEMA.

    Interface

    . . . ELEMENTOS DE UN DIAG. DE COMPONENTES

    47

  • RELACIONES ENTRE COMPONENTES RELACIN DE REALIZACIN.- EL COMPONENTE QUE REALIZA O IMPLEMENTA LA INTERFAZ ES CONECTADO MEDIANTE UNA LNEA DISCONTNUA TERMINADA EN UNA CABEZA DE FLECHA HUECA. RELACIN DE DEPENDENCIA.- OCURRE ENTRE LAS COMPONENTES QUE UTILIZAN LA INTERFAZ IMPLEMENTADA POR OTRA COMPONENTE Y LA RESPECTIVA INTERFAZ. SE REPRESENTA CON UNA LNEA DISCONTNUA CON CABEZA DE FLECHA ABIERTA.

    48

  • ESTEREOTIPOS DE COMPONENTES

    executable.- son componentes que pueden ejecutarse en un nodo. library.- son las libreras estticas o dinmicas. table.- un componente que es una tabla de una base de datos. file.- un componente que es un archivo de cdigo fuente o datos. document.- un componente que es un documento. 49

  • EJEMPLO DE UN DIAGRAMA DE COMPONENTES Se tiene un robot que es manejado mediante la librera manejo.dll, la cual implementa dos grupos de interfaces Imanejo e Iautoprueba. La interfaz Imanejo es utilizada por camino.dll, la cual proporciona el comportamiento a seguir cuando el robot se desplaza sin contratiempos. Si el robot encuentra algn obstculo, camino.dll utiliza a colision.dll. Peridicamente, el robot se autocomprueba, para ello manejo.dll, cuenta con la interfaz Iautoprueba la cual es utilizada por test.dll que le ordena las pruebas que debe realizar. Muestre los componentes y sus interfaces mediante un Diagrama de Componentes

    Manejo.dll

    Camino.dll

    Test.dll

    Imanejo

    Iautoprueba

    Colisin.dll 50

  • 9. DIAGRAMAS DE DESPLIEGUE

    Definicin: Muestra el hardware en donde ser desplegado los componentes de nuestro sistema. Esto significa que muestra las relaciones fisicas entre el software y el hardware. Un Diagrama de Despliegue esta compuesto por: - Nodos - Conexiones entre nodos

    51

  • ELEMENTOS DE UN DIAGRAMA DE DESPLIEGUE

    Nodos: Representacin de cualquier tipo de hardware sobre el cual correr o del que se servir nuestro sistema.

    Ser un Procesador, si tiene capacidad de proceso como una PC.

    Ser un Dispositivo si no tiene capacidad de proceso. Vienen a ser los equipos que sirven de interfaz con el mundo real como telfono, impresora, sensores, etc.

    Conexiones: Los nodos se conectan mediante asociaciones de comunicacin fisica o no, como conexin satelital, cable serial, seal infraroja, etc.

    52

  • EJEMPLO DE UN DIAGRAMA DE DESPLIEGUE Un usuario que se conecta va Internet a un Servidor de Aplicaciones de una empresa. En este instante el componente CLIENTE viaja desde el Servidor de Aplicaciones hacia la PC del usuario, luego el componente CLIENTE puede solicitar algn servicio al componente APLICACION el cual buscar los datos necesarios en el componente BD ubicado en el Servidor de Base de Datos.

    PC usuario

    Servidor de Aplicaciones

    Servidor de BD

    Cliente

    Cliente BD

    Aplicacin

    53

  • CONCLUSIONES:

    1. El UML es el lenguaje estndar a nivel mundial para representar modelos orientados a objetos de sistemas intensivos en software.

    2. Debemos utilizarlo en todos nuestros modelos para poder comunicarnos con otros desarrolladores.

    54

  • RECOMENDACIONES:

    -Primero aprenda la notacin -Segundo aprenda la herramienta

    -Tercero aprenda el Proceso

    Apostar por enfoque Orientado a Objetos

    55

  • MUCHAS GRACIAS!!! 56