Principios poo

29
Ingeniería de software Unidad II Ingeniería de Software Orientado a Objetos Principios Orientados a Objetos Tema Semana 7

Transcript of Principios poo

Page 1: Principios poo

Ingeniería de software

Unidad II

Ingeniería de Software Orientado a Objetos

Principios Orientados a Objetos

Tema

Semana 7

Page 2: Principios poo

Objetivos Generales:

Comprender correcta y eficientemente los conceptos y principios del espectro de técnicas de Ingeniería de Software que puedan ser aplicadas en proyectos de software.

Desarrollar una cultura de ingeniería de software.

Page 3: Principios poo

Objetivos Específicos:

Aplicar correctamente los conceptos y principios relacionados a la Ingeniería de Software en la resolución de casos prácticos para la gestión de proyectos de software de calidad.

Utilizar herramientas para el modelado y gestión de proyectos de software.

Utilizar metodologías agiles en el desarrollo de software.

Page 4: Principios poo

Objetivos Instruccionales:

Comprender los conceptos relacionados a los principios relacionados a la orientación a objetos.

Page 5: Principios poo
Page 6: Principios poo

En que consiste1. Un objeto encapsula tanto datos como los

procesos que se aplican a esos datos.

2. Esta característica permite construir clases de objetos e inherentemente construir bibliotecas de objetos y clases reutilizables.

3. Los componentes de software derivados de objetos muestran características como la independencia funcional, ocultación de la información, asociados con el software de alta calidad.

Par

adig

ma

orie

ntad

o a

obje

tos

Page 7: Principios poo

Cuales son los pasosLa ingeniería de software orientado a objetos sigue

los mismos pasos que el enfoque convencional

ANALISIS

DISEÑO

IMPLEMENTACION

PRUEBAS

Identifica las clases y objetos relevantes en el dominio del problema

Proporciona detalles sobre la arquitectura, las interfaces y los componentes

Utilizando un lenguaje orientado a objetos, transforma el diseño en código

Chequean tanto la arquitectura como las interfaces y los componentes

Par

adig

ma

orie

ntad

o a

obje

tos

Page 8: Principios poo

¿Que es un objeto?

Un objeto representa una entidad física, conceptual o programa.

Entidad física:

Entidad conceptual:

Entidad programa:

Ómnibus

Fenómeno natural

Lista enlazada

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 9: Principios poo

Definición formal de objeto

Un objeto es un concepto, una abstracción o una cosa con limites bien definidas y significado para una aplicación.

Un objeto es algo que tiene:

1. Estado

2. Comportamiento

3. Identidad

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 10: Principios poo

Un objeto tiene estado

•Un estado es una de las posibles condiciones en que el objeto puede existir.

•El estado normalmente cambia en el transcurso del tiempo.

•El estado de un objeto es implementado por un conjunto de propiedades (llamadas atributos), con los valores de las propiedades, además de las conexiones que deben existir entre objetos.

Nombre: Andrés Rebaza Gutiérrez

Nº Cliente: 0081695

Fecha Ingreso: 29 Abril 2004

Estado: Activo

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 11: Principios poo

Un objeto tiene comportamiento

•El comportamiento de un objeto determina como este actúa y reacciona frente a las peticiones de otros objetos.

•El comportamiento de un objeto es modelado por un conjunto de mensajes a los que puede responder (las operaciones que el objeto puede realizar).

Registro del sistema

Crear pedido : 040401

RetornaConfirmacion

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 12: Principios poo

Un objeto tiene una identidad•Cada objeto tiene una identidad única, incluso si su estado es idéntico al de otro objeto.

Nombre: G. Washington

País : Perú

Nombre: G. Washington

País : Perú

Nombre: G. Washington

País : Perú

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 13: Principios poo

¿Que son clases?

• Una clase es una descripción de un grupo de objetos con propiedades en común (atributos), comportamiento similar (operaciones), la misma manera de relacionarse entre objetos (asociaciones

y agregaciones) y una semántica en común.

• Una clase es una abstracción en la que:

1. Se enfatizan las características relevantes

2. Se suprimen otras características

• La abstracción nos ayuda a trabajar con cosas complejas.C

once

ptos

de

orie

ntac

ión

a o

bjet

os

Page 14: Principios poo

Ejemplo de una clase

Clase

Pedido

Comportamiento

Agregar un pedido

Borrar un pedido

Modificar un pedido

ListarPedidosAnulados

Estructura

NroPedido

Fecha

FormaDePago

Cliente

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 15: Principios poo

Relación entre clases y objetos

• Una clase es una definición abstracta de un objeto.

1. Define la estructura y el comportamiento compartidos por los objetos

2. Sirve como modelo para la creación de objetos

• Los objetos pueden ser agrupados en clases.

Objetos

Cliente: Rojas Cliente: Vásquez

Cliente: Suárez

ClienteRazonSocialDireccionTelefonoeMailTipoCliente

AgregarClienteModificarClienteEstadoCliente

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 16: Principios poo

Encontrando clases

