SlideShare una empresa de Scribd logo
1 de 14
Que es UML
UML es un lenguaje de modeladode objetosindependiente del método que se implemente,
no es una metodología, método o proceso.
El objetivo de UML es la unificación de los métodos de modelado de objetos, es la
Identificación y definición de la semántica de los conceptos fundamentales, elección de una
representación gráfica cuya sintaxis sea simple.
Que es un modelo
Un modelo es una abstracción de un sistema semánticamente cerrada y el lenguaje de
modelado nos sirve para especificar, construir, visualizar y documentar ingenios software.
Objetivos de los modelos
Probar una entidad física antes de construirla
Comunicación con el cliente
Visualización
Reducción de la complejidad
Estructurar las ideas
Lenguaje de Modelado
Se necesita un lenguaje de modelado para entender y describir los sistemas complejos.
Historia de UML
Objetivos Iniciales
Unificación de métodos de la Orientacion a Objeto, centrarse en un lenguaje de modelado
estándar y no en un proceso de desarrollo estándar.
Ofrecer una semántica que permitiese modelar problemas en diferentes ámbitos.
Limitaciones de UML
Limitado soporte en el desarrollo de sistemas, es decir no soporta arquitecturas complejas y
especificaciones completas del comportamiento de un sistema.
Esta orientado a ingenieros y técnicos, mantiene difícil comunicación con los usuarios y
clientes, tiene una generación parcial del código, es sólo estructura.
UML no se puede ejecutar.
Visión Global de UML
UML Notation Guide
Define la sintaxis grafica de UML, el vocabulario y las reglas de UML se centran en la
representación conceptual y física de un sistema.
UML Semantics
Define la semántica de UML, conjunto de reglas que permiten asignar un significado a las
expresiones sintácticas.
UML Superestructura
Conceptos de UML
Modelo de Estructura: Capacidades de modelado como clases, objetos.
Modelo de Comportamiento: Capacidades de modelado: casos de uso, comunicación,
secuencias.
UML Infraestructura
Define los conceptos centrales, UML es un lenguaje que se define a sí mismo.
Modelado de Objetos
El término modelado expresa la descomposición en elementos simples más fáciles de
comprender, cada modelo va evolucionando durante el ciclo de desarrollo.
Modelado de objetos: son aspectos estáticos y estructurales del sistema.
Modelado dinámico: son aspectos temporales y de comportamiento del sistema.
Modelado funcional: son aspectos de transformación funcional del sistema.
Modelos de Representación
UML define varios modelos de representación:
Modelo de clases, Modelo de estados, Modelo de casos de uso, Modelo de interacción,
Modelo de realización, Modelo de despliegue.
Diagramas
Los diagramas de UML son grafos que describen los contenidos de una vista
Diagramas de comportamiento: Permiten exhibir comportamientos de un sistema o de los
procesos de las organizaciones.
Diagramas de interacción: Es un subconjunto de los diagramas de comportamiento que
permiten enfatizar las interacciones entre los objetos.
Diagramas de estructura: Muestran los elementos de una especificación que sean
independientes del tiempo.
Diagramas
Diagrama de clases
Muestra una colección de elementos de modelado declarativo como clases.
Diagrama de Actividades
Se utiliza para modelar lógica compleja o paralela en un sistema.
Diagrama de Secuencias
Representa una interacción.
Diagrama de Componentes
Componentes que componen una aplicación, sistema o empresa.
Diagrama de despliegue físico
Muestra cómoy dónde se desplegaráel sistema.
Diagrama de Máquinas de Estado
Cómoun elemento,muchasvecesunaclase,se puede moverentre estadosque clasificansu
comportamiento.
Diagrama de casos de uso
Un diagrama que muestralasrelacionesentre losactoresyel sujeto,esdecirel sistema.
Diagrama de Objetos
Presentalosobjetosysusrelacionesenunpuntodel tiempo.
Diagrama de Paquetes
La organizaciónde loselementosde modeladoenpaquetesylasdependenciasentre ellos.
Diagrama de Revisiónde la Interacción
La revisióndelflujode control.
Diagrama de comunicaciones
La secuenciade losmensajesse daa travésde un esquemade numeradode lasecuencia.
Diagrama de Estructura de Composición
Representalaestructurainternade unclasificador,comounaclase.
Diagrama de Tiempos
Mostrar el cambiode estado de un objetoalo largodel tiempo.
Elementosde Modelado
Un elementode modeladopuedeestarendiferentesdiagramas,perosiempre conel mismo
significadoysímboloasociado, puedenestaragrupadosenpaquetes
Un paquete puede contenerotrospaquetes, sinlímitedel nivel de anidamiento.
Representanlasabstraccionesdelsistemaencursode modelado.
Elementosde visualización
Son proyeccionestextualesográficasque permitenlamanipulaciónde loselementosde
modelado.
Reglas de UML
Un UML tiene que serunmodelobienformado,estese atiene atodaslasreglassemánticasy
sintácticasque le sonde aplicación.
Regla semántica: Si una clase esconcreta,todas lasoperacionesde laclase hande tenerun
métodoque laimplementaenel descriptor.
Regla sintáctica: Una clase se representaporunrectángulode líneacontinuacontres
compartimentosseparadosporlíneashorizontales.
Vistas de UML
Una vistaes un subconjuntode UML que modelaconstruccionesque representanunaspecto
de un sistema.Noesalgográfico,sinouna abstraccióncompuestade diversos diagramas.
Las vistasse puedendividirentresáreas
Clasificaciónestructural:Describe lascosas que hay enel sistemaysusrelacionesconotras
cosas.
Comportamientodinámico: Reflejael comportamientodel sistemaenel tiempo
Gestióndel modelo:Describe laorganizaciónde losmodelosenunidadesjerárquicas
Resumen Capitulo 6
Vista Estática
La vistaestáticaconstituye el fundamentode UML, captura laestructurade objetos.
Los elementosde lavistaestáticade unmodelosonlosconceptosque tienensignificadoen
una aplicación,incluyendoconceptosdel mundoreal yconceptoscomputacionales.
Los elementosclave de lavistaestáticasonlosclasificadores ysusrelaciones,unclasificador
esun elementode modeladoque describe cosas comoclases,interfaces,tiposde datos,casos
de uso,paquetes.
El diagramamás representativode estavistaesel diagramade clases
Clasificación
El mundoreal puede servistodesde abstracciones diferentes,laclasificaciónesunode los
mecanismosde abstracciónmásutilizados.
Conceptode clasificador
Un clasificadoresunconceptodiscretoenel modelo,que tieneidentidad,estado,
comportamientoyrelaciones.
Objeto
Objetocomocosa del mundo real, esalgotangible,visible,cualquiercosa,ocurrenciao
fenómenoque puede seridentificadoycaracterizado.
Un objetomodelaunaparte de la realidad,conel conceptode objeto,se modelala
permanenciae identidadde conceptos percibidos.
Un objetotiene estado,exhibe algúncomportamientobiendefinidoytiene unaidentidad
única.
El comportamientode unobjetoescómoactúa y reaccionaunobjeto,enfunciónde sus
cambiosde estadoy pasode mensajes.
Un objeto tiene estado, comportamiento e identidad; la estructura y el comportamiento de
objetos similares están definidos en su clase común.
Identidad
Es aquella propiedad de un objeto que lo distingue de todos los demás.
No es conveniente que los nombres de las entidades las identifiquen ya que una entidad
puede no tener un nombre único y, sin embargo, ser identificable, una entidad puede tener
más de un nombre único, también puede cambiar de nombre a lo largo del tiempo.
Clase
Una clase representa un concepto discreto dentro de la aplicación que se está modelando,
sirve comomolde para crear instancias o, lo que es lo mismo, objetos, el proceso de creación
de objetos se conoce como instanciación.
Una clase dicta la estructura y comportamiento de sus instancias, todos los objetos en un
sistema de objetos pertenecen a alguna clase.
Las clases tienen un nombre que las identifica
Una clase puede servistacomo: el mecanismoparacrear objetos,lafábricade objetos o como
el conjunto de todas sus instancias.
Una clase es una descripciónabstractade losdatosy del comportamientode una colección de
objetos similares.
Una clase tiene unnombre únicodentrode su contenedor,que es generalmente un paquete,
aunque puede ser también otra clase.
Clase Abstracta
El objetivo fundamental de una clase abstracta es la especialización, una clase concreta no
puede tener operaciones abstractas, pero una clase abstracta si puede tener operaciones
concretas.
Clase Parametrizada
Es un descriptor de una clase con uno o más parámetros formales sin especificar.
Para su representación, UML utiliza un rectángulo en línea discontinua superpuesto en la
esquina superior derecha de un rectángulo correspondiente a una clase.
Atributo
El tipo de un atributo puede ser simple o complejo, cada objeto de la clase tiene un valor
independiente para el atributo.
Los atributosde una clase nodeberíansermanipulablesdirectamentepor el resto de objetos.
En una clase,el valordescritoporun atributo puede ser distinto en cada objeto o compartido
por todos los objetos.
Operación
Se utilizanparaindicarlasoperacionesde unaclase,unaoperaciónesla especificación de una
transformación o consulta que puede tener un objeto
Un métodoes la implementación de una operación, especifica el algoritmo o procedimiento
que da lugar a los resultados de una operación.
Las declaraciones de operación son heredadas por los descendientes de la clase, si otra
declaración tiene la misma signatura coincidente, entonces se trata de la misma operación.
Una operación con alcance de clase se presenta subrayada.
Lista de Parámetros: lista de declaraciones de parámetros separadas por comas.
Dirección
In: Entrada pasada por valor.
Out: Salida, no existe valor de entrada.
Inout: Entrada que se puede modificar.
Return: Valor proporcionado por una llamada.
Nombre: nombre del parámetro.
Tipo: referencia a un clasificador, clase, tipo de datos.
Tipos de operaciones que un cliente realiza sobre un objeto
Modificador: Altera el estado de un objeto.
Selector: Accede al estado de un objeto, pero no lo altera.
Iterador: Permite acceder a todas las partes de un objeto en algún orden perfectamente
establecido.
Constructor: Crea un objeto e inicia su estado.
Destructor: Libera el estado del objeto y destruye el propio objeto.
Interfaz
Una interfaz es la descripción del comportamiento de objetos sin proporcionar su
implementación o estado.
Una o más clases pueden realizar una interfaz, de forma que cada clase implementa las
operacionesde la interfaz, una clase puede admitir muchas interfaces, cuyos efectos podrán
ser disjuntos.
Las interfacesnoposeenimplementación,unainterfazcontiene operacionesperono
atributos.
Una interfazequivaleaunaclase abstracta, sinatributosni métodos,que tiene únicamente
operacionesabstractas,todaslasoperacionesde unainterfaztienenvisibilidadpública.
Una interfazesuna colecciónde operacionesque se empleaparaespecificarunserviciode
una clase o de un componente,también sirveparanombraruna colecciónde operacionesy
para especificarsussignaturasyefectos.
Una interfazse centraen losefectos,noenlaestructura,de un serviciodado, noofrece una
implementaciónparaningunade susoperaciones.
Relaciones
En el dominiodel problema lasclasesnoestánaisladas,sinoque se relacionande diferentes
formas.
Un enlace esuna relaciónfísicao conceptual entre instancias.
Expresanlasconexionesentre clasificadores,losenlacesentre objetospuedenrepresentarse
entre lasrespectivasclases.
Formasde relaciónentre clases:
-AsociaciónyAgregación
-Generalización/Especialización
Las relacionesde AgregaciónyGeneralizaciónformanjerarquíasde clases ypuedenserde
variostipos:
Asociación:Descripciónde unaconexiónentre instanciasde clases.
Dependencia:Relaciónentre doselementosdel modelo.
Flujo:Relaciónentre dosversionesde unobjetoen momentossucesivos.
Generalización:Relaciónentreunadescripciónmásgeneralyuna más específicade algo,
usadopor herencia.
Realización:Relaciónentre unaespecificaciónysuimplementación
Uso: Situaciónenlaque un elementorequiere aotropara su correctofuncionamiento.
Asociación
Una asociacióndescribe lasconexionessemánticasentre objetosde diferentesclases,Una
asociaciónrelacionaunalista de doso más clasificadores,conlasrepeticionespermitidas.
Cada conexiónde unaasociaciónauna clase se llamaextremode laasociación,unaasociación
puede teneratributosporsí misma.
Asociaciónbinaria
Es la asociaciónque se produce exactamente entredosclases,se representanatravésde una
líneacontinuaque conectaambos símbolosde clase.
AsociaciónCalificada
Un calificador es un atributo o tupla de atributos de la asociación cuyos valores sirven para
partir o clasificarunconjuntode objetosasociadosmediante una asociación UML a un objeto.
Clase Asociación
Son asociacionesque tambiénson clases, tienen propiedades tanto de las clases como de las
asociaciones.
Se utilizancuandocada enlace debe tener sus propios valores para los atributos, operaciones
propias o sus propias referencias a objetos.
Asociaciónn-aria
Son asociacionesque se establecenentre másde dos clases, cada clase podría aparecer varias
veces desempeñando cada vez distintos roles.
Agregación
Una agregaciónes una forma de asociación que representa una relación Todo-parte entre un
agregado y las partes que los componen.
Una asociación binaria puede declararse como agregación.
En la agregación una parte puede pertenecer a más de un agregado y puede existir
independientemente del agregado.
Una clase agregada tiene múltiples partes, pero cada relación entre la clase agregada y cada
una de las partes es una asociación distinta.
La agregaciónesunaasociación,conllevalaidea de que el agregado es la suma de sus partes.
Composición
Forma de asociación de agregación con fuerte sentido de posesión.
Es una asociaciónde agregaciónconlas restriccionesadicionalesde que un objeto sólo puede
ser parte de un compuesto a la vez y que el objeto compuesto es el único responsable de la
disponibilidad de todas sus partes.
Durante la vidadel elemento compuesto, ningún otro objeto puede tener la responsabilidad
de creación o destrucción sobre las partes.
Un elemento compuesto puede añadir piezas adicionales durante su vida, siempre que lo
permitalamultiplicidad o quitar piezas y la responsabilidad de ellas sea asumida por objeto.
Los atributos son relaciones de composición entre una clase y las clases de sus atributos.
Generalización/Especialización
Es una relación de taxonomía entre un elemento general y otro más específico que es
plenamente consistente con el primer elemento y que le añade información adicional.
Una relaciónde generalizaciónesunarelacióndirigidaentre doselementosgeneralizables del
mismo tipo.
La generalización y especialización son equivalentes en cuanto al resultado: la jerarquía y
herencia establecidas.
En el caso más simple,el elemento generalizable tiene un solo padre, es posible que un hijo
pueda tener más de un padre, esto se denomina generalización múltiple.
Una jerarquía de generalización es un árbol de declaraciones de elementos de un modelo.
La generalización es una relación taxonómica entre elementos.
Generalización y herencia no son el mismo concepto, ya que La herencia es un mecanismo
para combinar descripciones incrementales compartidas, con objeto de formar una
descripción completa de un elemento.
La generalización múltiple se presenta cuando una subclase tiene más de una superclase.
Generalización de asociaciones
Relación de generalización entre dos asociaciones, el elemento hijo debe añadir algo a la
declaración del padre y debe definir un subconjunto del conjunto de instancias del padre.
Dependencia
Una relación entre dos elementos de forma que un cambio en un elemento, es decir el
proveedor puede afectaroproveerlainformaciónnecesariaparael otroelemento,esdecir el
cliente.
Paquete
Un paquete UML es un término que denota un mecanismo general para organizar en grupos
los elementos, los paquetes se pueden anidar.
Un sistema puede corresponderse con un único paquete de alto nivel.
Un elemento pertenece al paquete donde está definido y puede ser referenciado en otros
paquetes.
Si un paquete referencia a un elemento que pertenece a otro, existe una dependencia.
Diagrama de clases
El diagramade claseses el diagrama principal para el análisis y diseño, un diagrama de clases
presenta las clases del sistema con sus relaciones estructurales y de herencia.
La definición de clase incluye definiciones para atributos y operaciones.
Niveles de representación de los diagramas de clases
Conceptual: representa los conceptos en el dominio del problema que se está estudiando.
Especificación: refleja las interfaces de las clases, pero no su implementación.
Implementación: representa las clases tal cual aparecen en el entorno de implementación.
Ensayo
Ejemplos de UML
CajeroAutomático
Se desea diseñar el software necesario para una red bancaria provista de cajeros
automáticos, que serán compartidos por un consorcio de bancos. Cada banco dispone
de una serie de servidores, provistos de software propio, que llevan la información
sobre sus cuentas y procesa las transacciones que actúan sobre dichas cuentas.
A estos servidores están conectados las estaciones de cajero, que son propiedad del
banco y en las que operan cajeros humanos, que pueden crear cuentas e introducir
transacciones sobre ellas.
Los cajeros automáticos aceptan tarjetas de crédito, interaccionan con el usuario, se
comunican con un ordenador central para llevar a cabo las transacciones, entregan
dinero en efectivo al usuario e imprimen recibos.
El sistema llevará el registro de las transacciones efectuadas, cumplirá características
aceptables de seguridad y manejará accesos concurrentes a la misma cuenta.
El coste de desarrollo de la parte compartida del sistema se dividirá entre los bancos
que forman parte del consorcio en función del número de clientes provistos de tarjetas
de crédito.
Caso de Uso
Actores primarios: Cliente del Banco, Consorcio, Banco
Objetivos:
Cliente del Banco: quiere realizar una operación con el cajero automático de manera
rápida, para lo que debe validar su tarjeta y contraseña.
Consorcio: Quiere identificar correctamente el banco del cliente y mediar en la
validación de manera eficaz.
Banco: Quiere identificar correctamente la identidad de la tarjeta.
Precondiciones: El cliente tiene una cuenta en uno de los bancos del consorcio, así
como una tarjeta emitida por el mismo.
1. El cajero automático pide al cliente que inserte la tarjeta de crédito
2. El cliente inserta la tarjeta de crédito.
3. El cajero automático acepta la tarjeta de crédito y lee el número de tarjeta y el
código del banco.
4. El cajero automático pide la contraseña al cliente.
5. El cliente ingresa la contraseña.
6. El cajero automático envía el número de tarjeta, el código del banco y la
contraseña al consorcio.
7. El consorcio envía el número de tarjeta y la contraseña al banco
correspondiente.
8. El banco notifica la aceptación al consorcio.
9. El consorcio notifica la aceptación al cajero automatico.
Caso de Uso
Retirar Efectivo
Actores primarios: Cliente del Banco, Consorcio, Banco
Objetivos
Cliente del Banco: quiere retirar dinero de manera rápida, quiere que se anote la transacción
en su cuenta de manera correcta, quiere la devolución de su tarjeta y quizá un recibo de la
transacción.
Consorcio: Quiere identificar correctamente el banco del cliente y mediar en la transacción de
manera eficaz.
Banco: Quiere identificar correctamente la cuenta del cliente, y anotar la transacción.
Precondiciones: El cliente tiene una cuenta en uno de los bancos del consorcio, ha
introducido su tarjeta, y contraseña, y ésta se ha validado correctamente por el banco
correspondiente. El cliente selecciona retirar efectivo.
Garantía de éxito: El cliente obtiene su dinero, la transacción se anota.
1. El cajero automático pide al cliente que teclee la cantidad.
2. El cliente teclea una cantidad.
3. El cajero automático comprueba que la cantidad está dentro de los límites.
4. El cajero automático genera una transacción y la envía al consorcio.
5. El consorcio pasa la transacción al banco.
6. El banco aprueba la transacción.
7. El banco actualiza la cuenta
8. El banco envía al consorcio la notificación de aceptación y el nuevo saldo de la
cuenta.
9. El consorcio envía al cajero automático la notificación de aceptación y el saldo
10. El cajero automático entrega el dinero al cliente.
11. El cliente toma el dinero.
12. El ATM pregunta al cliente si quiere un recibo.
13. El cliente contesta SI.
14. El ATM imprime un recibo y pide al cliente que lo tome.
15. El cliente toma el recibo.
16. El ATM pregunta al cliente si quiere hacer otra operación.
17. El cliente contesta NO.
18. El ATM expulsa la tarjeta de crédito e indica al cliente que la tome.
19. El cliente toma la tarjeta de crédito.
20. El ATM vuelve a la situación inicial.

