Taller presentacion
-
Upload
yanqui0101 -
Category
Documents
-
view
521 -
download
0
Transcript of Taller presentacion
Herramientas Informaticas
UML y patrones de
diseño
Univ. Marco Aurelio Avalos Nina
Qué es UML?
El UML modela sistema mediante el uso de
objetos que forman parte de él así como, las
relaciones estáticas o dinámicas que existen
entre ellos.
UML puede ser utilizado por cualquier
metodología de análisis y diseño orientada
por objetos para expresar los diseños.
Qué es UML?
UML es un Lenguaje de Modelado Unificado
basado en una notación gráfica la cual permite:
especificar, construir, visualizar y documentar
los objetos de un sistema programado.
UML
UML es un lenguaje de modelado que sirve
para visualizar, especificar , construir
y documentar un sistema software.
UML para construir
Es posible
hacer
corresponder
con los
lenguajes de
programación
Modelo
UML
Ingeniería Directa
Ingeniería Inversa
CÓDIGO
Un proceso de desarrollo de software debe ofrecer un conjunto
de modelos que permitan expresar el producto desde cada una
de las perspectivas de interés
El código fuente del sistema es el modelo más detallado del
sistema (y además es ejecutable). Sin embargo, se requieren
otros modelos ...
Cada modelo es completo desde su punto de vista del sistema,
sin embargo, existen relaciones de trazabilidad entre los
diferentes modelos
Modelos y Diagramas
Modelos y Diagramas
Modelo: captura una vista de un sistema del mundo real. Es
una abstracción de dicho sistema, considerando un cierto
propósito.
Diagrama: representación gráfica de una colección de
elementos de modelado, a menudo dibujada como un grafo con
vértices conectados por arcos.
Vista de Diseño
Vista de Procesos
Vista de Despliegue
Vista deImplementación
Vista de los Casos de Uso
Organización de Modelos
Relación Vistas - Diagramas
Vista de casos de uso Diagramas de casos de uso
Diagramas de actividades
Vista de diseño Diagramas de clases
Diagramas de interacción
Diagramas de estados
Vista de procesos Diagramas de clase
Diagramas de interacción
Vista de implementación Diagramas de componentes
Vista de despliegue Diagrama de despliegue
Diagramas de UML
Use CaseDiagrams
Use CaseDiagrams
Diagramas de Casos de Uso
ScenarioDiagrams
ScenarioDiagrams
Diagramas deColaboración
StateDiagrams
StateDiagrams
Diagramas deComponentes
ComponentDiagramsComponent
DiagramsDiagramas deDistribución
StateDiagrams
StateDiagrams
Diagramas de Objetos
ScenarioDiagrams
ScenarioDiagrams
Diagramas deEstados
Use CaseDiagrams
Use CaseDiagrams
Diagramas deSecuencia
StateDiagrams
StateDiagrams
Diagramas deClases
Diagramas deActividad
Modelo
Mecanismos comunes en UML
Especificaciones. Es más que un lenguajegráfico (semántica detrás de la notación).
Adornos. Detalles sobre un clase, nivel de acceso de sus métodos, notas.
Divisiones Comunes: Clase/Objecto o Interfaz/Implementación.
Mecanismos comunes en UML
+Insert()
+Update()
+Delete()
#GetNumPaginas() : int
-Paginas : int
«utility»
Producto
Paginas : int
«utility»
p1 : Producto
Paginas : int
«utility»
p2 : Producto
IDataManaged
{orderById}
Definición de un producto gestionado desde base de datos
Casos de Uso
Casos de Usos
Un diagrama de Casos de Uso muestra la distintas
operaciones que se esperan de una aplicación o
sistema y cómo se relaciona con su entorno (usuario
u otras aplicaciones).
Es una herramienta esencial para la captura de
requerimientos y para la planificación y control de un
proyecto interactivo.
Casos de Usos
Los casos de Uso Se representa en el diagrama poruna elipse que denota un requerimientosolucionando por el sistema.
Cada caso de uso de uso es una operacióncompleta desarrollada por los actores y por elsistema en un diálogo.
El conjunto de casos de uso representa la totalidadde operaciones desarrolladas por el sistema.
Casos de Usos
Casos de Usos
Actor: Es un usuario del sistema, que necesita o
usa alguno de los casos de uso. Un usuario puede
jugar más de un rol. Un solo actor puede actuar en
muchos casos de uso; recíprocamente, un caso de
uso puede tener varios actores. Los actores no
necesitan ser humanos pueden ser sistemas
externos que necesitan alguna información del
sistema actual.
Casos de Usos
También se puede encontrar tres tipos de
relaciones, como son:
– Comunica (comunicates) Entre un actor y un
caso de uso, denota la participación del actor en
el caso de uso determinado.
Casos de Usos
Usa (uses): Relación entre dos casos de
uso, denota la inclusión del comportamiento
de un escenario en otro. Se utiliza cuando se
repite un caso de uso en dos o más casos
de uso separados. Frecuentemente no hay
actor asociado con el caso de uso común.
Casos de Usos
Extiende (extends): Relación entre dos
casos, denota cuando un caso de uso es
una especialización de otro. Se usa cuando
se describe una variación sobre el normal
comportamiento.
Casos de Usos
Técnicas comunes de modelado:
– Modelado del contexto del sistema (utilidad
similar a los DFD).
– Modelado de los requisitos de un sistema.
– Modelado del proceso de test y estrés del
sistema.
Diagrama de Clases
Conceptos básicos orientación a objetos
Clase
Objeto
Herencia
Interfaz
Polimorfismo de clases
Clases y atributos estáticos
Clases y atributos finales
Clases y métodos abstractos
Diagrama de clases
Un diagrama de clases o estructura estática muestrael conjunto de clases y objeto importantes queforman parte de un sistema, junto con las relacionesexistentes entre clases y objetos. Muestra de unamanera estática la estructura de información delsistema y la visibilidad que tiene cada una de lasclases, dada por sus relaciones con los demás en elmodelo.
Diagrama de clases
Usos comunes del diagrama:
– Modelado del vocabulario del sistema.
– Modelado de colaboraciones simples.
– Modelado de un esquema lógico de base dedatos.
– Modelado de un conjunto de clases de test.
Diagrama de clases
Clase: representa un conjunto de entidades quetienen en común propiedades, operaciones,relaciones y semántica.
Una clase es un constructor que define la estructuray comportamiento de una colección de objetodenominados instancia de la clase.
En UML la clase está representada por unrectángulo con tres divisiones internas, son loselementos fundamentales del diagrama.
Diagrama de clases
Atributo: Representa una propiedad de una entidad.Cada atributo de un objeto tiene un valor que pertenecea un dominio de valores determinado.
Las sintaxis de una atributo es:
– Visibilidad <nombre>: tipo = valor { propiedades}
Donde visibilidad es uno de los siguientes:
– + público.
– # protegido.
– - privado.
Diagrama de clases
Operación: El conjunto de operaciones que
describen el comportamiento de los objetos de una
clase. La sintaxis de una operación en UML es:
Visibilidad nombre (lista de parámetros): tipo que
retorna { propiedades}
Diagrama de clases
Nombre de la clase
Atributos
Métodos
Diagrama de clases
Responsabilidades: Contrato u obligación de una
clase, asignada en el momento del diseño.
Clase Producto:
– Registrar el código de la publicación.
– Mantener estructura del producto plantilla.
Diagrama de clases
Técnicas de modelado:
– Modelado del vocabulario de un sistema a partir de
las descripciones funcionales.
– Modelado de la distribución de responsabilidades en
un sistema.
– Modelado de cosas que no son software (hardware,
personas, etc).
– Modelado de tipos primitivos.
Diagrama de clases
Objeto: es una instancia de una clase. Secaracteriza por tener una identidad única, un estadodefinido por un conjunto de valores de atributos y uncomportamiento representado por sus operaciones ymétodos.
Asociación (rol, multiplicidad, calificador):representan las relaciones entre instancias de clase.Una asociación es una línea que une dos o másclases.
Diagrama de clases
Nombre: Identifica la asociación entre los
objetos, caracterizándola.
Rol: Identificado como un nombre a los finales de la
línea, describe la semántica de la relación en el sentido
indicado. Cada asociación tiene dos roles; cada rol es
una dirección en la asociación. El rol puede estar
representado en el nombre de la clase.
Diagrama de clases
Multiplicidad: Describe la cardinalidad de la
relación, es decir, cuanto objetos de esa clase
pueden participar en la relación dada. Tipos:
Diagrama de clases
Dependencia: Es una relación donde existen entidades
independientes y otras dependientes, lo que implica que
cambiar el elemento independiente puede requerir
cambios en los dependientes. Se representa con una
línea punteada direccional, indicando el sentido de la
dependencia.
Diagrama de clases
Diagrama de clases
Los tipos de asociaciones entre clases
presentes en un diagrama estático son:
– Asociación binaria.
– Asociación n-aria.
– Composición.
– Generalización.
– Refinamiento.
Diagrama de clases
Asociación Binaria: Representa una relación
sencilla entre dos clases, no muy fuerte (es
decir, no se exige dependencia existencial ni
encapsulamiento). Se indica como una línea sólida
que une dos clases.
Asociación n-aria: Es una asociación entre tres o
más clases. Se representa como un diamante del
cual salen líneas de asociación a las clases.
Diagrama de clases
Composición: Es una asociación fuerte queimplica:– Dependencia existencial. El elemento
dependiente desaparece al destruirse el que lo contiene y, si es de cardinalidad 1, es creado al mismo tiempo.
– Hay una pertenencia fuerte. Se puede decir que el objeto contenido es parte constitutiva y vital del que lo contiene.
Diagrama de clases
– Los objetivos contenidos no son compartidos, esto
es, no hacen parte del estado de otro objeto.
Se denota dibujando un rombo del lado de la
clase que contiene a la otra en la relación.
Diagrama de clases
Agregación: Relaciona una clase ya
ensamblada con una clase componente. Es
también una relación de composición menos
fuerte (no se exige dependencia existencial)
y se denota por un rombo sin rellenar en un
o de los extremos.
Diagrama de clases
Generalización: es un proceso de abstracción en elcual un conjunto de clases existentes, que tienenatributos y métodos comunes, es referido por unaclase genérica a un nivel mayor de abstracción. Larelación de generalización denota una relación deherencia entre clases. Se representa dibujando untriángulo sin rellenar en el lado de la superclase. Lasubclase hereda todos los atributos y mensajesdescritos en la superclase.
Diagrama de interacción
Un diagrama de secuencia muestra la
interacción de un conjunto de objetos de una
aplicación a través del tiempo. Esta
descripción es importante porque puede dar
detalle a los casos de uso, aclarándolos al
nivel de mensajes de los objetos existentes,
como también muestra el uso de los
mensajes de las clases diseñadas en el
contexto de una operación.
Diagrama de interacción
Elementos básicos del diagrama de
interacción:
– Objetos o actores para cada entidad.
– Enlaces entre los objetos.
– Procedimientos a invocar entre los objetos.
– Mensajes entre los objetos.
Diagrama de interacción
Diagrama de interacción
Diagramas de Colaboración:
– Es una forma de representar interacción entrelos objetos, es decir, las relaciones entre ellos yla secuencia de los mensajes de las iteracionesque están indicadas por un número A diferenciade los diagramas de secuencia, puedenmostrar el contexto de la operación (cuálesobjetos son atributos, cuáles temporales, etc) yciclos en la ejecución. Muestra como variosobjetos colaboran en un solo caso de uso.
Diagrama de interacción
Diagrama de interacción
Técnicas de modelado:
– Modelado dinámico del sistema.
– Implementación de un caso de uso en concreto para
cada diagrama.
– Modelado del flujo de control por ordenación temporal
(secuencia).
– Modelado del flujo de control por organización
(colaboración).
Diagrama de Estados
Diagrama de estados
Diagrama de Estados:
– Muestra el conjunto de estado por los cualespasa un objeto durante su vida en una aplicaciónjunto con los cambios que permiten pasar de unestado a otro. Esta representado principalmentepor los siguientes elementos: Estado.
Elemento.
Transición.
Diagrama de estados
Estado: Identifica un período de tiempo del
objeto (no instantáneo) en el cual el objeto
esta esperando alguna operación, tiene
cierto estado característico o puede recibir
cierto tipo de estímulos.
Diagrama de estados
Partes que componen un estado:
– Nombre
– Acciones de entrada y de salida.
– Transiciones internas.
– Subestados.
– Eventos diferidos.
Diagrama de estados
Eventos: Es una ocurrencia que puedecausar la transición de un estado a otro deun objeto. Esta, puede ser una:
- Condición que toma el de verdadero ofalso.
– Recepción de una señal de otro objeto enel modelo.
– Recepción de un mensaje.
– Paso de cierto período de tiempo,después de entrar al estado o de ciertahora y fecha particular.
Diagrama de estados
Transición: Es una relación entre estados de un
fuente a un destino.
Partes que componen una transición:
– Estado de origen.
– Evento de disparo.
– Condición de guarda.
– Acción.
– Estado de destino.
Diagrama de estados
Diagrama de Actividades
Diagrama de Actividades
Un diagrama de actividades es un caso especial deun diagrama de estados en el cual casi todos losestados son estados de acción (identifican queacción se ejecuta al esta en él ) y casi todas lastransiciones son enviadas al terminar la acciónejecutada en el estado anterior.
Generalmente modelan los pasos de un algoritmo ypuede dar detalle a un caso de uso, un objeto o unmensaje en un objeto.
Diagrama de Actividades
Sirven para representar transiciones internas, sin
hacer mucho énfasis en transiciones o eventos
externos.
Los elementos que conforman el diagrama son:
– Acción
– Transición.
– Objetos
Diagrama de Actividades
Estado de Acción: representa un estado
con acción interna, con lo menos una
transición que indica la culminación de la
acción (por medio de un evento implícito).
– Permite modular un paso dentro del algoritmo. Se
representan por un rectángulo con bordes
redondeados.
Diagrama de Actividades
Estado de Actividad: Estado más general
que permite su descomposición en otro
diagrama de actividades interno, de nivel
más bajo.
– Su representación, en cuanto a la notación, es la
misma que el de Acción.
Diagrama de Actividades
Casos especiales:
– Estado inicial. Representa el punto de
entrada del diagrama de actividades.
– Estado final. Su existencia depende de si
el diagrama es cíclico.
– Ítem de decisión. Representado con un
rombo, permite tomar bifurcaciones
condicionales.
Diagrama de Actividades
Transición: Es la relación entre dos estados
y se encuentran unidos por flechas;
indicando que un objeto que está en el
primer estado realizará una acción
especificada y entrará en el segundo estado
cuando un evento implícito ocurra y unas
condiciones especificas sean satisfechas.
Diagrama de Actividades
Diagrama de Componentes
Diagrama de componentes
Los diagramas de componentes describen los
elementos físicos reemplazables del sistema y
sus relaciones
Muestran las opciones de realización
incluyendo código fuente, binario y ejecutable
Diagrama de componentes
Los componentes representan todos los tipos de
elementos software que entran en la fabricación de
aplicaciones informáticas. Pueden ser simples
archivos, librerías, bibliotecas cargadas
dinámicamente, etc.
Las relaciones de dependencia se utilizan en los
diagramas de componentes para indicar que un
componente utiliza los servicios ofrecidos por otro
componente
Diagrama de componentes
Diagrama de Despliegue
Diagrama de despliegue
Los diagramas de despliegue muestran la
disposición física de los distintos nodos que
componen un sistema y el reparto de los
componentes sobre dichos nodos
La vista de despliegue representa la disposición de las instancias de componentes de ejecución en instancias de nodos conectados por enlaces de comunicación.
Un nodo es un recurso de ejecución tal como
– Dispositivos
– Procesadores
– Memoria
Los nodos se interconectan mediante soportes bidireccionales que pueden a su vez estereotiparse.
Diagrama de despliegue
Diagrama de despliegue
Los nodos se interconectan mediante
soportes bidireccionales que pueden a su
vez estereotiparse.
Esta vista permite determinar las
consecuencias de la distribución y la
asignación de recursos.
Diagrama de despliegue
Diagrama de despliegue
RUP: El Proceso Unificado de Rational
Casos de uso
Dirigido por casos de uso
– Se centra en la funcionalidad que el sistema debe poseer para
satisfacer las necesidades de un usuario (persona, sistema
externo, dispositivo) que interactua con él
– Casos de uso como el hilo conductor que orienta las actividades de
desarrollo
Casos de Uso
Análisis
Recopilar,
Clarificar y
Validar los
requerimientos
Diseño
Realizar los
casos de uso
Pruebas
Verificar que se
satisfacen los
casos de uso
<<realiza>> <<verifica>><<defineNecesidades>>
Estructura
Dinámica
Ciclo: cada ciclo una nueva versión del
producto
Fase: Etapas de un ciclo que finalizan en
un HITO
Iteración: Proceso de ingeniería sobre una
funcionalidad limitada del sistema
Estructura
Roles QUIÉN?
Actividades CÓMO?
Artefactos QUÈ?
Flujo de Trabajo CUÁNDO?
realiza
responsable dediseñador
diseño de caso
de uso
diagrama de
secuencia
Roles
Definición del comportamiento y responsabilidades
de los participantes
Propietario de una serie de artefactos
Recurso Rol Actividad Artefacto
Diseñador Diseño de Objetos DC
Analista Definición de CU DCU
Dominio
Diseñador Diseño de CU DS
Funcional
Patricia
Juan
Mónica
Pedro
1
GRACIAS!!!!!!!!!!!!!!!