Técnicas de Desarrollo de Programas Ingeniería Informática Curso 2008 / 2009. Ejercicios de Patrones de Diseño:



Documentos relacionados
Análisis y diseño del sistema CAPÍTULO 3

Bogotá D. C., Colombia

Bogotá D. C., Colombia

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado.

V Manual de Portafirmas V.2.3.1

PETrA PETRA - MANUAL DE USUARIO PARA ESTUDIANTES. Edición: 2 Lugar y fecha: Universidad de Córdoba, 29 de junio de 2012 Referencia: PETrA

Oficina Online. Manual del administrador

CREACIÓN Y GENERACIÓN DE REMESAS DE ADEUDOS SEPA

FOROS. Manual de Usuario

MANUAL DE LA APLICACIÓN DE ENVÍO DE SMS

- MANUAL TÉCNICO - Software de diagnóstico de la seguridad de la información y autoimplantación de LOPD. Rev. 01- FEBRERO 2013

INFORMACIÓN PARA LA INSTALACIÓN DEL CERTIFICADO

MANUAL DE USUARIOS DEL SISTEMA MESA DE SOPORTE PARA SOLICITAR SERVICIOS A GERENCIA DE INFORMATICA

ALGUNAS AYUDAS PARA EL ACCESO AL AULA DIGITAL Contenido

CRM para ipad Manual para Usuario

Tema 11 Bases de datos. Fundamentos de Informática

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

efactura Online La fibra no tiene competencia

Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento

Ayuda básica relativa al interfaz web

GUÍA DE USUARIO DEL CORREO

Región de Murcia Consejería de Educación, Ciencia e Investigación. Manual Usuario FCT

Apuestas de lotería on-line mediante teléfonos móviles

GENERACIÓN DE ANTICIPOS DE CRÉDITO

Sistema de Gestión Académica. Mantenimiento de Usuarios. Revisión 1.0. Servicio de Informática Área de Gestión

Introducción a la programación orientada a objetos

Puede adaptarse a las necesidades específicas de cada empresa y permite la integración con sistemas backend.

Ley Orgánica de Protección de Datos

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

Introducción a la Firma Electrónica en MIDAS

Junio de 2014 MINISTERIO DE AGRICULTURA, ALIMENTACIÓN Y MEDIO AMBIENTE SUBSECRETARIA DIRECCIÓN GENERAL DE SERVICIOS

TEST (8 preguntas, 0 4 puntos por pregunta correcta, puntos por error) [Marcar sólo una opción]

CAPÍTULO 3 Servidor de Modelo de Usuario

GUÍA RED SOCIAL FACEBOOK

GENERACIÓN DE TRANSFERENCIAS

Manual para el administrador de cuentas personales o familiares

Ejemplo de desarrollo software empleando UML

UF0513 Gestión auxiliar de archivo en soporte convencional o informático

Autor: Microsoft Licencia: Cita Fuente: Ayuda de Windows

Manual de Comunicación de Ofertas de Empleo a través de Internet

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN

- MANUAL TÉCNICO - Implantación de software de Marketing Online

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso Cuatrimestre de otoño. 17 de Enero de 2011

MANUAL ECOMMERCE 2.0

Capítulo 9. Archivos de sintaxis

MANUAL DE INICIACIÓN A JOVELLANOS VIRTUAL J. A. Espejo coordinador.tic@iesjovellanos.org 1

MANUAL DE USUARIO PIFTE - ESPAÑA

Cuando hacemos uso de los grupos, se tendrán los permisos asignados al grupo, en todas las carpetas y documentos del sitio.

PLATAFORMA DE TRÁMITES Y SERVICIOS EN LÍNEA MARVIN SISTEMA DE GESTIÓN DOCUMENTAL GUÍA DE DILIGENCIAMIENTO

Guía del Gestor de anuncios por Acuerdo de Publicación

1.1 QUÉ ES EL INVENTARIO DE OPERACIONES ESTADÍSTICAS?

G R U P O S INDICE Cómo crear una cuenta en ARQA? Cómo tener un grupo en ARQA? Secciones y funcionalidades de los grupos Configuración del grupo

O C T U B R E SOPORTE CLIENTE. Manual de Usuario Versión 1. VERSIÓN 1 P á g i n a 1

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi

Guía nuevo panel de clientes Hostalia

TUTORIAL 8 REDES PROFESIONALES: LINKED IN

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Capitulo 5. Implementación del sistema MDM

1 Crear y enviar correos. Recibir correo

CERRADURAS RFID PARA TAQUILLAS PASSTECH

Windows Server 2012 Manejabilidad y automatización. Module 3: Adaptación del Administrador de servidores a sus necesidades

Anexo A Diagramas de Navegación

