Grupo 01 - InGSOFT(Tecnologia Orientada a Objetos)

46
CONCEPTOS Y PRINCIPIOS ORIENTADOS A OBJETOS Integrantes: Cruzado Bravo, Jheny Lady Manuel

description

jhgjhjhj

Transcript of Grupo 01 - InGSOFT(Tecnologia Orientada a Objetos)

CONCEPTOS DE ORIENTACIN A OBJETOS

CONCEPTOS Y PRINCIPIOS ORIENTADOS A OBJETOS Integrantes:

Cruzado Bravo, Jheny LadyManuelIntroduccinEl mundo en el que vivimos es un mundo de objetos. No es sorprendente que se proponga una visin orientada a objetos para la creacin de software de computadora.

La primera vez que se propuso un enfoque orientado a objetos para el desarrollo de software fue a finales de los aos sesenta y estas tecnologas han necesitado casi veinte aos para llegar a ser ampliamente usadas.

Las tecnologas de objetos llevan a reutilizar, y la reutilizacin (de componente de software) lleva a un desarrollo de software ms rpido y a programas de mejor calidad. Su estructura es poco acoplada

El paradigma orientado a objetosEn el libro The Structure of Scientific Revolutions, el historiador Thomas K describa un paradigma como un conjunto de teoras, estndar y mtodos que juntos representan un medio de organizacin del conocimiento: es decir, un medio de visualizar el mundo.

La programacin orientada a objetos es un nuevo paradigma. La orientacin a objetos fuerza a reconsiderar nuestro pensamiento sobre la computacin, sobre lo que significa realizar computacin y sobre cmo se estructura la informacin dentro de la computadora.

Bobrow y Stefik sugieren que existen cuatro clases de estilos de programacin:

Hoy en da el paradigma OO (Orientado a Objetos) encierra una completa visin de la ingeniera del software.Orientados a procedimientos: Algoritmos. Orientados a objetos: Clases y Objetos. Orientados a lgica: Expresado en clculo de predicados. Orientados a reglas: Reglas if-then.

Modelo de Proceso Orientado a Objetos

Identificar clases candidatasBuscar clases en bibliotecaExtraer nuevas clases si existenDesarrollar las clases si no existenAadir las nuevas clases a la bibliotecaConstruir n-sima iteracin del sistemaAnlisis OO Diseo OOProgramacin OOPruebas OOComunicacin con el clientePlanificacinAnlisis de riesgosEvaluacin del clienteIngeniera, Construccin y Terminacin con el cliente

Qu es la orientacin por objeto El trmino "orientacin por objeto" significa que organizaremos el software como una coleccin de objetos discretos que incorporan tanto estructuras de datos como procedimientos.

QUE ES UNA CLASEUna clase representa a un conjunto de objetos que comparten una estructura y un comportamiento comunes. La estructura de un objeto se define en su clase, por lo que un objeto es en realidad la instancia de una clase.10

Las clases y los objetos estn en todas partes11TransportesPuntoFiguraAnimal

(1,3)(2,2)(2,1)(5,2.5)

11Qu es un Objeto? Un objeto es una abstraccin de una entidad del mundo real Un objeto es una entidad fsica o abstracta que tiene un comportamiento antes ciertos estmulos, tanto externos como de otros objetos especficos que se encuentran dentro del sistema.

Un objeto posee (Booch):EstadoComportamientoIdentidad

Qu se puede considerar como objeto ?-Persona-Equipo Hardware-Materiales-Informacin-Software-Procesos-Procedimientos

Un objeto posee EstadoLo que el objeto sabeEl estado de un objeto es una de las posibles condiciones en que el objeto puede existirEl estado normalmente cambia con el transcurso del tiempoEl estado de un objeto es implementado por un conjunto de propiedades (atributos), adems de las relaciones que puede tener con otros objetos

AtributosEdad:35Peso:70 kg.Altura:1.60 mts.Domicilio: Calle Falsa 123Titulo: DoctoraDra. Juanita Prez

Un objeto posee ComportamientoLo que el objeto puede hacerEl comportamiento de un objeto determina cmo ste acta y reacciona frente a las peticiones de otros objetosEs modelado por un conjunto de mensajes a los que el objeto puede responder (operaciones que puede realizar)Se implementa mediante mtodos

Un objeto posee IdentidadCada objeto tiene una identidad nica, incluso si su estado es idntico al de otro objeto.Cada Objeto es nico en el mundo por mas que haya otro objeto con iguales atributos.

16Por ejemplo, dos autos del mismo modelo, color, motor, salidos de la misma lnea de produccin el mismo da no dejan de ser dos autos diferentes, por ms que su conjunto de atributos y sus valores sean iguales. La nica posibilidad de que dos objetos sean iguales es que sean el mismo objeto.

