Está en la página 1de 55

▪Ing.

Tulio Mamani
▪ Ing. Tulio Mamani
Orientado a Objetos
«Es una paradigma del mundo de ingeniería de software»

Permite analizar y modelar los requerimientos


Permite al ingeniero de software (analista de sistemas) diseñar
las especificaciones de los sistemas
Permite estructurar y codificar las aplicaciones sobre lenguajes de
programación orientado a objetos, por ejemplo C++, Java, Ruby,
etc

3
Objetos
Un objeto se define como «Representación de cualquier cosa del
mundo real, al que se puede asociar estados (state) y
comportamientos (behavior)»

4
Objetos

5
Objetos

• Nombre
• Color
Estados
• Raza
• Sed

• Ladrar
Compor- • Buscar
tamiento • Olfatear
• Menear la cola

6
Objetos

• Marcha actual
• Velocidad actual
Estados
• Cadena de pedaleo
actual

• Cambiar marcha
Compor-
• Cambiar velocidad
tamiento
• Cambiar cadena

7
Objetos

«¿Qué posibles estados puede tener este objeto?»

«¿Qué posibles comportamientos puede ejecutar este objeto?»

Objetivo

8
Objetos

• Encendido
• Apagado
Estados • Volumen actual
• Frecuencia actual
• Estación actual

• Encender
• Apagar
• Incrementar
volumen
Compor-
• Decrementar
tamiento volumen
• Cambiar estación
• Sintonizar estación
• Guardar memoria

9
Objetos en IT

Estado Atributos (campos)

Comportamiento Métodos y Operaciones

10
Clases

«Es un clasificador que representa, define y describe un conjunto de


objetos que comparten mismas características, restricciones y
semántica»

Radio
Encendido
Apagado
Volumen actual
Frecuencia actual
Estación actual
Marca
Modelo

encender();
apagar();
incrementarVolumen(cantidad);
decrementarVolumen(cantidad);
cambiarEstacion(estacion);
sintonizarEstacion(tipo);

11
Clases y Objetos
•Encendido = Si
•Apagado = No
•Volumen actual = Alto
radioSony •Frecuencia actual = FM
•Estación actual = 97.7
•Marca = Sony
•Modelo = Genezi

•Encendido = No
•Apagado = Si
Radio •Volumen actual =
Ninguno
radioLG •Frecuencia actual = FM
•Estación actual =
Ninguno
•Marca = LG
•Modelo = CM4520

12
Ejercicios
¿Cuáles de los siguientes ítems son clases u objetos?

General Motors Boing 777 Compañía de autos


Ingeniero Electrónico Curso universitario Ajedréz
Investigación Operativa
Juego Avión El partido de futbol
entre España e Italia el
1/jul/2012 a hora 14:45
Móvil Samsung con IMEI Tulio Mamani Empresa de
1234567 telecomunicaciones

13
Ejercicios
Identificar las posibles clases que participan en:
• Un sistema de monitoreo de salidas y rutas de líneas de transporte
publico .
• Un sistema de control de semáforos inteligente para el servicio de
transito.
• Un sistema de seguridad de casas en una urbanización.
• Un proyecto de control de personal en la universidad.
• Un sistema remoto de medición de consumo de luz y agua.

14
Abstracción
Se refiere a analizar y representar los atributos y funcionalidades
de un objeto del mundo real que son necesarios para dar solución
a un problema en particular.

Es la realidad menos detalles de tal manera que podíamos


obtener el concepto de algo en los puntos que nos interesan.

Las abstracciones más conocidas son:


➔Objetos
➔Clases
➔Superclases
➔Métodos
➔Operaciones
➔Atributos y asociaciones

15
▪ Ing. Tulio Mamani
Relaciones

«Es una relación estática y estructurada entre uno o más clases»

Es un tipo de….

Vehículo
Tipos de relaciones:
Generalización
Asociación
Agregación
Composición

17
Generalización
Medio de

Sub clase, Clase derivada, Hijo


Transporte

Herencia

Motorizado No

Especialización
Súper clase, Clase base, Padre
Generalización

Motorizado

Herencia

Automóvil Motocicleta

Herencia

Camioneta Van

18
Ejemplo

Vehiculo

Camioneta Camion

19
Asociación

«Algún tipo de relación entre objetos»


• Unidireccional – Bidireccional
• De un solo tipo – De diferentes tipos
• Entre dos objetos – Más de dos objetos

Software SO

Software
SO
1
1

20
Agregacion
Agregación
La agregación es un tipo de asociación que indica que una clase es
parte de otra clase (composición débil). Los componentes pueden ser
compartidos por varios compuestos (de la misma asociación de
agregación o de varias asociaciones de agregación distintas). La
destrucción del compuesto no conlleva la destrucción de los
componentes. Habitualmente se da con mayor frecuencia que la
composición.

21
Composición
Composición
Composición es una forma fuerte de composición donde la vida de la
clase contenida debe coincidir con la vida de la clase contenedor. Los
componentes constituyen una parte del objeto compuesto. De esta
forma, los componentes no pueden ser compartidos por varios
objetos compuestos. La supresión del objeto compuesto conlleva la
supresión de los componentes.
El símbolo de composición es un diamante de color negro colocado
en el extremo en el que está la clase que representa el “todo”
(Compuesto)

22
Diferencias entre agregación y
composición

23
Ejercicios

¿Cuáles de las siguientes clases se relacionan utilizando


generalización, agregación y porque?

Automovil Motor SistemaDeRefrigeracio


n
Teclado CajaDeCambios Mouse
Monitor PIN PC

