Indirección y Variaciones Protegidas

Slides:



Advertisements
Presentaciones similares
S.O.L.I.D. AltNetHispano Carlos Peix
Advertisements

MODELOS ORIENTADOS A OBJETOS
INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software
Observador (observer) Visita (Visitor) Singleton
FACHADA COMPOSITOR MEMENTO
POLIMORFISMO UNIDAD 4.
UML 1.4 Peter Emerson Pinchao Solis.
FACHADA.
Arquitectura Orientada a Servicios (SOA)
Lenguaje Unificado de Modelado Se protegen los datos de accesos indebidos El acoplamiento entre las clases se disminuye. Favorece la modularidad.
Modelos de Datos Modelado y Diseño de Bases de Datos
Patrones de Diseño GEYFFER ALEXANDER ACOSTA CRISTHIAN DOUGLAS CASTRO
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
Arquitectura multicapas orientadas a objetos
Tipos de Datos Abstractos Modularidad
COMPONENTES ESTRATÉGICOS
La manera más simple para describir un patrón es que ofrece una solución probada a un problema común.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Patrones de diseño OO Gang of Four (GoF)
El patrón de diseño Proxy Raúl Heras Alberto Blasco José Manuel Arévalo.
Introducción a la programación Orientada a objetos
Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje
INTELIGENCIA DE NEGOCIOS
TRABAJO GRASP Presentado por: Maria Paula Arias B. Luís Guillermo Torres R.
Aplicaciones educativas en los sistemas federados.
Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.
DS1 María E. Valencia Herencia La jerarquía de clases es un mecanismo a través del cual los cambios (a altos niveles) se pueden propagar inmediatamente.
Patrones de Comportamiento: Patrón de Diseño Observer
ESQUEMAS BASICOS DE RED
Modelado Arquitectónico
Técnicas y Prácticas. Prácticas Sesiones de trabajo Objetivos Obtener información Comunicar resultados Reducir el tiempo de desarrollo Activar la participación.
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
Unidad III Administración de procesos
Mediator (Mediador) Trabajo realizado por: Guillermo Palacios Pelayo
ANALISIS Y DISEÑO O.O. (LCD )
Programación Orientada a Aspectos (POA)
Patrones Creacionales
ANDRES FELIPE BORRERO SALAZAR COD ALEXANDRA CARREÑO SALAS COD LUCIO ANIBAL CRIOLLO COD ALEJANDRO RUIZ IDROBO COD
Modelo McCall PRESENTA: Liliana Hilario, Anabel peña, Jessica Carbajal, Ricardo Díaz.
DISEÑO DE SOFTWARE 1ª. Parte
Patrones GRASP.
ADMINISTRACIÓN Y LOS SISTEMAS INFORMÁTICOS
Análisis y Diseño Orientado a Objetos utilizando UML
Patrones de diseño DECORATOR Mario Rodríguez Martín
Desarrollo de aplicaciones para ambientes distribuidos
Modelos de Bases de Datos
Patrones para asignar responsabilidades
Comunicación y Multimedia
CONCEPTOS BÁSICOS Diseño de Sistemas.
Son la base para la búsqueda de soluciones o problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
PATRONES DE INDIRECCION Y VARIANTES PROTEGIDAS
Ingeniería en Sistemas de Información
Andrés Harker Gutiérrez Director: Cesar Julio Bustacara Medina MSc. Asesor: Oscar Xavier Chavarro MSc. Arquitectura de un módulo I/O para objetos 3D Pontificia.
Diagrama de Clases ACI 570.
Almudena Moya Muñoz Julio 2006 Una vuelta de tuerca a los principios de diseño ágiles.
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
Programación orientada a objetos Capítulo 6 Diseño de clases.
LA MARCA EN LOS PRODUCTOS Una marca es un nombre, tèrmino, un sìmbolo o un diseño especial con el que se trata de identificar los bienes o servicios de.
PROGRAMACION ORIENTADA A OBJETOS
Reingeniería de procesos
PATRON OBSERVADOR DEIRY ALI NIETO. El patrón observador lo podemos clasificar como un ejemplo claro de patrones de comportamiento, debido a que este posee.
Patrones de diseño equipo n.1
Ing. Esp. Ricardo Cujar. Programación Orientada a Objetos  Modelo de desarrollo de software.  Modo de pensar del hombre y no de la máquina.  Abstracción.
PROCESO UNIFICADO DIRIGIDO POR CASOS DE USO
LA MARCA EN LOS PRODUCTOS
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Acceso a Datos Erick López Ovando Licenciado en Informática.
Proliferación Celular LUIS FELIPE JIMENEZ CAICEDO ANDRES FELIPE VASQUEZ JHON ANDERSON YANGUAS JUAN DAVID PINTO PAOLA ANGELICA GIRÓN ISIS VICTORIA PIZO.
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
Transcripción de la presentación:

Indirección y Variaciones Protegidas Mario Germán López Código 0243236 Jeisón Andres Meléndez Código 0237864 Diana Patricia Tascón Código 0239678 Juan Diego Tascón Código 0233680 María Alejandra Trujillo Código 0225428

Variaciones Protegidas Principio fundamental que motiva la mayoría de los mecanismos y patrones en la programación y el diseño, destinados a proporcionar flexibilidad y protección frente a las variaciones.

Variaciones Protegidas Problema ¿Cómo diseñar sistemas de manera que las variaciones en estos elementos no tenga impacto no deseable en los otros elementos? Solución Se deben identificar los puntos de variación prevista y crear interfaces estables alrededor de ellos.

Ejemplo En una aplicación de un punto de venta, se asume que la instancia POST tiene un atributo referenciando a Sale, el cual a su vez tiene un atributo referenciando a Payment.

No aplica el modelo “no hablar con extraños”.

Aplica el modelo “no hablar con extraños”.

Mecanismos Básicos Diseño dirigido por los datos Búsqueda de servicios Diseño dirigido por un intérprete Diseño reflexivo o de meta-nivel Principio de sustitución de Liskov (PSL) Diseño de ocultación de la estructura (no hable con extraños).

Ventajas Se añaden fácilmente las extensiones que se necesitan para nuevas variaciones; Se pueden introducir nuevas implementaciones sin afectar a los clientes; Se reduce el acoplamiento; Puede disminuirse el impacto o coste de los cambios.

PATRONES GRASP INDIRECCION

El Problema La Solución Ejemplos Esquema El Problema La Solución Ejemplos

El Problema Tener 2 o más clases (modulos) totalmente independientes con diferentes objetivos y funcionalidades. Se necesita cierta comunicación entre las clases. Se quiere disminuir las responsabilidades de las clases. Se quiere aumentar la reutilización de código.

La Solución Crear una clase que reciba la responsabilidad de comunicar las clases independientes.

Ejemplo: Problema En una aplicación se tiene dos módulos, uno se encarga de calcular cuanto se debe pagar por un servicio, y el otro es quien ingresa la información en la base de datos.

Ejemplo: Solución Lo que se pretende con el patrón de indirección es crear un módulo que cree la comunicación entre ellos.

Diagrama sin indirección

Diagrama con indirección