Person IP CRM Manual MOBILE

NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión

Manual Instalación de certificados digitales en Outlook 2000

Breve guía de uso para el alumno de la Plataforma Moodle E-learning de ILDEFE

Qué es Google Calendar? Qué se puede hacer en Google Calendar?

Gestión de Oportunidades

Gestió n de Certificadó Digital

Soporte y mantenimiento. Generalidades

Capitulo III. Diseño del Sistema.

App para realizar consultas al Sistema de Información Estadística de Castilla y León

El protocolo IMAP ofrece la descarga de correos en modo sólo lectura, es decir descarga sólo una copia del correo y no permite el borrado.

Manual de uso. Manual de uso - citanet 1

E-learning: E-learning:

Servicio Webmail. La fibra no tiene competencia

INSTRUCTIVO PARA EL SISTEMA DE REPORTE EN LINEA - SIREL

Hacemos que tu negocio se mueva. Plataforma de ventas movilidapp

Manual de usuario Noticias y Accesos Directos en Facultades ÍNDICE

Antivirus PC (motor BitDefender) Manual de Usuario

Instructivo Asignación y Cambio de clave para el ingreso de usuarios HQ-RUNT

Proyecto Help Desk en plataforma SOA Alcance del Sistema Versión 1.2. Historia de revisiones

PRESENTACIÓN DEL PRODUCTO

engine es pec ialis tas en entor nos G N U

Manual de Usuario. Direcció General d'innovació Tecnològica Educativa Conselleria d'educació

Capítulo V. Implementación

CRM para ipad Manual para Usuario

Ingeniería del Software

Santa Fe Empresas. Transferencias Electrónicas de Fondos. Manual del Usuario Funciones del Cliente Marzo de Página 1 de 19

Administración Local Soluciones

Proceso de Servicio de Informática y Comunicaciones

Guía para el Portal de Profesores del Sistema de Información CLASS Académico

Introducción a la plataforma Moodle Aníbal de la Torre Plataforma Moodle. Accediendo a los contenidos

Formularios. Formularios Diapositiva 1

AgroDATA Laboral Versión 4.17

SIEWEB. La intranet corporativa de SIE

Sistema para Gestión Hotelera Visión

Guía rápida de la Oficina Virtual Área Web y Administración Electrónica

Combinar comentarios y cambios de varios documentos en un documento

1.- INTRODUCCIÓN 2.- PARÁMETROS

Transcripción:

Técnicas de Desarrollo de Programas Ingeniería Informática Curso 2008 / 2009 Ejercicios de Patrones de Diseño: Iterator, Composite, Strategy, Observer, Decorator, Visitor Ejercicio 1 (examen de junio año 2003/04) El departamento de producción de una empresa informática tiene establecido un sistema que le asigna guardias a sus empleados sobre los servicios que ofrece. Existen distintos servicios (ej. bases de datos o servidores de aplicaciones) que tienen que monitorizarse, por lo que en el momento en que uno de ellos se activa, las personas encargadas de la guardia de ese servicio reciben una notificación. 1. El diagrama de clases del patrón de diseño que facilita la notificación por parte de cada servicio al personal de guardia encargado de monitorizarlo. Suponer que el personal de guardia puede monitorizar más de un servicio de cualquier tipo. Comentar brevemente el sistema de actualización elegido, razonando la respuesta. 2. Especificar el diagrama de secuencia que refleja lo que ocurre desde el momento en que dos miembros del personal de guardia se suscriben a los eventos de un servicio y posteriormente se enteran de la activación de dicho servicio. 3. El departamento de producción decide modificar el sistema de guardia, por lo que de ahora en adelante cada miembro del personal sólo recibirá notificaciones sobre determinados tipos de eventos que se hayan producido en los servicios y por los que previamente haya mostrado su interés, como pueden ser la activación, parada o recuperación del servicio. Modificar el diagrama de clases propuesto en el apartado 1 para tener en cuenta que una persona de guardia puede expresar su interés no sólo por servicios concretos, sino por determinados cambios de estado en esos servicios. 1 de 1

Ejercicio 2 (examen de junio año 2003/04) Los empleados de una empresa informática se pueden clasificar en ingenieros, programadores, técnicos y administrativos. La estructura en la que la empresa almacena a sus empleados es un Composite, como muestra la siguiente figura: Teniendo en cuenta que las interfaces de los distintos tipos de empleados son heterogéneas, para poder incluir nuevas operaciones sin necesidad de modificar dichos empleados se ha aplicado un patrón Visitor. El diseño es el que muestra la siguiente figura: 1. Describir cada una de las soluciones posibles que permiten a la empresa recorrer a sus empleados para solicitarles una operación. Indicar claramente cuál es el cometido de la empresa en cada una de las soluciones propuestas. 2. Incluir el código de cada solución propuesta en el apartado anterior. 2 de 2