• Una clase debe capturar una y solo una abstracción clave.

• Mala abstracción: La clase estudiante que conoce la información del estudiante y del programa del semestre actual del estudiante.

• Buena abstracción: Clases separadas. Una para el estudiante y otra programa de estudiantes.

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 17: Principios poo

Jerarquía de clasesLos atributos y métodos de una superclase son heredados por sus subclases.

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 18: Principios poo

MensajesMedios por el cual los objetos intercambian información entre si.

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 19: Principios poo

HerenciaPermite a las subclases reutilizar datos y métodos de la superclase

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 20: Principios poo

PolimorfismoPermite que varios objetos en una jerarquía de la clase puedan tener métodos diferentes con el mismo nombre

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 21: Principios poo

Ventajas de la orientación a objetos

1. El ocultamiento de los datos y procedimientos del mundo externo, reduce la propagación de efectos laterales cuando se efectúan cambios.

2. La estructura de datos y operadores se unen en una sola entidad o clase (esto facilita la reutilización)

3. El encapsulamiento simplifica las interfaces entre los objetos.

Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 22: Principios poo

Opciones de construcción de clases

1. Construya nuevas clases desde el principio sin usar la herencia.

2. Use la herencia para crear la nueva clase de la clase existente que contiene la mayoría de los atributos y funcionalidad deseada.

3. Reestructure la jerarquía de la clase para que los atributos y funcionalidad requerida puedan ser heredados por la clase recientemente creada

4. Reemplace algunos atributos o funcionalidad en una clase existente y use la herencia para crear una nueva clase con las versiones privadas de estos atributos y

funcionalidades.Con

cept

os d

e or

ient

ació

n a

obj

etos

Page 23: Principios poo

De clases Una clase de objeto describe a un grupo de objetos con similares:

1. Propiedades

2. Comportamientos

3. Relaciones con otros objetos.

Ele

men

tos

de u

n m

odel

o de

obj

etos

Page 24: Principios poo

De objetosSe examina el planteamiento del problema realizando un “análisis sintáctico gramatical” en la narrativa del sistema

que se va a construir. Los objetos se determinan subrayando cada nombre.

Se manifiestan como:

1.Entidades externas (otros sistemas, dispositivos, personas,etc),

2.Cosas (informes, presentaciones, etc),

3.Ocurrencias o sucesos (movimiento en un robot),

4.Papeles o roles (director, vendedor, ingeniero),

5.Estructuras (sensores, computadoras),

6.Unidades organizacionales (división, grupo, equipo).

Características de selección: 1.Información retenida,

2.Servicios necesarios,

3.Atributos múltiples,

4.Atributos comunes,

5.Operaciones comunes,

6.Requisitos esenciales.

Para ser considerado un objeto valido a incluir en el modelo de requisitos, debe satisfacer todas o casi todas las características.

Ele

men

tos

de u

n m

odel

o de

obj

etos

Page 25: Principios poo

De atributos

1. Los atributos describen un objeto que ha sido seleccionado para ser incluido en el modelo de análisis.

2. En esencia son los atributos los que definen al objeto, los que clarifican lo que representa el objeto en el contexto del espacio del problema.

3. Para desarrollar un conjunto significativo de atributos para un objeto, el analista puede estudiar de nuevo la narrativa del proceso para el problema y seleccionar aquellos elementos que razonablemente “pertenecen” al objeto.E

lem

ento

s de

un

mod

elo

de o

bjet

os

Page 26: Principios poo

Definición de operacionesDefinen el comportamiento de un objeto y cambian de

alguna manera, los atributos de dicho objeto. Las operaciones se obtienen subrayando cada verbo.

Categorías:1. Manipulan datos (añadiendo, seleccionando,

eliminación).

2. Realizan cálculos.

3. Monitorizan objetos a la ocurrencia de un suceso de control.

A estas operaciones se añaden dos más: crear y destruir.

Ele

men

tos

de u

n m

odel

o de

obj

etos

Page 27: Principios poo

ActividadesG

estió

n de

pro

yect

os O

O 1. Establecimiento de un marco de proceso común para el proyecto

2. Uso del marco y de métricas históricas para desarrollar estimaciones de esfuerzo y tiempo

3. Especificación de productos de trabajo e hitos que permitirán medir el progreso

4. Definición de puntos de comprobación para la gestión de riesgos, aseguramiento de la calidad y control

5. Gestión de los cambios que ocurren invariablemente al progresar el proyecto

6. Seguimiento, monitorización y control del progreso

Page 28: Principios poo

Resumen

1. El dominio del problema se caracteriza mediante un conjunto de objetos con atributos y comportamientos específicos.

2. Los objetos son manipulados mediante una colección de funciones (llamadas métodos) y se comunican entre ellos mediante un protocolo de mensajes.

3. Los objetos se clasifican mediante clases y subclases.

Page 29: Principios poo

Ingeniería de software

Unidad II

Ingeniería de Software Orientado a Objetos

Principios Orientados a Objetos

Tema

Semana 7