Cuestiones
ayuda
option
Mi Daypo

TEST BORRADO, QUIZÁS LE INTERESEConocimiento de diseño de sistemas software 1

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del test:
Conocimiento de diseño de sistemas software 1

Descripción:
Caballo

Autor:
Helpme

Fecha de Creación:
12/06/2022

Categoría:
Deportes

Número preguntas: 81
Comparte el test:
Facebook
Twitter
Whatsapp
Comparte el test:
Facebook
Twitter
Whatsapp
Últimos Comentarios
No hay ningún comentario sobre este test.
Temario:
El objetivo del patrón fachada es… Protegernos ante posibles variaciones en el sistema y obtener mas acoplamiento Simplificar el acceso a la interfaz mediante funcionalidades. Resolver los problemas de compatibilidad entre las interfaces. Todas son ciertas.
El patrón command permite: Acoplar el emisor y receptor Manipular comandos como objetos Añadir nuevos comandos modificando a otras clases. Combinarse con el patrón bridge para obtener comandos compuestos.
Según UML, los casos de usos: Están condicionados por la implementación del sistema Son independientes de la computación. Son independientes del sistema. Ninguna de las anteriores.
La arquitectura establece: Division en capas del sistema en base a las necesidades de distribución Configuración de componentes proporcionando una vista estructural a grandes ragos de la aplicación así como de la ubicación de la funcionalidad. a y b son verdaderas. Ninguna de las anteriores.
Si necesitamos proporcionar una interfaz para crear familias de objetos relacionados dependientes, sin especificar sus clases concretas. ¿ Qué patrón debemos aplicar? Patrón State Patrón Composite Patrón Bridge. Patrón Abstract Factory.
De los siguientes patrones, indica cuál de ellos es Creacional El patrón state El patrón Bridge. El patrón Singleton El patrón Proxy.
¿Cuál de las siguientes sentencias describe mejor cuándo utilizar el patrón State? El patrón puede ser utilizado cuando una clase tiene muchos estados. El patrón puede ser utilizado cuando un objeto parece cambiar de clase en tiempo de ejecución El patrón puede ser utilizado cuando cada estado tiene atributos relevantes a un objeto de contexto específico. Ninguna de las anteriores.
¿Cuál de las siguientes afirmaciones es falsa? Los patrones son mas abstractos y generales que los frameworks Un patrón puede incorporar un framework y un framework puede hacer uso de varios patrones un Patron es una descripción de cómo se puede resolver un problema, y un framework da soporte a una posible solución.
¿ Cual de los siguientes grupos de patrones incluye sólo patrones de comportamiento? Command, Composite, Builder Command, Proxy, Strategy Strategy, Observer, Command.
Uno de los principales inconvenientes del patrón Builder es: Aumenta excesivamente el número de clases del sistema No permite crear distintas variantes de un producto Existe un alto acoplamiento entre el cliente y el constructor del producto.
¿Cuál de los siguientes grupos de patrones incluye solo patrones estructurales? Composite, Builder, Proxy Façade, Composite, Proxy Proxy, Factory Method, Command.
¿ Qué patrón permitiría crear colas de prioridad o delegar la ejecución de distintas operaciones? Strategy Command Proxy.
¿Qué patrón seria mejor aplicar cuando no sabemos la clase de los objetos que van a crear las subclases de una clase abstracta? Factory Method Abstract Factory Builder.
El patrón Command hace uso, entre otros, de los siguientes patrones GRASP Polimorfismo, protección de variaciones y creador Indirección, frabricación pura y polimorfismo Creador, Experto y delegación.
Cuando necesitamos trabajar con distintos tipos de recursos que dependen de la localización debemos pensar en la conveniencia de usar el patrón Proxy Abstract Factory Composite.
¿Cuál es el principal inconveniente de la fabricación pura? Si se abusa de ello, aparecen clases con un único método( clases “functoides”) dando lugar a un diseño centrado en funciones que se implementan sobre un diseño orientado a objetos El problema es que las clases ficticias (es decir, clases que no existen en el análisis original) añadidas en la fabricación pura solo pueden contener un método. Mejora la cohesión pero empeora el acoplamiento.
Hemos implementado un sistema para la agencia F de noticias de manera que la agencia puede informar inmediatamente, cuando ocurre cualquier evento, a cualquiera de sus clientes por Email, SMS, Twitter o cualquier otro canal que puedan requerir en un futuro ¿ Con qué patrón lo hemos implementado? Strategy Obrserver Command.
Un componente de entidad de negocio: Representa a las entidades de dominio localizadas en la capa lógica de negocio Representa a las entidades de dominio que pueden almacenar y transitar por las diferentes capas Representa a las entidades de negocio pero conteniendo solamente su estado.
Según el patrón GRASP Creador, la clase A debe ser la encargada de crear una instancia de la clase B si: A contiene o agrega instancias de B B usa instancias de A Las dos son ciertas.
En una arquitectura de 3 capas, ¿Cómo se relacionan las capas de dominio y presentación? La capa de dominio nunca debe depender de la capa de presentación La capa de presentación nunca debe depender de la capa de dominio Nunca deben estar relacionadas.
¿Qué patrón GOF permite crear estructuras jerárquicas de objetos, de forma que el cliente pueda manejar objetos simples o compuestos indistintamente? Builder Strategy Composite.
Cuando se usa el patrón Active Record, ¿Dónde se sitúa el código de acceso a la base de datos? En el controlador del sistema En clases especializadas de acceso a datos En los objetos de dominio.
¿Cuál es la diferencia entre los patrones de diseño y los frameworks? Los frameworks se basan en uno o varios patrones para solucionar problemas concretos Los patrones usan frameworks para ofrecer soluciones reutilizables Ninguna, los frameworks se usan para el diseño detallado de un sistema.
En una arquitectura de capas, ¿Qué capas se pueden ver afectadas por una nueva funcionalidad? Solamente la capa de dominio Solamente la capa de presentación Puede haber varias capas afectadas.
El patrón GOF Abstract Factory: Provee un interfaz para crear familias de productos de forma consistente Permite controlar el número de instancias de los objetos que se crearan Disminuye notablemente el número de clases del sistema.
¿Cuál de las siguientes afirmaciones es CIERTA? Para que un diseño sea fácil de mantener y usar: Debemos mantener un bajo acoplamiento y una baja cohesión Debemos mantener un alto acoplamiento y una baja cohesión Debemos mantener un bajo acoplamiento y una alta cohesión.
¿Cuál de las siguientes afirmaciones sobre el patrón Remote Façade es FALSA? Las fachadas remotas no deben contener lógica de dominio Las fachadas remotas no deben tener estado Las fachadas remotas deben ofrecer un único método para acceder a todas las propiedades de un objeto.
El uso de interfaces de grano fino mejora el rendimiento de los sistemas distribuidos: Verdadero Solo si el diseño es orientado a objetos Falso.
El patrón GRASP Indirección implica: Relacionar dos clases mediante una clase intermedia Favorecer las relaciones directas entre clases, evitando caminos más largos Asignar menos responsabilidades a las clases que hay en la frontera con otras capas.
¿Cuál de las siguientes responsabilidades NO corresponde a la capa de presentación? Comunicarse con las capas superiores para ofrecer funcionalidades complejas Manejar la interacción y mostrar información al usuario Comunicarse con la capa de lógica de dominio para transmitir los cambios realizados por el usuario.
Los objetos Data Transfer Object: Solamente pueden contener datos de un objeto de dominio para garantizar la consistencia Pueden contener datos de varios objetos de dominio para mejorar el rendimiento No deben contener datos de los objetos de dominio para aumentar la cohesión.
¿Qué mide el rendimiento (performance) de un sistema? El tiempo de respuesta El tiempo que el sistema está funcionando El tiempo que el sistema funciona sin fallos.
Cuando se desea simplificar el acceso a un subsistema o capa ¿Qué patrón GOF es el más indicado? Strategy Proxy Façade.
¿Con que patrón podemos mantener la consistencia cuando se modifican dos instancias de un mismo objeto desde distintas partes del sistema? Unit of Work Identity Map Lazy Load.
¿A que nos referimos normalmente cuando hablamos de la arquitectura de un sistema? A la infraestructura de hardware que dará soporte al sistema A los principales componentes del sistema y sus relaciones A la estructura de bajo nivel de cada componente del sistema.
¿con que patrón de lógica de dominio se combina normalmente el patrón Row Data Gateway? Table Data Gateway Domain Model Transaction Script.
¿En qué capa se deben situar las operaciones complejas de la aplicación? En la capa de dominio En la capa de servicio En la capa de presentación.
El acoplamiento entre clases es una medida de: El grado de dependencia entre las clases del sistema Cuántas funcionalidades distintas se asigna a cada clase Cuántas clases intermedias hay que recorrer para llegar de una clase A a otra B.
¿Cuándo es conveniente usar el patrón Data Mapper? Cuando el modelo de dominio es sencillo Cuando el modelo de dominio es complejo Cuando se usa una base de datos orientada.
¿Cuál de los siguientes patrones no se aplica a la capa de dominio? Transaction Script Table Module Table Data Gateway.
¿Cuál es la diferencia entre los patrones Table Module y Domain Model? Table Module pertenece a la capa de acceso a datos, y Domain Model a la capa de lógica de dominio Normalmente, con Table Module hay un objeto por cada tabla, mientras que con Domain Model hay un objeto por cada fila de la tabla Las dos son ciertas.
Las clases de diseño que surgen como resultado del patrón Fabricación Pura suelen aparecer Para representar objetos de dominio Por descomposición funcional, para dividir responsabilidades Por la aparición de jerarquías de herencia.
¿Cuándo conviene aplicar el patrón GRASP “Experto en Información” en cascada? Cuando queremos prevenir la aparición de nuevas dependencias entre clases Cuando queremos romper intencionadamente la encapsulación de información Cuando queremos traspasar datos de la lógica de negocio a la capa de acceso a datos.
¿Qué tipo de acoplamiento debemos evitar para facilitar los cambios de tecnología en la capa de presentación? Que la capa de presentación tenga como dependencias clases de la capa de lógica de negocio. Que la capa de lógica de negocio tenga como dependencias clases de la capa de presentación. Que las clases de la capa de presentación tengan dependencias entre sí. .
¿Qué ventaja NO podemos conseguir con el patrón GOF “Proxy”? Controlar el acceso a un objeto. Simular un objeto remoto de forma local. Proporcionar una implementación alternativa para un objeto.
¿Quién debe ser el encargado de crear los objetos de transferencia de datos (DTO)? El objeto de dominio que contiene los datos. Un objeto proxy que ocupa el lugar del DTO. Un objeto Assembler que tiene acceso a los objetos de dominio.
¿Qué tipo de interfaces son deseables para llamadas entre objetos distribuidos? Interfaces sin estado. Interfaces de grano fino Interfaces de grano grueso.
¿Qué patrón es más recomendable para añadir nuevas funcionalidades a un objeto? Decorator Composite Adapter.
Un lenguaje específico de dominio (DSL)… Se construye a partir de un diagrama de clases UML Puede representar todo o una parte del dominio para el que está construido. Es menos abstracto que un lenguaje de propósito general.
¿Qué patrón permite reutilizar un mismo objeto de acceso a datos para distintas vistas? Model View Controller Model View Presenter Code-behind.
¿En qué se basa el patrón GRASP “Polimorfismo”? Las instancias de clases hijas se pueden comportar como si se tratase de la clase padre. Las instancias de una clase padre se pueden comportar como si se tratase de una clase hija La introducción de una jerarquía de herencia disminuye el acoplamiento.
Los objetos de transferencia de datos (DTO)… Se usan para pasar información entre distintas capas. Contienen los métodos CRUD que se comunican con la base de datos. Pueden contener tanto datos como métodos de lógica de negocio.
En una arquitectura de tipo Microkernel… La escalabilidad es alta debido al pequeño tamaño del núcleo. Cada plugin debe tener una interfaz independiente de las demás. Se pueden añadir nuevas funcionalidades en tiempo de ejecución.
En una arquitectura en capas abiertas… Se permite que las capas inferiores se comuniquen con las superiores. Las capas superiores pueden saltarse algunas de las capas inferiores. Se define una capa de servicio que puede ser usada opcionalmente por la capa de lógica de negocio.
¿Con qué patrón podemos recibir notificaciones cuando cambia el estado de un objeto? Adapter. Observer. Command.
En el patrón GOF “Factory Method”, la clase Creator proporciona una funcionalidad genérica independientemente del tipo de producto que se quiera crear. Verdadero. Falso, esa responsabilidad corresponde a la clase ConcreteCreator. Falso, esa responsabilidad corresponde a la clase ConcreteProduct.
¿En qué consiste el patrón GRASP “Indirección”? Invertir el flujo de llamadas entre dos clases, facilitando así la automatización de pruebas. Separar un conjunto grande de responsabilidades en dos clases distintas, favoreciendo así la cohesión. Asignar una responsabilidad a una clase intermedia, desacoplando así dos clases del sistema.
En el patrón GOF “Builder”, ¿qué clases debe conocer la secuencia de pasos necesaria para construir un producto? La clase Builder. La clase ConcreteBuilder. La clase Director.
¿Qué beneficio obtenemos al usar patrones de software? Disminuye la complejidad de los diseños. Se reduce la cantidad de código que hay que crear. Se simplifica la introducción de nuevas funcionalidades en el futuro.
¿Cuál de los siguientes tipos de acoplamiento es más fuerte? Cuando hay una jerarquía de herencia. Cuando una clase implementa un interfaz. Cuando una clase recibe una lista de instancias de otra clase como parámetro en un método.
¿Cuándo es necesario introducir una clase “Fabricación Pura”? Cuando queremos una clase intermediaria para desacoplar dos clases ya existentes. Cuando el aumento de responsabilidades de una clase pone en peligro su cohesión. Cuando necesitamos aplicar el patrón “Experto en información” en cascada.
¿Qué patrón GOF permite implementar de forma sencilla la funcionalidad “deshacer”? Proxy. Command. Strategy.
¿Qué problema se puede derivar de un excesivo acoplamiento en el diseño de un sistema? Cada clase asume demasiadas responsabilidades. Los cambios en una clase pueden afectar a un gran número de clases distintas. Ninguno, si el acoplamiento no es entre clases de distintas capas.
¿Qué patrón de lógica de negocios permite agrupar cada funcionalidad del sistema en un único método? Domain Model. Table Data Gateway. Transaction Script.
¿Cuál es el principal problema del patrón “Class Table Inheritance”? Es difícil usar un campo identificador único para todas las subclases. Las operaciones join necesarias pueden afectar al rendimiento. Las columnas que no usan todas la subclases desperdician espacio en la base de datos.
¿Cuándo es necesario dividir una clase en dos o más clases distintas? Cuando aplicamos el patrón “Experto en información” en cascada. Cuando el acoplamiento de la clase es demasiado alto. Cuando la cohesión de la clase es demasiado baja.
¿Con qué patrones GRASP está relacionado el patrón GOF Facade? Controlador y bajo acoplamiento. Controlador y experto en información. Bajo acoplamiento y experto en información.
¿Qué información contiene un objeto Data Transfer Object? Con qué Fachada Remota debe comunicarse el cliente para recuperar los datos. Reglas para transformar un objeto del modelo de dominio a representación textual. Datos de uno o más objetos del modelo de dominio. .
¿Qué técnica de diseño de interfaces consiste en realizar un diseño separado de un sitio web para dispositivos móviles? Adaptive web design. Responsive web design. Device-oriented web design.
¿En qué situación NO podemos reemplazar una jerarquía de herencia por una solución distinta en la composición? Cuando la herencia se usa únicamente para heredar un comportamiento. Cuando necesitamos usar el polimorfismo. Cuando las clases hijas sobreescriben métodos de la clase padre.
En el patrón State, ¿qué clase es la encargada de decidir cuál es el siguiente estado cuando hay un cambio de estado? Solamente la clase Context puede tener esa información. Puede ser la clase Context o la clase ConcreteState. Ninguna de las clases implicadas en el patrón deberían tomar esa decisión.
¿Qué técnica podemos usar para evitar acoplar una clase con la implementación concreta de una funcionalidad? Inversión de dependencias. Inyección de dependencias. Inversión de control.
En una arquitectura en capas, ¿por qué la capa de lógica de negocio se sitúa por encima de la capa de acceso de datos? No es necesario, al ofrecer normalmente las mismas funcionalidades se puede intercambiar su orden. Para evitar que la capa de acceso a datos acceda directamente a la capa de servicios. Para desacoplar a las capas superiores de los detalles de acceso a la base de datos.
¿Cuál de las siguientes NO es una ventaja de usar un framework arquitectural? Podemos cambiar fácilmente la arquitectura del sistema. Proporciona una infraestructura que podemos extender con comportamiento personalizado. Establece las reglas mediante las que deben interactuar los componentes del sistema.
Según el principio de inversión de dependencias... Los módulos de bajo nivel no deben depender nunca de abstracciones. Los módulos de alto nivel no deben depender nunca de abstracciones. Los módulos de alto y bajo nivel deben depender de abstracciones.
¿Qué objetos colaboran con el Front Controller para realizar comprobaciones de seguridad? Middleware. Router. Application Controller.
¿Qué patrón de capa de presentación es más adecuado cuando una sola interfaz presenta información de muchos objetos distintos? Model View Controller. Model View Presenter. Model View ViewModel.
En el patron Observer, ¿qué rol es el encargado de llevar un registro de los objetos que deben ser notificados cuando hay un cambio? Subject Observer Client.
¿Qué patrón sería más adecuado para llevar un recuento del número de veces que se llama a cada método de un objeto? Strategy Observer Proxy .
¿Cuál de las siguientes afirmaciones sobre el patrón Remote Façade es falsa? Las fachadas remotas no deben contener lógica de dominio Las fachadas remotas no deben tener estado Las fachadas remotas deben ofrecer un único método para acceder a todas las propiedades de un objeto.
¿Con qué patrón de lógica de dominio se combina el patrón Row Data Gateway? Table Data Gateway Domain Model Transaction Script .
Denunciar test Consentimiento Condiciones de uso