Ejercicio 3 (examen de septiembre año 2003/04) La salida de una determinada aplicación se puede llevar a cabo a través de diferentes medios como fichero, pantalla, base de datos, etc. Por defecto la salida se produce siempre a un fichero de registro pero, dependiendo de lo que solicite el usuario, la salida puede ser además a través de la pantalla, en otros ficheros diversos, a una base de datos, etc. 1. El diagrama de clases que permite modelar la situación descrita, teniendo en cuenta que el cliente no debe verse afectado por el número de dispositivos finales de salida a la hora de solicitar escribir información de salida. 2. El código del método o métodos involucrados en uno de los tipos de escritura concreta, por ejemplo la escritura en pantalla, teniendo en cuenta que la información que se muestra en pantalla (líneas de salida) aparece precedida del nombre de la aplicación que la ha generado. Indicar claramente a qué clase pertenecen. Ejemplo: - nombreaplicacion línea 1 - nombreaplicacion línea 2 - nombreaplicacion línea 3 3. Especifica el código del cliente que sirve para inicializar el objeto u objetos encargados de la escritura en el supuesto de que ésta se produzca sobre el fichero por defecto (default.log), por pantalla y a otro fichero (otro.log). 3 de 3

Ejercicio 4 (examen de septiembre año 2004/05) La empresa DEISOFT, especializada en el desarrollo de aplicaciones de gestión para el mercado bursátil, desea desarrollar un componente para homogeneizar el envío de mensajes de los analistas de mercados a sus clientes más relevantes. En una primera versión, el componente deberá contemplar los siguientes requisitos: Por defecto, el mensaje se enviará como texto en claro. A petición del usuario, el contenido del mensaje podrá enviarse comprimido, cifrado o firmado digitalmente. Se facilitarán dos algoritmos de compresión: Huffman y Lempel-Ziv. Existe la intención de incorporar nuevos algoritmos de compresión específicos en sucesivas versiones. 1. El patrón de diseño que permite el procesamiento del contenido del mensaje teniendo en cuenta que a petición del emisor puede tratarse como texto en claro, comprimido, cifrado, firmado digitalmente o cualquier combinación de las mismas. Deberán responderse las siguientes cuestiones: a. La explicación del porqué del patrón seleccionado. b. La especificación en UML del diagrama de clases correspondiente. c. Completar el diagrama de secuencia izquierdo para que muestre el proceso de creación y tratamiento de un mensaje comprimido y cifrado. 2. El patrón de diseño que permite la compresión del mensaje utilizando diferentes algoritmos. Deberán responderse las siguientes cuestiones: a. La explicación del porqué del patrón seleccionado. b. La especificación en UML del diagrama de clases correspondiente. c. Completar el diagrama de secuencia derecho para que muestre el proceso de compresión de un mensaje en claro utilizando el algoritmo de compresión Lempel-Ziv. 4 de 4

Ejercicio 5 (examen de septiembre año 2007/08) Se desea realizar un sitio web de subastas por internet. Al acceder a la aplicación, el usuario debe registrarse indicando un nombre de usuario, password, datos de contacto y dirección de correo. Para pujar por un artículo, los usuarios deberán hacer una oferta mayor que la última realizada. Si un usuario puja por un artículo y posteriormente se realiza otra puja por él, recibirá un correo electrónico indicando la fecha y cuantía de la última puja realizada. Por su parte, el vendedor también recibirá un correo electrónico de cada puja realizada sobre los artículos que subasta. En cualquier momento el vendedor podrá concluir la subasta contactando con el último usuario en pujar. En ese momento, todos los que pujaron por el artículo recibirán un correo indicando el final de la subasta. 1. Utilizando patrones de diseño, especifica el diagrama de clases de la aplicación (únicamente de los requisitos que contempla el enunciado). Indica qué patrones has usado y qué beneficios obtienes de su uso. Documenta cualquier suposición sobre la aplicación que no esté en el enunciado. 2. Especifica el diagrama de secuencia correspondiente a la puja de un artículo por un usuario del sistema. 3. Se quiere premiar a los usuarios con más de un año de antigüedad haciéndoles clientes VIP. Para ello supondremos que los usuarios tienen un atributo esvip de tipo boolean que modela este hecho, y guardan la fecha en que se registraron por primera vez en el sistema. Describe tres formas de implementar iteradores para recorrer los usuarios del sistema y clasificarlos como VIP si cumplen los requisitos de antigüedad. Indica las ventajas o inconvenientes de cada iterador propuesto. Nota: no es necesario implementar los iteradores, sólo describirlos. 5 de 5