ATRIBUTOS Concepto: Caractersticas que definen a la clase, es lo que el usuario (de la clase) puede ver. Es la abstraccin.Otro concepto: variables que estn dentro de los objetos y que contienen los valores del objeto.Tambin son llamados: propiedades, datos miembro17DOMINIO DE UN ATRIBUTO Un dominio es simplemente un conjunto de valores especficos. Por ejemplo, supongamos que una clase Coche tiene un atributo color. El dominio de valores de color es blanco, negro, plata, gris, azul, rojo, amarillo, verde.

ATRIBUTOS Ejemplo1Una Fraccin est definido por un par de nmeros naturales, los cuales se denominan el numerador y denominador.19FraccionNumeradorDenominador

OPERACIONES, MTODOS Y SERVICIOSUn objeto encapsula datos (representados como una coleccin de atributos) y los algoritmos que procesan estos datos. Estos algoritmos son llamados operaciones, mtodos o servicios y pueden ser vistos como mdulos en un sentido convencional.

Cada una de las operaciones encapsuladas por un objeto proporciona una representacin de uno de los comportamientos del objeto. Operacin: DeterminarColor

Objeto: CocheAtributo color:Color almacenado.Estmulo:Mensaje

ESTMULOCada vez que un objeto recibe un estmulo, este inicia un cierto comportamiento, que puede ser tan simple como determinar el color del coche o tan complejo como la iniciacin de una cadena de estmulos que se pasan entre una variedad de objetos diferentes.

Considere un ejemplo en el cual el estmulo inicial recibido por el objeto n 1 da lugar a una generacin de otros 2 estmulos que se envan al objeto n 2 y al objeto n 3.

MENSAJESLos mensajes son el medio a travs del cual interactan los objetos. Usando la terminologa presentada en la seccin precedente, un mensaje estimula la ocurrencia de cierto comportamiento en el objeto receptor. El comportamiento se realiza cuando se ejecuta una operacin.

Una operacin dentro de un objeto emisor genera un mensaje de la forma:destino.operacin (parmetros)Donde destino define el objeto receptor el cual es estimulado por el mensaje, operacin se refiere al mtodo que recibe el mensaje y parmetros proporciona informacin requerida para el xito de la operacin.

Los cuatro objetos. A, B, C y D se comunican unos con otros a travs del paso de mensajes. Por ejemplo, si el objeto B requiere el proceso asociado con la operacin op10 del objeto D, el primero enviara a D un mensaje de la forma:D.op10(datos)

Como parte de la ejecucin de op10, el objeto D puede enviar un mensaje al objeto C de la forma:C.op8(datos)C encuentra op8, la ejecuta, y entonces enva un valor de retorno apropiado a D. La operacin op10 completa su ejecucin y enva un valor de retorno a B.

ENCAPSULAMIENTO, HERENCIA Y POLIMORFISMOBeneficios:1)Los detalles de implementacin interna de datos y procedimientos estn ocultos al mundo exterior (ocultacin de la informacin). 2)Las estructuras de datos y las operaciones que las manipulan estn mezcladas en una entidad sencilla: la clase. 3)Las interfaces entre objetos encapsulados estn simplificadas. ANULACINLa anulacin ocurre cuando los atributos y operaciones se heredan de manera formal, pero despus son modificados segn las necesidades especficas de la nueva clase.

REESTRUCTURACIN DE LA JERARQUA

CREACIN Y REESTRUCTURACIN DE NUEVOS OBJETOSel ingeniero de software tiene varias opciones:La clase puede disearse y construirse de la nada. La jerarqua de clases puede ser rastreada para determinar si una clase ascendiente contiene la mayora de los atributos y operaciones requeridas. La jerarqua de clases puede reestructurarse de tal manera que los atributos y operaciones requeridos puedan ser heredados por la nueva clase.Las caractersticas de una clase existente pueden sobrescribirse y se pueden implementar versiones privadas de atributos u operaciones para la nueva clase.POLIMORFISMOEl polimorfismo es una caracterstica que reduce en gran medida el esfuerzo necesario para extender un sistema OO.Case of tipo_grafico:If tipo_grafico = grafico_linea thenDibujarLinea (datos);If tipo_grafico = grafico_tarta thenDibujarTarta (datos);If tipo_grafico = grafico_histograma thenDibujarHisto (datos);If tipo_grafico = grafico_kiviat thenDibujarKiviat (datos);end case;Conceptos y principios orientados a objetosIdentificacion de los elementos de un modelo de objetos

IDENTIFICACIN DE UN MODELO DE OBJETOSLos objetos se clasifican mediante clases y subclases.Los objetos son manipulados mediante una coleccin de funciones (llamadas mtodos, operaciones o servicios).se comunican entre ellos mediante un protocolo de mensajes. La definicin de objetos implica la descripcin de atributos, comportamientos, operaciones y mensajes.

Identificacin de clases y objetos Entidades Externas que producen o consumen informacin a usar por un sistema computacional. Por ejemplo: otros sistemas, dispositivos, personas.

