SlideShare una empresa de Scribd logo
Lenguaje de Modelamiento
Unificado
Los Requerimientos
• Un requerimiento es una condición o capacidad
a la que el sistema (siendo construido) debe
conformar [ Rational Software Corp.].
• Un requerimiento de software puede ser
definido como :
– Una capacidad del software necesaria por el usuario
para resolver un problema o alcanzar un objetivo.
– Una capacidad del software que debe ser reunida o
poseída por un sistema o componente del sistema para
satisfacer un contrato, especificación, estándar, u otra
documentación formal.
Los Problemas de la Administración de
Requerimientos
• No son siempre obvios y tienen muchas fuentes.
• No son siempre fáciles de expresar en palabras.
• Hay muchos tipos diferentes a distintos niveles de
detalle.
• El número puede llegar a ser inmanejable.
• Están relacionados a otros en una variedad de formas.
• Hay muchos interesados y partes responsables.
• Cambian.
• Pueden ser sensibles al tiempo.
UML
• Un lenguaje estándar mundial para modelar el
software a construir similar al que se utiliza para
elaborar los planos de construcción de una
vivienda.
• Unifica muchos estándares de diagramación
conformando un metalenguaje.
• Facilita el modelado de todo tipo de sistema.
Los Tres
Amigos
En 1994 Booch, Rumbaugh y
Jacobson dieron forma a la
primera versión del UML y en
1997 fue aceptado por la
OMG, fecha en la que fue
lanzada la versión v1.1 del
UML. Desde entonces, UML
atravesó varias revisiones y
refinamientos hasta llegar a la
versión actual: UML 2.0.
Ivar
Jacobson
James
Rumbaugh
Grady
Booch
Tipos de Diagramas - UML
• Diagramas de Estructura:
• Diagrama de Clases,
• Diagrama de Objetos,
• Diagrama de Componentes,
• Diagrama de Estructura Compuesta,
• Diagrama de Paquetes, y
• Diagrama de Despliegue.
• Diagramas de Comportamiento:
• Diagrama de Casos de Uso,
• Diagrama de Actividad,
• Diagrama de Transición de Estados, y
• Diagramas de Interacción:
• Diagrama de Secuencia,
• Diagrama de Comunicación,
• Diagrama de Temporización, y
• Diagrama General de Interacción.
Diagrama Descripción Prioridad
Diagrama de Clases
Muestra una colección de elementos de modelado declarativo
(estáticos), tales como clases, tipos y sus contenidos y relaciones.
Alta
Diagrama de
Componentes
Representa los componentes que componen una aplicación,
sistema o empresa. Los componentes, sus relaciones,
interacciones y sus interfaces públicas.
Media
Diagrama de Estructura
Compuesta
Representa la estructura interna de un clasificador (tal como una
clase, un componente o un caso de uso), incluyendo los puntos de
interacción de clasificador con otras partes del sistema.
Baja
Diagrama de Despliegue
Físico
Un diagrama de despliegue físico muestra cómo y dónde se
desplegará el sistema. Las máquinas físicas y los procesadores se
representan como nodos y la construcción interna puede ser
representada por nodos o artefactos embebidos. Como los
artefactos se ubican en los nodos para modelar el despliegue del
sistema, la ubicación es guiada por el uso de las especificaciones
de despliegue.
Media
Diagrama de Objetos
Un diagrama que presenta los objetos y sus relaciones en un
punto del tiempo. Un diagrama de objetos se puede considerar
como un caso especial de un diagrama de clases o un diagrama de
comunicaciones.
Baja
Diagrama de Paquetes
Un diagrama que presenta cómo se organizan los elementos de
modelado en paquetes y las dependencias entre ellos, incluyendo
importaciones y extensiones de paquetes.
Baja
Diagrama Descripción Prioridad
Diagrama de Casos de
Uso
Un diagrama que muestra las relaciones entre los actores y el sujeto
(sistema), y los casos de uso.
Media
Diagrama de
Actividades
Representa los procesos de negocios de alto nivel, incluidos el flujo de
datos. También puede utilizarse para modelar lógica compleja y/o
paralela dentro de un sistema.
Alta
Diagrama de
Máquinas de Estado
Un diagrama de Máquina de Estados ilustra cómo un elemento, muchas
veces una clase, se puede mover entre estados que clasifican su
comportamiento, de acuerdo con disparadores de transiciones, guardias
de restricciones y otros aspectos de los diagramas de Máquinas de
Estados, que representan y explican el movimiento y el comportamiento.
Media
Diagrama Descripción Prioridad
Diagrama de
Comunicaciones
(anteriormente: Diagrama
de colaboraciones)
Es un diagrama que enfoca la interacción entre líneas de vida, donde es
central la arquitectura de la estructura interna y cómo ella se corresponde
con el pasaje de mensajes. La secuencia de los mensajes se da a través de
un esquema de numerado de la secuencia.
Baja
Diagrama General de
Interacción
Este Diagrama se enfoca en la revisión del flujo de control, donde los
nodos son Interacciones u ocurrencias de Interacciones. Las Líneas de
Vida los Mensajes no aparecen en este nivel de revisión
Baja
Diagrama de Secuencias
Un diagrama que representa una interacción, poniendo el foco en la
secuencia de los mensajes que se intercambian, junto con sus
correspondientes ocurrencias de eventos en las Líneas de Vida.
Alta
Diagrama de
Temporización
El propósito primario del diagrama de tiempos es mostrar los cambios en
el estado o la condición de una línea de vida (representando una Instancia
de un Clasificador o un Rol de un clasificador) a lo largo del tiempo lineal.
El uso más común es mostrar el cambio de estado de un objeto a lo largo
del tiempo, en respuesta a los eventos o estímulos aceptados. Los
eventos que se reciben se anotan, a medida que muestran cuándo se
desea mostrar el evento que causa el cambio en la condición o en el
estado.
Baja
Teoría de Objetos
Analista con enfoque
centrado en los datos
Analista con enfoque
centrado en los objetos
¿ Cuál es su:
- marca
- kilometraje
- nro placa
- color
- modelo
¿ Cuál es su:
- marca
- kilometraje
- nro placa
- color
- modelo
¿ Qué hace:
• enciende motor
• acelera
• frena
• apaga motor
• carga combustible
• enciende luces
• Actualiza kilometraje
Objeto
En que
procesos se
utilizan ?
Definición de Objeto
• Todo aquello a lo que podemos reconocerle una identidad, un estado
y un comportamiento.
• Es una colección de elementos de datos junto con las funciones o
métodos asociados para operar sobre ellos y para comunicarse con
otros objetos.
Identidad
• Es la propiedad que diferencia un objeto de otro similar. En esencia la
identidad de un objeto caracteriza su propia existencia.
• La identidad hace posible distinguir cualquier objeto sin ambigüedad
e independientemente de su estado.
• Esto permite, entre otras cosas, la diferenciación de dos objetos que
tengan atributos idénticos.
• Cada objeto tiene una identidad única, incluso si
tiene las mismas características que otros y se
encuentra en el mismo estado.
Identidad
Estado de un objeto
• Cada uno los objetos de una clase tendrá generalmente un estado
particular propio.
• El estado esta relacionado con los valores de algunos de los atributos
característicos de un objeto.
• Para una botella, su contenido, que establece que una botella pueda
estar llena, medio llena o vacía
• Con algunas operaciones comunes que comparte con otros objetos:
• como <<llenar>>, <<vaciar>>, <<destapar>>), y
• Tiene además otros atributos no relacionados con el estado.
• como el color y modelo de una botella
Estado de un Objeto
Parado Caminando Sentado
• Un objeto se encuentra en un determinado
momento en un estado específico como
consecuencia de algún evento.
Párate ! Camina ! Siéntate !
Comportamiento
• Los datos describen la abstracción de las características
individuales que poseen todos los objetos.
• Las operaciones cambian el objeto (su comportamiento) de
alguna forma, es decir, cambian valores de uno o más atributos
contenidos en el objeto. Aunque existen gran número de
operaciones que se pueden realizar sobre un objeto,
generalmente se dividen en tres grandes grupos:
• Operaciones que manipulan los datos de alguna forma específica
(añadir, borrar, cambiar formato, …)
• Operaciones que realizan un cálculo o proceso
• Operaciones que comprueban un objeto frente a la ocurrencia de
algún evento de control.
Objetos
Objeto Identidad Estados Comportamiento
Venta Nro 2345601 Emitida
Pagada
Anulada
Crear
Modificar
Añadir producto
Pagar
Anular
Alumno Cod 1998234 No matriculado
Matriculado
Retirado
Egresado
Matricula
Retiro
Egreso
Cita medica Nro 234516 Emitida
Pagada
Atendida
Suspendida
Crear
Pagar
Atender
Suspender
Contribuyente RUC 201345678965 Habido
No habido
Crear
Sancionar
Dar baja
Clasificar
Estructura interna de un Objeto
• Atributos (datos o valores)
• Operaciones (métodos o servicios)
• Los atributos describen el estado del objeto. Un atributo consta de dos
partes: un nombre de atributo y un valor de atributo.
• Los métodos describen el comportamiento asociado a un objeto. Representan
las acciones que pueden realizarse por o sobre un objeto.
Características de los Objetos
• Se agrupan en tipos llamados clases.
• Tienen datos internos que definen su estado actual.
• Soportan la ocultación de datos.
• Pueden heredar propiedades de otros objetos.
• Pueden comunicarse con otros objetos pasando
mensajes.
• Tienen métodos que definen su comportamiento.
• Los Objetos en un Sistema trabajan en conjunto,
esto se logra por intermedio de mensajes entre
ellos.
• Un Objeto envía a otro un mensaje para
realizar una operación y el Objeto receptor
recibe dicho mensaje para su ejecución.
Ejemplo: El Televisor y su Control Remoto.
Mensajes
Métodos y mensajes
• Los procedimientos y funciones, denominados métodos, residen en el objeto y
determinan cómo actúan los objetos cuando reciben un mensaje.
• Un mensaje es la acción que hace un objeto.
• Un método es el procedimiento o función que se invoca para actuar sobre un
objeto y especifica cómo se ejecuta un mensaje.
• Los mensajes que recibe o envía un objeto son los únicos conductos que asocian
el objeto con el mundo externo.
• Los datos de un objeto están disponibles sólo para ser manipulados por los
métodos del propio objeto.
Clase y Objeto
• Un objeto es un simple elemento, no importa lo
complejo que pueda ser.
• Una clase describe una familia de elementos
similares, es un esquema o plantilla que se utiliza
para definir o crear objetos.
Representación gráfica de una Clase
(Notación de Ege)
• Un objeto se dibuja como una
caja rectangular. La caja se
etiqueta con el nombre del
objeto y representa el límite o
frontera entre el interior y el
exterior de un objeto.
• Los campos y funciones
miembro en el interior de la caja
están ocultos al exterior
(encapsulados).
NOMBRE CLASE
ATRIBUTOS
(DATOS MIEMBRO)
OPERACIONES
(FUNCIONES MIEMBRO)
Clases
• Una clase es la descripción
de un conjunto de objetos;
consta de datos y métodos
que resumen
características comunes de
un conjunto de objetos.
• Cada vez que se construye
un objeto a partir de una
clase estamos creando lo
que se llama una instancia
de esa clase.
Ejec105 : Maleta
Viaj325: Maleta
Est1235: Maleta
Maleta
Denominacion
Color
Precio
Capacidad
Abrir ( )
Cerrar ( )
Calcular peso ( )
Cobr2154 : Maleta
ATRIBUTOS
OPERACIONES
Operaciones
• Son funciones o
transformaciones que se
aplican a todos los objetos de
una clase particular.
• La operación puede ser una
acción ejecutada por el objeto
o sobre el objeto.
• No se debe utilizar el mismo
nombre en operaciones que
tengan un significado
totalmente diferente.
nombre
edad
PERSONA
trabajar ( )
votar( )
nombre
direccion
UNIVERSIDAD
enseñar ( )
graduar( )
ancho
largo
/area
RECTANGULO
dibujar ( )
borrar( )
calcular_area( )
Propiedades de un objeto
• Abstracción y clasificación
• Encapsulamiento
• Herencia
• Agregación y composición
• Poliformismo o polimorfismo
Abstracción
• Es una de las vías fundamentales por la que los humanos combatimos
la complejidad.
• La abstracción surge del reconocimiento de las similitudes entre
ciertos objetos, situaciones o procesos del mundo real, y en la
decisión de concentrarse en esas similitudes e ignorar por el
momento las diferencias.
La abstracción centra su atención en las características
esenciales de un objeto en relación a la perspectiva del
observador
Encapsulamiento
• La encapsulación es una característica
que permite el ocultamiento de la
información como un concepto
avanzado de la teoría de objetos.
• Es la propiedad que permite incluir en
una sola clase los datos y las
operaciones que operan sobre esa
información.
• La encapsulación de información y
operaciones es muy importante. Los
métodos de un objeto sólo pueden
manipular directamente datos
asociados con el objeto.
Datos
privados
Funciones
privadas
Funciones
públicas
Datos
públicos
Objeto
El encapsulamiento oculta los detalles de la
implementación de un Objeto
• Es el ocultamiento de la Funcionalidad interna
de las características y algunas operaciones, a
otros objetos y al mundo exterior.
Encapsulamiento
– ( - ) Privado: es el más
fuerte. Esta parte es
visible sólo para los
“friends” en terminología
C++.
– ( # ) Protegido: están
visibles sólo para los
friends y para las clases
derivadas de la original.
– ( + ) Público: son visibles
a todas las clases (se
pierde la encapsulación).
Encapsulamiento
Reglas de visibilidad
+ Atributo público : int
# Atributo protegido : int
- Atributo privado : int
+ "Operación pública"
# "Operación protegida"
- "Operación privada"
Herencia
• La herencia es la propiedad que
permite a los objetos ser
construidos a partir de las
características de otros objetos.
• El objetivo de la herencia es la
reutilización del código
previamente desarrollado, siendo
esta la real potencia de la POO.
• La herencia supone una clase base y
una jerarquía de clases que
contienen las clases derivadas de la
clase base.
CRIATURA
PEZ
MAMIFERO
AVE
PERSONA
HOMBRE MUJER
Jerarquía
y Herencia
tipo
peso
habitat
periodo_gestacion
nombre
fecha_nacimiento
origen
esposa esposo
crear( )
esperanza_vida( )
Tipos de Herencia
• Herencia simple (jerárquica)
• La simple es aquel tipo de herencia en la cual un objeto puede tener sólo un
ascendiente, o dicho de otro modo, una subclase puede heredar datos y
métodos de una única clase así como añadir o quitar comportamiento de la
clase base.
• Herencia múltiple (en malla)
• La múltiple es aquel tipo de herencia en la cual una clase puede tener más de
un ascendiente inmediato, o lo que es igual, adquirir datos y métodos de más
de una clase.
FIGURA
CIRCULO CUADRILATERO TRIANGULO
RECTANGULO
TRAPECIO
PERSONA
PROFESOR INVESTIGADOR
PROF_UNIVERSITARIO
Herencia Simple Herencia Múltiple
Agregación y composición
• A los objetos que pueden contener otros
objetos se conocen como objetos compuestos.
• En la mayoría de los sistemas los objetos no
“contienen” en el sentido estricto a otros
objetos, sino que contienen referencias a otros
objetos.
• Un objeto compuesto consta de una colección
de dos o más objetos componentes, los cuales
tienen una relación del tipo “parte-de” con el
objeto compuesto.
• Cuando un objeto compuesto se instancia para
producir una instancia del objeto, todos sus
objetos componentes se deben instanciar al
mismo tiempo.
nro_cilindros
potencia
cilindrada
valvulas_cilindro
MOTOR
tipo
proveedor
nivel_liquido
SISTEMA
FRENOS
tipo_embrague
caja_cambio
SISTEMA
TRANSMISION
tipo
color
CHASIS
codAuto
nroPlaca
marca
color
año
kilometraje
AUTO
tipo
proveedor
siLuces
nivelSonido
SISTEMA
ALARMA
Todo
Parte
Parte
Parte
Un ejemplo de un objeto compuesto es la clase auto. Un auto consta de diversas partes
tales como un motor, un sistema de frenos, un sistema de transmisión, un sistema de
alarma y un chasis. Estas partes constituyen los objetos componentes del objeto auto de
modo que cada uno de estos objetos componentes pueden tener atributos y métodos que
los caracterizan.
Atributos
nro_autos_disponibles
nro_autos_vendidos
Atributos compartidos
concesionario
Atributos de instancia
modelo
color
precio
año
Objetos componentes
motor
sistema_frenos
sistema_transmision
chasis
AUTO
nro_cilindros
potencia
cilindrada
valvulas_cilindro
MOTOR
tipo
proveedor
nivel_liquido
SISTEMA
FRENOS
tipo_embrague
caja_cambio
SISTEMA
TRANSMISION
tipo
color
CHASIS
Estructura de
objetos
compuestos
var 1: obj1
var 2: obj2
obj1
obj2
Objeto
compuesto
var 1: cliente
var 2: articulo
cliente
articulo
Orden
compra
var 1: cliente
var 2: articulo
articulo
Orden
compra
Agregación
Polimorfismo
• Propiedad por la cual un mismo objeto u objetos de una
misma clase u objetos de clases diferentes, responden de
distinta manera a un mismo mensaje.
• La utilización de operadores o funciones de formas diversas,
dependiendo de cómo estén operando se denomina
polimorfismo.
• La gran ventaja ofrecida por el polimorfismo y la sobrecarga es
permitir que los nuevos tipos de datos sean manipulados de
forma similar que los tipos de datos predefinidos, logrando así
ampliar el lenguaje de programación.
Polimorfismo
• Es la propiedad que tienen los objetos de permitir invocar
genéricamente un comportamiento (método) cuya
implementación será delegada al objeto correspondiente
recién en tiempo de ejecución.
Transporte
Avanzar
Frenar Transporte
Avanzar
Frenar
Transporte
Avanzar
Frenar
Transporte
Avanzar
Frenar
Diagrama de Secuencia
Diagrama de secuencia
• Es una representación que muestra, en un
determinado escenario, los eventos generados
por actores externos al sistema y su orden
secuencial.
• En un primer momento al sistema se le trata
como caja negra; los diagramas se centran en
los eventos que fluyen de los actores al sistema.
– En el diagrama el tiempo avanza hacia abajo, y el
ordenamiento de los eventos debe seguir el orden
indicado en el caso de uso.
– Los eventos del sistema pueden incluir parámetros.
Eventos, mensajes y operaciones
• El evento de un sistema es un hecho externo de
entrada que un actor produce sobre un sistema.
• La operación de un sistema son las acciones
que éste lleva acabo a través de las clases en
respuesta al evento externo y ejecutadas por
una secuencia de mensajes.
• El nombre del evento y de la operación son
idénticos; la distinción reside en que el evento
es el estímulo nombrado y la operación es la
respuesta (lo mismo sucede con los mensajes y
los métodos).
Mensajes
• Los mensajes se muestran como flechas. Los
mensajes pueden ser completos, perdidos o
encontrados; síncronos o asíncronos; llamadas o
señales.
• En el siguiente diagrama:
– el primer mensaje es un mensaje síncrono (denotado
por una punta de flecha oscura), completo con un
mensaje de retorno implícito;
– el segundo mensaje es asíncrono (denotado por una
punta de flecha en línea), y
– el tercero es un mensaje de retorno asíncrono
(denotado por una línea punteada).
SD mensajes
mensaje(retorno)
mensaje(parametros)
retorne:=mensaje(parametros)
Origen Destino
mensaje(retorno)
mensaje(parametros)
retorne:=mensaje(parametros)
Mensaje Self
• Un mensaje self puede representar una
llamada recursiva de una operación, o un
método llamando a otro método
perteneciente al mismo objeto.
• Este se muestra cuando crea un foco de
control anidado en la ocurrencia de
ejecución de la línea de vida.
SD self
recursion
mensaje self
origen
recursion
mensaje self
Inicio y final de línea de vida
• Una línea de vida se puede crear o destruir durante la
escala de tiempo representada por un diagrama de
secuencia.
• En el último caso, la línea de vida se termina por un
símbolo de destrucción, representado como una cruz.
• En el primer caso, el símbolo al inicio de la línea de
vida se muestra en un nivel más bajo de la página que
el símbolo del objeto que causó la creación.
• El siguiente diagrama muestra un objeto que fue
creado y destruido.
SD padre e hijo
borrar
crear
Padre
Hijo
borrar
crear
Restricciones de tiempo y duración
• En forma predeterminada, un
mensaje se muestra como una
línea horizontal.
• Ya que la línea de vida representa
el pasaje de tiempo hacia abajo,
cuando se modela un sistema en
tiempo real, o incluso un proceso
de negocios en tiempo límite,
puede ser importante considerar el
tiempo que toma realizar las
acciones.
• Al configurar una restricción de
duración para un mensaje (delay),
el mensaje se mostrará como una
línea inclinada.
SD padre e hijo
borrar
crear
Padre
Hijo
borrar
crear
Diagrama de Actividad
• Son particularmente útiles para la descripción del
comportamiento
• Permite recoger o definir el orden en que se hacen o
se harán las cosas. Esto es, establece las reglas
esenciales de secuenciación ha seguir.
• Los diagramas de flujo se limitan normalmente a
procesos secuenciales; los diagramas de
actividades pueden manejar procesos paralelos.
• Ésta es la diferencia clave entre un diagrama de
actividades y un diagrama de flujo.
Diagrama de Actividad
Elementos de un Diagrama de
Actividad
• Los elementos más habituales son:
– Nodos inicio y final
– Actividades / acciones.
– Decisiones.
– Swimlanes o carriles.
• También se puede utilizar:
– Objetos.
– Barras de sincronización (Fork/Join)
• Podemos utilizar
diagramas de actividades
para:
• Definir el comportamiento
de casos de uso.
• Modelar procesos de
negocio.
• Definir el comportamiento
de un método.
• Definir estados complejos.
Usos del Diagrama de Actividad
• Esta última característica es importante para el
modelado de negocios. Los negocios con
frecuencia establecen procesos secuenciales
innecesarios.
• Una técnica como ésta, que promueve el
comportamiento paralelo, es valiosa en estas
situaciones, porque auspicia que las personas
se aparten de las secuencias innecesarias en
su comportamiento y descubran oportunidades
para hacer cosas en paralelo.
• Esto puede mejorar la eficiencia y capacidad
de respuesta de los procesos del negocio.
Diagrama de Actividad
• Los diagramas de actividad deben
mostrar qué se hace y quien lo
hace. Esto significa que el
diagrama especifica cuáles son los
roles o unidades organizacionales
responsables de cada actividad.
• Los carriles(swimlanes) son una
forma de subsanar esta
deficiencia.
• Para usar los carriles, el diagrama
de actividad se debe organizar en
zonas verticales separadas por
líneas similares a los de una
piscina. Cada zona representa la
responsabilidad de una clase o de
un rol o, el de una unidad
organizacional(departamento) en
particular.
CLIENTE VENDEDOR ALMACÉN
Swimlanes o
carriles
Diagrama de actividad para retirar dinero de cta a través de cajero automático
Buscar Bebida
Poner café en filtro Añadir agua al depósito Coger taza
Poner filtro en máquina
Encender máquina
Café en preparación
Servir café
Coger zumo
Beber
[no hay café]
[hay café]
[no zumo]
[hay zumo]
^cafetera.On
indicador de fin
Diagrama de actividad para servir y tomar bebida
Emitir billete
Vendedor Airline
Solicitar pago Reservar asiento
Confirmar
asiento reservado
Pagar pasaje
Informar alternativas
y precios
Verificar
existencia vuelo
Dar detalles vuelo
Solicitar pasaje
Seleccionar vuelo
Pasajero
Diagrama de actividad para compra un pasaje aéreo
Lenguajes unificados.pptx

Más contenido relacionado

Similar a Lenguajes unificados.pptx

Modelos de BDD y modelos de datos
Modelos de BDD y modelos de datosModelos de BDD y modelos de datos
Modelos de BDD y modelos de datos
Valmore Medina
 
Diapositiva de Estudio: EXPOSICION UML.pptx
Diapositiva de Estudio: EXPOSICION UML.pptxDiapositiva de Estudio: EXPOSICION UML.pptx
Diapositiva de Estudio: EXPOSICION UML.pptx
jorgejvc777
 
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
DELIAMARINAHERAZOTUI
 
Diagramas de clases_y_casos_de_uso
Diagramas de clases_y_casos_de_usoDiagramas de clases_y_casos_de_uso
Diagramas de clases_y_casos_de_uso
Gomez Gomez
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02luisortiz
 
Análisis y diseño de sistemas sesion 12 - diagrama de secuencia
Análisis y diseño de sistemas   sesion 12 - diagrama de secuenciaAnálisis y diseño de sistemas   sesion 12 - diagrama de secuencia
Análisis y diseño de sistemas sesion 12 - diagrama de secuencia
GianfrancoEduardoBra
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujolordXDie
 
diagrama de comportamiento
diagrama de comportamiento diagrama de comportamiento
diagrama de comportamiento
Marcelocalanicolque
 
Sistemas de información administrativos
Sistemas de información administrativosSistemas de información administrativos
Sistemas de información administrativosPaola Alvarez
 
3. desarrollo
3. desarrollo3. desarrollo
3. desarrollojaimepech
 
Paradigmas
ParadigmasParadigmas
Paradigmas
guest9d4dd8
 
Diagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdfDiagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdf
AntonioJesusGalianoS
 
Diagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdfDiagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdf
AntonioJesusGalianoS
 
Unidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptxUnidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptx
UPTValencia
 
Unidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptxUnidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptx
UPTValencia
 
Trabajo de analisis_y_diseño_de_sist_ii
Trabajo de analisis_y_diseño_de_sist_iiTrabajo de analisis_y_diseño_de_sist_ii
Trabajo de analisis_y_diseño_de_sist_iiemaytin04
 

Similar a Lenguajes unificados.pptx (20)

Modelos de BDD y modelos de datos
Modelos de BDD y modelos de datosModelos de BDD y modelos de datos
Modelos de BDD y modelos de datos
 
Diagramadeflujo 140115215731-phpapp02
Diagramadeflujo 140115215731-phpapp02Diagramadeflujo 140115215731-phpapp02
Diagramadeflujo 140115215731-phpapp02
 
Diapositiva de Estudio: EXPOSICION UML.pptx
Diapositiva de Estudio: EXPOSICION UML.pptxDiapositiva de Estudio: EXPOSICION UML.pptx
Diapositiva de Estudio: EXPOSICION UML.pptx
 
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
 
Diagramas de clases_y_casos_de_uso
Diagramas de clases_y_casos_de_usoDiagramas de clases_y_casos_de_uso
Diagramas de clases_y_casos_de_uso
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Análisis y diseño de sistemas sesion 12 - diagrama de secuencia
Análisis y diseño de sistemas   sesion 12 - diagrama de secuenciaAnálisis y diseño de sistemas   sesion 12 - diagrama de secuencia
Análisis y diseño de sistemas sesion 12 - diagrama de secuencia
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
diagrama de comportamiento
diagrama de comportamiento diagrama de comportamiento
diagrama de comportamiento
 
Sistemas de información administrativos
Sistemas de información administrativosSistemas de información administrativos
Sistemas de información administrativos
 
3. desarrollo
3. desarrollo3. desarrollo
3. desarrollo
 
Paradigmas
ParadigmasParadigmas
Paradigmas
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Diagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdfDiagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdf
 
Diagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdfDiagramas de Comportamiento UML Informatica.pdf
Diagramas de Comportamiento UML Informatica.pdf
 
Unidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptxUnidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptx
 
Unidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptxUnidad II - Diagrama de Objetos - tema 1.pptx
Unidad II - Diagrama de Objetos - tema 1.pptx
 
Uml diagramas-caso-de-uso
Uml diagramas-caso-de-usoUml diagramas-caso-de-uso
Uml diagramas-caso-de-uso
 
Trabajo de analisis_y_diseño_de_sist_ii
Trabajo de analisis_y_diseño_de_sist_iiTrabajo de analisis_y_diseño_de_sist_ii
Trabajo de analisis_y_diseño_de_sist_ii
 

Último

REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
IrapuatoCmovamos
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
floralbaortega88
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
ManuelaReina3
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Emisor Digital
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
JaimeYael
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
Emisor Digital
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
diegozuniga768
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
JC Díaz Herrera
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
JosMuoz943377
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
MelanieYuksselleCarr
 
mapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundariamapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundaria
ManuelAlbertoHeredia1
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
JC Díaz Herrera
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
SantiagoMejia99
 
contraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadascontraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadas
DieguinhoSalazar
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
MELANYANELKACRUZLEON
 

Último (15)

REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
 
mapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundariamapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundaria
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
 
contraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadascontraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadas
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
 

Lenguajes unificados.pptx

  • 1.
  • 3.
  • 4. Los Requerimientos • Un requerimiento es una condición o capacidad a la que el sistema (siendo construido) debe conformar [ Rational Software Corp.]. • Un requerimiento de software puede ser definido como : – Una capacidad del software necesaria por el usuario para resolver un problema o alcanzar un objetivo. – Una capacidad del software que debe ser reunida o poseída por un sistema o componente del sistema para satisfacer un contrato, especificación, estándar, u otra documentación formal.
  • 5. Los Problemas de la Administración de Requerimientos • No son siempre obvios y tienen muchas fuentes. • No son siempre fáciles de expresar en palabras. • Hay muchos tipos diferentes a distintos niveles de detalle. • El número puede llegar a ser inmanejable. • Están relacionados a otros en una variedad de formas. • Hay muchos interesados y partes responsables. • Cambian. • Pueden ser sensibles al tiempo.
  • 6. UML • Un lenguaje estándar mundial para modelar el software a construir similar al que se utiliza para elaborar los planos de construcción de una vivienda. • Unifica muchos estándares de diagramación conformando un metalenguaje. • Facilita el modelado de todo tipo de sistema.
  • 7.
  • 8. Los Tres Amigos En 1994 Booch, Rumbaugh y Jacobson dieron forma a la primera versión del UML y en 1997 fue aceptado por la OMG, fecha en la que fue lanzada la versión v1.1 del UML. Desde entonces, UML atravesó varias revisiones y refinamientos hasta llegar a la versión actual: UML 2.0. Ivar Jacobson James Rumbaugh Grady Booch
  • 9. Tipos de Diagramas - UML • Diagramas de Estructura: • Diagrama de Clases, • Diagrama de Objetos, • Diagrama de Componentes, • Diagrama de Estructura Compuesta, • Diagrama de Paquetes, y • Diagrama de Despliegue. • Diagramas de Comportamiento: • Diagrama de Casos de Uso, • Diagrama de Actividad, • Diagrama de Transición de Estados, y • Diagramas de Interacción: • Diagrama de Secuencia, • Diagrama de Comunicación, • Diagrama de Temporización, y • Diagrama General de Interacción.
  • 10. Diagrama Descripción Prioridad Diagrama de Clases Muestra una colección de elementos de modelado declarativo (estáticos), tales como clases, tipos y sus contenidos y relaciones. Alta Diagrama de Componentes Representa los componentes que componen una aplicación, sistema o empresa. Los componentes, sus relaciones, interacciones y sus interfaces públicas. Media Diagrama de Estructura Compuesta Representa la estructura interna de un clasificador (tal como una clase, un componente o un caso de uso), incluyendo los puntos de interacción de clasificador con otras partes del sistema. Baja Diagrama de Despliegue Físico Un diagrama de despliegue físico muestra cómo y dónde se desplegará el sistema. Las máquinas físicas y los procesadores se representan como nodos y la construcción interna puede ser representada por nodos o artefactos embebidos. Como los artefactos se ubican en los nodos para modelar el despliegue del sistema, la ubicación es guiada por el uso de las especificaciones de despliegue. Media Diagrama de Objetos Un diagrama que presenta los objetos y sus relaciones en un punto del tiempo. Un diagrama de objetos se puede considerar como un caso especial de un diagrama de clases o un diagrama de comunicaciones. Baja Diagrama de Paquetes Un diagrama que presenta cómo se organizan los elementos de modelado en paquetes y las dependencias entre ellos, incluyendo importaciones y extensiones de paquetes. Baja
  • 11. Diagrama Descripción Prioridad Diagrama de Casos de Uso Un diagrama que muestra las relaciones entre los actores y el sujeto (sistema), y los casos de uso. Media Diagrama de Actividades Representa los procesos de negocios de alto nivel, incluidos el flujo de datos. También puede utilizarse para modelar lógica compleja y/o paralela dentro de un sistema. Alta Diagrama de Máquinas de Estado Un diagrama de Máquina de Estados ilustra cómo un elemento, muchas veces una clase, se puede mover entre estados que clasifican su comportamiento, de acuerdo con disparadores de transiciones, guardias de restricciones y otros aspectos de los diagramas de Máquinas de Estados, que representan y explican el movimiento y el comportamiento. Media
  • 12. Diagrama Descripción Prioridad Diagrama de Comunicaciones (anteriormente: Diagrama de colaboraciones) Es un diagrama que enfoca la interacción entre líneas de vida, donde es central la arquitectura de la estructura interna y cómo ella se corresponde con el pasaje de mensajes. La secuencia de los mensajes se da a través de un esquema de numerado de la secuencia. Baja Diagrama General de Interacción Este Diagrama se enfoca en la revisión del flujo de control, donde los nodos son Interacciones u ocurrencias de Interacciones. Las Líneas de Vida los Mensajes no aparecen en este nivel de revisión Baja Diagrama de Secuencias Un diagrama que representa una interacción, poniendo el foco en la secuencia de los mensajes que se intercambian, junto con sus correspondientes ocurrencias de eventos en las Líneas de Vida. Alta Diagrama de Temporización El propósito primario del diagrama de tiempos es mostrar los cambios en el estado o la condición de una línea de vida (representando una Instancia de un Clasificador o un Rol de un clasificador) a lo largo del tiempo lineal. El uso más común es mostrar el cambio de estado de un objeto a lo largo del tiempo, en respuesta a los eventos o estímulos aceptados. Los eventos que se reciben se anotan, a medida que muestran cuándo se desea mostrar el evento que causa el cambio en la condición o en el estado. Baja
  • 13.
  • 15. Analista con enfoque centrado en los datos Analista con enfoque centrado en los objetos ¿ Cuál es su: - marca - kilometraje - nro placa - color - modelo ¿ Cuál es su: - marca - kilometraje - nro placa - color - modelo ¿ Qué hace: • enciende motor • acelera • frena • apaga motor • carga combustible • enciende luces • Actualiza kilometraje Objeto En que procesos se utilizan ?
  • 16. Definición de Objeto • Todo aquello a lo que podemos reconocerle una identidad, un estado y un comportamiento. • Es una colección de elementos de datos junto con las funciones o métodos asociados para operar sobre ellos y para comunicarse con otros objetos.
  • 17. Identidad • Es la propiedad que diferencia un objeto de otro similar. En esencia la identidad de un objeto caracteriza su propia existencia. • La identidad hace posible distinguir cualquier objeto sin ambigüedad e independientemente de su estado. • Esto permite, entre otras cosas, la diferenciación de dos objetos que tengan atributos idénticos.
  • 18.
  • 19. • Cada objeto tiene una identidad única, incluso si tiene las mismas características que otros y se encuentra en el mismo estado. Identidad
  • 20. Estado de un objeto • Cada uno los objetos de una clase tendrá generalmente un estado particular propio. • El estado esta relacionado con los valores de algunos de los atributos característicos de un objeto. • Para una botella, su contenido, que establece que una botella pueda estar llena, medio llena o vacía • Con algunas operaciones comunes que comparte con otros objetos: • como <<llenar>>, <<vaciar>>, <<destapar>>), y • Tiene además otros atributos no relacionados con el estado. • como el color y modelo de una botella
  • 21. Estado de un Objeto Parado Caminando Sentado • Un objeto se encuentra en un determinado momento en un estado específico como consecuencia de algún evento. Párate ! Camina ! Siéntate !
  • 22. Comportamiento • Los datos describen la abstracción de las características individuales que poseen todos los objetos. • Las operaciones cambian el objeto (su comportamiento) de alguna forma, es decir, cambian valores de uno o más atributos contenidos en el objeto. Aunque existen gran número de operaciones que se pueden realizar sobre un objeto, generalmente se dividen en tres grandes grupos: • Operaciones que manipulan los datos de alguna forma específica (añadir, borrar, cambiar formato, …) • Operaciones que realizan un cálculo o proceso • Operaciones que comprueban un objeto frente a la ocurrencia de algún evento de control.
  • 23. Objetos Objeto Identidad Estados Comportamiento Venta Nro 2345601 Emitida Pagada Anulada Crear Modificar Añadir producto Pagar Anular Alumno Cod 1998234 No matriculado Matriculado Retirado Egresado Matricula Retiro Egreso Cita medica Nro 234516 Emitida Pagada Atendida Suspendida Crear Pagar Atender Suspender Contribuyente RUC 201345678965 Habido No habido Crear Sancionar Dar baja Clasificar
  • 24. Estructura interna de un Objeto • Atributos (datos o valores) • Operaciones (métodos o servicios) • Los atributos describen el estado del objeto. Un atributo consta de dos partes: un nombre de atributo y un valor de atributo. • Los métodos describen el comportamiento asociado a un objeto. Representan las acciones que pueden realizarse por o sobre un objeto.
  • 25. Características de los Objetos • Se agrupan en tipos llamados clases. • Tienen datos internos que definen su estado actual. • Soportan la ocultación de datos. • Pueden heredar propiedades de otros objetos. • Pueden comunicarse con otros objetos pasando mensajes. • Tienen métodos que definen su comportamiento.
  • 26. • Los Objetos en un Sistema trabajan en conjunto, esto se logra por intermedio de mensajes entre ellos. • Un Objeto envía a otro un mensaje para realizar una operación y el Objeto receptor recibe dicho mensaje para su ejecución. Ejemplo: El Televisor y su Control Remoto. Mensajes
  • 27. Métodos y mensajes • Los procedimientos y funciones, denominados métodos, residen en el objeto y determinan cómo actúan los objetos cuando reciben un mensaje. • Un mensaje es la acción que hace un objeto. • Un método es el procedimiento o función que se invoca para actuar sobre un objeto y especifica cómo se ejecuta un mensaje. • Los mensajes que recibe o envía un objeto son los únicos conductos que asocian el objeto con el mundo externo. • Los datos de un objeto están disponibles sólo para ser manipulados por los métodos del propio objeto.
  • 28. Clase y Objeto • Un objeto es un simple elemento, no importa lo complejo que pueda ser. • Una clase describe una familia de elementos similares, es un esquema o plantilla que se utiliza para definir o crear objetos.
  • 29. Representación gráfica de una Clase (Notación de Ege) • Un objeto se dibuja como una caja rectangular. La caja se etiqueta con el nombre del objeto y representa el límite o frontera entre el interior y el exterior de un objeto. • Los campos y funciones miembro en el interior de la caja están ocultos al exterior (encapsulados). NOMBRE CLASE ATRIBUTOS (DATOS MIEMBRO) OPERACIONES (FUNCIONES MIEMBRO)
  • 30. Clases • Una clase es la descripción de un conjunto de objetos; consta de datos y métodos que resumen características comunes de un conjunto de objetos. • Cada vez que se construye un objeto a partir de una clase estamos creando lo que se llama una instancia de esa clase. Ejec105 : Maleta Viaj325: Maleta Est1235: Maleta Maleta Denominacion Color Precio Capacidad Abrir ( ) Cerrar ( ) Calcular peso ( ) Cobr2154 : Maleta ATRIBUTOS OPERACIONES
  • 31. Operaciones • Son funciones o transformaciones que se aplican a todos los objetos de una clase particular. • La operación puede ser una acción ejecutada por el objeto o sobre el objeto. • No se debe utilizar el mismo nombre en operaciones que tengan un significado totalmente diferente. nombre edad PERSONA trabajar ( ) votar( ) nombre direccion UNIVERSIDAD enseñar ( ) graduar( ) ancho largo /area RECTANGULO dibujar ( ) borrar( ) calcular_area( )
  • 32. Propiedades de un objeto • Abstracción y clasificación • Encapsulamiento • Herencia • Agregación y composición • Poliformismo o polimorfismo
  • 33. Abstracción • Es una de las vías fundamentales por la que los humanos combatimos la complejidad. • La abstracción surge del reconocimiento de las similitudes entre ciertos objetos, situaciones o procesos del mundo real, y en la decisión de concentrarse en esas similitudes e ignorar por el momento las diferencias.
  • 34. La abstracción centra su atención en las características esenciales de un objeto en relación a la perspectiva del observador
  • 35. Encapsulamiento • La encapsulación es una característica que permite el ocultamiento de la información como un concepto avanzado de la teoría de objetos. • Es la propiedad que permite incluir en una sola clase los datos y las operaciones que operan sobre esa información. • La encapsulación de información y operaciones es muy importante. Los métodos de un objeto sólo pueden manipular directamente datos asociados con el objeto. Datos privados Funciones privadas Funciones públicas Datos públicos Objeto
  • 36. El encapsulamiento oculta los detalles de la implementación de un Objeto
  • 37. • Es el ocultamiento de la Funcionalidad interna de las características y algunas operaciones, a otros objetos y al mundo exterior. Encapsulamiento
  • 38. – ( - ) Privado: es el más fuerte. Esta parte es visible sólo para los “friends” en terminología C++. – ( # ) Protegido: están visibles sólo para los friends y para las clases derivadas de la original. – ( + ) Público: son visibles a todas las clases (se pierde la encapsulación). Encapsulamiento Reglas de visibilidad + Atributo público : int # Atributo protegido : int - Atributo privado : int + "Operación pública" # "Operación protegida" - "Operación privada"
  • 39. Herencia • La herencia es la propiedad que permite a los objetos ser construidos a partir de las características de otros objetos. • El objetivo de la herencia es la reutilización del código previamente desarrollado, siendo esta la real potencia de la POO. • La herencia supone una clase base y una jerarquía de clases que contienen las clases derivadas de la clase base.
  • 41. Tipos de Herencia • Herencia simple (jerárquica) • La simple es aquel tipo de herencia en la cual un objeto puede tener sólo un ascendiente, o dicho de otro modo, una subclase puede heredar datos y métodos de una única clase así como añadir o quitar comportamiento de la clase base. • Herencia múltiple (en malla) • La múltiple es aquel tipo de herencia en la cual una clase puede tener más de un ascendiente inmediato, o lo que es igual, adquirir datos y métodos de más de una clase.
  • 42. FIGURA CIRCULO CUADRILATERO TRIANGULO RECTANGULO TRAPECIO PERSONA PROFESOR INVESTIGADOR PROF_UNIVERSITARIO Herencia Simple Herencia Múltiple
  • 43. Agregación y composición • A los objetos que pueden contener otros objetos se conocen como objetos compuestos. • En la mayoría de los sistemas los objetos no “contienen” en el sentido estricto a otros objetos, sino que contienen referencias a otros objetos. • Un objeto compuesto consta de una colección de dos o más objetos componentes, los cuales tienen una relación del tipo “parte-de” con el objeto compuesto. • Cuando un objeto compuesto se instancia para producir una instancia del objeto, todos sus objetos componentes se deben instanciar al mismo tiempo.
  • 45. Un ejemplo de un objeto compuesto es la clase auto. Un auto consta de diversas partes tales como un motor, un sistema de frenos, un sistema de transmisión, un sistema de alarma y un chasis. Estas partes constituyen los objetos componentes del objeto auto de modo que cada uno de estos objetos componentes pueden tener atributos y métodos que los caracterizan. Atributos nro_autos_disponibles nro_autos_vendidos Atributos compartidos concesionario Atributos de instancia modelo color precio año Objetos componentes motor sistema_frenos sistema_transmision chasis AUTO nro_cilindros potencia cilindrada valvulas_cilindro MOTOR tipo proveedor nivel_liquido SISTEMA FRENOS tipo_embrague caja_cambio SISTEMA TRANSMISION tipo color CHASIS
  • 46. Estructura de objetos compuestos var 1: obj1 var 2: obj2 obj1 obj2 Objeto compuesto var 1: cliente var 2: articulo cliente articulo Orden compra var 1: cliente var 2: articulo articulo Orden compra
  • 48. Polimorfismo • Propiedad por la cual un mismo objeto u objetos de una misma clase u objetos de clases diferentes, responden de distinta manera a un mismo mensaje. • La utilización de operadores o funciones de formas diversas, dependiendo de cómo estén operando se denomina polimorfismo. • La gran ventaja ofrecida por el polimorfismo y la sobrecarga es permitir que los nuevos tipos de datos sean manipulados de forma similar que los tipos de datos predefinidos, logrando así ampliar el lenguaje de programación.
  • 49. Polimorfismo • Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución. Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar
  • 51. Diagrama de secuencia • Es una representación que muestra, en un determinado escenario, los eventos generados por actores externos al sistema y su orden secuencial. • En un primer momento al sistema se le trata como caja negra; los diagramas se centran en los eventos que fluyen de los actores al sistema. – En el diagrama el tiempo avanza hacia abajo, y el ordenamiento de los eventos debe seguir el orden indicado en el caso de uso. – Los eventos del sistema pueden incluir parámetros.
  • 52. Eventos, mensajes y operaciones • El evento de un sistema es un hecho externo de entrada que un actor produce sobre un sistema. • La operación de un sistema son las acciones que éste lleva acabo a través de las clases en respuesta al evento externo y ejecutadas por una secuencia de mensajes. • El nombre del evento y de la operación son idénticos; la distinción reside en que el evento es el estímulo nombrado y la operación es la respuesta (lo mismo sucede con los mensajes y los métodos).
  • 53. Mensajes • Los mensajes se muestran como flechas. Los mensajes pueden ser completos, perdidos o encontrados; síncronos o asíncronos; llamadas o señales. • En el siguiente diagrama: – el primer mensaje es un mensaje síncrono (denotado por una punta de flecha oscura), completo con un mensaje de retorno implícito; – el segundo mensaje es asíncrono (denotado por una punta de flecha en línea), y – el tercero es un mensaje de retorno asíncrono (denotado por una línea punteada).
  • 55. Mensaje Self • Un mensaje self puede representar una llamada recursiva de una operación, o un método llamando a otro método perteneciente al mismo objeto. • Este se muestra cuando crea un foco de control anidado en la ocurrencia de ejecución de la línea de vida.
  • 57. Inicio y final de línea de vida • Una línea de vida se puede crear o destruir durante la escala de tiempo representada por un diagrama de secuencia. • En el último caso, la línea de vida se termina por un símbolo de destrucción, representado como una cruz. • En el primer caso, el símbolo al inicio de la línea de vida se muestra en un nivel más bajo de la página que el símbolo del objeto que causó la creación. • El siguiente diagrama muestra un objeto que fue creado y destruido.
  • 58. SD padre e hijo borrar crear Padre Hijo borrar crear
  • 59. Restricciones de tiempo y duración • En forma predeterminada, un mensaje se muestra como una línea horizontal. • Ya que la línea de vida representa el pasaje de tiempo hacia abajo, cuando se modela un sistema en tiempo real, o incluso un proceso de negocios en tiempo límite, puede ser importante considerar el tiempo que toma realizar las acciones. • Al configurar una restricción de duración para un mensaje (delay), el mensaje se mostrará como una línea inclinada. SD padre e hijo borrar crear Padre Hijo borrar crear
  • 60.
  • 62. • Son particularmente útiles para la descripción del comportamiento • Permite recoger o definir el orden en que se hacen o se harán las cosas. Esto es, establece las reglas esenciales de secuenciación ha seguir. • Los diagramas de flujo se limitan normalmente a procesos secuenciales; los diagramas de actividades pueden manejar procesos paralelos. • Ésta es la diferencia clave entre un diagrama de actividades y un diagrama de flujo. Diagrama de Actividad
  • 63. Elementos de un Diagrama de Actividad • Los elementos más habituales son: – Nodos inicio y final – Actividades / acciones. – Decisiones. – Swimlanes o carriles. • También se puede utilizar: – Objetos. – Barras de sincronización (Fork/Join)
  • 64. • Podemos utilizar diagramas de actividades para: • Definir el comportamiento de casos de uso. • Modelar procesos de negocio. • Definir el comportamiento de un método. • Definir estados complejos. Usos del Diagrama de Actividad
  • 65.
  • 66. • Esta última característica es importante para el modelado de negocios. Los negocios con frecuencia establecen procesos secuenciales innecesarios. • Una técnica como ésta, que promueve el comportamiento paralelo, es valiosa en estas situaciones, porque auspicia que las personas se aparten de las secuencias innecesarias en su comportamiento y descubran oportunidades para hacer cosas en paralelo. • Esto puede mejorar la eficiencia y capacidad de respuesta de los procesos del negocio. Diagrama de Actividad
  • 67. • Los diagramas de actividad deben mostrar qué se hace y quien lo hace. Esto significa que el diagrama especifica cuáles son los roles o unidades organizacionales responsables de cada actividad. • Los carriles(swimlanes) son una forma de subsanar esta deficiencia. • Para usar los carriles, el diagrama de actividad se debe organizar en zonas verticales separadas por líneas similares a los de una piscina. Cada zona representa la responsabilidad de una clase o de un rol o, el de una unidad organizacional(departamento) en particular. CLIENTE VENDEDOR ALMACÉN Swimlanes o carriles
  • 68. Diagrama de actividad para retirar dinero de cta a través de cajero automático
  • 69. Buscar Bebida Poner café en filtro Añadir agua al depósito Coger taza Poner filtro en máquina Encender máquina Café en preparación Servir café Coger zumo Beber [no hay café] [hay café] [no zumo] [hay zumo] ^cafetera.On indicador de fin Diagrama de actividad para servir y tomar bebida
  • 70. Emitir billete Vendedor Airline Solicitar pago Reservar asiento Confirmar asiento reservado Pagar pasaje Informar alternativas y precios Verificar existencia vuelo Dar detalles vuelo Solicitar pasaje Seleccionar vuelo Pasajero Diagrama de actividad para compra un pasaje aéreo