Upload
karli-jimenez
View
26
Download
0
Embed Size (px)
Citation preview
UML Y EL PROCESO UNIFICADO.
¿QUE ES? Es la sucesión de una serie de métodos de análisis y diseño orientadas a objetos
UML
Lenguaje modelado
Estandarizacion
El proceso unficado
UML es una técnica para la especificación de sistemas en todas sus fases.
Nació en 1994 cubriendo los aspectos principales de todos los métodos de diseño.
Los padres de UML son Grady Booch, autor del método OMT e Ivar Jacobson. La versión de 1.0 de UML fue liberada en enero de 1997 y ha sido exitosa en sistemas de hospitales, industrias, bancos etc.
EL LENGUAJE UNIFICADO DE MODELADO (UML)
Interactivo e
Incremental
Se basa, en el orden de una
etapa a la siguiente sólo
tras finalizar con éxito las tareas de verificación y
vacilación propias de la
etapa.
Dirigido por casos
de UsoSe utilizan para
capturar los requisitos
funcionales y para definir los
contenidos de las interacciones:
Diseño, Implementación,
prueba, etc.
Centrado en la
Arquitectura
Definen la arquitectura del Software
de un sistema.
Enfocado a los Riesgos
Los resultados de cada interacción, en
especial los de la fase de elaboración,
debe ser seleccionados en un
orden
asegure que los riesgos
principales son considerados
primero.
CARACTERISTICAS DEL PROCESO UNFICADO
• El proceso se debe adaptar a las necesidades del cliente
• que influirán en el diseño especifico.
Adaptar el Proceso
• Son los requisitos de los participantes que pueden ser diferentes.
• Así se podrá corregir desacuerdos
Equilibrar propiedade
s
• Son los proyectos que se entregan en etapas iteradas• en cada iteración se analiza la opinión de los inversores, la
estabilidad y la calidad del producto.
Demostrar Valor Interactivamente • El desarrollo del Software no lo hace una persona
• para coordinar requisitos, desarrollo, planes, etc.
Colaboración entre Equipos
• Motiva el uso de conceptos reutilizables • el patrón del Software o marcos de referencias
Elevar el Nivel de
Abstracción • El control de calidad no debe realizarse al final de
cada iteración• en todos los aspectos de la producción
Enfocarse en la
Calidad
RUP CARACTERISTICAS
Constituye la metodología estándar para el análisis,
implementación y documentación de sistemas
orientados a objetos y adaptables al contexto y
necesidades de cada organización.
6 principios
Un conjunto de notaciones y diagramas estándar para modelar sistemas orientados a objetos, y describe la semántica esencial de lo que estos diagramas y símbolos significan.
CONCEPTUALIZACION DEL UML
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.
Metodología Orientada a Objeto UML.
METODOLOGIA UML
Es un lenguaje para especificar, construir, visualizar y documentar los artefactos de un
sistema de software orientado a objetos (OO).
OMT (Object Modeling Technique)
metodologías de análisis y diseño
orientadas a objetos,
pone énfasis en la importancia del modelo y uso de
modelo para lograr una abstracción, en
el cual el análisis esta enfocado en el mundo real para un
nivel de diseño
Esto facilita su evolución para
acoplarse a todas las necesidades actuales
y futuras de la ingeniería de
software.
OTROS MÉTODOS DE MODELAJE COMO
ANALISISDISEÑO DEL
SISTEMA
DISEÑO DE OBJETOS
IMPLEMENTACION
FASES
FASES
• Se construye un modelo del dominio, mostrando propiedades importantes.
• El modelo de análisis es una abstracción resumida y precisa de lo que debe de hacer el sistema deseado.
ANALISIS
• Se toman decisiones de alto nivel sobre la arquitectura del sistema ha implementar.
• El sistema se organiza en subsistemas basándose tanto en la estructura del análisis como en la arquitectura propuesta.
DISEÑO DEL SISTEMA
• Se construye un modelo de diseño basándose en el modelo de análisis e incorporando detalles de implementación
• Se centra en las estructuras de datos y algoritmos que son necesarios para implementar cada clase
DISEÑO DE OBJETOS
• Las clases de objetos y relaciones desarrolladas durante el análisis de objetos se traducen finalmente a una implementación concreta.
• Es importante que la correspondencia con el diseño sea directa y el sistema implementado sea flexible y extensible
IMPLEMENTACIÓN
Es un lenguaje de modelado visual que se usa para especificar, visualizar, construir y documentar artefactos de un sistema de software. Se usa para entender, diseñar, configurar, mantener y controlar la información sobre los sistemas a construir.
SURGIMIENTO DEL UML
Booch’91 OMT
Noviembre´97 OMG UML 1.1
Septiembre´97 UML 1.1
Enero´97 UML 1.0
Socios yColaboradoresJunio´96 & Octubre´96
OOSE
UML 0.9 & 0.91
Booch’93 OMT - 2
Octubre´95 Método Unificado 0.8
Otros métodos
1998 UML 1.2
1999 UML 1.3
2000 UML 1.4
2001UML 2.0
Evolución histórica
UML es el primer método en publicar un meta-modelo en su propia notación, incluyendo la notación para la mayoría de la información de requisitos, análisis y diseño.
UML capta la información sobre la estructura estática y el comportamiento dinámico de un sistema. Un sistema se modela como una colección de objetos discretos que interactúan para realizar un trabajo que finalmente beneficia a un usuario externo.
El lenguaje de modelado pretende unificar la experiencia pasada sobre técnicas de modelado e incorporar las mejores prácticas actuales en un acercamiento estándar.
UML no es un lenguaje de programación. Las herramientas pueden ofrecer generadores de código de UML para una gran variedad de lenguaje de programación, así como construir modelos por ingeniería inversa a partir de programas existentes.
OBJETIVOS
• Proporcionar mecanismos de extensión de forma que proyectos concretos puedan extender el meta-modelo a un coste bajo.
• Debe ser un lenguaje universal, como cualquier lenguaje de propósito general.
• Debe ser un lenguaje universal, como cualquier lenguaje de propósito general.
ESTRUCTURA ESTATICA
• Se expresa con diagramas de clases y puede usarse para generar la mayoría 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 interactúa con el resto del mundo y la otra es por los patrones de comunicación de un conjunto de objetos conectados, es decir la forma en que interactúan entre sí.
CONTIENE
CONTRUCCIONES DE
IMPLEMENTACION• Puede contener
componentes y objetos.
• Un componente es una parte física 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 mayoría de las declaraciones de estructuras de datos en un programa.
• tiene una limitada capacidad de extensión pero que es suficiente para la mayoría de ellas, que no requiere la necesidad de un cambio en el lenguaje básico
ORGANIZACIÓN DEL MODELO
• La información 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, jerárquicas y de propósito general de los modelos de UML. Pueden usarse para almacenamiento, control de acceso, gestión de la configuración.
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 anotación es la nota que simplemente es un símbolo para mostrar restricciones y comentarios junto a un elemento o un conjunto de elementos.
VISION GENERAL.
La clasificación estructural describe los elementos del sistema, así como sus relaciones con otros elementos.
UML es un lenguaje para :
*visualizar.*document
ar. *construir.*especificaci
ón
*CONSTRUIR MODELOS PRECISOS
Y NO COMPLEJOS
*EL SOFTWARE Y EL LENGUAJE DE
PROGRAMACION
TEXTUAL.
*LOS MODELOS PUEDEN
CONECTARSE EN FORMA DIRECTA -
LENGUAJE DE PROGRAMACION.
*UNA ORGANIZACIÓN DE
SOFTWARE PRODUCE:
*REQUISITOS = ARQUITECTURA
*DISEÑO=CODIGO FUENTE.
*PLANIFICACION DE PROYECTOS=
PRUEBAS*PROTOTIPOS=
VERSIONES.
EL PROGRAMADOR.
EL DESARROLLADOR
Y EL CODIGO.EL SOFTWARE.
LA COMUNICACIÓN.
LA GESTION DE MODELO.
describe la organización de los modelos mismos en unidades jerárquicas. Las vistas de la gestión del modelo .
LAS VISTAS DE LA GESTION DEL MODELO
LAS VISTAS DE LA GESTION. (DIAGRAMA DE CLASES (PAQUETES,
SUBSISTEMAS Y MODELOS).
Relación entre áreas, vistas y diagramas de UML
•Desde los inicios de la informática se han uti l izando dist intas formas de representar los diseños de una forma más bien personal o algún modelo gráfico.
•La falta de estandarización en la manera de representar gráf icamente un modelo impedía que los diseños gráf icos realizados se pudieran compart ir fáci lmente entre dist intos diseñadores. Con este objet ivo se creo el Lenguaje Unif icado de Modelado, UML se ha convert ido en ese estándar tan ansiado para representar y modelar la información con la que se trabaja en las fases de análisis y, especialmente de diseño.
ESTANDARIZACION DE UML
ESTANDARIZACION.
* UML es un estándar industrial promovido por el grupo OMG .
VISTA ESTATICA
VISTA DINAMICA
Casos de uso
Clase
Componentes
Despliegue
Objeto
Secuencia
Colaboración
Estados
Actividades
VISTAS: Las vistas muestran diferentes
aspectos del sistema modelado. Una vista no es una grafica, pero si una abstracción que consiste en un numero de diagramas que todos juntos forman una “fotografía” completa del sistema.
LAS VISTAS.
Es un subconjunto de construcciones de modelado que se enfocan en un aspecto particular del sistema.
Vista de caso de uso.
Vista de diseño.
Vista de implementaci
ón
Vista de procesos.
Vista de desarrollo.
Muestra la funcionalida
d del sistema desde el punto de
vista de un actor
externo que interactúa
con él
Muestra la funcionalidad del diseño dentro del sistema en términos de la estructura estática y comportamiento dinámico del sistema.
Muestra la especificación de los componentes de códigoDescripción de los módulos de implementación y sus dependencias.
Concurrencia del sistema: comunicación y sincronización (Hilos de control) División del sistema en procesos y procesadores.
Muestra la implantación del sistema en la arquitectura física.
. TIPOS DE VISTAS ESTRUCTURALES.
VISTA ESTATICA. (DIAGRAMA DE CLASES).
es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos.
VISTA DE CASO DE USO. (DIAGRAMA DE CASO DE USO).
para modelar los procesos 'business'.(poner los procesos de negocios de su empresa en Internet)
VISTA DE DESPLIEGUE
"Los diagramas de despliegue muestran la
configuración física de un
sistema, revelando qué piezas de software se
ejecutan sobre qué piezas de hardware."[
VISTA DE IMPLEMENTACIÓN. (DIAGRAMA DE COMPONENTES).
Ofrecen una ilustración de la arquitectura física del hardware, del software y de los artefactos del sistema.
para modelar la distribución del sistema
TIPOS DE VISTA DINAMICA.
VISTA DE OBJETO
Diagrama de objetos: describe cómo se relacionan un grupo particular de objetos entre sí.
Un diagrama de objetos muestra un conjunto de objetos y sus relaciones en un momento concreto
VISTA SECUENCIAL
un diagrama de secuencia muestra una interacción, 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 COLABORACIÓN
Un diagrama de colaboración es un diagrama de interacción que resalta la organización estructural de los objetos que envían 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 aplicación 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.
Vista de Distribució
n
Vista de Componente
s
Vista Lógica
Vista Concurrent
e
Las vistas.
Vista Use-Case
Una vista que muestra la
funcionalidad del sistema como la
perciben los actores externos.
Muestra la organización de los componentes
de códigoMuestra cómo se diseña la funcionalidad dentro del sistema, en
términos de la estructura estática y la conducta dinámica del
sistema
muestra la distribución del sistema en la arquitectura física
con computadoras y dispositivos llamados nodos.
Muestra la concurrencia en el sistema, direccionando los
problemas con la comunicación y
sincronización que están presentes en un sistema
concurrente.
Mejores tiempos totales de desarrollo Modelar sistemas utilizando conceptos orientados a objetosEstablecer conceptos y artefactos ejecutablesEncaminar el desarrollo del escalamiento en sistemas
complejosCrear un lenguaje de modelado utilizado tanto por humanos
como maquinasMejor soporte a la planeación y al control de proyectosAlta reutilización y minimización de costos
PINCIPALES BENEFICIOS
Existen diferencias; un método es una manera explicita de estructurar el pensamiento y las acciones de cada individuo, indica como hacer algo, cuando y porque, mientras el modelado carece de estas instrucciones. Un modelo es expresado en un lenguaje de modelado. Un lenguaje de modelado consiste en vistas, diagramas, elementos, símbolos etc.
UML ¿METODO O LENGUAJE DE MODELADO?
Los diagramas son las graficas que describen el contenido de una vista . UML tiene 9 tipos de diagramas que son uti l izados en combinación 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
Diagramas de secuenciaDiagramas de colaboraciónDiagramas 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
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 asociación, dependencia y generalización. Un elemento de modelo es util izado en varios diagramas diferentes, pero siempre tiene el mismo significado y simbología.
SIMBOLOS
UML
SIMBOLOS
REGLASDIAGRAMAS
VISTAS
ELEMENTOS
CLASE: Corresponde a una descripción de un conjunto de objetos que comparten los mismos atr ibutos, operaciones, relaciones y semántica.
INTERFAZ: Es una colección de operaciones que especif ican un servicio de una clase.
ELEMENTOS ESTRUCTURALES
NOMBRE
ARIBUTOS
OPERACIONES
INTERFACE
NOMBRE
ATRIBUTOS
OPERACIONES NOMBRE
NOMBRE
COLABORACION: Define una interacción y es una sociedad de roles y otros elementos que colaboran para proporcionar un comportamiento cooperativo
ACTOR: “Algo” o alguien que puede interaccionar con el sistema que se esta desarrol lando
ELEMENTOS ESTRUCTURALES
CADENA DE RESPONSABILID
AD
MENSAJES: Los mensajes se usan para especificar una comunicación entre objetos
ELEMENTOS DE COMPORTAMIENTO
OBJETOS: Un objeto es una instancia de alguna claseCASOS DE USO: Descripción de un conjunto de secuencias de
acciones que un sistema ejecuta y que produce un resultado observable de interés para un actor part icular.
REALIZAR PEDIDO
PAQUETE :Sirve para organizar elementos en grupos.Un paquete es puramente conceptual (solo existe en t iempo de
desarrol lo).
ELEMENTOS DE AGRUPACION
Proveen comentarios extras, información o semántica acerca del elemento del modelo; además proveen mecanismos de extensión para adaptar o extender UML a un método o proceso especifico, organización o usuario
REGLAS O MECANISMOS
SE APLICAN EN FORMA CONSISTENTE A TRAVES DE TODO EL LENGUAJE
1. Especif icaciones2. Adornos3. Divisiones comunes4. Mecanismos de extensibi l idad
MECANISMOS
ESPECIFICACIONES: Detrás del icono de clase hay una especif icación que proporciona el conjunto completo de atr ibutos, operaciones y comportamiento que incluye la clase. La notación graf ica de UML se ut i l iza para visualizar un sistema, la especif icación de UML, se ut i l iza para expresar los detal les del sistema.
ADORNOS: Se pueden incluir detal les como abstracción, visibi l idad de sus atr ibutos y operaciones
TRANSACCION
+ EJECUTAR ()+ ROOLBAK ()# PRIORIDAD ()_ MARCA DE TIEMPO
DIVISIONES COMUNES:División entre clase y objeto: una clase es una abstracción, un objeto
es una manifestación concreto de esa abstracción.
Juan Cliente
cliente
Elisa
CLIENTENOMBREDIRECCIONTELEFONO
VISUALIZAR: UML permite expresar de una forma grafica un sistema de forma que otro lo puede entender.
ESPECIFICAR: UML permite especif icar cuales son las característ icas de un sistema antes de su construcción.
CONSTRUIR: A part ir de los modelos especif icados se puede construir los sistemas diseñados.
DOCUMENTAR: Los propios elementos gráf icos sirven como documentación del sistema desarrol lado, sirviendo para su futura revisión.
FUNCIONES UML
Produce un aumento en la calidad del desarrolloReduce los costos del proyectoMejora un 50% o mas los tiempos totales de desarrolloPermite especificar la estructura y el comportamiento del
sistema y comunicarlo a todos los integrantes.Facilita la documentación de las decisiones de la
arquitectura del proyectoSe pueden automatizar determinados procesos y permite
generar código a partir de modelos y viceversa.
BENEFICIOS DE UML