UT2 - Entornos de trabajo (Presentación IES El Rincón)
![]() |
![]() |
![]() |
Título del Test:![]() UT2 - Entornos de trabajo (Presentación IES El Rincón) Descripción: Test sobre presentación de la UT2 de ETS |




Comentarios |
---|
NO HAY REGISTROS |
¿Qué es la ingeniería inversa?. Es el proceso de crear un código fuente a partir de un programa compilado. Esto significa que puedes obtener el código original de cualquier software solo con aplicar la ingeniería inversa. Permite a los programadores copiar y plagiar el trabajo de otros. Proceso de analizar código, documentación y comportamiento de una aplicación para identificar sus componentes actuales y sus dependencias con el objetivo de extraer y crear una abstracción del sistema e información del diseño. Es una forma rápida y sencilla de obtener conocimiento detallado sobre cualquier programa. Al practicar ingeniería inversa, el sistema en estudio no es alterado, sino que se produce un conocimiento adicional del mismo. ¿Verdadero o falso?. Verdadero. Falso. ¿Qué es la 'reingeniería'?. Es un caso particular de la ingeniería inversa que consiste en el proceso de extraer el código fuente de un archivo ejecutable. Es el proceso de deshacer o eliminar por completo un software existente y comenzar desde cero. Es un proceso rápido y sin esfuerzo que produce resultados inmediatos. Es un tipo de ingeniería inversa que solo se aplica a software obsoleto o anticuado. Con la ingeniería inversa se facilita el mantenimiento al comprender mejor el sistema. ¿Verdadero o falso?. Verdadero. Falso. Analizar / revisar una aplicación para obtener documentación y crear una nueva versión, ¿es una práctica de ingeniería inversa?. Sí. No. Se aplica sobre algún código de bases de datos (aplicación, código SQL, etc.) para obtener los modelos relacionales o sobre el modelo relacional para obtener el diagrama entidad-relación. Ingeniería inversa de datos. Ingeniería inversa de lógica o de proceso. Ingeniería inversa de interfaces de usuario. Ninguna respuesta es correcta. La ingeniería inversa puede ser varios tipos (marca las respuestas que creas VERDADERAS): Ingeniería inversa de datos. Ingeniería inversa de lógica o de proceso. Ingeniería inversa de interfaces de usuario. Ingeniería inversa de propósito general. Cuando la ingeniería inversa se aplica sobre el código de un programa para averiguar su lógica (reingeniería), o sobre cualquier documento de diseño para obtener documentos de análisis o de requisitos: Ingeniería inversa de datos. Ingeniería inversa de lógica o de proceso. Ingeniería inversa de interfaces de usuario. Ingeniería inversa de análisis. Deducir la lógica (por ejemplo: Clases, modelo de datos) de la aplicación observando cómo se utiliza a nivel de interfaz de usuario (Pantallas): Ingeniería inversa de datos. Ingeniería inversa de lógica o de proceso. Ingeniería inversa de interfaces de usuario. Ingeniería inversa de modelo de datos. ¿Qué es UML(Unified Modeling Language o Lenguaje Unificado de Modelado)?. Es un conjunto de herramientas que permite modelar, construir y documentar los elementos que forman un sistema software orientado a objetos. Permite a los desarrolladores y desarrolladoras visualizar el producto de su trabajo en esquemas o diagramas estandarizados denominados modelos que representan el sistema desde diferentes perspectivas. Es una herramienta exclusiva para programadores y desarrolladores de software. Es un estándar obsoleto y en desuso en la industria del software. ¿Por qué es útil modelar en UML? (PUEDE HABER MÁS DE UNA RESPUESTA CORRECTA). Lenguaje común entre el equipo de desarrollo. Documentar los requisitos, arquitectura, pruebas y versiones. Se puede indicar qué módulos de software vamos a desarrollar y sus relaciones. Permite especificar todas las decisiones de análisis, diseño e implementación. Los diagramas UML se dividen en dos grandes grupos, que son: Diagrama de clases y diagrama de comportamiento. Diagrama estructural y diagrama de clases. Diagrama de clases y diagrama de casos de uso. Diagrama estructural y diagrama de comportamiento. De los siguientes tipos de diagramas, ¿Cuáles son diagramas estructurales?: Diagrama de clases. Diagrama de casos de uso. Diagrama de objetos. Diagrama de actividad. De los siguientes tipos de diagramas, ¿Cuáles son diagramas de comportamiento? (PUEDE HABER MÁS DE UNA RESPUESTA CORRECTA): Diagrama de casos de uso. Diagrama de despliegue. Diagrama de componentes. Diagrama de máquinas de estado. De las siguientes afirmaciones sobre los diagramas estructurales, ¿Cuáles son verdaderas?: Representan la visión estática del sistema. Utilizaremos los diagramas de clases, para ver cómo se distribuyen físicamente en el sistema. Muestran la conducta en tiempo de ejecución del sistema, tanto desde el punto de vista del sistema completo como de las instancias u objetos que lo integran. Utilizaremos los diagramas de Casos de uso. De las siguientes afirmaciones sobre los diagramas de comportamiento, ¿Cuáles son verdaderas?: Representan la visión estática del sistema. Utilizaremos los diagramas de Clases, para ver cómo se distribuyen físicamente en el sistema. Muestran la conducta en tiempo de ejecución del sistema, tanto desde el punto de vista del sistema completo como de las instancias u objetos que lo integran. Utilizaremos los diagramas de Casos de uso. Herramientas CASE (Computer Aided Software Engineering - Ingeniería de Software Asistida por Computadora) para la elaboración de diagramas UML. Algunos ejemplos son: Visual Paradigm for UML. Diagrams.net. ArgoUML. Lucidchart. Existe un plugin de 'Diagrams.net' en IntelliJ. ¿Verdadero o falso?. Verdadero. Falso. Programar con un enfoque orientado a objetos: Tiene como finalidad simular los elementos de la realidad asociada al problema de la forma más cercana posible. Solo es útil para proyectos pequeños. Es un paradigma de programación obsoleto y está siendo reemplazado por enfoques más modernos. Complica el desarrollo del software. Al programar con un enfoque orientado a objetos para simular los elementos de la realidad asociada al problema de la forma más cercana posible, utilizaremos: Atributos. Operaciones que definen su comportamiento. Lenguajes de programación que solo admiten la programación estructurada. Técnicas de programación procedural en lugar de orientación a objetos. En la POO, cuando se indica a un objeto que ejecute una operación determinada se dice que se le pasa un: Comando. Mensaje. Método. Procedimiento. Ventajas de la POO: Fácil de modificar y mantener. Reutilización: Permite desarrollar software en mucho menos tiempo, con menos coste y de mayor calidad. Garantiza un rendimiento superior en comparación con otros enfoques de programación. Es la única forma de desarrollar software robusto y de alta calidad. Ventajas de la POO: Extensible : Es muy sencillo aumentar o modificar la funcionalidad de la aplicación modificando las operaciones. Negocios: Es la única opción para desarrollar aplicaciones empresariales:. Facilidad: Elimina por completo la complejidad del desarrollo de software. Escalable: Facilita la adaptación al entorno y el cambio en las aplicaciones. Cuando se ejecuta un programa orientado a objetos ocurren tres sucesos (marca el INCORRECTO): Los objetos se crean a medida que se necesitan. Los mensajes se mueven de un objeto a otro (o del usuario a un objeto) a medida que el programa procesa información o responde a la entrada del usuario. Cuando los objetos ya no se necesitan, se borran y se libera la memoria. Se produce un desorden en la secuencia de ejecución del programa. Una clase se representa en el diagrama como un rectángulo divido en tres filas, arriba aparece el nombre de la clase, a continuación los atributos con su visibilidad y después los métodos con su visibilidad que está representada por el signo menos "–" para los atributos (públicos) y por el signo más "+" para los métodos (privados). ¿Verdadero o falso?. Verdadero. Falso. En la POO, los atributos (marca las respuestas CORRECTAS): Forman la parte estática de la clase. Son un conjunto de variables para las que es preciso definir su nombre y su tipo. Son solo variables globales. Su tipo, puede ser un tipo simple, que coincidirá con el tipo de dato que se seleccione en el lenguaje de programación final a usar, o compuesto, pudiendo incluir otra clase. La visibilidad de un atributo se puede definir como: Público (+): Se pueden acceder desde cualquier clase y cualquier parte del programa. Privado (-): Sólo se pueden acceder desde operaciones de la clase. Protegido (#): Sólo se pueden acceder desde operaciones de la clase o de clases derivadas en cualquier nivel. Paquete(~) Se puede acceder desde las operaciones de las clases que pertenecen al mismo paquete que la clase que estamos definiendo. Se usa cuando el lenguaje de implementación es Java. En cuanto a los métodos en la POO (marca la respuesta INCORRECTA): Representan qué puede hacer una clase. Para definir un método hay que indicar como mínimo su nombre, parámetros, el tipo que devuelve y su visibilidad. También pueden ser: públicos (+), privado (-), protegido (#) y paquete (~). Siempre deben tener un cuerpo de código. En la POO, un método constructor (señala la respuesta INCORRECTA): Son métodos regulares que se utilizan para realizar operaciones adicionales en un objeto una vez que ha sido creado. Tiene el mismo nombre de la clase. No devuelve ningún valor. Se usa para ejecutar acciones necesarias cuando se instancia un objeto de la clase. De los siguientes conceptos, indica el que no tiene relación con la POO: Abstracción. Modularidad. Recursividad. Herencia. De los siguientes conceptos, indica el que no tiene relación con la POO: Paralelismo. Principio de ocultación. Polimorfismo. Recolección de basura. Indica de los siguientes, cual es un concepto de la POO: Concurrencia. Interfaz de programación de aplicaciones (API). Principio de ocultación. Algoritmo. Armar un conjunto de clases que permitan modelar la realidad, o el problema que se quiere atacar: Abstracción. Encapsulamiento. Polimorfismo. Principio de ocultación. Subdividir una aplicación en partes más pequeñas: Polimorfismo. Modularidad. Herencia. Principio de ocultación. Organizar los datos y métodos de una clase, evitando el acceso a datos por cualquier otro medio distinto a los definidos: Polimorfismo. Principio de ocultación. Herencia. Encapsulamiento. La implementación de una clase sólo es conocida por los responsables de su desarrollo: Principio de ocultación. Encapsulamiento. Polimorfismo. Abstracción. Relación que se establece entre objetos en los que unos utilizan las propiedades y comportamientos de otros formando una jerarquía: Modularidad. Abstracción. Herencia. Polimorfismo. Consiste en reunir bajo el mismo nombre comportamientos diferentes: Abstracción. Polimorfismo. Encapsulamiento. Herencia. El entorno de objetos se encarga de destruir automáticamente los objetos: Recolección de basura. Principio de ocultación. Polimorfismo. Abstracción. Cada vez que se construye un objeto en un programa informático a partir de una clase se crea lo que se conoce como ........... de esa clase: Duplicado. Instancia. Herencia. Subclase. Cada instancia en el sistema sirve como modelo de un objeto del contexto del problema. ¿Verdadero o falso?. Verdadero. Falso. En la POO, un objeto se define por: Su estado. Su naturaleza. Su comportamiento. Su tiempo de vida. Es la concreción de los atributos definidos en la clase a un valor concreto: Estado de un objeto. Comportamiento de un objeto. Tiempo de vida de un objeto. Ninguna respuesta es correcta. En la POO, la encapsulación y el ocultamiento: Se refieren a la exposición completa de todos los atributos y métodos de una clase, sin restricciones. Implican la ausencia total de acceso a los datos y funcionalidades de una clase desde otras partes del programa. Aseguran que los datos de un objeto están ocultos, con lo que no se pueden modificar accidentalmente por funciones externas al objeto. Significan que todas las clases en un programa deben tener acceso completo a los atributos y métodos de otras clases, sin restricciones de visibilidad. Cómo identificar las clases en una aplicación (señala la respuesta incorrecta): Empezamos identificando objetos que serán las clases del diagrama examinando el planteamiento del problema. Los objetos se determinan subrayando cada nombre e introduciéndolo en una tabla simple. Una vez encontrados los nombres, buscamos sustantivos que puedan corresponder con las siguientes categorías: entidades externas, cosas, ocurrencias o sucesos, papeles o roles, etc. Las clases en una aplicación se identifican por su nombre de archivo. Cada archivo en el proyecto corresponde a una clase específica. Para definir los atributos de una clase, se puede hacer lo siguiente (marca la respuesta incorrecta): Identificar los datos que son importantes para describir el objeto. Definir los tipos de datos adecuados para cada atributo. Declararlos en cualquier parte del código, sin necesidad de seguir ninguna convención o especificación. Declararlos como variables de instancia dentro de la definición de la clase. Los métodos/operaciones de una clase se definen identificando las acciones que el objeto puede realizar o las operaciones que se pueden realizar con el objeto. ¿Verdadero o falso?. Verdadero. Falso. Para identificar los métodos de una clase, puedes hacer lo siguiente: Debes declarar cualquier función dentro del código y asociarla con el nombre de la clase. Identificar las acciones que el objeto puede realizar. Identificar las operaciones que se pueden realizar con el objeto. Definir los métodos adecuados para cada acción u operación, como funciones dentro de la clase. De las siguientes afirmaciones sobre las relaciones entre clases, señala la respuesta INCORRECTA: Una relación es una conexión entre dos clases que incluimos en el diagrama cuando aparece algún tipo de relación entre ellas. Se representan como una línea continua y pueden ser: de asociación, de herencia, de composición o de agregación. La relaciones se caracterizan por su cardinalidad: que representa cuántos objetos de una clase se pueden involucrar en la relación. Solo se pueden establecer relaciones de herencia entre clases, no hay otros tipos de relaciones posibles. Representa cuántos objetos de una clase se van a relacionar con objetos de otra clase: Cardinalidad/Multiplicidad. Interdependencia. Abstracción. Todas las respuestas son falsas. En una relación entre dos clases hay una cardinalidad para un único extremo de la relación. ¿Verdadero o falso?. Verdadero. Falso. De las siguientes cardinalidades, marca la INCORRECTA: 1 - Uno y sólo uno. 0..1 - Cero o uno. n..m - Desde N hasta M. * - Uno o varios. De las siguientes cardinalidades, marca la INCORRECTA: 0..* - Cero o varios. * - Cero o varios. 1..* - Uno o varios (al menos uno). n..m - N o M. Señala la respuesta CORRECTA: Un alumno se puede matricular en uno o más módulos, un módulo puede tener ningún alumno, uno o varios, cada módulo es impartido por un único profesor, y un profesor puede impartir uno o varios módulos. Un alumno puede no estar matriculado en ningún módulo o estar en varios, un módulo puede tener ningún alumno, uno o varios, cada módulo es impartido por un único profesor, y un profesor puede impartir uno o varios módulos. Un alumno puede no estar matriculado en ningún módulo o estar en varios, un módulo puede tener ningún alumno, uno o varios, cada módulo es impartido por un profesor o varios, y un profesor sólo puede impartir un módulo. Un alumno se puede matricular en uno o más módulos, un módulo puede tener ningún alumno, uno o varios, cada módulo es impartido por un único profesor, y un profesor sólo puede impartir un módulo. Son clases que representan un conjunto finito de valores: Limitados. Enumerados. Restringidos. Especificados. De las siguientes afirmaciones sobre la herencia en la POO, hay una INCORRECTA. Márcala: La herencia es una propiedad que permite a los objetos ser construidos a partir de otros objetos. El objetivo principal de la herencia es la reutilización, poder utilizar código desarrollado con anterioridad. En la herencia, una clase hija puede heredar y modificar cualquier atributo o método de su clase padre sin restricciones. La herencia supone una clase base y una jerarquía de clases que contiene las clases derivadas. Las clases derivadas pueden heredar el código y los datos de su clase base, añadiendo su propio código especial y datos, incluso cambiar aquellos elementos de la clase base que necesitan ser diferentes, es por esto que los atributos, métodos y relaciones de una clase se muestran en el nivel más alto de la jerarquía en el que son aplicables. En la POO existen los diferentes tipos de herencia (marca los CORRECTOS): Herencia compleja. Herencia simple. Herencia múltiple. Herencia singular. En el siguiente diagrama, ¿Qué indica la flecha blanca?. Que las clases 'Alumno' y 'Profesor' tienen una relación de asociación con la clase 'Persona'. Que las clases 'Alumno' y 'Profesor' tienen una relación de composición con la clase 'Persona'. Que las clases 'Alumno' y 'Profesor' heredan de la clase 'Persona'. Que las clases 'Alumno' y 'Profesor' tienen una relación de agregación con la clase 'Persona'. En el siguiente diagrama, ¿Qué significado tienen los rombos blancos?. Que existe una relación de agregación entre las distintas clases del diagrama, siendo la clase en la que está el rombo la entidad contenedora. Que existe una relación de composición entre las distintas clases del diagrama, siendo la clase en la que está el rombo la entidad contenedora. Que existe una relación de agregación entre las distintas clases del diagrama, siendo la clase en la que está el rombo la entidad contenida. Que existe una relación de composición entre las distintas clases del diagrama, siendo la clase en la que está el rombo la entidad contenida. Las relaciones de 'Agregación' y 'Composición' se representan con un rombo en el extremo de la entidad contenedora. ¿Verdadero o falso?. Verdadero, y en el caso de la agregación es de color blanco y para la composición negro. Como en toda relación hay que indicar la cardinalidad. Verdadero, y en el caso de la agregación es de color negro y para la composición blanco. Como en toda relación hay que indicar la cardinalidad. Verdadero, y en el caso de la agregación es de color blanco y para la composición negro. Y sólo hay que indicar la cardinalidad en las relaciones de agregación. Falso. Es una asociación binaria que representa una relación todo-parte (pertenece a, tiene un, es parte de). Los elementos parte pueden existir sin el elemento contenedor y no son propiedad suya. La agregación. La composición. La herencia. Todas las respuestas son falsas. Es una agregación fuerte en la que una instancia ‘parte’ está relacionada, como máximo, con una instancia ‘todo’ en un momento dado, de forma que cuando un objeto ‘todo’ es eliminado, también son eliminados sus objetos ‘parte’: La agregación. La herencia. La asociación. La composición. Imaginemos una relación de agregación entre dos clases. Si la entidad motor forma parte de coche entonces el rombo apunta: A la clase Coche y el diamante va pegado a esta clase. A la clase Motor y el diamante va pegado a esta clase. A ambas clases y el diamante va pegado a ambas clases. Todas las respuestas son incorrectas. Observa el siguiente diagrama y marca la respuesta CORRECTA: La diferencia entre la relación coche-ruedas y persona-corazón, es que en el primer caso se llama agregación por ser una relación en donde la existencia del coche no depende de las ruedas, mientras que una persona no existe sin su corazón. Por tanto la relación de la persona con su corazón es de composición y se denota con el rombo relleno. La diferencia entre la relación coche-ruedas y persona-corazón, es que en el primer caso se llama agregación por ser una relación en donde la existencia del coche depende de las ruedas, mientras que una persona no existe sin su corazón. Por tanto la relación de la persona con su corazón es de composición y se denota con el rombo relleno. La diferencia entre la relación coche-ruedas y persona-corazón, es que en el primer caso se llama agregación por ser una relación en donde la existencia del coche no depende de las ruedas, mientras que una persona existe sin su corazón. Por tanto la relación de la persona con su corazón es de agregación y se denota con el rombo relleno. La diferencia entre la relación coche-ruedas y persona-corazón, es que en el primer caso se llama agregación por ser una relación en donde la existencia del coche no depende de las ruedas, mientras que una persona no existe sin su corazón. Por tanto la relación de la persona con su corazón es de composición y se denota con el rombo blanco. ¿Qué tipo de diagrama es el de la imagen?. Estructural. De casos de uso. De clases. De objetos. Señala la respuesta CORRECTA: La clase 'ClienteMoroso' hereda de 'DatosCliente' y 'Factura' tiene una relación de composición con 'DatosCliente' y 'DatosProveedor', siendo 'Factura' la clase contenedora. La clase 'ClienteMoroso' hereda de 'DatosCliente' y 'Factura' tiene una relación de agregación con 'DatosCliente' y 'DatosProveedor', siendo 'Factura' la clase contenedora. La clase 'ClienteMoroso' hereda de 'DatosCliente' y 'Factura' tiene una relación de composición con 'DatosCliente' y 'DatosProveedor', siendo estas dos clases las clases contenedoras. Todas las respuestas son falsas. |