Más contenido relacionado

La actualidad más candente

Uml mateo henao
Uml mateo henaoUml mateo henao
Uml mateo henaomatehena
 
Curso Uml 2.1 Diagramas De Cu Y Clases
Curso Uml   2.1 Diagramas De Cu Y ClasesCurso Uml   2.1 Diagramas De Cu Y Clases
Curso Uml 2.1 Diagramas De Cu Y ClasesEmilio Aviles Avila
 
Modelo conceptual de uml
Modelo conceptual de umlModelo conceptual de uml
Modelo conceptual de umlSergio Girado
 
Definición y concepto de uml
Definición y concepto de umlDefinición y concepto de uml
Definición y concepto de umlLuis Olascoaga
 
Análisis y diseño de sistemas de información
Análisis y diseño de sistemas de informaciónAnálisis y diseño de sistemas de información
Análisis y diseño de sistemas de informaciónjovy2905
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML1da4
 
Diagrama de clases y diagrama de objetos
Diagrama de clases y diagrama de objetosDiagrama de clases y diagrama de objetos
Diagrama de clases y diagrama de objetosRicardo Garcia
 
Diagrama uml ing software i promecys
Diagrama uml ing software i promecysDiagrama uml ing software i promecys
Diagrama uml ing software i promecysLeonel Narvaez Ruiz
 
