Você está na página 1de 8

Universidad de Valparaso Facultad de Ciencias Econmicas y Administrativas Escuela de Ingeniera Comercial

Introduccin

UML - Lenguaje Unificado de Modelado


- UML (Unified Modeling Language) es un lenguaje grfico para visualizar, especificar, construir y documentar los artefactos de un sistema software.

Introduccin a UML

- Proporciona una manera estndar de representar los planos de un sistema. - Comprende aspectos conceptuales:
Procesos de negocio. Funciones del sistema.

- Comprende elementos concretos:


Asignatura

COM 415 - Tecnologa de la Informacin para la Gestin


Profesor

Clases escritas en un lenguaje de programacin especfico. Esquemas de bases de datos.

Daniel Cabrera Paniagua Versin 2010-02

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

Historia (1)
- Una masa crtica de ideas comenz a formarse a mediados de los 90, cuando diversos autores comenzaron a adoptar ideas de otros mtodos.
Grady Booch (Rational Software Corporation). James Rumbaugh (General Electric). Ivar Jacobson (Objetory).

Historia (2)
- Una versin revisada de UML (la versin 1.1) se ofreci a la OMG (Object Management Group) para su estandarizacin (Julio de 1997). - En ese mismo ao (Septiembre), la versin 1.1 de UML fue aceptada. - Durante los aos siguientes, se crearon las versiones 1.3, 1.4 y 1.5. - Entre los aos 2000 2003, un conjunto ms amplio de colaboradores cre una especificacin actualizada de UML, la versin 2.0. - La OMG adopt la versin oficial de UML 2.0 en Octubre de 2005.

- Cuando comenz la unificacin, se establecieron tres metas a alcanzar:


1.- Modelar sistemas, desde el concepto hasta los artefactos ejecutables, utilizando tcnicas orientadas a objetos. 2.- Tratar los aspectos relacionados con el tamao inherente a los sistemas complejos y crticos. 3.- Crear un lenguaje de modelado utilizable tanto por las personas como por las mquinas.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

Caractersticas (1)
- UML es til para modelar desde sistemas de informacin empresariales, hasta aplicaciones distribuidas basadas en Web, e incluso, para sistemas embebidos (Ej. Dispositivos mviles). - Es un lenguaje muy expresivo, que cubre todas las vistas necesarias para desarrollar sistemas software. - Posee tres componentes clave en su entendimiento:
Bloques bsicos de construccin de UML. Reglas que dictan cmo pueden combinarse esos bloques. Algunos mecanismos comunes que se aplican a lo largo de todo el lenguaje.

Caractersticas (2)
- UML no est limitado al modelado de software. - Es lo suficientemente expresivo para modelar sistemas que no son software, como por ejemplo:
Flujos de trabajo (workflows) en un sistema de gestin de clientes. Estructura y comportamiento de un sistema de seguimiento en tratamientos mdicos. Diseo de hardware, etc.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

Caractersticas (3)
- Los problemas simples son fciles de modelar con UML. - Los problemas difciles tambin son fciles de modelar, especialmente despus de haber adquirido soltura con el lenguaje. - El 80% de la mayora de los problemas puede modelarse con el 20% de UML.

Caractersticas (4)
- UML es slo un lenguaje. - Es independiente del modelo de proceso utilizado, aunque para utilizarlo de mejor manera se debera usar en un proceso que fuese dirigido por los casos de uso, centrado en la arquitectura, iterativo e incremental (Proceso Unificado). - UML es un lenguaje para:

- Leer sobre cmo utilizar UML es una cosa, pero slo se puede llegar a dominar practicando.

Visualizar, Especificar, Construir, Y documentar los artefactos de un sistema software.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

