uml
DESCRIPTION
presentación sobre uml. conceptos básicos - PowerPoint PPT PresentationTRANSCRIPT
UMLUML
UML - UML - Unified Modeling Unified Modeling LanguageLanguage
El UML es un lenguaje que permite modelar, construir y documentar los elementos que forman un sistema software orientado a objetos.
Grady BoochGrady Booch Ivar Jacobson Jim Rumbaugh
Quien Paga?Quien Paga? Rational Software Co Microsoft Hewlett-Packard Oracle IBM Grupos de analistas y
desarrolladores.
Booch había escrito "Object-Oriented Analysis and Design with Applications" un libro de referencia en el análisis y diseño orientado a objetos desarrollando su propia notación.
Por su parte James Rumbaugh había desarrollado su propia notación de diseño orientado a objetos llamada OMT (Object Modeling Technique) en su libro "Object-Oriented Modeling and Design".
Por otro lado Jacobson se había revelado como un visionario del análisis (padre de los casos de uso) y sobre todo del diseño orientado a objetos, sorprendiendo a todo el mundo en "Object-Oriented Software Engineering: A Use Case Driven Approach".
Algo de HistoriaAlgo de Historia
UML no es un método de desarrollo. No te va a decir cómo pasar del análisis al diseño y de este al código. No son una serie de pasos que te llevan a producir código a partir de unas especificaciones.
UML un lenguaje para…UML un lenguaje para…VisualizarEspecificarConstruirDocumentar
Bloques de Bloques de ConstrucciónConstrucción Elementos
Estructurales Comportamiento Agrupación Anotación
Relaciones Dependencia Asociación Generalización Realización
Diagramas
Elementos Elementos EstructuralesEstructurales Son los nombres de los modelos
UML. En su mayoría son las partes estáticas de un modelo, y representan cosas que son conceptuales o materiales.
ClasesClases Una descripción
de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semánticas.
Elementos Elementos estructuralesestructurales
InterfazInterfaz Una colección de
operaciones que especifican un servicio de una clase o componente.
Describe el comportamiento visible externamente de ese elemento
Elementos Elementos estructuralesestructurales
Caso de UsoCaso de Uso Es una descripción
de secuencias de acción que un sistema ejecuta y que produce un resultado observable de interés para un actor en particular.
Elementos Elementos estructuralesestructurales
NodoNodo Es un elemento
físico que existe en tiempo de ejecución y representa un recurso computacional
Elementos Elementos estructuralesestructurales
Elementos de Elementos de comportamientocomportamiento Son las partes dinámicas de los
modelos UML. Estos son los verbos de un modelo, y representan comportamientos en el tiempo y el espacio.
InteracciónInteracción Es un
comportamiento que comprende un conjunto de mensajes intercambiados entre un conjunto de objetos, dentro de un contexto particular.
Elementos de Elementos de ComportamientoComportamiento
Maquina de EstadoMaquina de Estado Es un
comportamiento que especifica las secuencias de estado por las que pasa un objeto o una interacción durante su vida en respuesta a eventos, junto con sus reacciones a estos eventos.
Elementos de Elementos de ComportamientoComportamiento
Elementos de Elementos de AgrupaciónAgrupación
Son las partes organizativas de los modelos UML.
Paquetes Es un mecanismo
de propósito general para organizar elementos en grupos.
Elementos de Elementos de AnotaciónAnotación
Son las partes explicativas de los modelos UML.
Relaciones en UMLRelaciones en UML
Dependencia. Asociación Generalización Realización
DependenciaDependencia Es una relación semántica entre dos
elementos, en la cual un cambio a un elemento puede afectar a la semántica del otro elemento.
Relaciones en Relaciones en UMLUML
Dependencia e InstanciaciónDependencia e Instanciación
Representa un tipo de relación muy particular, en la que una clase es instanciada (su instanciación es dependiente de otro objeto/clase).
Relaciones en Relaciones en UMLUML
AsociaciónAsociación Es una relación estructural que
describe un conjunto de enlaces, los cuales son conexiones entre enlaces.
Relaciones en Relaciones en UMLUML
AgregaciónAgregación Por Valor: Es un tipo de relación
estática, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye. Este tipo de relación es comúnmente llamada Composición
Por Referencia: Es un tipo de relación dinámica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye. Este tipo de relación es comúnmente llamada Agregación (el objeto base utiliza al incluido para su funcionamiento).
Relaciones en Relaciones en UMLUML
GeneralizaciónGeneralización Es una relación de
especialización/generalización.
Relaciones en Relaciones en UMLUML
Herencia.
HerenciaHerencia
La relación de herencia se representa mediante un triángulo en el extremo de la relación que corresponde a la clase más general o clase “padre”.
Relaciones en Relaciones en UMLUML
RealizaciónRealización Es una relación semántica entre
clasificadores, donde un clasificador especifica un contrato que otro clasificador garantiza cumplirá.
Relaciones en Relaciones en UMLUML
Diagrama de Estructura Estática. Diagrama de Clases. Diagrama de Objetos.
Diagrama de Casos de Uso. Diagrama de Secuencia. Diagrama de Colaboración. Diagrama de Estados.
Diagrama de Actividades. Diagrama de Componentes. Diagrama de Despliegue.
DIAGRAMAS DIAGRAMAS UMLUML
Diagrama de Diagrama de ClasesClases
Un diagrama de clases muestra un conjunto de clases, interfaces y colaboraciones, así como sus relaciones. Estos diagramas son los diagramas más comunes en el modelamiento de sistemas orientados a objetos. Los diagramas de clases cubren la vista de diseño estática de un sistema. Los diagramas de clases que incluyen clases activas cubren la vista de procesos estática de un sistema.
Los diagramas de clases son los más utilizados en el modelamiento de sistemas orientados a objetos. Los diagramas de clases son importantes no solo para visualizar, especificar y documentar modelos estructurales, sino también para construir sistemas ejecutables, aplicando ingeniería directa e inversa.
Los diagramas de clases contienen normalmente los siguientes elementos:
Clases Interfaces. Colaboraciones. Relaciones de dependencia, generalización y asociación.
Diagrama de Diagrama de ClasesClases
ClaseClase
Diagrama de Diagrama de ClasesClases
Asociaciones Asociaciones (Relaciones)(Relaciones)
Las asociaciones entre dos clases se representan mediante una línea que las une. La línea puede tener una serie de elementos gráficos que expresan características particulares de la asociación. A continuación se verán los más importantes de entre dichos elementos gráficos.
Diagrama de Diagrama de ClasesClases
Nombre de la Asociación y Nombre de la Asociación y DirecciónDirección
Diagrama de Diagrama de ClasesClases
• Dependencia e InstanciaciónDependencia e Instanciación
Diagrama de Diagrama de ClasesClases
Por Valor. (Composición) Por Referencia. (Agregación)
Asociaciones (Relaciones)Asociaciones (Relaciones)
• HerenciaHerencia
• AgregaciónAgregación
Multiplicidad (Cardinalidad)Multiplicidad (Cardinalidad)
1 Solo Uno 0..1 Cero o Uno M..N Desde M a N (Enteros
Naturales) * o 0..* Cero a Muchos 1..* Uno a Muchos (al menos uno)
Diagrama de Diagrama de ClasesClases
RolesRoles
Diagrama de Diagrama de ClasesClases
Diagrama de ObjetosDiagrama de ObjetosUn diagrama de objetos muestra un conjunto de objetos y sus relaciones. Los diagramas de objetos representan instantáneas de instancias de los elementos encontrados en los diagramas de clases.
Diagrama de Casos de UsoDiagrama de Casos de UsoUn diagrama de casos de uso muestra un conjunto de casos de uso y actores (un tipo especial de clases) y sus relaciones. Los diagramas de caso de uso cubren la vista de casos de uso estática de un sistema. Estos diagramas son especialmente importantes en el modelado de organización del comportamiento del sistema.
Diagrama de InteracciónDiagrama de InteracciónTanto los Diagramas de Secuencia como los Diagramas
de Colaboración son un tipo de diagrama de interacción. Estos diagramas muestran una interacción, que consta de un conjunto de objetos y sus relaciones, incluyendo los mensajes que pueden ser enviados por ellos. Los diagramas de interacción cubren la vista dinámica de un sistema.
Un Diagrama de SecuenciaDiagrama de Secuencia resalta la ordenación temporal de los mensajes.
Un Diagrama de ColaboraciónDiagrama de Colaboración resalta la organización estructural de los objetos que envían y reciben mensajes.
Los diagramas de secuencia y los diagramas de colaboración son isomorfos, es decir, que se puede tomar uno y transformarlo en el otro.
Diagrama de EstadoDiagrama de EstadoUn diagrama de estado muestra una maquina de estado, que consta de estados, transiciones, eventos y actividades. Los diagramas de estado cubren la vista dinámica de un sistema. Son especialmente importantes en el modelado del comportamiento de una interfaz, una clase o una colaboración y resalta el comportamiento dirigido por eventos de un objeto, lo cual es especialmente útil en el modelado de un sistema reactivo.
Diagrama de ActividadesDiagrama de Actividades
Un diagrama de actividades es un tipo especial de diagramas de estado que muestra el flujo de actividades dentro de un sistema. Los diagramas de actividades cubren la vista dinámica de un sistema. Son especialmente importantes al modelar el funcionamiento de un sistema y resaltar el flujo de control entre objetos.
Diagrama de Diagrama de ComponentesComponentes
Un diagrama de componentes muestra la organización y las dependencias entre un conjunto de componentes. Los diagramas de componentes cubren la vista de implementación estática de un sistema. Se relacionan con los diagramas de clases en que un componente se corresponde, por lo común, con una o más clases, interfaces o colaboradores.
Diagrama de DespliegueDiagrama de Despliegue
Un diagrama de despliegue muestra la configuración de nodos de procesamiento en tiempo de ejecución y los componentes que residen en ellos.