UML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoUML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoEliseo Castro
 
Modelo conceptual
Modelo conceptual Modelo conceptual
Modelo conceptual Claü Vides
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clasespacosayas
 
1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetosCirino Silva tovar
 

La actualidad más candente (19)

Uml mateo henao
Uml mateo henaoUml mateo henao
Uml mateo henao
 
Introduccion a Uml
Introduccion a Uml Introduccion a Uml
Introduccion a Uml
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
Curso Uml 2.1 Diagramas De Cu Y Clases
Curso Uml   2.1 Diagramas De Cu Y ClasesCurso Uml   2.1 Diagramas De Cu Y Clases
Curso Uml 2.1 Diagramas De Cu Y Clases
 
Dario ramirez
Dario ramirezDario ramirez
Dario ramirez
 
Dario ramirez
Dario ramirezDario ramirez
Dario ramirez
 
Modelo conceptual de uml
Modelo conceptual de umlModelo conceptual de uml
Modelo conceptual de uml
 
Diagrama entidad relacion
Diagrama entidad  relacionDiagrama entidad  relacion
Diagrama entidad relacion
 
Definición y concepto de uml
Definición y concepto de umlDefinición y concepto de uml
Definición y concepto de uml
 
Análisis y diseño de sistemas de información
Análisis y diseño de sistemas de informaciónAnálisis y diseño de sistemas de información
Análisis y diseño de sistemas de información
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
Diagrama de clases y diagrama de objetos
Diagrama de clases y diagrama de objetosDiagrama de clases y diagrama de objetos
Diagrama de clases y diagrama de objetos
 