UML es un lenguaje
- Un lenguaje proporciona un vocabulario y las reglas para combinar palabras de ese vocabulario, con el objetivo de posibilitar la comunicacin. - Un lenguaje de modelado es un lenguaje cuyo vocabulario y reglas se centran en la representacin conceptual y fsica de un sistema. - El modelado proporciona una comprensin de un sistema. Nunca es suficiente un nico modelo. Es necesario tener diferentes vistas del sistema. - UML es un lenguaje que ofrece diferentes vistas de la arquitectura de un sistema. - El vocabulario y las reglas de UML indican como crear y leer modelos bien formados, pero no indican qu modelos se deben crear, ni cuando se deberan crear. - Es tarea del proceso de desarrollo de software determinar los modelos necesarios y el momento de su creacin.
COM 415 Tecnologa de la Informacin para la Gestin

UML es un lenguaje para visualizar (1)


- Para muchas personas, la distancia entre pensar en una implementacin, y luego transformarla en cdigo es casi cero. Lo piensas, lo codificas. - Si bien en algunos casos puede dar buenos resultados, esto plantea algunos problemas.
La comunicacin de esos modelos conceptuales a otras personas est sujeta a errores, a menos que cualquier persona maneje el mismo lenguaje sobre el cual estn basados los modelos definidos. Algunos aspectos de los sistemas software no pueden ser entendidos a menos que se construyan modelos que trasciendan las descripciones textuales. Ejemplo: la distribucin fsica de un sistema no puede ser entendida a cabalidad examinando un cdigo fuente. Si el desarrollador escribi cdigo, y luego se desliga del proyecto, se pierde informacin valiosa sobre el funcionamiento del mismo.

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

UML es un lenguaje para visualizar (2)


- Al desarrollar modelos en UML se obtiene la siguiente ventaja: un modelo explcito facilita la comunicacin. - UML es algo ms que un conjunto de smbolos grficos. Detrs de cada smbolo de la notacin hay una semntica bien definida. - De este modo, un desarrollador puede escribir un modelo en UML, y luego, otro desarrollador (o incluso una herramienta), puede interpretar ese modelo sin ambigedad.

UML es un lenguaje para especificar


- En este contexto, especificar significa construir modelos precisos, no ambiguos y completos. - En particular, UML cubre la especificacin de todas las decisiones de anlisis, diseo e implementacin que deben efectuarse al desarrollar sistemas de diversos niveles de envergadura.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

UML es un lenguaje para construir


- UML no es un lenguaje de programacin visual, pero sus modelos pueden conectarse de forma directa a una gran variedad de lenguajes de programacin. - Esto significa que es posible establecer correspondencias desde un modelo UML a un lenguaje de programacin como Java C++, e incluso, a tablas de bases de datos. - Esta correspondencia permite ingeniera directa: la generacin de cdigo en un lenguaje de programacin a partir de un modelo UML. - Lo contrario tambin es posible (reconstruir un modelo UML a partir de una implementacin). - La ingeniera inversa no es mgica: a menos que se codifique esa informacin en la implementacin, la informacin se pierde cuando se pasa del cdigo hacia los modelos.

Arquitectura (1)
- La visualizacin, especificacin, construccin y documentacin de un sistema requiere que el sistema sea visto desde varias perspectivas. - Diferentes usuarios (usuarios finales, analistas, desarrolladores, integradores de sistemas, encargados de pruebas, encargados de la documentacin tcnica, y jefes de proyecto) siguen diferentes agendas en relacin con el proyecto. - Cada participante mira al sistema en diferentes momentos, y desde su propia perspectiva, a lo largo de la vida del proyecto. - La arquitectura de un sistema es quizs el artefacto ms importante que puede emplearse para manejar estos diferentes puntos de vista. - Permite adems, controlar el desarrollo iterativo e incremental de un sistema.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

El Lenguaje Unificado de Modelado

El Lenguaje Unificado de Modelado

Arquitectura (2)
- La arquitectura rene un conjunto de decisiones significativas sobre:
La organizacin de un sistema software.

