uml ing. sonia godoy hortua unified modeling language (lenguaje de modelamiento unificado)

63
UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

Upload: alvaro-mendoza-fernandez

Post on 25-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

UML

Ing. Sonia Godoy Hortua

Unified Modeling Language(Lenguaje de Modelamiento unificado)

Page 2: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

OBJETIVOS

Entender los beneficios del modelamiento visual

Reconocer al UML como lenguaje estándar en la construcción de SW

Identificar los diagramas UML y su papel durante la construcción del SW

Page 3: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

¿QUÉ ES UN MODELO?

Un Modelo es una Simplificación de la Realidad

Page 4: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

¿QUÉ ES EL MODELAMIENTO VISUAL?

El modelamiento visual provee una plantilla del sistema. El visualizar esta plantilla, ayuda a entender el sistema que se crea y cómo quisiera crearse, permite entender la estructura o comportamiento del mismo, sirve de guía durante el proceso de construcción del SW y nos permite documentar las decisiones que se toman.

Page 5: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

BENEFICIOS DEL MODELAMIENTO VISUAL

Captura procesos Incrementa la comunicación Define la arquitectura Administra la complejidad Reutilización

Page 6: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

UML

Lenguaje estándar que permite visualizar, especificar, construir y documentar los artefactos del sistema de software. Está demostrado que el trabajo con UML incrementa la productividad, reduce el ciclo de vida de construcción del software e incrementa la calidad del sistema.

Page 7: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

ORIGEN

UML es un lenguaje que nació de la unión de las teorías de :

Grady Booch Ivar JacobsonJames Rumbaugh

Actualmente es un estándar y pertenece a la OMG (Object Managemente Group)

Ultima Versión: 2.0 y la 2.1 es Beta.

Page 8: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DESCRIPCIÓN DE UML Los elementos y diagramas UML están

basados en el paradigma orientado a objetos.

Entre las partes de UML tenemos: 1.Las vistas

2.Los diagramas 3.Los elementos del modelo 4.Lo mecanismos de extensión

Page 9: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

ESTRUCTURA DE UML

5 Vistas 9 Diagramas

Vistas de UML: Arquitectura 4 + 1

Page 10: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

1. LAS VISTAS

Muestran los diferentes aspectos del sistema que son modelados. Una vista no es un gráfico, pero es una abstracción consistente de un número de diagramas.

Se tiene las siguientes vistas: Vista de casos de uso, vista lógica, vista de componentes, vista concurrente y vista de despliegue.

Page 11: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Vista de Casos de Uso: Muestra la funcionalidad del sistema percibido por actores externos.

Vista Lógica: Muestra cómo la funcionalidad es diseñada dentro del sistema, define la estructura y el comportamiento del sistema.

Vista de Componentes o Implementación: Muestra la organización de componentes del código. Y su implementación.

Page 12: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Vista Concurrente o de Procesos: Muestra la concurrencia en el sistema dividido en procesos. Presenta los aspectos de comunicación e integración.

Vista de Despliegue: Muestra la arquitectura física del sistema.

Page 13: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

2. LOS DIAGRAMAS

Son los gráficos que describen el contenido de una vista. UML tiene nueve tipos de diagramas que se usan para mostrarnos todas los enfoques del sistema.

Page 14: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Use CaseDiagramsUse Case

DiagramsDiagrama de Caso de Uso

ScenarioDiagramsScenario

DiagramsDiagrama de Colaboración

StateDiagramsState

DiagramsDiagrama de Componentes

ComponentDiagramsComponent

DiagramsDiagrama de Distribución

StateDiagramsState

DiagramsDiagrama de

objetos

ScenarioDiagramsScenario

DiagramsDiagrama de Estados

Use CaseDiagramsUse Case

DiagramsDiagrama de secuencia

StateDiagramsState

DiagramsDiagrama de Clases

Diagrama de Actividad

Models

Page 15: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMAS DE UML

Page 16: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