UML
UMLUML
UML
 
Diagrama uml ing software i promecys
Diagrama uml ing software i promecysDiagrama uml ing software i promecys
Diagrama uml ing software i promecys
 
UML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoUML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento Unificado
 
Modelo conceptual
Modelo conceptual Modelo conceptual
Modelo conceptual
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos
 
Lenguaje Unificado de Modelado
Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado
Lenguaje Unificado de Modelado
 

Destacado

Jefferson cardenas registro de notas uml
Jefferson cardenas registro de notas umlJefferson cardenas registro de notas uml
Jefferson cardenas registro de notas umlJFRKRDNAS
 
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINAL
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINALSISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINAL
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINALFrancisco Gonzalez Aguilar
 
Diseño con uml, caso
Diseño con uml, casoDiseño con uml, caso
Diseño con uml, casocams21
 
diagramas UML. NAHAMA
diagramas UML. NAHAMAdiagramas UML. NAHAMA
diagramas UML. NAHAMANAHAMA19
 
Documentacion del sistema de registro academico fundageo
Documentacion del sistema de registro academico fundageoDocumentacion del sistema de registro academico fundageo
Documentacion del sistema de registro academico fundageoCecy Villalta
 
Uml videotienda (1)
Uml videotienda (1)Uml videotienda (1)
Uml videotienda (1)cgviviana
 
Proyecto de Implementación de una Red
Proyecto de Implementación de una RedProyecto de Implementación de una Red
Proyecto de Implementación de una RedJordy Castro
 
Entrega trabajo final uml gp 8
Entrega trabajo final uml gp 8Entrega trabajo final uml gp 8
Entrega trabajo final uml gp 8jrcqking23
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UMLramirezjaime
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad IILuis Caiza
 
Ejemplo Proyecto utilizando Uml
Ejemplo Proyecto utilizando UmlEjemplo Proyecto utilizando Uml
Ejemplo Proyecto utilizando UmlAndrés Cruz
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemaUniversidad Tecnológica
 

Destacado (18)

Diagrama uml
Diagrama umlDiagrama uml
Diagrama uml
 
Jefferson cardenas registro de notas uml
Jefferson cardenas registro de notas umlJefferson cardenas registro de notas uml
Jefferson cardenas registro de notas uml
 
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINAL
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINALSISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINAL
SISTEMA DE REGISTRO DE ALUMNOS Y EQUIPOS FINAL
 
Diseño con uml, caso
Diseño con uml, casoDiseño con uml, caso
Diseño con uml, caso
 
Diagramas
DiagramasDiagramas
Diagramas
 
diagramas UML. NAHAMA
diagramas UML. NAHAMAdiagramas UML. NAHAMA
diagramas UML. NAHAMA
 
Documentacion del sistema de registro academico fundageo
Documentacion del sistema de registro academico fundageoDocumentacion del sistema de registro academico fundageo
Documentacion del sistema de registro academico fundageo
 
Uml videotienda (1)
Uml videotienda (1)Uml videotienda (1)
Uml videotienda (1)
 
Sistema De Gestion De Notas De Post Grado
Sistema De Gestion De Notas De Post GradoSistema De Gestion De Notas De Post Grado
Sistema De Gestion De Notas De Post Grado
 