24
▪ Ing. Tulio Mamani
Encapsulación
Forma de ocultar atributos y/o métodos de las clases al público
Es la propiedad que permite asegurar que la información de un objeto está oculta
del mundo exterior.
El encapsulamiento consiste en agrupar en una Clase las características(atributos)
con un acceso privado y los comportamientos (métodos) con un acceso público.
Acceder o modificar los miembros de una clase a través de sus métodos

26
Polimorfismo
Son comportamientos diferentes, asociados a objetos distintos, pueden
compartir el mismo nombre; al llamarlos por ese nombre se utilizará el
comportamiento correspondiente al objeto que se esté usando.

27
Herencia
Es una propiedad que permite crear clases a partir de otras ya existentes, obteniendo
características (métodos y claseatributos) similares a los ya existentes.En otras
palabras la nueva clase (subclase o derivada) puede utilizar la misma implementación
de su superclase (clase base) o especificar una nueva implementación

28
▪ Ing. Tulio Mamani
Que es un modelo?
Es una simplificación de la realidad

Es una vista parcial de algo


Conceptos importantes
Captura una vista de un sistema del
mundo real. Es una abstracción de
dicho sistema considerando un
cierto propósito

Es una representación grafica de una


colección de elementos de
modelado.

Conjunto de herramientas,
procedimientos, técnicas y un
soporte documental para
desarrollar nuevo SW
Construcción de la casita de Boby

❑ Modelo Simple
❑ Proceso Simple
❑ Herramientas Simples
Construcción de un chalet

❑ Requiere Modelado
❑ Proceso Definido
❑ Herramientas Sofisticadas
Construcción de un edfificio

❑ Requiere Modelado
Avanzado
❑ Proceso Definido en base
a proyectos
❑ Herramientas muy
Sofisticadas
El Lenguaje de modelado unificado

Construir
Es un: Lenguaje de
propósito general Documentar
Para:
Visualizar

Lenguaje grafico Especificar


orientado a objetos

Solo las cosas


importantes para
un cierto punto de
vista Sistemas de
Software
Historia
Estructura de Vistas en UML
UML se estructura en varias vistas por la complejidad que
pueda representar el modelado

Provee el apoyo para entender el


problema en su estado actual y
no su solución (AS IS)

Organiza los módulos concretos


para la implementación del
código

Muestra la disposición de los


elementos SW dentro de un HW

Muestra la organización de los


componentes

Muestra el comportamiento
dinámico, procesos,
comunicación, coordinación y
preferencia
Clasificacion de vistas en UML

Clases

Objetos

Vistas Estructurales
Componentes

Despliegue

Las vistas se
clasifican en: Vistas de Casos de Uso
comportamiento Paquetes

Secuencia

Estados

Vistas dinamicas Actividades

Colaboración
Diagramas en UML
Al igual que en un plano de construcción las vistas tienen el objetivo de
brindar diferentes perspectivas del modelo para los diferentes
interesados en el modelo
Diagramas en UML
Diagrama de Diagrama de
Casos de uso Clases

Diagrama de Diagrama de
Secuencias Objetos

MODELO
Diagrama de Diagrama de
Colaboración Componentes

Diagrama de
Distribución
Diagrama de
Estados
Diagrama de
actividades
▪ Ing. Tulio Mamani
Diagramas en UML
Casos de Uso
Caso de Uso
Permite capturar información de como un
sistema o negocio trabaja o como se
desea que trabaje

Ayuda a obtener requerimientos desde el


punto de vista del usuario pues muestra
como interactúa un sistema con los
usuarios

Pone en énfasis en «Que Hace» algo y no en


como lo hace
Componentes de casos de Uso

Actor
Es el rol o papel que juega un usuario o cliente
con el sistema o modelo. (No representa a una
persona en particular sino la labor que realiza
frente al modelo

Caso de Uso
Operación o tarea especifica que se realiza tras
una orden de algún agente externo (puede ser
originada por una petición de un actor o bien
desde la invocación de otro caso de uso)

Relaciones
Son:
• Inclusión.
• Extensión.
• Generalización
• Agrupamiento
Ejemplo

Cliente

Cliente VIP Cliente Pref


Documentación de una Caso de Uso
Diagramas de Clases
Diagrama de Clases

Diagrama de Objetos
Diagrama de Clases
El Diagrama de Clases es el diagrama principal para el análisis y
diseño.
Un diagrama de clases presenta las clases del sistema con sus
relaciones estructurales y de herencia.
La definición de clase incluye definiciones para atributos y
operaciones.
El modelo de casos de uso aporta información para establecer las
clases, objetos, atributos y operaciones.
Los diagramas de clases son utilizados para ilustrar las relaciones
entre clases y son el fundamento para el proceso de diseño
Diagrama de Clases

Modela los conceptos del dominio de la


aplicación.
Un diagrama de clases esta compuesto por los
siguientes elementos:
Clases: atributos, operaciones y visibilidad.
Relaciones: Herencia, Composición,
Agregación, Asociación y Uso.
Responsabilidades
Diagrama de Clases Pasos para
modelar

Paso 1: Dibuje los Nodos de las Clases.


Paso 2: Dibuje las Asociaciones.
Paso 3: Coloque los Nombres y Roles de las
Asociaciones.
Paso 4: Coloque la Multiplicidad de las Asociaciones.
Paso 5: Dibuje las flechas de navegación.
Paso 6: Dibuje las Clases Asociadas (si existen).
Paso 7: Validar el modelo del Dominio.
Ejemplo
▪ Ing. Tulio Mamani
Fases de Implementacion

Análisis

Diseño

Programación

Prueba

Operación
Diagramas de diseño usados

Casos de Uso

Actividades

Secuencia

Clases

Estados
Ejercicio

Modelar el diagrama de casos de uso y de


clases de un sistema de control de paradas de
autobuses

También podría gustarte