3. LOS ELEMENTOS DEL MODELO

Los conceptos usados son elementos del modelo que representan conceptos orientados a objetos como clases, objetos, mensajes y relaciones incluyendo asociación, dependencia y generalización.

Page 17: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

4. LOS MECANISMOS DE EXTENSIÓN

Los símbolos que complementan la información de los diagramas, tenemos las notas, caja de textos para títulos, líneas de indicación, entre otros.

Page 18: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE CASOS DE USO

Page 19: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

casos de uso

Page 20: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE CASOS DE USO

DIAGRAMA DE CASOS DE USO DE NEGOCIODiagrama en el que se plasman los procesos de negocio y los externos a ellos. Estos externos se benefician con el proceso o benefician al proceso.

Page 21: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Diagrama de Casos de Uso de Negocio

DirectorCliente

Gestionar las encuestas

Page 22: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE ACTIVIDADES

Page 23: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 24: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE ACTIVIDADES

Diagrama que captura acciones, es decir flujos de trabajo y actividades a llevarse a cabo. Este diagrama permite enfocar:*Las actividades de un caso de uso de negocio*La implementación de operaciones de una clase*Las actividades de un objeto*Las actividades de una situación

Page 25: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

ELEMENTOS DEL DIAGRAMA DE ACTIVIDADES

Actividad

Flujo

Inicio

Fin

Separador

Bifurcación

Unión

Subdivisión

Unión

Page 26: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 27: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE CASOS DE USO(SOFTWARE)

Page 28: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE CASOS DE USO

DIAGRAMA DE CASOS DE USO DE SOFTWAREDiagrama en el que se plasman las funcionalidades del software y los que interactúan con ellas.

Page 29: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Diagrama de Casos de Uso de Software

Elaborar encuestas

Procesar encuestas

Generar reportes

Usuario Marketing

Llenar encuestasUsuario Cliente Consultar resultados de

encuestas

Usuario Director

Page 30: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE CLASES

Page 31: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 32: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

CLASES, OBJETOS Y SUS RELACIONES

En el modelamiento orientado a objetos, las clases, objetos y sus relaciones son los principales elementos del modelo.Las clases y objetos modelan que hay en el sistema y las relaciones entre ellos revelan como están estructurados.Cuando se usa programación orientada a objetos los elementos mencionados se convierten en el código actual.

Page 33: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Diagrama de Clases, Lógicas y Persistentes

CLASES DEL CU SISTEMA: LLENAR ENCUESTAS

GUIEncuesta

seleccionarTiposEncuesta()mostrarPreguntas()grabar()

Encuesta

getPreguntas()setEncuesta()

ControlEncuesta

cargarPreguntas()validarGrabacion()

Page 34: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

CLASES, OBJETOS Y SUS RELACIONES

Una clase es una descripción de un tipo objeto, todos los objetos son instancias de una clase, donde la clase describe las propiedades y comportamiento de un tipo de objeto. Una clase sería una descripción de un objeto en un tipo de sistema(información, técnico, distribuido, software, negocio)

Page 35: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Diagrama de Clases

Page 36: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE OBJETOS

Page 37: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE OBJETOS El Diagrama de Objetos es una instancia de un Diagrama

de Clases y presenta los detalles de un estado del sistema en un punto del tiempo determinado. Se utilizan para validar el modelo del dominio.

Para validar el modelo del dominio es necesario ejecutar los siguientes pasos: Elegir uno o más casos de uso que estén altamente

relacionados con el modelo del dominio. Elegir uno o más escenarios de los casos de uso

seleccionados en el punto anterior. Es recomendable elegir escenarios que exploren diferentes situaciones.

Page 38: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE OBJETOSEJEMPLO SISTEMA ACADÉMICO

Creando el diagrama de objetos desde el escenario: Juan ingresa su identificación 91558899 la cual el sistema valida.

Page 39: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE COLABORACIÓN

Page 40: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 41: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE COLABORACIÓN