Arquitectura (3)
- La arquitectura software no tiene que ver solamente con la estructura y el comportamiento, sino tambin con:
El uso y la funcionalidad.

La seleccin de elementos que lo conforman. El rendimiento. Su comportamiento, como se especifican las colaboraciones entre los elementos. La capacidad de adaptacin y reutilizacin. La composicin de esos elementos, en la conformacin de subsistemas progresivamente ms grandes. El estilo arquitectnico que gua esta organizacin: los elementos estticos y dinmicos. La capacidad de ser comprendido. Las restricciones econmicas y tecnolgicas, adems de los compromisos por cada alternativa. Aspectos estticos.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

UML y Arquitectura

Vistas

Vistas
- La arquitectura de un sistema puede describirse mejor a travs de cinco vistas interrelacionadas. - Cada vista es una proyeccin de la organizacin y la estructura del sistema centrada en un aspecto particular del mismo.

Vista de Casos de Uso


- Esta vista comprende los casos de uso que describen el comportamiento del sistema, tal y como es percibido por los usuarios finales, analistas, y encargados de pruebas. - Esta vista no especifica realmente la organizacin de un sistema software.

- Vocabulario - Funcionalidad

- Ensamblado del sistema

- Vocabulario - Funcionalidad

- Ensamblado del sistema

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Rendimiento - Escalabilidad

- Rendimiento - Escalabilidad

- Capacidad de procesamiento

- Capacidad de procesamiento

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Vistas

Vistas

Vista de Diseo
- Comprende las clases, interfaces y colaboraciones que forman el vocabulario del problema y su solucin. - Esta vista soporta principalmente los requisitos funcionales del sistema, entendiendo por ello los servicios que el sistema defera proporcionar a sus usuarios finales.
- Vocabulario - Funcionalidad - Ensamblado del sistema

Vista de Interaccin
- Esta vista muestra el flujo de control entre sus diversas partes del sistema, incluyendo posibles mecanismos de concurrencia y sincronizacin. - Esta vista abarca principalmente el rendimiento, la escalabilidad y la capacidad de procesamiento del sistema.

- Vocabulario - Funcionalidad

- Ensamblado del sistema

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Rendimiento - Escalabilidad

- Rendimiento - Escalabilidad

- Capacidad de procesamiento

- Capacidad de procesamiento

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Vistas

Vistas

Vista de Implementacin
- Comprende los artefactos que se utilizan para ensamblar y poner en produccin el sistema fsico. - Esta vista se ocupa principalmente de la gestin de configuraciones de las distintas versiones del sistema, a partir de archivos sin dependencia entre s, y que pueden ensamblarse de varias formas para obtener un sistema ejecutable.
- Vocabulario - Funcionalidad - Ensamblado del sistema

Vista de Despliegue
- Contiene todos los nodos que forman la topologa hardware sobre la que se ejecuta el sistema. - Esta vista se ocupa principalmente de la distribucin, entrega e instalacin de las partes que conforman el sistema fsico.

- Vocabulario - Funcionalidad

- Ensamblado del sistema

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

Vista de Diseo

Vista de Implementacin

- Gestin de la configuracin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Comportamiento

Vista de Casos de Uso Vista de Interaccin Vista de Despliegue


- Topologa del sistema - Distribucin - Entrega - Instalacin

- Rendimiento - Escalabilidad

- Rendimiento - Escalabilidad

- Capacidad de procesamiento

- Capacidad de procesamiento

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Vistas

UML

Consideraciones
- Cada una de estas cinco vistas puede existir por s misma, de forma que cada usuario pueda centrarse en los aspectos de la arquitectura del sistema que ms le interesen. - Estas cinco vistas tambin interactan entre s:
Los nodos en la vista de despliegue contienen componentes de la vista de implementacin Que a su vez, representan la realizacin fsica de clases de la vista de diseo.

