Beruflich Dokumente
Kultur Dokumente
REALIZADO POR:
PRESENTADO A:
INGENIERIA DE SISTEMAS
UNIVERSIDADDEL TOLIMA
2011
Objetivos
1. El UML
2. Historia
3. Razones de su importancia
4. Diagramas de Casos de Uso.
5. Diagramas de clases.
5.1 Abstracción de Datos
5.2 Polimorfismo
5.3 herencia
.
CLASES
COMPONENTE
S
OBJETOS
ESTRUCTURA
ESTRUCTURA
COMPUESTA
DESPLIEGUE
PAQUETES
DIAGRAMA
ACTIVIDADES SECUENCIA
CASOS DE USO
COMPORTAMIENTO GLOBAL DE
MAQUINA DE INTERACCION
ESTADO
COMUNICACION
INTERACCION
TIEMPOS
DIAGRMAS UML
UML cuenta con varios tipos de diagramas, los cuales muestran diferentes
aspectos de las entidades representadas
Diagramas de Estructura
Definiciones
Debido a que estos son más parecidos a los diagramas de casos de usos estos
son utilizados para modelar la vista estática y dinámica de un sistema. Muestra
la organización y las dependencias entre un conjunto de componentes. No es
necesario que un diagrama incluya todos los componentes del sistema,
normalmente se realizan por partes. Cada diagrama describe un apartado del
sistema.
Uno de los usos principales es que puede servir para ver qué componentes
pueden compartirse entre sistemas o entre diferentes partes de un sistema.
Parte
Una parte representa un rol jugado en tiempo de ejecución por una instancia de
una clase o por una colección de instancias. La parte puede nombrar
solamente un rol, una superclase abstracta, o puede nombrar una clase
concreta específica. La parte puede incluir un factor de multiplicidad
(cardinalidad), tal como el [0..*] mostrado para Viewer en el diagrama.
Puerta
Una puerta es un punto de interacción que puede ser usado para conectar
clasificadores estructurados con sus partes y con el ambiente. Las puertas
pueden opcionalmente especificar los servicios que proveen y los servicios que
requieren de otras partes del sistema. En el diagrama, cada uno de los
cuadrados pequeños es una puerta. Cada puerta tiene un tipo y esta etiquetado
con un nombre, tal como "var", "indVar1", or "view" en el diagrama. Las puertas
pueden contener un factor de multiplicidad, por ejemplo [3].
Conector
Colaboración
Una colaboración es generalmente más abstracta que un clasificador
estructurado. Ésta es mostrada como un óvalo sin relleno conteniendo los roles
que las instancias pueden jugar en la colaboración.
Clasificador estructurado
Los elementos usados por este tipo de diagrama son nodos (representados
como un prisma), componentes (representados como una caja rectangular con
dos protuberancias del lado izquierdo) y asociaciones.
Usos
Algunos de los usos que se les da a los diagramas de despliegue son para
modelar:
Diagramas de Comportamiento
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.
La posición o contexto del caso de uso entre otros casos de uso. Dado
que es un mecanismo de organización, un conjunto de casos de uso
coherentes, consistentes promueve una imagen fácil del comportamiento
del sistema, un entendimiento común entre el cliente/propietario/usuario
y el equipo de desarrollo.
Las tres relaciones principales entre los casos de uso son soportadas por el
estándar UML, el cual describe notación gráfica para esas relaciones.
Extensión (Extend)
Generalización
AUTORIZAR FIN
INICIO FUNCION
ENTRADA
Permite identificar bajo qué argumentos se ejecuta cada uno de los procesos y
en qué momento podrían tener una variación.
Tipos de mensajes
Los modelos de interacción pueden llegar a ser muy grandes para sistemas
complejos. Si el número de líneas de vida participantes y el número de
mensajes intercambiados excede una cierta medida, se impone “modularizar”
las interacciones y dividir en partes pequeñas, más manejables, de acuerdo a
principios universales del diseño de sistemas, que también pueden ser
visualizadas con la ayuda de un clásico diagrama de secuencias. La visión de
conjunto de toda la interacción, de manera que la Big Picture o bien el cuadro
global, puede entonces ser representada con la ayuda del diagrama global de
las interacciones, provisto para eso.
HISTORIA DE UML
RAZONES DE SU IMPORTANCIA
Mediante el fomento del uso de UML OMG pretende alcanzar los siguientes
objetivos:
ABSTRACTO DE DATOS
POLIMOSRFISMO
Por ejemplo, podemos crear dos clases distintas: Pez y Ave que heredan de la
superclase Animal. La clase Animal tiene el método abstracto mover que se
implementa de forma distinta en cada una de las subclases (peces y aves se
mueven de forma distinta).
Otra clasificación agrupa los polimorfismo en dos tipos: Ad-Hoc que incluye a
su vez sobrecarga de operadores y coerción, Universal (inclusión o controlado
por la herencia, paramétrico o genericidad).
Ejemplo de polimorfismo
En este ejemplo haremos uso del lenguaje C++ para mostrar el polimorfismo.
También se hará uso de las funciones virtuales puras de este lenguaje, aunque
para que el polimorfismo funcione no es necesario que las funciones sean
virtuales puras, es decir, perfectamente el código de la clase "superior" (en
nuestro caso Empleado) podría tener código
#include<iostream>
using namespace std;
class figura {
public:
float base;
float altura;
public:
float captura();
virtual unsigned float perimetro()=0;
virtual unsigned float area()=0;
};
void figura::captura(){
cout<<"CALCULO DEL AREA Y PERIMETRO DE UN TRIANGULO
ISÓSCELES Y UN RECTANGULO:" <<endl;
cout<<"escribe la altura: ";
cin>>altura;
cout<<"escribe la base: ";
cin>>base;
cout<<"EL PERIMETRO ES:" << perimetro();
cout<<"EL AREA ES:" << area();
};
HERENCIA
Es la relación entre una clase general y otra clase más específica. Por ejemplo:
Si declaramos una clase párrafo derivada de una clase texto, todos los
métodos y variables asociadas con la clase texto, son automáticamente
heredados por la subclase párrafo.
Ejemplo en Java
Se declaran las clases mamíferos, gato y perro, haciendo que gato y perro
sean unos mamíferos (derivados de esta clase), y se ve como a través de ellos
se nombra al animal pero así también se accede a patas dándole el valor por
defecto para esa especie.
Clase Abstracta
Redefinición de métodos
Ventajas
Los objetos pueden ser construidos a partir de otros similares. Para ello
es necesario que exista una clase base y una jerarquía
(relacionamiento) de clases.
Las clases que heredan propiedades de otra clase pueden servir como
clase base de otras.
Estereotipos de herencia