Diagrama que enfoca las interacciones y los enlaces entre un grupo de objetos “colaboradores”. Este diagrama se enfoca en el espacio y muestra como los objetos, sus enlaces y los mensajes son enviados entre ellos.

Page 42: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

: GUIEncuesta

: ControlEncuesta

: Encuesta

: Usuario Cliente

2: solicita preguntas x tipo4: muestra preguntas

6: valida grabación

3: obtiene preguntas

7: guarda datos

1: Selecciona tipo de encuesta

5: Contesta y graba

Page 43: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE SECUENCIA

Page 44: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 45: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE SECUENCIAS

Muestran como los objetos interactúan entre ellos.

Está enfocado en la secuencia de mensajes.

Tiene dos ejes: el eje vertical que muestra el tiempo y el eje horizontal que muestra el grupo de objetos.

Es específico para un escenario.

Page 46: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 47: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE ESTADOS

Page 48: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Page 49: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE ESTADOS Captura el ciclo de

vida de los objetos, subsistemas y sistemas.

Define los estados que un objeto puede tener y cómo los eventos afectan esos estados.

Page 50: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE ESTADOS

Diagrama de Estados de una Orden de Pedido

Page 51: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE DESPLIEGUE

Page 52: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Despliegue

Page 53: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE DESPLIEGUE

Describe la arquitectura en tiempo de ejecución de procesadores, dispositivos y los componentes de software que ejecutan esta arquitectura.

Describe la topología del sistema, estructura de hardware y el software que se ejecuta en cada unidad.

Page 54: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

EJEMPLO DEL DIAGRAMA DE DESPLIEGUE

Serv idorComprador

Serv idorVendedor

Serv idorCentral

ClienteComprador

ClienteVendedor

INTRANET

INTRANET

INTRANET

INTERNET

INTERNET

Page 55: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE DESPLIEGUE

Nodos.-Son los objetos físicos que tiene un tipo de recurso computacional. Ejm: dispositivos como impresoras, dispositivos de comunicación.

Conexiones.-El tipo de comunicación es representado por un estereotipo que identifica el protocolo de comunicación o el tipo de red usado.

Page 56: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE COMPONENTES

Page 57: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

Componentes

Page 58: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

DIAGRAMA DE COMPONENTES

Representa los componentes de software,sus dependencias y la estructura del código. Los componentes implementan en la arquitectura física, los conceptos y la funcionalidad definidas en la arquitectura lógica. Los componentes pueden ser fuentes, binarios y ejecutables.

Page 59: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

GuiEncuesta.jsp

ControlEncuesta.class

Encuesta.class

D. de Componentes para Llenar Encuesta

BD

Page 60: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

EJEMPLOS DE DIAGRAMA DE COMPONENTES

Horario

Plan

GUI

actualizar

reservar «executable»SistemaOrden

«COM»DAO

«COM»VBA

«COM»VB

«COM»stdole

Page 61: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

COMPONENTES Y DESPLIEGUE

Sólo los componentes ejecutables tienen instancias.

Se utiliza un diagrama de despliegue para ubicar instancias de componentes ejecutables.

Entre componentes existen las dependencias.

Un componente puede definir interfaces que son visibles a otros componentes.

Page 62: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

EJEMPLOS DE COMPONENTE Y DESPLIEGUE

pcGerente : Dell Pentium

WindowsNT : ServidortransObj

«executable» : PrgCliente

: Programa Transaction Server

: ThreadActualizacion

«becomes»

Page 63: UML Ing. Sonia Godoy Hortua Unified Modeling Language (Lenguaje de Modelamiento unificado)

INGENIERIA DE SOFTWARE

CONCLUSIONES

El UML es un lenguaje reconocido mundialmente por la industria de construcción de software.

El Modelamiento visual es una de las técnicas probadas que brinda mejores resultados.

Todos los sistemas tienen una estructura estática y comportamiento dinámico.

Cabe recalcar que en UML no es necesario que aparezcan todos los Diagramas.