clase1 uml

Download Clase1 Uml

If you can't read please download the document

Post on 05-Jan-2016

212 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

UMLLL

TRANSCRIPT

  • Arquitectura de software dirigida por modelos(Model-Driven Architecture)

  • UML(Unified Modeling Language)

  • UML

    UML es un lenguaje para

    VisualizarEspecificarConstruir Documentarartefactos de sistemas intensivos de software

  • Lenguajes de modelado, modelos y diagramas Un lenguaje de modelado permite expresar los distintos modelos que se producen en el proceso de desarrollo. Un modelo es una representacin abstracta de una especificacin, un diseo o un sistema desde un punto de vista particular.Un diagrama es una representacin de (parte de) un modelo de diseoUn modelo se representa por uno o ms diagramas

  • Lenguaje de Modelado UML 2.0Elementos primitivos de modelado (estticos, dinmicos, agrupamiento, anotaciones)

    RelacionesDependenciaAsociacinGeneralizacin RealizacinDiagramas UML (13 diagramas)Diagramas estticosDiagramas de comportamiento

  • RELACIONESDependenciaUna relacin semntica entre dos elementos, tal queun cambio en una de ellos (el independiente) puedeafectar al otro (el dependiente). A B B depende de A

  • RELACIONESAsociacinEs una relacin estructural que describe unconjunto de links, siendo un link una conexinentre objetos 0..1 * empleador empleado

  • RELACIONESGeneralizacinUna relacin de generalizacin/especializacinen la que el elemento especializado(descendiente) se construye sobre laespecificacin del elemento generalizado(ancestro)

  • RELACIONESRealizacinEs una relacin semntica en la que unclasificador, tal como una interfaz o un caso deuso, especifica un contrato que otroclasificador, tal como una clase o unacolaboracin, garantiza llevar a cabo.

  • RELACIONESAgregacinLa agregacin es un tipo de asociacin que indica que una clase es parte de otra clase (composicin dbil). Los componentes pueden ser compartidos por varios compuestos (de la misma asociacin de agregacin o de varias asociaciones de agregacin distintas). La destruccin del compuesto no conlleva la destruccin de los componentes. Habitualmente se da con mayor frecuencia que la composicin. La agregacin se representa en UML mediante un diamante de color blanco colocado en el extremo en el que est la clase que representa el todo.

  • ComposicinComposicin es una forma fuerte de composicin donde la vida de la clase contenida debe coincidir con la vida de la clase contenedor. Los componentes constituyen una parte del objeto compuesto. De esta forma, los componentes no pueden ser compartidos por varios objetos compuestos. La supresin del objeto compuesto conlleva la supresin de los componentes. El smbolo de composicin es un diamante de color negro colocado en el extremo en el que est la clase que representa el todo (Compuesto).

    RELACIONES

  • Diferencias entre Composicin y Agregacin

    La siguiente tabla intenta resumir algunas diferencias entre agregacin y composicin.

  • DIAGRAMAS UMLDiagramas estticosDiagrama de clasesDiagrama de objetosDiagrama de componentesDiagrama de estructura compuesta Diagrama de paquetesDiagrama de despliegue

  • Diagrama de clasesMuestra un conjunto de clases, interfaces, colaboraciones y sus relaciones

  • Diagrama de objetosMuestra una instantnea de un conjunto de objetos y sus relaciones

  • Diagrama de componentesMuestra la organizacin ydependencias entre unconjunto de componentes, lavista de implementacin deun sistema. Estn relacionados a diagramasde clases en donde uncomponente se correspondecon una o ms clases,interfaceso colaboraciones.

  • Diagrama de estructura compuesta(Composite Structural Diagram)Muestra la estructurainterna (incluyendopartes y conectores) deun clasificador o unacolaboracin estructurada.

  • Diagrama de paquetesMuestra ladescomposicin delmodelo en unidades deorganizacin y susdependencias.

  • Diagrama de despliegueMuestra los enlaces decomunicacin fsicaentre elementos dehardware y las relacionesentre mquinas fsicas yprocesos: qu se ejecutay dnde

  • Diagramas UMLDiagramas de comportamientoDiagramas de casos de usoDiagrama de secuenciaDiagrama de colaboracinDiagrama de estadosDiagrama de actividadesDiagrama cronolgico Diagrama general de interacciones

  • Diagrama de casos de usoMuestra un conjunto de casos de uso y actores y susrelaciones

  • Diagrama de secuenciaEs un diagrama deinteraccin que muestra losobjetos y actores queparticipan en unacolaboracin poniendo elnfasis en el ordenamientoen el tiempo de losmensajes

  • Diagrama de colaboracinUn diagrama de interaccinque pone el nfasis en laorganizacin estructural delos objetos o roles queenvan y reciben mensajes.

  • Diagrama de estadosMuestra un autmataque consiste de estados,transiciones, eventos yactividades

  • Diagrama de actividadesMuestra la estructura deun proceso u otro clculocomo el flujo de controly datos paso a paso en elclculo.

  • Diagrama cronolgico(Timing Diagram)Es un diagrama deinteraccin que muestratiempos a lo largo dediferentes objetos oroles, y no secuenciasrelativas de mensajes

  • Diagrama de interacciones general(Interaction Overview Diagram)Es un hbrido de diagramas de actividady de secuencia.

  • Diagramas estticos UMLDiagrama de clases

  • Diagrama de clasesEs el diagrama ms comn en modelos orientados aobjetos.Elementos de un diagrama de clasesClasesInterfaz, clases abstractas, clases parametrizadasRelaciones de dependencia, generalizacin y asociacinColaboracionesNotas y constraints

  • Diagrama de clases- Ejemplo

  • Diagrama de claseClasesUna clase es una descripcin de un conjunto deobjetos que comparten los mismos atributos,operaciones, relaciones y semntica. nombre atributosoperaciones

  • Diagrama de clases ResponsabilidadesUna responsabilidad es un contrato o unaobligacin de una clase.

    Shipment Responsabilities --maintain the information regarding products shipped against an order --track the status and location of the shipped products

  • Diagrama de clasesVisibilidadUML permite diferentes formas de acceso amiembros de una clase:

    + Pblico# Protegido- Privado

  • Diagrama de clasesRelacionesLas relaciones ms importantes entre clases son:

    Dependencia GeneralizacinAsociacin

  • Diagrama de clasesAsociacionesUna asociacin es una relacin estructural queespecifica que objetos de una clase estnconectados a objetos de otraTipos de asociacionesUnariaBinariaN-aria

  • Diagrama de clasesAsociaciones

    Multiplicidad nombre 0..1 Trabaja-para * empleador empleado rol

  • Diagrama de clasesAsociacionesNombreRolCuando una clase participa en una asociacin,tiene un rol especfico que juega en tal relacin.MultiplicidadPuede ser un rango de valores o un valor explcito:Exactamente 11Cero 0..1 0..1Cero o ms0..*Uno o ms 1..*Subrango m..nNavegabilidad

  • Diagrama de clasesAgregacin- ComposicinRelaciones es-parte-de, una clase representa al todoy otra a las partes.Agregacin Diamante blancoComposicin Diamante negroEn una composicin hay relacin entre los ciclos devida del todo y sus partes. La multiplicidad en elextremo del todo en una composicin debe ser 1 0..1una parte no puede pertencer a ms de un todo

  • Diagrama de clasesAsociaciones

  • Diagrama de clasesInterfazUna interfaz es una coleccin de operaciones queson usadas para especificar un servicio de unaclaseNo especifican estructura ( no tiene atributos)No tiene asociadas implementaciones con ninguna de las operacionesNo necesita especificar todas las operaciones Una clase podra incluir varias interfaces diferentes

  • Diagrama de clasesInterfaces

  • Diagrama de clasesClases AbstractasPueden tener implementaciones definidas paraalgunas de sus operaciones ( al menos una noest definida)Una clase abstracta en la que ninguna de lasoperaciones tiene implementacin y no tieneatributos es lo mismo que una interfaz.

  • Diagrama de clasesClases Abstractas

  • Diagrama de clasesClases parametrizadas

  • Las grficas fueron extradas de los siguientestextos:

    Booch, G., Rumbaugh, J., Jacobson, I. The Unified Modeling Language. User Guide. Addison Wesley. (2005)

    Stevens, P. Pooley R. Utilizacin de UML en Ingeniera del software con objetos y componentes (2002)

    ******************************************