Elementos de Agrupacin
- Los elementos de agrupacin son partes organizativas de los modelos UML, y corresponden a cajas en las que puede descomponerse un modelo. - Hay un tipo especial de elemento de agrupacin, denominado paquete. - Un paquete (package) es un mecanismo de propsito general para organizar el propio diseo, en oposicin a las clases, que organizan construcciones de implementacin. - Un paquete es puramente conceptual (slo existe durante el desarrollo de un sistema). - Grficamente, un paquete se visualiza como una carpeta con nombre (y en ocasiones, muestra tambin su contenido).
Mdulo RR.HH.

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

UML

UML

Elementos de Anotacin
- Los elementos de anotacin son las partes explicativas de los modelos UML. - Son comentarios que se pueden aplicar para describir, clarificar y hacer observaciones sobre cualquier elemento de un modelo. - Hay un tipo principal de elemento de anotacin llamado nota. - Una nota es simplemente un smbolo para mostrar restricciones y comentarios junto a un elemento. - Grficamente, una nota se representa como un rectngulo con una esquina doblada, que contiene un comentario textual o grfico.

Relaciones
- Una relacin es una conexin entre elementos. En el modelado orientado a objetos, las tres relaciones ms importantes son las dependencias, las asociaciones y las generalizaciones. - Grficamente, una relacin se representa como una lnea, usndose diferentes tipos de lnea para diferenciar los tipos de relaciones. - Se considerarn los siguientes tipos de relaciones:
Dependencia. Asociacin. Generalizacin.

Esta nota permite hacer un comentario

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Relaciones en UML

Relaciones en UML

Dependencia
- Una dependencia es una relacin semntica entre dos elementos, en la cual un cambio a un elemento (el elemento independiente) puede afectar a la semntica del otro elemento (el elemento dependiente). - Es una relacin de uso que declara que un elemento utiliza la informacin y los servicios de otro elemento. - Grficamente, una dependencia se representa como una lnea discontinua, dirigida al elemento del cual se depende, y que en ocasiones incluye una etiqueta.

Asociacin
- Una asociacin es una relacin estructural entre clases que describe un conjunto de enlaces. - Especifica que los objetos de un elemento estn conectados con los objetos de otro. Dada una relacin entre dos clases, se puede establecer una relacin desde un objeto de una clase hasta algunos objetos de la otra clase. - Grficamente, una asociacin se representa como una lnea continua, posiblemente dirigida, que a veces incluye una etiqueta, y a menudo incluye otros adornos, como la multiplicidad.

1..n

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Relaciones en UML

UML

Generalizacin
- Una generalizacin es una relacin de especializacin/generalizacin, en la cual el elemento especializado (subclase, o el hijo) se basa en la especializacin del elemento generalizado (superclase, o el padre). - El hijo comparte la estructura y el comportamiento del padre. - Grficamente, una relacin de generalizacin se representa como una lnea continua con una punta de flecha vaca, apu8ntando al padre.

Estereotipos
- Un estereotipo extiende el vocabulario de UML, permitiendo crear nuevos tipos de bloques de construccin que derivan de los existentes, pero que son especficos a un problema (a nuestro problema).

El estereotipo corresponde a <<Agent>>

<<Agent>> Usuario Id Name search()

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

UML

Diagramas en UML
- Un diagrama es una representacin grfica de un conjunto de elementos, visualizado la mayora de las veces como un grafo conexo de nodos (elementos) y arcos (relaciones). - Los diagramas se dibujan para visualizar un sistema desde diferentes perspectivas, de forma que un diagrama es una proyeccin de un sistema. - Un diagrama representa una vista resumida de los elementos que constituyen un sistema. - UML 2.0 define trece tipos diferentes de diagramas. Esto no quiere decir que sea una lista cerrada. Las herramientas pueden utilizar UML para proporcionar otros tipos de diagramas.

Fin del Captulo !

COM 415 Tecnologa de la Informacin para la Gestin

COM 415 Tecnologa de la Informacin para la Gestin

Você também pode gostar