option
Cuestiones
ayuda
daypo
buscar.php
TEST BORRADO, QUIZÁS LE INTERESE: PARCIAL 1 - FIS - TEMA 4 Y 5
COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del Test:
PARCIAL 1 - FIS - TEMA 4 Y 5

Descripción:
Práctica de examen tipo TEST UPM

Autor:
Nicky
OTROS TESTS DEL AUTOR

Fecha de Creación:
09/05/2024

Categoría: Otros

Número Preguntas: 55
COMPARTE EL TEST
COMENTARNuevo Comentario
No hay ningún comentario sobre este test.
Temario:
En la fase de diseño de una aplicación software para una tienda online se ha añadido una nueva clase al diagrama de clases de diseño cuya responsabilidad es gestionar la creación, edición y destrucción de objetos de la clase ‘Producto’ definida en análisis, a fin de permitir el alta, modificación y baja de productos en la aplicación. Además, cuando un usuario solicite dar de alta, editar o dar de baja un producto, esta nueva clase comprobará que el usuario tiene permisos para hacerlo. ¿De qué tipo es la nueva clase que se ha añadido al diagrama? Controlador. Clase del sistema. Clase de interfaz de usuario. Clase del dominio. .
En la fase de diseño de una aplicación móvil para gestionar un dispositivo de reproducción de música se ha añadido una nueva clase al diagrama de clases de diseño cuya responsabilidad es permitir al usuario enviar comandos de voz para variar el volumen. ¿De qué tipo es la nueva clase que se ha añadido al diagrama? Controlador. Clase de interfaz de usuario. Clase del sistema. Clase del dominio. .
Indique la afirmación verdadera: El acoplamiento de un sistema software puede definirse como la forma y grado de interdependencia entre sus módulos. Por lo tanto, todo sistema software bien diseñado debería tener un acoplamiento nulo. La cohesión de un sistema software puede definirse como la forma y grado en que las tareas realizadas por cada módulo se relacionan entre sí. Por lo tanto, es deseable que un sistema software tenga una alta cohesión. La modularidad de un sistema software puede definirse como el grado en que dicho sistema se compone de partes discretas denominadas módulos. Los sistemas software deberían ser modulares y tener la máxima cantidad de módulos posible. La modularidad de un sistema software no tiene relación con su acoplamiento ni con su cohesión. .
Dado el siguiente fragmento de código, se puede afirmar que existe: Un acoplamiento de contenido. Un acoplamiento de control dañino, ya que un valor generado en el método m2 afecta al comportamiento del método m1. Un acoplamiento de marcado, ya que las operaciones internas del método m1 marcan el comportamiento del método m2. Un acoplamiento común, ya que los métodos m1 y m2 comparten memoria. .
Dado el siguiente fragmento de un diagrama de clases de un sistema de gestión de videoclubs que se está modelando se puede afirmar que: Se ha aplicado el principio de abstracción exclusivamente por especialización. Se ha aplicado principio de abstracción exclusivamente por agrupación. Se ha aplicado el principio de abstracción tanto por especialización como por agrupación. No se ha aplicado el principio de abstracción ni por especialización ni por agrupación. .
¿Qué cambio habría que realizar para que el diseño representado por el siguiente diagrama de clases cumpliese con el principio de responsabilidad única? Aplicar el patrón de diseño Método factoría para que la creación de nuevos empleados se delegue a una nueva clase. Crear una nueva clase y trasladar a ella la responsabilidad del envío de correos electrónicos. Dividir la interfaz IDepartamento en interfaces más ligeras. Ninguno, ya que el diseño cumple con el principio de responsabilidad única.
Un banco está realizando el diseño de su sistema de gestión, en concreto del módulo encargado de las cuentas bancarias. Actualmente el banco admite dos tipos de cuenta: cuenta de ahorro y cuenta corriente. Sin embargo, el banco prevé ofertar nuevos tipos de cuenta en el futuro, después de que el sistema haya sido implantado. ¿Qué principio de diseño han seguido para manejar esta situación, obteniendo el diseño que se muestra a continuación? Principio de segregación de interfaces. Principio de responsabilidad única. Principio abierto/cerrado. Ninguno. .
Dado el siguiente diagrama de clases, se puede afirmar que el diseño representado: Cumple con el principio de sustitución de Liskov. No cumple con el principio de sustitución de Liskov porque calcularSimilaridad no puede recibir como parámetros objetos de clases derivadas de Serie y/o Pelicula. No cumple con el principio de sustitución de Liskov porque Serie y Pelicula tienen métodos públicos diferentes y por tanto no presentan una misma interfaz. No cumple con el principio de sustitución de Liskov porque el sistema de recomendación necesita tener conocimiento sobre clases hijas de Producto. .
Dado un diseño representado mediante un diagrama de clases, podemos afirmar que este diseño incumple el principio de segregación de interfaces siempre que alguna clase se ve obligada a: Implementar varias interfaces. Implementar una interfaz con todos sus métodos. Depender de varias interfaces. Depender innecesariamente de algún método provisto por una interfaz. .
Dado el siguiente diagrama de clases y considerando que se ha aplicado el principio de inversión de dependencias, podemos afirmar que: El principio de inversión de dependencias no se ha aplicado correctamente porque la clase Boton depende de los detalles de implementación de la clase Lampara. El principio de inversión de dependencias no se ha aplicado correctamente porque la clase Boton no puede acceder a todos los métodos de la clase Lampara. Si se añadiese una nueva clase Motor que implementase la interfaz IEncendible, ésta podría ser utilizada por la clase Boton sin necesidad de modificar el código de la clase Boton. La clase Boton proporciona una interfaz para desacoplar su código del de la clase Lampara. .
La aplicación de los principios SOLID permite mitigar ciertos defectos en los diseños, de forma que: Al aplicar el principio de responsabilidad única se reduce el acoplamiento. Al aplicar el principio de inversión de dependencias se aumenta la cohesión. Al aplicar el principio de segregación de interfaces se puede lograr aumentar la cohesión, pero nunca reducir el acoplamiento. Ninguna de las otras opciones es verdadera. .
Se ha implementado una aplicación empleando el lenguaje de programación Java de acuerdo al diagrama de clases adjunto. Teniendo en cuenta este diagrama, ¿cuál de los siguientes atributos debería estar en la clase “Mecanico”? private Revision revision. private List<Revision> revisiones. private Coche coche. private List<Coche> coches. .
Dado el siguiente esqueleto de código Java correspondiente a la implementación de dos clases A y B: ¿Cuál de las siguientes relaciones podría ser la que había entre las clases A y B en el diagrama de clases? a b c d.
Dado el siguiente diagrama de clases en el que por simplicidad no se representan métodos ni atributos, ¿cuál debería ser la cabecera de la clase A implementada en Java? public class A extends C implements D. public class A extends C implements B, D. public class A extends C implements B. public class A extends B implements C. .
Una aplicación web cliente integrada en un portal de comercio electrónico muestra a los usuarios recomendaciones de productos relacionados con el que están viendo en ese momento. Para ello, la aplicación realiza peticiones a un servidor cuando los usuarios seleccionan un nuevo producto. Sin embargo, esta aplicación almacena todas las recomendaciones realizadas de modo que, si los usuarios vuelven a visitar un mismo producto, en lugar de realizar una nueva petición al servidor, muestra las recomendaciones que había almacenado previamente. ¿Qué patrón de diseño es adecuado para implementar esta funcionalidad? Patrón Proxy. Patrón Método factoría. Patrón Singleton. Patrón MVC. .
Para desarrollar interfaces gráficas en Android se hace uso de objetos Java pertenecientes a la clase android.view.View o a clases derivadas de esta. A estos objetos se pueden registrar escuchadores (listeners), los cuales permiten especificar qué código se debe ejecutar cuando ocurre un determinado evento asíncrono, por ejemplo, cuando el usuario pulsa sobre un botón. En base a esta información, ¿cuál es el patrón de diseño utilizado para gestionar estos eventos? Sense-Compute-Control. Publish-Subscribe. Comando. Observer.
Dado el siguiente fragmento de código Java correspondiente a una clase implementada de acuerdo al patrón de diseño Singleton, se puede afirmar que: El patrón Singleton se ha implementado correctamente. El patrón Singleton no se ha implementado correctamente, ya que al ser el constructor público no se garantiza que exista una única instancia de la clase Agenda. La correcta aplicación del patrón Singleton requiere emplear varias clases relacionadas entre sí, de modo que la implementación mostrada es errónea. No es adecuado aplicar el patrón Singleton para esta situación, ya que es igual de beneficioso emplear una variable global. .
Para desarrollar un sistema de gestión bibliotecaria se modelan las clases Catalogo y Recurso. La clase abstracta Recurso tiene varias clases hijas: Libro, AudioLibro, y Audiovisual. La clase Catalogo debe crear los Recursos, pero se pretende flexibilizar este proceso de creación todo lo posible por lo que lo más conveniente es: Implementar el patrón Método factoría, para lo cual habría que crear una nueva clase con un método factoría responsable de crear los objetos convenientes de las clases hijas de Recurso. Implementar el patrón Método factoría, creando en la clase Catalogo un método factoría encargado de crear los objetos convenientes de las clases hijas de Recurso. Aunque sería posible implementar el patrón Método factoría, éste no sería útil porque tendría que existir una clase CatalogoConcreto que estaría altamente acoplada con la clase Recurso. No se puede implementar el patrón Método factoría.
El patrón de diseño Adaptador o Adapter: Se puede emplear para transformar una interfaz provista por una clase en otra interfaz esperada por otras clases. Se puede emplear para solicitar una operación a un objeto sin conocer el contenido de esta operación ni el receptor real de la misma. Se considera un patrón de comportamiento, ya que adapta la forma en la que se comporta una determinada clase para lograr que pueda emplear una interfaz que antes no podía. Solo se puede aplicar empleando herencia. .
Dada la siguiente clase enmarcada en un sistema de gestión que será utilizado por una discográfica, se puede afirmar que: No se puede identificar ningún antipatrón. Es posible identificar el antipatrón Código Spagetti, ya que se puede determinar que la programación de los métodos tiene una estructura muy compleja. Se puede identificar el antipatrón God Class ya que, aunque se cumple el principio de responsabilidad única, la clase Discográfica concentra una gran cantidad de atributos y métodos. Se puede identificar el antipatrón God Class, siendo posible mejorar el diseño creando dos clases, Artista y Disco, que alberguen los atributos y métodos relacionados con esas entidades. .
Se pretende realizar una aplicación de escritorio sencilla en Java utilizando la librería gráfica Swing para la implementación de la interfaz gráfica de usuario. Los componentes Swing atenderán los eventos ocasionados por la interacción del usuario con la aplicación, los cuáles serán posteriormente procesados por un componente de negocio que a su vez podrá utilizar otro componente para almacenar o recuperar datos. ¿Qué patrón o estilo arquitectónico se está aplicando? Pipe and Filter. State-Logic-Display. Sense-Compute-Control. Ninguna de las otras opciones es correcta. .
Se está desarrollando un portal de compras en línea, al cual deberá de poder accederse empleando distintos tipos de dispositivos mediante un navegador web. Por tanto, se desea desacoplar tanto como sea posible la representación gráfica de la información de la forma en la que ésta se almacena y estructura dentro del sistema. ¿Qué patrón o estilo arquitectónico se adapta mejor a estos requisitos? El patrón arquitectónico Sense-Compute-Control. El estilo arquitectónico Peer-to-peer. El patrón arquitectónico Modelo-Vista-Controlador. El estilo arquitectónico Pipe and Filter. .
Una compañía quiere desarrollar un sistema software para permitir a jugadores profesionales de e-Sports transmitir sus partidas en directo, de tal manera que, a través de una plataforma web, cualquier aficionado pueda elegir el conjunto de partidas que quiere ver en un momento determinado (cada aficionado recibirá 1 flujo de vídeo por partida elegida). ¿Qué estilo arquitectónico se debería utilizar para desarrollar este sistema software a fin de conseguir una difusión eficiente de los flujos de vídeo enviados a los espectadores? Peer to peer. Pipe and Filter. Event-Based. Publish-Subscribe.
De acuerdo a la siguiente figura, podemos afirmar que el componente Server representado: Contiene la implementación de una única clase. Se podría sustituir por otro componente que implementase la interfaz HTTPRequest. Provee la interfaz Database y requiere la interfaz HTTPRequest. No está bien diseñado puesto que no encapsula adecuadamente su implementación. .
Cada uno de los diagramas de componentes adjuntos (los cuales indican las clases pertenecientes a cada componente) representa un posible diseño para un sistema software que está compuesto por un total de 4 clases: A, B, C y D. El diagrama de componentes situado a la izquierda muestra el diseño A y el que está situado a la derecha muestra el diseño B. En base a estos diagramas de componentes, se puede afirmar que: El diseño A es mejor que el B en términos de acoplamiento. El diseño A es mejor que el B en términos de cohesión. El diseño A es mejor que el B en términos de modularidad. Ninguna de las otras opciones es verdadera. .
De acuerdo al Modelo de Vistas de Arquitectura 4+1, ¿para representar qué vista se podría utilizar un diagrama UML que incluyese el siguiente elemento? Vista lógica. Vista física. Vista de desarrollo. El diagrama UML no sería útil para representar ninguna de las vistas definidas por el Modelo de Vistas de Arquitectura 4+1. .
Dado el siguiente diagrama de despliegue correspondiente a una aplicación Android, es posible afirmar con total seguridad que: Al menos uno de los componentes de la aplicación es utilizado por el dispositivo Android del usuario final. El diagrama de despliegue de la aplicación representa un total de 2 nodos. La aplicación tiene un total de tres componentes. La aplicación tiene un total de dos interfaces entre componentes. .
Un equipo está desarrollando una aplicación web que implementa una red social siguiendo el patrón MVC (Modelo-Vista-Controlador). Cuando se registra un nuevo usuario en la red social, se debe comprobar que el email es único para garantizar que no existan en la aplicación dos usuarios con el mismo email. De las siguientes clases, ¿cuál debería realizar esta comprobación? Controlador de usuarios. Modelo de usuarios. Vista de usuarios. Clase sistema.
El acoplamiento de un sistema software puede definirse como: La forma y grado en que dicho sistema se divide en módulos. La forma y grado en que dicho sistema depende de componentes externos. La forma y grado de interdependencia entre sus módulos. La forma y grado en que las tareas realizadas por cada módulo se relacionan entre sí. .
Para pasar del diseño A (mostrado a la izquierda) al diseño B (mostrado a la derecha), se ha aplicado: Abstracción por especialización. Abstracción por descomposición. Abstracción por agregación. Ninguna de las otras respuestas es verdadera. .
Dado el siguiente fragmento de un diagrama de clases, se puede afirmar que el diseño representado: Cumple con el principio de responsabilidad única. No cumple con el principio de responsabilidad única porque la clase “EstadisticaTorneo” tiene más de una responsabilidad. No cumple con el principio de responsabilidad única porque existen múltiples razones por las cuales la clase “EstadisticaPartido” podría necesitar ser modificada. No cumple con el principio de responsabilidad única porque la clase “AplicacionPDF” debería implementar una interfaz para desacoplar su código del de la clase “EstadísticaTorneo”. .
Asumiendo que el diseño representado por el siguiente diagrama ha sido obtenido aplicando el principio SOLID abierto/cerrado, se puede afirmar que: Si se crease una nueva clase “AudioV2” como clase hija de “Audio”, el motor de búsqueda podría ser utilizado para encontrar este nuevo tipo de recursos. El principio abierto/cerrado no se ha aplicado correctamente porque es imposible extender el comportamiento del motor de búsqueda sin modificar su código. El diseño contempla que, una vez implantado el sistema, se pueda modificar el código de las clases “Foto” y “Audio”, pero no la interfaz “IBuscable”. Se puede extender el comportamiento del motor de búsqueda para que incluya recursos que carezcan de URL sin violar ningún principio SOLID, siempre y cuando estos recursos tengan una descripción. .
¿Cuál de los siguientes esqueletos de código Java propuestos para la clase A es coherente con el diagrama de clases adjunto? public class A { private List<B> Rb; } public class A implements IC { private List<IB> Rb; } public class A { private List<IB> Rb; private IC Rc; } public class A { private List<IB> Rb; } .
Una compañía de desarrollo de software tiene una librería capaz de generar catálogos de productos en formato PDF. Esta librería ha sido utilizada con éxito en anteriores proyectos y ahora la compañía quiere reutilizarla en una nueva aplicación que también requiere de esta funcionalidad. Aunque tanto la librería como la aplicación se han desarrollado en Java, ésta no puede ser utilizada porque el modelo de datos para el que se diseñó la librería es diferente al que usa la aplicación para modelar sus productos. ¿Qué patrón de diseño se podría utilizar para resolver este problema? Adapter. Método factoría. Comando. Proxy. .
¿Qué estilo arquitectónico sigue un sistema software que permite a sus usuarios recibir vía email de forma automática y periódica las novedades publicadas sobre un tema previamente seleccionado? Observer. Pipe and Filter. Event-Based. Publish-Subscribe.
De acuerdo al Modelo de Vistas de Arquitectura 4+1, ¿para representar qué vista se podría utilizar un diagrama UML compuesto por elementos como el siguiente? Vista lógica. Vista física. Vista de desarrollo. El diagrama UML no sería útil para representar ninguna de las vistas definidas por el Modelo de Vistas de Arquitectura 4+1.
De acuerdo al siguiente diagrama de despliegue correspondiente a una aplicación para teléfonos móviles, se puede afirmar que: Un componente desplegado en el teléfono móvil del usuario final podrá leer datos directamente de la base de datos. El servidor web y el servidor de base de datos serán desplegados en máquinas físicas diferentes. La aplicación tendrá un alto acoplamiento, ya que existen interdependencias entre componentes. El diseño de la aplicación cumple el principio de segregación de interfaces.
Un equipo de desarrollo ha definido una serie de casos de prueba de caja negra para un componente software que se tiene intención de utilizar en el desarrollo de un sistema de monitorización encargado por un determinado cliente. Tras ejecutar todos los casos de prueba y no encontrar ningún error, el equipo de desarrollo concluye que las funcionalidades proporcionadas por este componente funcionan correctamente. Por tanto: El componente ha sido verificado, pero no validado. El componente ha sido validado, pero no verificado. El componente ha sido verificado y validado. El componente no ha sido ni verificado ni validado.
¿Cuál es la complejidad ciclomática del siguiente grafo de flujo construido mediante la prueba de la ruta base? 3 4 5 7.
Se pretenden realizar pruebas de caja negra empleando la técnica de análisis de valores límite para probar el siguiente método: public void iniciarSimulacion(String id, int nIteraciones) { ... } Teniendo en cuenta que “id” debe ser una cadena de texto con una longitud comprendida entre 4 y 6 y que “nIteraciones” debe ser un número superior a 0 e inferior a 1000, se puede afirmar que: El parámetro “nIteraciones” daría lugar a 3 clases de equivalencia. Habría que definir un total de 6 casos de prueba. Los casos de prueba CP1(“SIM-1”,100) y CP2(“SIM-2”,999) serían equivalentes, puesto que estarían probando las mismas clases de equivalencia. Sería imprescindible conocer la implementación del método “iniciarSimulacion” para definir los casos de prueba. .
Se pretenden realizar las pruebas de integración de un sistema software que tiene los módulos mostrados en la figura adjunta, los cuales están organizados jerárquicamente. Indique la afirmación verdadera considerando que se va a llevar a cabo una estrategia de integración descendente en anchura: Para probar la integración de M1 y M2 únicamente se deben crear los esqueletos de M4 y M5. Para probar la integración de M2, M4 y M5 resulta imprescindible crear un controlador que simule el comportamiento de M1. Una vez probada la integración de M1 y M2, el siguiente paso consiste en reemplazar el esqueleto de M3 por el módulo M3. Una vez probada la integración de M1 y M2, el siguiente paso consiste en reemplazar los esqueletos de M4 y M5 por los módulos M4 y M5. .
Tras finalizar la implementación de una determinada aplicación software, un equipo de desarrollo ha buscado y reunido a un conjunto de posibles usuarios finales a los que ha organizado en tres grupos. Dichos usuarios han probado la aplicación software empleando para ello unos ordenadores puestos a su disposición por el equipo de desarrollo que han sido configurados por este equipo específicamente para la realización de las pruebas. Durante las pruebas, cada grupo de usuarios utilizó la aplicación para ejecutar diferentes casos de uso y terminó rellenando una encuesta, la cual fue posteriormente procesada por el equipo de desarrollo a fin de mejorar la aplicación software implementada. ¿Qué tipo de pruebas se han realizado? Pruebas de humo. Pruebas de despliegue. Pruebas alfa. Pruebas beta. .
¿En qué tipo de pruebas se provocan situaciones límite para que el software falle? Pruebas de seguridad. Pruebas de estrés/tensión. Pruebas de rendimiento. Pruebas de regresión. .
Se pretenden realizar las pruebas de integración de un sistema software que tiene los módulos mostrados en la figura adjunta, los cuales están organizados jerárquicamente. Indique la afirmación verdadera considerando que se va a llevar a cabo una estrategia de integración ascendente: Para probar la integración de M1 y M2, resulta recomendable que previamente se haya probado la integración de M2, M4 y M5. Una vez probada la integración de M6 y M7, el siguiente paso consiste en probar la integración de M1 y M3. Para probar la integración de M4 y M5 resulta imprescindible crear el esqueleto de M2. Hay que crear un controlador que simule el comportamiento de M2 para probar la integración de M4 y M5. .
Se pretenden realizar las pruebas de integración de un sistema software que tiene los módulos mostrados en la figura adjunta, los cuales están organizados jerárquicamente. Indique la afirmación verdadera considerando que se va a llevar a cabo una estrategia de integración descendente en profundidad: Para probar la integración de M1 y M2 resulta imprescindible crear, entre otros, los esqueletos de M4 y M5. Para probar la integración de M2, M4 y M5 resulta imprescindible crear un controlador que simule el comportamiento de M1. Para probar la integración de M1 y M2 se han de crear, exclusivamente, los esqueletos de M4 y M5. Una vez probada la integración de M1 y M2, el siguiente paso consiste en reemplazar el esqueleto de M3 por el módulo M3. .
Se pretenden realizar pruebas de caja negra empleando la técnica de particiones de equivalencia para probar el siguiente método: public void setValores(String id, double area) { ... } Teniendo en cuenta que “id” debe ser una cadena de texto no vacía de longitud máxima 3 y que “área” tiene que tener valores positivos estrictamente menores que 100, se puede afirmar que: Sería necesario conocer la implementación del método “setValores” para determinar las clases de equivalencia a las que darían lugar sus parámetros. El parámetro “id” daría lugar a 2 clases de equivalencia. Habría que definir un total de 6 casos de prueba, uno por cada clase de equivalencia. Los casos de prueba CP1(“A5”,100) y CP2 (“B1”,125) serían equivalentes, puesto que estarían probando las mismas clases de equivalencia. .
Tras implementar un sistema, un programador desea realizar una serie de pruebas de caja negra. Para un método en particular, el programador define las siguientes tablas tras aplicar la técnica de particiones de equivalencia: ¿Se han definido todos los casos de prueba necesarios de acuerdo a la técnica de particiones de equivalencia? Si. No, faltaría un caso de prueba por añadir. No, faltarían dos casos de prueba por añadir No, faltarían tres casos de prueba por añadir.
Se pretenden realizar pruebas de caja negra utilizando la técnica de particiones de equivalencia para probar una función cuyos datos de entrada son un número mayor que cero y un rol que debe tomar alguno de los siguientes valores: “Alumno”, “PDI” o “PAS”. ¿Qué casos de prueba se podrían definir de acuerdo a esta técnica? CP1 (5, “Alumno”), CP2 (5,“PDI”), CP3 (5,“PAS”). CP1 (5, “Alumno”), CP2 (5,“Director”), CP3(-1,“PDI”). CP1 (5, “Alumno”), CP2 (5,“PDI”), CP3 (5,“PAS”), CP4(-1,“Director”). CP1 (5, “Alumno”), CP2 (5,“PDI”), CP3 (5,“PAS”), CP4(-1,“PDI”), CP5(1,“Director”). .
Se pretenden realizar pruebas de caja negra, utilizando tanto la técnica de particiones de equivalencia como la de análisis de valores límite, para probar una función que recibe como entrada una cadena de caracteres cuya longitud debe estar entre 4 y 6. ¿Qué casos de prueba se podrían definir de acuerdo a estas técnicas? CP1 (“ABCD”), CP2 (“AB”), CP3 (“ABCDEFGH”). CP1 (“ABCDE”), CP2 (“ABCDEF”), CP3 (“ABC”), CP4 (“ABCDEFG”). CP1 (“ABCD”), CP2 (“ABCDEF”), CP3 (“ABC”), CP4 (“ABCDEFG”). CP1 (“ABCD”), CP2 (“ABCDE”), CP3 (“ABCDEF”). .
Se pretenden realizar pruebas de caja negra utilizando la técnica de particiones de equivalencia para probar una función que recibe como entrada un número que puede ir de 0 a 12000. ¿Qué casos de prueba se podrían definir de acuerdo a esta técnica? CP1 (5000), CP2 (15000). CP1 (5000), CP2 (-1000), CP3 (15000). CP1 (-1000), CP2 (15000). CP1 (-1), CP2 (0), CP3 (12000), CP4 (12001). .
Dado el siguiente grafo de flujo construido mediante la prueba de la ruta base, ¿cuántos casos de prueba serán necesarios para cubrir todas las rutas independientes del conjunto base? 2 3 4 5.
El hecho de que un grafo de flujo construido mediante la prueba de la ruta base tenga una complejidad ciclomática de 4 indica: Que el conjunto base está formado por 4 rutas independientes. Que existen 4 nodos predicado en el grafo. Que el grafo tiene 3 regiones. Que se necesitan definir 8 casos de prueba para cubrir todo el código.
Se ha implementado una prueba con JUnit a fin de probar la clase “Calculadora”. A continuación, se muestra el código de esta clase y de esta prueba: ¿Qué se puede afirmar sobre la prueba implementada? Es una prueba unitaria que podría haberse definido empleando tanto una técnica de caja blanca como de caja negra. Tiene que ser necesariamente una prueba definida mediante la técnica de análisis de valores límite. Tiene que ser necesariamente una prueba definida mediante la técnica particiones de equivalencia. Tiene que ser necesariamente una prueba definida mediante la técnica de prueba de la ruta base. .
Un GIP (grupo independiente de prueba) va a empezar a planificar los casos de prueba de una librería publicada en un repositorio de GitHub con una licencia abierta, la cual se tiene intención de utilizar posteriormente en un proyecto. El repositorio de GitHub, además de incluir todo el código fuente, tiene una Wiki que incluye información sobre la librería, incluyendo detalles sobre el comportamiento esperado de su funcionalidad. ¿Qué pruebas realizará el GIP? Pruebas de caja blanca, ya que son las únicas que puede realizar. Pruebas de caja negra, ya que son las únicas que puede realizar. Podría realizar tanto pruebas de caja blanca como de caja negra, ya que se complementan. Aunque podría realizar tanto pruebas de caja blanca como de caja negra, realizará únicamente pruebas de caja blanca ya que si estas pruebas pueden ser realizadas no tiene sentido realizar pruebas de caja negra. .
En relación con la verificación y validación, se puede afirmar que: Las actividades de validación son aquellas que buscan asegurar que el software implementa correctamente una función específica. Las actividades de verificación son aquellas que buscan asegurar que el software construido se corresponde con los requisitos del cliente. Las actividades de validación son aquellas encaminadas a realizar un tratamiento de excepciones adecuado. Ninguna de las otras respuestas es verdadera.
Denunciar Test