Cosas que son parte del dominio de informacin del problema. Por ejemplo: informes, presentaciones, cartas, seales.

Ocurrencias o Sucesos que ocurren dentro del contexto de una operacin del sistema. Por ejemplo: una transferencia de propiedad o la terminacin de una serie de movimientos en un robot.

Los objetos se manifiestan de alguna de las formas siguientes:

Papeles o Roles desempeados por personas que interactan con el sistema. Por ejemplo: director, ingeniero, vendedor.

Unidades Organizacionales que son relevantes en una aplicacin. Por ejemplo: divisin, grupo, equipo.

Lugares que establecen el contexto del problema y la funcin general del sistema. Por ejemplo: planta de produccin o muelle de carga.

Estructuras que definen una clase de objetos o, en casos extremos, clases relacionadas de objetos. Por ejemplo: sensores, vehculos de cuatro ruedas o computadoras.

Para ilustrar cmo pueden definirse los objetos se presenta la narrativa de procesamiento para el sistema Hogar Seguro:

Coud y Yourdon sugieren seis caractersticas de seleccin a usar cada vez que un analista considera si incluye o no un objeto potencial en el modelo de anlisis: Informacin retenida el objeto potencial ser de utilidad durante el anlisis solamente si la informacin acerca de l debe recordarse para que el sistema funciones. Servicios necesarios el objeto potencial debe poseer un conjunto de operaciones identificables que pueden cambiar de alguna manera el valor de sus atributos. Atributos mltiples durante el anlisis de requisitos, se debe centrar la atencin en la informacin principal (un objeto con un solo atributo puede, en efecto, ser til durante el diseo, pero seguramente ser mejor presentado como un atributo de otro objeto durante la actividad de anlisis). Atributos comunes puede definirse un conjunto de atributos para el objeto potencial, los cuales son aplicables a todas las ocurrencias del objeto. Operaciones comunes puede definirse un conjunto de operaciones para el objeto potencial, las cuales son aplicables a todas las ocurrencias del objeto. Requisitos esenciales entidades externas que aparecen en el espacio del problema y producen o consumen informacin esencial para la produccin de cualquier solucin para el sistema, sern casi siempre definidas como objetos en el modelo de requisitos.

Teniendo esto en cuenta, se aplicarn las caractersticas selectivas a la lista de objetos potenciales de Hogar Seguro:

Debe tenerse en cuenta que: (1) la lista anterior no incluye todo, hay que aadir objetos adicionales para completar el modelo; (2) algunos de los objetos potenciales rechazados sern atributos de los objetos aceptados (por ejemplo, nmero y tipo son atributos de sensor, y contrasea maestra y nmero de telfono pueden convertirse en atributos de sistema); y (3) diferentes descripciones del problema pueden provocar la toma de diferentes decisiones de aceptacin o rechazo (por ejemplo, si cada propietario tiene su propia contrasea o fue identificado por impresiones de voz, el objeto Propietario cumplira las caractersticas a y b y habra sido aceptado).

IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS ESPECIFICACIN DE ATRIBUTOS

Los atributos describen un objeto que ha sido seleccionado para ser incluido en el modelo de anlisisatributos los que definen al objeto, los que clarifican lo que reprsenta el objeto en el contexto del espacio del problema.

IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS ESPECIFICACIN DE ATRIBUTOS

Los atributos se escogen examinando el problema, buscando que definan completamente los objetos y que los hacen nicos

Informacin del sensor = tipo de sensor + nmero de sensor + umbral de alarma.

Informacin de respuesta de la alarma = tiempo de retardo + nmero de telfono + tipo de alarma. Informacin de activacin / desactivacin = contrasea maestra + cantidad de intentos permitidos + contrasea temporal.

Informacin de identificacin = ID del sistema + verificacin de nmero de telfono + estado del sistema. IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS ESPECIFICACIN DE ATRIBUTOS

IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS DEFINICIN DE OPERACIONES

Las operaciones definen el comportamiento de un objeto y cambian, de alguna manera, los atributos de dicho objetoPor lo tanto, una operacin debe tener conocimiento de la naturaleza de los atributos de los objetos y deben ser implementadas de manera tal que le permita manipular las estructuras de datos derivadas de dichos atributos.IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS DEFINICIN DE OPERACIONES

Existe alguna forma razonable de categorizar las operaciones de un objeto.

Que activar y desactivar son operaciones aplicables al Sistema como: Estado del sistema = [activado | desactivado] IDENTIFICACIN DE LOS ELEMENTOS DE UN MODELO DE OBJECTOS FIN DE LA DEFINICIN DEL OBJETO

Las operaciones adicionales pueden determinarse considerando la historia de la vida de un objeto y los mensajes que se pasan entre objetos definidos por el sistema.Algunas de las operaciones pueden determinarse a partir de comunicaciones semejantes entre objetos.

MUCHAS GRACIAS