Proyecto de Implementación de una Red
Proyecto de Implementación de una RedProyecto de Implementación de una Red
Proyecto de Implementación de una Red
 
Proyecto sistema matriculas
Proyecto sistema matriculasProyecto sistema matriculas
Proyecto sistema matriculas
 
Entrega trabajo final uml gp 8
Entrega trabajo final uml gp 8Entrega trabajo final uml gp 8
Entrega trabajo final uml gp 8
 
Caso De Uso
Caso De UsoCaso De Uso
Caso De Uso
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UML
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad II
 
Ejercicios uml
Ejercicios umlEjercicios uml
Ejercicios uml
 
Ejemplo Proyecto utilizando Uml
Ejemplo Proyecto utilizando UmlEjemplo Proyecto utilizando Uml
Ejemplo Proyecto utilizando Uml
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
 

Similar a Que es UML

Patrones de programación y uml en java
Patrones de programación y uml en javaPatrones de programación y uml en java
Patrones de programación y uml en javaGuille Villaf
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosArevalo1996
 
Sistemas de información administrativos
Sistemas de información administrativosSistemas de información administrativos
Sistemas de información administrativosPaola Alvarez
 
Unidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNUnidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNSergio Sanchez
 
Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)josue salas
 
diapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptxdiapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptxJamesHerberthBacaTel
 
Objeto de Aprendizaje : Introducción a UML
Objeto de Aprendizaje : Introducción a UMLObjeto de Aprendizaje : Introducción a UML
Objeto de Aprendizaje : Introducción a UMLabigail2015
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definicionesBoris Salleg
 
Cuadro comparativo metodologias
Cuadro comparativo metodologiasCuadro comparativo metodologias
Cuadro comparativo metodologiasGomez Marquez
 

Similar a Que es UML (20)

Modelado UM5-4.pptx
Modelado UM5-4.pptxModelado UM5-4.pptx
Modelado UM5-4.pptx
 
Clases
ClasesClases
Clases
 
Patrones de programación y uml en java
Patrones de programación y uml en javaPatrones de programación y uml en java
Patrones de programación y uml en java
 
Poo
PooPoo
Poo
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Programacion orientada a objetos parte 2
Programacion orientada a objetos parte 2Programacion orientada a objetos parte 2
Programacion orientada a objetos parte 2
 
Clases
ClasesClases
Clases
 
Sistemas de información administrativos
Sistemas de información administrativosSistemas de información administrativos
Sistemas de información administrativos
 
EL UML X2
EL UML X2EL UML X2
EL UML X2
 
Unidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNUnidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióN
 
clases
clasesclases
clases
 
Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)
 
diapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptxdiapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptx
 
Objeto de Aprendizaje : Introducción a UML
Objeto de Aprendizaje : Introducción a UMLObjeto de Aprendizaje : Introducción a UML
Objeto de Aprendizaje : Introducción a UML
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
 
Semana 6
Semana 6Semana 6
Semana 6
 
Cuadro comparativo metodologias
Cuadro comparativo metodologiasCuadro comparativo metodologias
Cuadro comparativo metodologias
 
Omt
OmtOmt
Omt
 

Más de Israel Rey

Análisis de Procesos
Análisis de ProcesosAnálisis de Procesos
Análisis de ProcesosIsrael Rey
 
Construir un BSC
Construir un BSCConstruir un BSC
Construir un BSCIsrael Rey
 
Caso CoE y Gobierno BPM
Caso CoE y Gobierno BPMCaso CoE y Gobierno BPM
Caso CoE y Gobierno BPMIsrael Rey
 
Mejora Continua en Multifabrik
Mejora Continua en MultifabrikMejora Continua en Multifabrik
Mejora Continua en MultifabrikIsrael Rey
 
Integración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradoraIntegración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradoraIsrael Rey
 
Aplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas BlockchainAplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas BlockchainIsrael Rey
 
Análisis BPMS
Análisis BPMSAnálisis BPMS
Análisis BPMSIsrael Rey
 
Decálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPMDecálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPMIsrael Rey
 
Mapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocioMapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocioIsrael Rey
 
Automatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPMAutomatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPMIsrael Rey
 
Análisis de Procesos con Adonis
Análisis de Procesos con AdonisAnálisis de Procesos con Adonis
Análisis de Procesos con AdonisIsrael Rey
 
Modelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMNModelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMNIsrael Rey
 
Software testing
Software testingSoftware testing
Software testingIsrael Rey
 
Instalación de Jmeter
Instalación de JmeterInstalación de Jmeter
Instalación de JmeterIsrael Rey
 
Qa Testing - Cucumber
Qa Testing - CucumberQa Testing - Cucumber
Qa Testing - CucumberIsrael Rey
 
Crear archivo war desde Jenkins
Crear archivo war desde JenkinsCrear archivo war desde Jenkins
Crear archivo war desde JenkinsIsrael Rey
 
Crear war en jenkins
Crear war en jenkinsCrear war en jenkins
Crear war en jenkinsIsrael Rey
 
Innovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorialInnovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorialIsrael Rey
 
Requerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaRequerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaIsrael Rey
 

Más de Israel Rey (20)

Análisis de Procesos
Análisis de ProcesosAnálisis de Procesos
Análisis de Procesos
 
Construir un BSC
Construir un BSCConstruir un BSC
Construir un BSC
 
Caso CoE y Gobierno BPM
Caso CoE y Gobierno BPMCaso CoE y Gobierno BPM
Caso CoE y Gobierno BPM
 
Mejora Continua en Multifabrik
Mejora Continua en MultifabrikMejora Continua en Multifabrik
Mejora Continua en Multifabrik
 
Integración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradoraIntegración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradora
 
Aplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas BlockchainAplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas Blockchain
 
Análisis BPMS
Análisis BPMSAnálisis BPMS
Análisis BPMS
 
Decálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPMDecálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPM
 
Modelado DMN
Modelado DMNModelado DMN
Modelado DMN
 
Mapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocioMapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocio
 
Automatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPMAutomatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPM
 
Análisis de Procesos con Adonis
Análisis de Procesos con AdonisAnálisis de Procesos con Adonis
Análisis de Procesos con Adonis
 
Modelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMNModelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMN
 
Software testing
Software testingSoftware testing
Software testing
 
Instalación de Jmeter
Instalación de JmeterInstalación de Jmeter
Instalación de Jmeter
 
Qa Testing - Cucumber
Qa Testing - CucumberQa Testing - Cucumber
Qa Testing - Cucumber
 
Crear archivo war desde Jenkins
Crear archivo war desde JenkinsCrear archivo war desde Jenkins
Crear archivo war desde Jenkins
 
Crear war en jenkins
Crear war en jenkinsCrear war en jenkins
Crear war en jenkins
 
Innovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorialInnovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorial
 
Requerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaRequerimientos de usuario y del sistema
Requerimientos de usuario y del sistema
 

Que es UML

  • 1. Que es UML UML es un lenguaje de modeladode objetosindependiente del método que se implemente, no es una metodología, método o proceso. El objetivo de UML es la unificación de los métodos de modelado de objetos, es la Identificación y definición de la semántica de los conceptos fundamentales, elección de una representación gráfica cuya sintaxis sea simple. Que es un modelo Un modelo es una abstracción de un sistema semánticamente cerrada y el lenguaje de modelado nos sirve para especificar, construir, visualizar y documentar ingenios software. Objetivos de los modelos Probar una entidad física antes de construirla Comunicación con el cliente Visualización Reducción de la complejidad Estructurar las ideas Lenguaje de Modelado Se necesita un lenguaje de modelado para entender y describir los sistemas complejos. Historia de UML Objetivos Iniciales Unificación de métodos de la Orientacion a Objeto, centrarse en un lenguaje de modelado estándar y no en un proceso de desarrollo estándar. Ofrecer una semántica que permitiese modelar problemas en diferentes ámbitos. Limitaciones de UML Limitado soporte en el desarrollo de sistemas, es decir no soporta arquitecturas complejas y especificaciones completas del comportamiento de un sistema. Esta orientado a ingenieros y técnicos, mantiene difícil comunicación con los usuarios y clientes, tiene una generación parcial del código, es sólo estructura. UML no se puede ejecutar.
  • 2. Visión Global de UML UML Notation Guide Define la sintaxis grafica de UML, el vocabulario y las reglas de UML se centran en la representación conceptual y física de un sistema. UML Semantics Define la semántica de UML, conjunto de reglas que permiten asignar un significado a las expresiones sintácticas. UML Superestructura Conceptos de UML Modelo de Estructura: Capacidades de modelado como clases, objetos. Modelo de Comportamiento: Capacidades de modelado: casos de uso, comunicación, secuencias. UML Infraestructura Define los conceptos centrales, UML es un lenguaje que se define a sí mismo. Modelado de Objetos El término modelado expresa la descomposición en elementos simples más fáciles de comprender, cada modelo va evolucionando durante el ciclo de desarrollo. Modelado de objetos: son aspectos estáticos y estructurales del sistema. Modelado dinámico: son aspectos temporales y de comportamiento del sistema. Modelado funcional: son aspectos de transformación funcional del sistema. Modelos de Representación UML define varios modelos de representación: Modelo de clases, Modelo de estados, Modelo de casos de uso, Modelo de interacción, Modelo de realización, Modelo de despliegue. Diagramas Los diagramas de UML son grafos que describen los contenidos de una vista Diagramas de comportamiento: Permiten exhibir comportamientos de un sistema o de los procesos de las organizaciones.
  • 3. Diagramas de interacción: Es un subconjunto de los diagramas de comportamiento que permiten enfatizar las interacciones entre los objetos. Diagramas de estructura: Muestran los elementos de una especificación que sean independientes del tiempo. Diagramas Diagrama de clases Muestra una colección de elementos de modelado declarativo como clases. Diagrama de Actividades Se utiliza para modelar lógica compleja o paralela en un sistema. Diagrama de Secuencias Representa una interacción. Diagrama de Componentes Componentes que componen una aplicación, sistema o empresa. Diagrama de despliegue físico Muestra cómoy dónde se desplegaráel sistema. Diagrama de Máquinas de Estado Cómoun elemento,muchasvecesunaclase,se puede moverentre estadosque clasificansu comportamiento. Diagrama de casos de uso Un diagrama que muestralasrelacionesentre losactoresyel sujeto,esdecirel sistema. Diagrama de Objetos Presentalosobjetosysusrelacionesenunpuntodel tiempo. Diagrama de Paquetes La organizaciónde loselementosde modeladoenpaquetesylasdependenciasentre ellos. Diagrama de Revisiónde la Interacción La revisióndelflujode control. Diagrama de comunicaciones La secuenciade losmensajesse daa travésde un esquemade numeradode lasecuencia. Diagrama de Estructura de Composición
  • 4. Representalaestructurainternade unclasificador,comounaclase. Diagrama de Tiempos Mostrar el cambiode estado de un objetoalo largodel tiempo. Elementosde Modelado Un elementode modeladopuedeestarendiferentesdiagramas,perosiempre conel mismo significadoysímboloasociado, puedenestaragrupadosenpaquetes Un paquete puede contenerotrospaquetes, sinlímitedel nivel de anidamiento. Representanlasabstraccionesdelsistemaencursode modelado. Elementosde visualización Son proyeccionestextualesográficasque permitenlamanipulaciónde loselementosde modelado. Reglas de UML Un UML tiene que serunmodelobienformado,estese atiene atodaslasreglassemánticasy sintácticasque le sonde aplicación. Regla semántica: Si una clase esconcreta,todas lasoperacionesde laclase hande tenerun métodoque laimplementaenel descriptor. Regla sintáctica: Una clase se representaporunrectángulode líneacontinuacontres compartimentosseparadosporlíneashorizontales. Vistas de UML Una vistaes un subconjuntode UML que modelaconstruccionesque representanunaspecto de un sistema.Noesalgográfico,sinouna abstraccióncompuestade diversos diagramas. Las vistasse puedendividirentresáreas Clasificaciónestructural:Describe lascosas que hay enel sistemaysusrelacionesconotras cosas. Comportamientodinámico: Reflejael comportamientodel sistemaenel tiempo Gestióndel modelo:Describe laorganizaciónde losmodelosenunidadesjerárquicas
  • 5. Resumen Capitulo 6 Vista Estática La vistaestáticaconstituye el fundamentode UML, captura laestructurade objetos. Los elementosde lavistaestáticade unmodelosonlosconceptosque tienensignificadoen una aplicación,incluyendoconceptosdel mundoreal yconceptoscomputacionales. Los elementosclave de lavistaestáticasonlosclasificadores ysusrelaciones,unclasificador esun elementode modeladoque describe cosas comoclases,interfaces,tiposde datos,casos de uso,paquetes. El diagramamás representativode estavistaesel diagramade clases Clasificación El mundoreal puede servistodesde abstracciones diferentes,laclasificaciónesunode los mecanismosde abstracciónmásutilizados. Conceptode clasificador Un clasificadoresunconceptodiscretoenel modelo,que tieneidentidad,estado, comportamientoyrelaciones. Objeto Objetocomocosa del mundo real, esalgotangible,visible,cualquiercosa,ocurrenciao fenómenoque puede seridentificadoycaracterizado. Un objetomodelaunaparte de la realidad,conel conceptode objeto,se modelala permanenciae identidadde conceptos percibidos. Un objetotiene estado,exhibe algúncomportamientobiendefinidoytiene unaidentidad única. El comportamientode unobjetoescómoactúa y reaccionaunobjeto,enfunciónde sus cambiosde estadoy pasode mensajes. Un objeto tiene estado, comportamiento e identidad; la estructura y el comportamiento de objetos similares están definidos en su clase común. Identidad Es aquella propiedad de un objeto que lo distingue de todos los demás. No es conveniente que los nombres de las entidades las identifiquen ya que una entidad puede no tener un nombre único y, sin embargo, ser identificable, una entidad puede tener más de un nombre único, también puede cambiar de nombre a lo largo del tiempo.
  • 6. Clase Una clase representa un concepto discreto dentro de la aplicación que se está modelando, sirve comomolde para crear instancias o, lo que es lo mismo, objetos, el proceso de creación de objetos se conoce como instanciación. Una clase dicta la estructura y comportamiento de sus instancias, todos los objetos en un sistema de objetos pertenecen a alguna clase. Las clases tienen un nombre que las identifica Una clase puede servistacomo: el mecanismoparacrear objetos,lafábricade objetos o como el conjunto de todas sus instancias. Una clase es una descripciónabstractade losdatosy del comportamientode una colección de objetos similares. Una clase tiene unnombre únicodentrode su contenedor,que es generalmente un paquete, aunque puede ser también otra clase. Clase Abstracta El objetivo fundamental de una clase abstracta es la especialización, una clase concreta no puede tener operaciones abstractas, pero una clase abstracta si puede tener operaciones concretas. Clase Parametrizada Es un descriptor de una clase con uno o más parámetros formales sin especificar. Para su representación, UML utiliza un rectángulo en línea discontinua superpuesto en la esquina superior derecha de un rectángulo correspondiente a una clase. Atributo El tipo de un atributo puede ser simple o complejo, cada objeto de la clase tiene un valor independiente para el atributo. Los atributosde una clase nodeberíansermanipulablesdirectamentepor el resto de objetos. En una clase,el valordescritoporun atributo puede ser distinto en cada objeto o compartido por todos los objetos. Operación Se utilizanparaindicarlasoperacionesde unaclase,unaoperaciónesla especificación de una transformación o consulta que puede tener un objeto Un métodoes la implementación de una operación, especifica el algoritmo o procedimiento que da lugar a los resultados de una operación.
  • 7. Las declaraciones de operación son heredadas por los descendientes de la clase, si otra declaración tiene la misma signatura coincidente, entonces se trata de la misma operación. Una operación con alcance de clase se presenta subrayada. Lista de Parámetros: lista de declaraciones de parámetros separadas por comas. Dirección In: Entrada pasada por valor. Out: Salida, no existe valor de entrada. Inout: Entrada que se puede modificar. Return: Valor proporcionado por una llamada. Nombre: nombre del parámetro. Tipo: referencia a un clasificador, clase, tipo de datos. Tipos de operaciones que un cliente realiza sobre un objeto Modificador: Altera el estado de un objeto. Selector: Accede al estado de un objeto, pero no lo altera. Iterador: Permite acceder a todas las partes de un objeto en algún orden perfectamente establecido. Constructor: Crea un objeto e inicia su estado. Destructor: Libera el estado del objeto y destruye el propio objeto. Interfaz Una interfaz es la descripción del comportamiento de objetos sin proporcionar su implementación o estado. Una o más clases pueden realizar una interfaz, de forma que cada clase implementa las operacionesde la interfaz, una clase puede admitir muchas interfaces, cuyos efectos podrán ser disjuntos. Las interfacesnoposeenimplementación,unainterfazcontiene operacionesperono atributos. Una interfazequivaleaunaclase abstracta, sinatributosni métodos,que tiene únicamente operacionesabstractas,todaslasoperacionesde unainterfaztienenvisibilidadpública.
  • 8. Una interfazesuna colecciónde operacionesque se empleaparaespecificarunserviciode una clase o de un componente,también sirveparanombraruna colecciónde operacionesy para especificarsussignaturasyefectos. Una interfazse centraen losefectos,noenlaestructura,de un serviciodado, noofrece una implementaciónparaningunade susoperaciones. Relaciones En el dominiodel problema lasclasesnoestánaisladas,sinoque se relacionande diferentes formas. Un enlace esuna relaciónfísicao conceptual entre instancias. Expresanlasconexionesentre clasificadores,losenlacesentre objetospuedenrepresentarse entre lasrespectivasclases. Formasde relaciónentre clases: -AsociaciónyAgregación -Generalización/Especialización Las relacionesde AgregaciónyGeneralizaciónformanjerarquíasde clases ypuedenserde variostipos: Asociación:Descripciónde unaconexiónentre instanciasde clases. Dependencia:Relaciónentre doselementosdel modelo. Flujo:Relaciónentre dosversionesde unobjetoen momentossucesivos. Generalización:Relaciónentreunadescripciónmásgeneralyuna más específicade algo, usadopor herencia. Realización:Relaciónentre unaespecificaciónysuimplementación Uso: Situaciónenlaque un elementorequiere aotropara su correctofuncionamiento. Asociación Una asociacióndescribe lasconexionessemánticasentre objetosde diferentesclases,Una asociaciónrelacionaunalista de doso más clasificadores,conlasrepeticionespermitidas. Cada conexiónde unaasociaciónauna clase se llamaextremode laasociación,unaasociación puede teneratributosporsí misma. Asociaciónbinaria Es la asociaciónque se produce exactamente entredosclases,se representanatravésde una líneacontinuaque conectaambos símbolosde clase. AsociaciónCalificada Un calificador es un atributo o tupla de atributos de la asociación cuyos valores sirven para partir o clasificarunconjuntode objetosasociadosmediante una asociación UML a un objeto.
  • 9. Clase Asociación Son asociacionesque tambiénson clases, tienen propiedades tanto de las clases como de las asociaciones. Se utilizancuandocada enlace debe tener sus propios valores para los atributos, operaciones propias o sus propias referencias a objetos. Asociaciónn-aria Son asociacionesque se establecenentre másde dos clases, cada clase podría aparecer varias veces desempeñando cada vez distintos roles. Agregación Una agregaciónes una forma de asociación que representa una relación Todo-parte entre un agregado y las partes que los componen. Una asociación binaria puede declararse como agregación. En la agregación una parte puede pertenecer a más de un agregado y puede existir independientemente del agregado. Una clase agregada tiene múltiples partes, pero cada relación entre la clase agregada y cada una de las partes es una asociación distinta. La agregaciónesunaasociación,conllevalaidea de que el agregado es la suma de sus partes. Composición Forma de asociación de agregación con fuerte sentido de posesión. Es una asociaciónde agregaciónconlas restriccionesadicionalesde que un objeto sólo puede ser parte de un compuesto a la vez y que el objeto compuesto es el único responsable de la disponibilidad de todas sus partes. Durante la vidadel elemento compuesto, ningún otro objeto puede tener la responsabilidad de creación o destrucción sobre las partes. Un elemento compuesto puede añadir piezas adicionales durante su vida, siempre que lo permitalamultiplicidad o quitar piezas y la responsabilidad de ellas sea asumida por objeto. Los atributos son relaciones de composición entre una clase y las clases de sus atributos. Generalización/Especialización Es una relación de taxonomía entre un elemento general y otro más específico que es plenamente consistente con el primer elemento y que le añade información adicional. Una relaciónde generalizaciónesunarelacióndirigidaentre doselementosgeneralizables del mismo tipo. La generalización y especialización son equivalentes en cuanto al resultado: la jerarquía y herencia establecidas. En el caso más simple,el elemento generalizable tiene un solo padre, es posible que un hijo pueda tener más de un padre, esto se denomina generalización múltiple.
  • 10. Una jerarquía de generalización es un árbol de declaraciones de elementos de un modelo. La generalización es una relación taxonómica entre elementos. Generalización y herencia no son el mismo concepto, ya que La herencia es un mecanismo para combinar descripciones incrementales compartidas, con objeto de formar una descripción completa de un elemento. La generalización múltiple se presenta cuando una subclase tiene más de una superclase. Generalización de asociaciones Relación de generalización entre dos asociaciones, el elemento hijo debe añadir algo a la declaración del padre y debe definir un subconjunto del conjunto de instancias del padre. Dependencia Una relación entre dos elementos de forma que un cambio en un elemento, es decir el proveedor puede afectaroproveerlainformaciónnecesariaparael otroelemento,esdecir el cliente. Paquete Un paquete UML es un término que denota un mecanismo general para organizar en grupos los elementos, los paquetes se pueden anidar. Un sistema puede corresponderse con un único paquete de alto nivel. Un elemento pertenece al paquete donde está definido y puede ser referenciado en otros paquetes. Si un paquete referencia a un elemento que pertenece a otro, existe una dependencia. Diagrama de clases El diagramade claseses el diagrama principal para el análisis y diseño, un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia. La definición de clase incluye definiciones para atributos y operaciones. Niveles de representación de los diagramas de clases Conceptual: representa los conceptos en el dominio del problema que se está estudiando. Especificación: refleja las interfaces de las clases, pero no su implementación. Implementación: representa las clases tal cual aparecen en el entorno de implementación.
  • 12. Ejemplos de UML CajeroAutomático Se desea diseñar el software necesario para una red bancaria provista de cajeros automáticos, que serán compartidos por un consorcio de bancos. Cada banco dispone de una serie de servidores, provistos de software propio, que llevan la información sobre sus cuentas y procesa las transacciones que actúan sobre dichas cuentas. A estos servidores están conectados las estaciones de cajero, que son propiedad del banco y en las que operan cajeros humanos, que pueden crear cuentas e introducir transacciones sobre ellas. Los cajeros automáticos aceptan tarjetas de crédito, interaccionan con el usuario, se comunican con un ordenador central para llevar a cabo las transacciones, entregan dinero en efectivo al usuario e imprimen recibos. El sistema llevará el registro de las transacciones efectuadas, cumplirá características aceptables de seguridad y manejará accesos concurrentes a la misma cuenta. El coste de desarrollo de la parte compartida del sistema se dividirá entre los bancos que forman parte del consorcio en función del número de clientes provistos de tarjetas de crédito.
  • 13. Caso de Uso Actores primarios: Cliente del Banco, Consorcio, Banco Objetivos: Cliente del Banco: quiere realizar una operación con el cajero automático de manera rápida, para lo que debe validar su tarjeta y contraseña. Consorcio: Quiere identificar correctamente el banco del cliente y mediar en la validación de manera eficaz. Banco: Quiere identificar correctamente la identidad de la tarjeta. Precondiciones: El cliente tiene una cuenta en uno de los bancos del consorcio, así como una tarjeta emitida por el mismo. 1. El cajero automático pide al cliente que inserte la tarjeta de crédito 2. El cliente inserta la tarjeta de crédito. 3. El cajero automático acepta la tarjeta de crédito y lee el número de tarjeta y el código del banco. 4. El cajero automático pide la contraseña al cliente. 5. El cliente ingresa la contraseña. 6. El cajero automático envía el número de tarjeta, el código del banco y la contraseña al consorcio. 7. El consorcio envía el número de tarjeta y la contraseña al banco correspondiente. 8. El banco notifica la aceptación al consorcio. 9. El consorcio notifica la aceptación al cajero automatico. Caso de Uso Retirar Efectivo Actores primarios: Cliente del Banco, Consorcio, Banco Objetivos Cliente del Banco: quiere retirar dinero de manera rápida, quiere que se anote la transacción en su cuenta de manera correcta, quiere la devolución de su tarjeta y quizá un recibo de la transacción. Consorcio: Quiere identificar correctamente el banco del cliente y mediar en la transacción de manera eficaz. Banco: Quiere identificar correctamente la cuenta del cliente, y anotar la transacción. Precondiciones: El cliente tiene una cuenta en uno de los bancos del consorcio, ha introducido su tarjeta, y contraseña, y ésta se ha validado correctamente por el banco correspondiente. El cliente selecciona retirar efectivo. Garantía de éxito: El cliente obtiene su dinero, la transacción se anota.
  • 14. 1. El cajero automático pide al cliente que teclee la cantidad. 2. El cliente teclea una cantidad. 3. El cajero automático comprueba que la cantidad está dentro de los límites. 4. El cajero automático genera una transacción y la envía al consorcio. 5. El consorcio pasa la transacción al banco. 6. El banco aprueba la transacción. 7. El banco actualiza la cuenta 8. El banco envía al consorcio la notificación de aceptación y el nuevo saldo de la cuenta. 9. El consorcio envía al cajero automático la notificación de aceptación y el saldo 10. El cajero automático entrega el dinero al cliente. 11. El cliente toma el dinero. 12. El ATM pregunta al cliente si quiere un recibo. 13. El cliente contesta SI. 14. El ATM imprime un recibo y pide al cliente que lo tome. 15. El cliente toma el recibo. 16. El ATM pregunta al cliente si quiere hacer otra operación. 17. El cliente contesta NO. 18. El ATM expulsa la tarjeta de crédito e indica al cliente que la tome. 19. El cliente toma la tarjeta de crédito. 20. El ATM vuelve a la situación inicial.