12.07.2015 Views

presentacion UML

presentacion UML

presentacion UML

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>UML</strong>Lenguaje de ModeladoUnificado


<strong>UML</strong>Reseña a HistóricaEsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticas Comenzó como una iniciativa de GradyBooch y Jim Rumbaugh en 1994 paracombinar las notaciones visuales de susconceptos (Booch(y OMT). En 1995 Ivar Jacobson, , creador delOOSE se unió al proyecto. En 1997 la versión n 1.0 de <strong>UML</strong> fuepropuesta como metamodelo orientado aobjetos de semántica y notaciónestándares. En 1997 como estándar por el OMG(ObjectManagement Group). Para el 99 se hablaba de la versión n 1.2 ypara el 2002 de <strong>UML</strong> 1.4 y 2.0, la cual esla ultima versión n aprobada


<strong>UML</strong>Reseña a HistóricaEsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticas


<strong>UML</strong>CaracterísticasEsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticasEs una especificación n basada en Booch,OMT y OOSE, de allí sus principios.Divide cada proyecto en un numero dediagramas que representan las distintasvistas del proyecto y juntos representan laarquitectura del mismo.Permite describir un sistema en diferentesniveles de abstracción.Se quiere convertir en un lenguaje estándarcon el que sea posible modelar todos loscomponentes del desarrollo de unaaplicación, sin definir un modelo dedesarrollo.


EsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándaresqueconforman<strong>UML</strong>Diagramas de<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticas<strong>UML</strong>Estándares queConforman <strong>UML</strong>Superestructura: Es aquEs aquí dónde se definen losdiagramas y los elementos que los componen.Infraestructura: Conceptos de bajo nivel. Meta-Modelo da soporte a la superestructura, entre otras.OCL: Lenguaje de restricción. De utilidad paraespecificar conceptos ambiguos sobre los distintoselementos del diagrama.XMI / Intercambio de diagramas: Permitecompartir diagramas entre diferentes herramientas demodelado <strong>UML</strong>.


<strong>UML</strong>Diagramas <strong>UML</strong>EsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticasDiagrama de Clases, , modela la estructuraestática tica de las clases en el sistema.Diagrama de Componentes, , modela loscomponentes que componen una aplicación,sistema o empresa.Diagrama de Estructura de Composición,Representa la estructura interna de unclasificador.Diagrama de Despliegue FísicoFsico, , muestracómo y dónde dse desplegará el sistema.Diagrama de Objetos, , modela la estructuraestática tica de los objetos en el sistema.Diagrama de Actividades, , modela elcomportamiento de los casos de uso, objetosoperaciones.


<strong>UML</strong>Diagramas <strong>UML</strong>EsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticasDiagrama de Comunicaciones, modelainteracciones entre objetos.Diagrama de Secuencias, representa unainteracción, n, poniendo el foco en la secuencia de losmensajes que se intercambian.Diagrama de Máquinas Mde Estado, ilustracomo un elemento se puede mover entre estadosque clasifican su comportamiento.Diagrama de Tiempos, mostrar los cambiosen el estado o la condición n de una línea lde vida a lolargo del tiempo lineal.Diagrama de Casos de Uso, muestra lasrelaciones entre los actores y el sujeto (sistema), ylos casos de uso.


EsquemaConcepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacionalcon <strong>UML</strong>VentajasCríticas<strong>UML</strong>Modelo Relacional con<strong>UML</strong>Los diagramas de Clases de <strong>UML</strong> sepueden usar para modelar la base dedatos relacional en la que un sistemaeste basado, sin embargo losdiagramas tradicionales de modeladocapturan mas información n sobre labase de datos relacional y son masadecuados para modelarla.Como extensión n de <strong>UML</strong>, el diagramade clases puede ser referenciado en undiagrama de relación n de entidad (ERdiagram) ) el cual relaciona entidadesque pueden ser modeladas basadas enatributos clave


