Professional Documents
Culture Documents
QUE ES? Es la sucesin de una serie de mtodos de anlisis y diseo orientadas a objetos
6 principios
UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de hardware, y organizaciones del mundo real. UML ofrece nueve diagramas en los cuales modelar sistemas.
METODOLOGIA UML
Metodologa Orientada a Objeto UML.
Es un lenguaje para especificar, construir, visualizar y documentar los artefactos de un sistema de software orientado a objetos (OO).
IMPLEMENTACION
FASES
ANALISIS Se construye un modelo del dominio, mostrando propiedades importantes. El modelo de anlisis es una abstraccin resumida y precisa de lo que debe de hacer el sistema deseado. Se toman decisiones de alto nivel sobre la arquitectura del sistema ha implementar. El sistema se organiza en subsistemas basndose tanto en la estructura del anlisis como en la arquitectura propuesta. Se construye un modelo de diseo basndose en el modelo de anlisis e incorporando detalles de implementacin Se centra en las estructuras de datos y algoritmos que son necesarios para implementar cada clase Las clases de objetos y relaciones desarrolladas durante el anlisis de objetos se traducen finalmente a una implementacin concreta. Es importante que la correspondencia con el diseo sea directa y el sistema implementado sea flexible y extensible
DISEO DE OBJETOS
IMPLEMEN TACIN
Evolucin histrica
UML 2.0 2001
2000 1999
1998 Noviembre97 Septiembre97
Enero97
Junio96 & Octubre96
UML 1.0
UML 0.9 & 0.91
Socios y Colaboradores
Octubre95
Booch93
Otros mtodos Booch91
OMT - 2
OMT OOSE
UML es el primer mtodo en publicar un meta -modelo en su propia notacin, incluyendo la notacin para la mayora de la informacin de requisitos, anlisis y diseo. UML capta la informacin sobre la estructura esttica y el comportamiento dinmico de un sistema. Un sistema se modela como una coleccin de objetos discretos que interactan para realizar un trabajo que finalmente beneficia a un usuario externo. El lenguaje de modelado pretende unificar la experiencia pasada sobre tcnicas de modelado e incorporar las mejores prcticas actuales en un acercamiento estndar. UML no es un lenguaje de programacin. Las herramientas pueden ofrecer generadores de cdigo de UML para una gran variedad de lenguaje de programacin, as como construir modelos por ingeniera inversa a partir de programas existentes.
CONTIENE
OBJETIVOS Proporcionar mecanismos de extensin de forma que proyectos concretos puedan extender el meta-modelo a un coste bajo. Debe ser un lenguaje universal, como cualquier lenguaje de propsito general. Debe ser un lenguaje universal, como cualquier lenguaje de propsito general. ESTRUCTURA ESTATICA Se expresa con diagramas de clases y puede usarse para generar la mayora de las declaraciones de estructuras de datos en un programa. COMPORTAMIENTO DINAMICO Hay dos formas de modelar el comportamiento, una es la historia de la vida de un objeto y la forma como interacta con el resto del mundo y la otra es por los patrones de comunicacin de un conjunto de objetos conectados, es decir la forma en que interactan entre s.
CONTRUCCIONES DE IMPLEMENTACION Puede contener componentes y objetos. Un componente es una parte fsica reemplazable de un sistema y es capaz de responder a las peticiones descritas por un conjunto de interfaces.
MECANISMO DE EXTENCION Se expresa con diagramas de clases y puede usarse para generar la mayora de las declaraciones de estructuras de datos en un programa. tiene una limitada capacidad de extensin pero que es suficiente para la mayora de ellas, que no requiere la necesidad de un cambio en el lenguaje bsico
ORGANIZACIN DEL MODELO La informacin del modelo debe ser dividida en piezas coherentes, para que los equipos puedan trabajar en las diferentes partes de forma concurrente. Los paquetes son unidades organizativas, jerrquicas y de propsito general de los modelos de UML. Pueden usarse para almacenamiento, control de acceso, gestin de la configuracin.
ELEMENTOS DE ANOTACION Son las partes explicativas de los modelos UML. Son comentarios que se pueden aplicar para describir, clasificar y hacer observaciones sobre cualquier elemento de un modelo. El tipo principal de anotacin es la nota que simplemente es un smbolo para mostrar restricciones y comentarios junto a un elemento o un conjunto de elementos.
VISION GENERAL.
UML es un lenguaje para :
*visualizar.
*especificacin
*construir.
*EL SOFTWARE Y EL
LENGUAJE DE PROGRAMACION TEXTUAL. *LOS MODELOS PUEDEN CONECTARSE EN FORMA DIRECTA -LENGUAJE DE PROGRAMACION.
DE SOFTWARE PRODUCE: *REQUISITOS = ARQUITECTURA *DISEO=CODIGO FUENTE. *PLANIFICACION DE PROYECTOS= PRUEBAS *PROTOTIPOS= VERSIONES.
La clasificacin estructural describe los elementos del sistema, as como sus relaciones con otros elementos.
LA COMUNICACIN.
EL PROGRAMADOR.
EL SOFTWARE.
EL DESARROLLADOR Y EL CODIGO.
LA GESTION DE MODELO.
describe la organizacin de los modelos mismos en unidades jerrquicas. Las vistas de la gestin del modelo .
ESTANDARIZACION DE UML
Desde los inicios de la informtica se han utilizando distintas formas de representar los diseos de una forma ms bien personal o algn modelo grfico.
La falta de estandarizacin en la manera de representar grficamente un modelo impeda que los diseos grficos realizados se pudieran compartir fcilmente entre distintos diseadores. Con este objetivo se creo el Lenguaje Unificado de Modelado, UML se ha convertido en ese estndar tan ansiado para representar y modelar la informacin con la que se trabaja en las fases de anlisis y, especialmente de diseo.
ESTANDARIZACION.
* UML es un estndar industrial promovido por el grupo OMG .
VISTA ESTATICA
Componentes Despliegue
Objeto Secuencia
VISTA DINAMICA
Las vistas muestran diferentes aspectos del sistema modelado. Una vista no es una grafica, pero si una abstraccin que consiste en un numero de diagramas que todos juntos forman una fotografa completa del sistema.
LAS VISTAS.
Vista de diseo.
Muestra la funcionalidad del diseo dentro del sistema en trminos de la estructura esttica y comportamie nto dinmico del sistema.
Vista de implementacin Muestra la especificacin de los componentes de cdigo Descripcin de los mdulos de implementaci n y sus dependencias.
Vista de procesos.
Concurrencia del sistema: comunicacin y sincronizacin (Hilos de control) Divisin del sistema en procesos y procesadores.
Vista de desarrollo.
Muestra la funcionalidad del sistema desde el punto de vista de un actor externo que interacta con l
es un tipo de diagrama esttico que describe la estructura de un sistema mostr ando sus clases, atributos y las relaciones entre ellos.
para modelar los procesos 'business'. (poner los procesos de negocios de su empresa en Internet)
VISTA DE DESPLIEGUE
"Los diagramas de despliegue muestran la configuracin fsica de un sistema, revelando qu piezas de software se ejecutan sobre qu piezas de hardware."[
VISTA DE OBJETO
Diagrama de objetos: describe cmo se relacionan un grupo particular de objetos entre s.
VISTA SECUENCIAL
un diagrama de secuencia muestra una interaccin, que representa la secuencia de mensajes entre las instancias de clases, componentes, subsistemas o actores. El tiempo fluye hacia abajo en el diagrama y muestra el flujo de control de un participante a otro.
VISTA COLABORACIN
Un diagrama de colaboracin es un diagrama de interaccin que resalta la organizacin estructural de los objetos que envan y reciben los mensajes. Este tipo de diagrama muestra un conjunto de objetos, enlaces entre ellos y los mensajes que intercambian.
VISTA ESTADOS
muestran el conjunto de estados por los cuales pasa un objeto durante su vida en una aplicacin en respuesta a eventos (por ejemplo, mensajes recibidos, tiempo rebasado o errores), junto con sus respuestas y acciones.
VISTA ACTIVIDADES
un diagrama de actividades representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. Un diagrama de actividades muestra el flujo de control general.
muestra la distribucin del sistema en la arquitectura fsica con computadoras y dispositivos llamados nodos. Muestra la concurrencia en el sistema, direccionando los problemas con la comunicacin y sincronizacin que estn presentes en un sistema concurrente.
Una vista que muestra la funcionalidad del sistema como la perciben los actores externos.
Las vistas.
Vista Concurrente
Muestra la organizacin de los componentes de cdigo
Vista Lgica
Muestra cmo se disea la funcionalidad dentro del sistema, en trminos de la estructura esttica y la conducta dinmica del sistema
Vista de Componentes
PINCIPALES BENEFICIOS
Mejores tiempos totales de desarrollo Modelar sistemas utilizando conceptos orientados a objetos Establecer conceptos y artefactos ejecutables Encaminar el desarrollo del escalamiento en sistemas complejos Crear un lenguaje de modelado utilizado tanto por humanos como maquinas Mejor soporte a la planeacin y al control de proyectos Alta reutilizacin y minimizacin de costos
DIAGRAMAS
Los diagramas son las graficas que describen el contenido de una vista . UML tiene 9 tipos de diagramas que son utilizados en combinacin para proveer todas las vistas de un sistema: Diagramas de casos de uso: muestra un conjunto de casos y actores y sus relaciones Diagramas de clases: muestra un conjunto de clases, interfaces y colaboraciones y sus relaciones. Diagramas de objetos: muestra un conjunto de objetos y relaciones. Diagramas estados: muestra transiciones, eventos y actividades.
Diagramas de secuencia Diagramas de colaboracin Diagramas de actividad: es un tipo especal de diagramas que muestra el flujo de actividad de un sistema. Diagramas de componentes: muestra organizaciones y dependencias de un conjunto de componentes. Diagramas de distribucion
SIMBOLOS
Los conceptos utilizados en los diagramas son los elementos de modelo que representan conceptos comunes orientados a objetos, tales como clases, objetos y mensajes y las relaciones entre estos conceptos incluyendo la asociacin, dependencia y generalizacin. Un elemento de modelo es utilizado en varios diagramas diferentes, pero siempre tiene el mismo significado y simbologa.
ELEMENTOS
UML
VISTAS
SIMBOLOS
DIAGRAMAS
REGLAS
ELEMENTOS ESTRUCTURALES
CLASE: Corresponde a una descripcin de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semntica.
NOMBRE
ARIBUTOS OPERACIONES
OPERACIONES
ELEMENTOS ESTRUCTURALES
COLABORACION: Define una interaccin y es una sociedad de roles y otros elementos que colaboran para proporcionar un comportamiento cooperativo
CADENA DE RESPONSABILIDAD
ACTOR: Algo o alguien que puede interaccionar con el sistema que se esta desarrollando
ELEMENTOS DE COMPORTAMIENTO
MENSAJES: Los mensajes se usan para especificar una comunicacin entre objetos
OBJETOS: Un objeto es una instancia de alguna clase CASOS DE USO: Descripcin de un conjunto de secuencias de acciones que un sistema ejecuta y que produce un resultado observable de inters para un actor particular.
REALIZAR PEDIDO
ELEMENTOS DE AGRUPACION
PAQUETE :Sirve para organizar elementos en grupos. Un paquete es puramente conceptual (solo existe en tiempo de desarrollo).
REGLAS O MECANISMOS
Proveen comentarios extras, informacin o semntica acerca del elemento del modelo; adems proveen mecanismos de extensin para adaptar o extender UML a un mtodo o proceso especifico, organizacin o usuario
MECANISMOS
SE APLICAN EN FORMA CONSISTENTE A TRAVES DE TODO EL LENGUAJE 1. Especificaciones 2. Adornos 3. Divisiones comunes 4. Mecanismos de extensibilidad
ESPECIFICACIONES: Detrs del icono de clase hay una especificacin que proporciona el conjunto completo de atributos, operaciones y comportamiento que incluye la clase. La notacin grafica de UML se utiliza para visualizar un sistema, la especificacin de UML, se utiliza para expresar los detalles del sistema. ADORNOS: Se pueden incluir detalles como abstraccin, visibilidad de sus atributos y operaciones
TRANSACCION
DIVISIONES COMUNES: Divisin entre clase y objeto: una clase es una abstraccin, un objeto es una manifestacin concreto de esa abstraccin.
Elisa
FUNCIONES UML
VISUALIZAR: UML permite expresar de una forma grafica un sistema de forma que otro lo puede entender. ESPECIFICAR: UML permite especificar cuales son las caractersticas de un sistema antes de su construccin. CONSTRUIR: A partir de los modelos especificados se puede construir los sistemas diseados. DOCUMENTAR: Los propios elementos grficos sirven como documentacin del sistema desarrollado, sirviendo para su futura revisin.
BENEFICIOS DE UML
Produce un aumento en la calidad del desarrollo Reduce los costos del proyecto Mejora un 50% o mas los tiempos totales de desarrollo Permite especificar la estructura y el comportamiento del sistema y comunicarlo a todos los integrantes. Facilita la documentacin de las decisiones de la arquitectura del proyecto Se pueden automatizar determinados procesos y permite generar cdigo a partir de modelos y viceversa.