Está en la página 1de 3

EXAMEN FINAL

NOMBRE

FECHA

25/06/2016

DURACIN

1 hora y 30 minutos

1. Qu es el ciclo de vida de software?


Es un conjunto de etapas que se
misma, pasando por la identificacin
pruebas y mantenimiento; hasta la
software deja de usarse. El ciclo de
puesto en produccin.

inicia desde la concepcin de la idea


de requerimientos, diseo, codificacin,
baja del software, es decir cuando el
vida no termina cuando el software es

2. Qu son los requerimientos funcionales y no funcionales de una aplicacin?


De 3 ejemplos de no funcionales.
Los requerimientos funcionales son las especificaciones de lo que quiere el
cliente, las funcionalidades con las que debe contar el sistema requerido,
mdulos, transacciones.
Los requerimientos no funcionales son aquellos
contribuyen a la calidad del software. Por ejemplo:

requerimientos

Portabilidad: que funcione en mltiples plataformas

Escalabilidad: horizontal (ms hardware) y vertical (ms software)

Adaptabilidad: Adaptable por ejemplo en los aplicativos mviles.

que

3. Qu es un patrn de diseo, cules son los 3 tipos de patrones GoF?


Mencione uno ejemplo de cada uno y para qu sirve.
Los patrones de diseo son modelos de desarrollo que ya han sido probados
y funcionan, por ello es que los desarrolladores deben usarlo y tenerlo como
estndar. Estos han surgido debido a los continuos problemas que antes
presentaban, se reunieron un grupo de personas afines al problema y luego
de estudiarlos definieron los patrones.
Los tipos de Patrones GoF son los siguientes:
Creacionales: Builder, sirve para una correcta creacin de objetos
Estructurales: Facade, sirve para establecer una correcta estructura de
objetos.
Comportamiento: Template, sirve
comunicacin entre los objetos.

para

establecer

una

adecuada

4. Qu son las pruebas unitarias y por qu es importante el Mocking?


Son pruebas realizadas por los mismos desarrolladores para comprobar que
efectivamente se est realizando lo que el cliente desea. Se usan
actualmente el JUNIT para realizar este tipo de pruebas.
El Mocking es importante porque permite aislar el cdigo y probarlo
independientemente de las dems clases, adems permite asegurarnos que
se est desarrollando de acuerdo a los requerimientos. Se realizan pruebas
desde las validaciones ms bsicas hasta las ms complejas hasta obtener lo
establecido en los requerimientos.
5. Qu son las pruebas de sistemas y de performance?
Las pruebas de sistema son las pruebas realizadas ya no a un cdigo
aislado, sino al sistema mismo, como responde a travs de sus capas,
existen las pruebas de caja blanca y las pruebas de caja negra.
Las pruebas de performance son pruebas que se realizan para comprobar los
tiempos de respuesta en base al aumento de Hardware y software. Se utiliza
generalmente el JMETER.
6. Qu son las herramientas de administracin del proceso de construccin de
software tales como Maven? Explique el concepto de Ciclo de vida, fase de
ciclo de vida, plugin y goal.
Las herramientas de administracin de los procesos sirven para llevar un
adecuado control de las tareas a realizar para poner en produccin el
software, van desde el uso de recursos, pruebas de performance, generacin
de war, pruebas unitarias, etc.
7. Cules son los 3 tipos de empaquetado en Java? Explique cada uno de
ellos.

JAR, son los ms simples y son usados para almacenar las clases y
libreras generalmente de las aplicaciones de escritorio.

WAR , son usados en aplicaciones java web, contienen el archivo


web.xml

EAR, son usados en aplicaciones Java empresariales, contienen el archivo


application.xml. EAR=WAR + EJB.

8. Qu es el proceso de Integracin Continua?


Los procesos de integracin continua son aquellos que juntan todos los
procesos que van desde el manejo de cdigo a travs de sus repositorios,
procesos de calidad a travs del SonarQ o Checklist y procesos de
construccin de software a travs del Maven. Estos se realizan
continuamente para garantizar el correcto funcionamiento del software.Un
software utilizado para la integracin continua es el Jenkins

9. Cules son los dos tipos de servidores de aplicaciones en el mundo Java?

Servidores de Aplicaciones: Widfly, WebLogic

Contenedores de Servlets: Apache tomcat, JBOSS

10. De 3 ejemplos de posibles vulnerabilidades que podra sufrir una aplicacin


web?

No estn encriptados ni ofuscados, pues desde un navegador cualquiera


puede observarse la estructura bsica de su codificacin, generalmente
los javascripts.

No tienen restringidos los accesos a determinados urls.

La BD que con la que se comunica el software no es adecuadamente


segmentada o esquematizada, por ejemplo si un hacker ingres al
mdulo de ventas podra entrar tambin al mdulo de logstica.