<strong>UML</strong>VentajasEsquemaDiseño o y documentación.n.Concepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticasCódigo reutilizable.Descubrimiento de fallas.Ahorro de tiempo en el desarrollo delsoftware.Mucho más m s fáciles flas modificaciones.Más s fácil fcomunicación n entreprogramadores.


<strong>UML</strong>CriticasEsquema<strong>UML</strong> es excesivamente extenso y complejo.Concepto de<strong>UML</strong>ReseñaHistóricaCaracterísticasEstándares queconforman <strong>UML</strong>Diagramas<strong>UML</strong>ModeloRelacional con<strong>UML</strong>VentajasCríticasContiene diagramas y estructuras que sonredundantes o muy poco usadas.Semántica imprecisa.Problemas para el aprendizaje.Solo el código cestá en sincronización n con elcódigo.Trata de ser todas las cosas para todas laspersonas.


Esquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos<strong>UML</strong>Correspondencia DeTérminos ER-a-<strong>UML</strong>Entidad ClaseAtributo AtributoRelación asociación de clasesVariación en las notaciones paralas cardinalidades de lasrelaciones (asociaciones)


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosClasees la unidad básica bqueencapsula toda la información n deun objeto. A través s de ellapodemos modelar el entorno enestudio.En <strong>UML</strong>, una clase esrepresentada por un rectánguloque posee tres divisiones.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosNombre de la ClaseLista de atributosLista de Métodos uOperacionesEn donde:Superior: Contiene el nombre de la ClaseIntermedio: Contiene los atributos (ovariables de instancia) que caracterizan a laClase (pueden ser private, , protected opublic).Inferior: Contiene los métodos mu operaciones,los cuales son la forma como interactúa a elobjeto con su entorno (dependiendo de lavisibilidad: private, , protected o public).


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosAtributos: Representa alguna propiedad de laclase pueden representarse mostrando sunombre y su tipo e incluso su valor pordefecto. Los atributos definen la estructura deuna clase y de sus correspondientesobjetos. El atributo define el valor de un datopara todos los objetos pertenecientesa una clase.Ejemplo: nombre, edad, peso sonatributos de la clase persona


Esquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos<strong>UML</strong>Elementos Comunes aTodos los DiagramasElementos Derivados:Un elemento derivado es aquel cuyovalor se puede calcular a partir deotros elementos presentes en elmodelo, pero que se incluye en elmodelo por motivos de claridad ocomo decisión n de diseño. Serepresenta con una barra “/”precediendo al nombre del elementoderivado.PersonanombrefechaNac{edad= fechaAct – fechaNac}/edad


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosAsociaciones:Las asociaciones entre dosclases se representanmediante una línea lque lasune. La línea lpuede tener unaserie de elementos gráficosque expresan característicasparticulares de la asociación. Acontinuación n se verán n los más mimportantes de entre dichoselementos gráficos.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos Nombre de la Asociación n yDirecciónEl nombre de la asociación n esopcional y se muestra como un textoque está próximo a la línea. lSe puedeañadir adir un pequeño o triángulo negrosólido que indique la dirección n en lacual leer el nombre de la asociación.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosMultiplicidadLa multiplicidad es una restricción n quese pone a una asociación. Puedeexpresarse de las siguientes formas:• Con un número nfijo: 1.• Con un intervalo de valores: 2..5.• Con un rango en el cual uno de losextremos es un asterisco. Significaque es un intervalo abierto. Porejemplo, 2..* significa 2 o más. m• Con una combinación n de elementoscomo los anteriores separados porcomas: 1, 3..5, 7, 15..*.• Con un asterisco: * . En este casoindica que puede tomar cualquiervalor (cero o más). m


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos RolesPara indicar el papel que juegauna clase en una asociación n sepuede especificar un nombrede rol.


Esquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos<strong>UML</strong>Elementos Comunes aTodos los DiagramasClases AsociaciónCuando una asociación n tiene propiedadespropias se representa como una clase unidaa la línea lde la asociación n por medio de unalínea a trazos. Tanto la línea lcomo elrectángulo de clase representan el mismoelemento conceptual: la asociación. Portanto ambos tienen el mismo nombre, el dela asociación.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos Asociaciones N-AriasNEn el caso de una asociación n enla que participan más m s de dosclases, las clases se unen conuna línea la un diamantecentral.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos EnsambladosSon formas especiales deasociación n entre un todo y suspartes, en donde elensamblado está compuestopor sus componentes.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos AgregaciónEl objeto base utiliza al incluidopara su funcionamiento. Es untipo de relación n dinámica, endonde el tiempo de vida delobjeto incluido esindependiente del que loincluye.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos ComposiciónEl Objeto base se construye apartir del objeto incluido. Es untipo de relación n estática, tica, endonde el tiempo de vida delobjeto incluido estacondicionado por el tiempo devida del que lo incluye.universidad departamentoprofesor


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosDependencia o InstanciaciónRepresenta un tipo de relación n muyparticular, en la que una clase es instanciada(su instanciación n es dependiente de otroobjeto/clase).El uso más m s particular de este tipo de relaciónes para denotar la dependencia que tieneuna clase de otra, como por ejemplo unaaplicación n gráfica que instancia una ventana(la creación n del Objeto Ventana estacondicionado a la instanciación n provenientedesde el objeto Aplicación):VentanaAplicación


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosHerencia(especialización/generalizacin/generalización) n) La herencia es una abstracciónimportante para compartir similitudesentre clases, donde todos los atributos yoperaciones comunes a varias clases sepueden compartir por medio de lasuperclase. Las clases con atributos y operacionescomunes se pueden organizar de formajerárquica, rquica, mediante la herencia. Comomodelo conceptual da buena estructuraa las clases, como modelo deimplementación n es un buen vehículopara no replicar informacióninnecesariamente.


<strong>UML</strong>Elementos Comunes aTodos los DiagramasEsquemaHerencia(especialización/generalizacin/generalización) n)• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosLa Herencia es útil para el modeloconceptual al igual que para laimplementación.n.La superclase generaliza a sussubclases, y las subclasesespecializan a la superclase.Cada clase tiene sus propiosatributos los cuales se vanespecializando a medida que lasclases son cada vez masespecializadas.


Esquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• Ejemplos<strong>UML</strong>Elementos Comunes aTodos los DiagramasLa herencia indica que una subclasehereda los métodos my atributosespecificados por una Súper SClase,por ende la sub – clase además s deposeer sus propios métodos myatributos, poseerá las característicasy atributos visibles de la súper sclase


<strong>UML</strong>Ejemplos CompletosEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-AtributosEmpleadonombreCIedadTrabajaEn5..40 11 1AdministraDesdeDepartamentoidDnombreDpresupuesto-Asociaciones-Herencia• Ejemplos


<strong>UML</strong>Ejemplos CompletosEsquema• Correspondencia de términos tER-a-<strong>UML</strong>• ElementosComunes aTodos losDiagramas-Clase-Atributos-Asociaciones-Herencia• EjemplosNombredesde PresupuestoCIEdadidD NombreDEmpleado1..1Administra1..1 1..1TrabajaEnDepartamento5..40


DelitocodDelitodescripsionAspectonombreDictamennDictamenfechaSolfechaEntExpertonombreCIpersonanombreCISentencianSentenciaCondenatoriapenacondena:carcelciudadestadoAbsolutoriaJueznombreCICasonCasoEstudia1..*1expedientenExpedientetiene1..*1..*PuedenHaber1*dicta1..3 1..*estaInvolucrado* 1..* estaIndiciadafueAgraviada1..* 1..*1..* 1..*1documenta11


Referencias Electrónicas http://www.clikear.com/manuales/uml/ http://es.tldp.org/Tutoriales/doc-modelado-sistemassistemas-<strong>UML</strong>/multiple-html/ http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado#column-oneone http://www.epidataconsulting.com/tikiwiki/tiki-read_article.php?articleId=15

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!