Вы находитесь на странице: 1из 16

Universidad Nacional del Este.

Facultad Politécnica.

Anteproyecto de Trabajo Final de Grado.


Carrera Análisis de Sistemas.
Cátedra Informática VIII.

Análisis Comparativo de
Frameworks JSF: Primefaces y
Richfaces.
Por: Por: Martha Ayala Jara
y Guzmán González Cristaldo.

Profesor Orientador: Lic. José Rojas Coppari.

Profesor de la Cátedra: Ing. Osvaldo Miguel González.

Tel: (0973) 504 076, E-mail: martyta.ayala@gmail.com


Tel: (0973) 501 880, E-mail: guzman.ggc@gmail.com
Tel: (0973) 533 427, E-mail: joseeduardorc@gmail.com

Ciudad del Este, Alto Paraná. Paraguay.

Abril, 2016
Índice
1. Definición del problema 4

2. Delimitación del trabajo. 4

3. Marco teórico 4

4. Objetivos 6
4.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.2. Objetivos especı́ficos . . . . . . . . . . . . . . . . . . . . . . . . 7

5. Justificación 7

6. Alcance del Trabajo 8

7. Impacto de la investigación 9

8. Método 9
8.1. Plan de Actividades . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.2. Metodologı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

9. Medios 10
9.1. Recursos Materiales . . . . . . . . . . . . . . . . . . . . . . . . . 10
9.2. Cronograma de tareas . . . . . . . . . . . . . . . . . . . . . . . 10

10.Bibliografı́a 12

1
Análisis Comparativo de Frameworks Java
Server Faces: PrimeFaces y RichFaces.

Resumen

Este proyecto de investigación se centra en el estudio comparativo de dos


principales Framework Visuales JSF 2.x, el PrimeFace y el RichFaces para
identificar cuál es el más indicado a la hora de la implementación de un Sistema
de Gestión.
En la actualidad una creciente variedad de herramientas de JSF están dis-
ponibles para la los desarrolladores web, listos para tomar parte en la construc-
ción de prototipos y la implementación. Con tantas opciones, el desarrollador
podrı́a elegir uno que podrı́a no ser la mejor para su proyecto, por eso vemos
sumamente importante el estudio comparativo de los principales Framework
JSF, para identificar cuál implementación de estas tecnologı́as es la más óptima
y de mejores beneficios al sistema.
Para el análisis se desea formular un modelo de evaluación de construcción
de calidad que permitan establecer sub-caracterı́sticas, atributos y métricas
para evaluar la calidad de los productos de software y obtener como resultado
una matriz para la Evaluación de los Frameworks designados.
Con los resultados se desea mostrar las fortalezas y debilidades de cada Fra-
mework, una base para la selección del Framework como la más indicada para
la implementación del sistema. Para el desarrollo del sistema se aplicara una
metodologı́a de desarrollo de aplicaciones orientadas a la web. Los beneficios
de la implementación del sistema se evidenciaran en la reducción de tiempos
y la mayor eficiencia en los procesos.

Descriptores: Framework, Java Server Faces, Modelo de Evaluación, Pri-


meFaces, RichFaces.
Introducción

Java es una plataforma muy amplia que ofrece una variedad de opciones en
el desarrollo de aplicaciones Web, siendo Java Server Faces (JSF), una de las
mejores opciones por la gran cantidad de ventajas que ofrece: posee componen-
tes configurables, es un estándar, está pensado para la creación de interfaces de
usuarios avanzados, entre otros. JSF cuenta con una gran variedad de herra-
mientas que facilitan el diseño y desarrollo de aplicaciones web. Actualmen-
te entre los más populares Frameworks se encuentran: MyFaces, RichFaces,
IceFaces, PrimeFaces. Al haber cada vez más este tipo de herramientas de
aplicaciones web enriquecidas, se hace difı́cil para el desarrollador escoger la
adecuada para la implementación en sistemas web. Es por eso que nos moti-
va identificar cuál implementación de estas tecnologı́as es la más óptima y dé
mejores beneficios implementando en un sistema de Gestión.
Vemos sumamente importante el estudio de las Framework JSF, porque
cada vez es más adoptado para la implementación por los desarrolladores, por
su comprobada ayuda con la seguridad, reducción en el tiempo de desarrollo
y la obtención de un código optimizado, ordenado y entendible, por lo tanto a
presente y a futuro es una tecnologı́a de gran uso e interés.
Este trabajo consiste en un análisis comparativo detallado de los Frame-
works PrimeFaces y RichFaces por ser los más conocidos y de mayor uso por
parte de desarrolladores web, buscando ante todo contribuir a la ampliación
del conocimiento acerca de estas herramientas y dotar de información útil al
desarrollador web para que pueda elegir la tecnologı́a más óptima que le provea
los mejores recursos a la hora de implementar en un sistema.

3
1. Definición del problema
En la actualidad existen varias herramientas de aplicaciones web enrique-
cidas de las cuales se nos hace difı́cil escoger la adecuada para el proyecto de
diseños de sistemas web, ya que no se deben tratar los proyectos como simples
aplicaciones de diseño convencional, se requiere tener en cuenta la navegabili-
dad, interactividad, usabilidad, arquitectura de la información y la interacción
de medios como audios, textos, imágenes, enlaces y/o videos. Con tantas op-
ciones, el desarrollador podrı́a elegir uno que podrı́a no ser la mejor para su
proyecto.
Utilizando la tecnologı́a Java Server Faces para el desarrollo de aplicaciones
web en relación con el debido problema identificado nace la necesidad de rea-
lizar un análisis comparativo entre los componentes innovadores y eficaces de
los dos principales Framework: RichFaces y PrimeFaces, determinando los pros
y los contras de cada uno de estos componentes y ası́ brindar al desarrollador
una guı́a al momento de elegir uno de ellos.

2. Delimitación del trabajo.


Se pretende realizar un prototipo de sistema ambientado a la web que
cuente con altas, bajas y modificación; con un movimiento y algunos reportes.
A éste escenario de prueba se le implementara ambos Frameworks seleccionados
para el análisis comparativo, ejecutando en distintos navegadores y servidores
evaluando ası́ el comportamiento de respuesta de las etiquetas implementadas.

3. Marco teórico
Sistema de Gestión en ambiente web.

Un sistema de gestión es un conjunto de reglas y principios relacionados entre


sı́ de forma ordenada, para contribuir a la gestión de procesos generales o es-
pecı́ficos de una organización. [8]
Los sistemas de gestión surgen por la necesidad de empresas que deben manejar
grandes cantidades de información en documentos fı́sicos, debido a la cantidad
de información se lleva a cabo la digitalización de los mismos, de tal manera
que se puedan gestionar eficientemente a través de aplicaciones de software.
Estas aplicaciones permiten procesar y consultar los documentos en una insti-
tución, para la toma de decisiones en ambiente Web. Estas tareas se realizan
con la colaboración de todos los usuarios, y el sistema no depende sólo de infor-
mación aislada, sino también de su dinámica, que tiene carácter continuo, que
convierte el proceso en un ciclo productivo, resultante de su retroalimentación.

4
Java Server Faces (JSF)

Java Server Faces es un marco estándar de Java para la creación de in-


terfaces de usuario en aplicaciones Web. Liberado en marzo del 2004 por Sun
Microsystems, JSF se basa en el patrón de diseño: Modelo Vista Controla-
dor (MVC) con componentes de desarrollo basado en interfaz de usuario que
simplifica notoriamente el desarrollo mediante el uso de etiquetas que generan
contenido HyperText Markup Language (HTML). Está orientado a mejorar
la interfaz gráfica del usuario y mantiene el concepto básico del patrón MVC
(separar el comportamiento de la presentación). [6]
JSF proporciona a los desarrolladores las siguientes caracterı́sticas principales:
Especificación de navegación para páginas.

Componentes estándar de interfaz de usuario como campos de entrada,


botones y enlaces.

Validación de entrada de usuario.

Fácil manejo de errores.

Java Beans de gestión

Gestión de eventos.

Soporte de internacionalización.

Frameworks de JSF

Java Server Faces cuenta con muchos Frameworks que facilitan el desarro-
llo de aplicaciones utilizando esta tecnologı́a. Entre los principales Frameworks
open source se encuentran: PrimeFaces, IceFaces, RichFaces, MyFaces, MyFa-
ces Trinidad y ASFFaces.

RichFaces

RichFaces es un Framework open source desarrollado por Alexander Smir-


nov de la empresa Exadel. Se crea a partir del Framework Ajax4jsf y en el año
2007 mediante un contrato de colaboración es adquirido por JBoss. JBoss de-
cide en el año 2007 unificar Ajax4jsf y RichFaces bajo el nombre de RichFaces.
[7]
Las caracterı́sticas más importantes de RichFaces son:

Está completamente asociado al ciclo de vida JSF.

5
Posee la capacidad de skinnability, que es la habilidad de darle un mismo
estilo a todos sus componentes.

Genera vistas muy complejas en base al uso de sus componentes.

PrimeFaces

PrimeFaces es una Dramework de componentes visuales enriquecidos de


código abierto para Java Server Faces (JSF), que facilita la creación de aplica-
ciones orientadas a la web. Fue desarrollado por Prime Technology compañı́a
especializada en consultorı́a, JSF, JEE y Outsourcing. PrimeFaces fue desa-
rrollado bajo la licencia de Apache License V2 en Turquı́a.[2].

Tiene gran aceptación en el mercado ya que brinda componentes agrada-


bles a la vista y con un tiempo de respuesta mı́nimo en comparación con otros
Frameworks JSF. Cuenta con un sin número de caracterı́sticas entre las que
se pueden destacar su alto soporte nativo de Ajax, adicionalmente cuenta con
un kit para el desarrollo de aplicaciones móviles y es compatible con otros
Frameworks como RichFaces.

Las Caracteristicas que ofrece PrimeFaces son : [1]

Los componentes que ofrece son amigables al usuario ya que cuentan con
un diseño innovador mejorando la experiencia de los mismos.

En comparación con otros Frameworks JSF, PrimeFaces cuenta con más


de 100 componentes, algunos de muy alta complejidad como el Dock, y
otros muy sencillos como botones.

4. Objetivos
4.1. Objetivo general
Realizar un análisis comparativo de los Frameworks visuales JSF 2.x: Pri-
meFaces y RichFaces, para el desarrollo de un Sistema de Gestión en ambiente
Web ágil y eficiente, con el objeto de determinar cual Framework es la mejor
opción del caso.

6
4.2. Objetivos especı́ficos
Investigar los Frameworks Java Server Faces más prominentes de cada
tipo.

Estudiar la arquitectura, estructura y componentes de los Frameworks e


investigar para definir los parámetros de evaluación.

Determinar aspectos cualitativos y cuantitativos que permitan comparar


ambos Frameworks.

Evaluar ventajas y desventajas de cada uno de los Frameworks.

Realizar un sistema piloto en ambiente web con ambos Frameworks para


pruebas de funcionamiento en navegadores web.

Realizar pruebas de funcionamiento con el sistema piloto de ambos Fra-


meworks en distintos servidores opensource.

Realizar pruebas de tiempo de respuesta y funcionamiento de los com-


ponentes más utilizados de ambos Framewoks.

5. Justificación
Hoy en dı́a se cuenta con una gran variedad de herramientas para la crea-
ción de aplicaciones web, estas fueron creadas para minimizar el tiempo de
desarrollo de un sistema de aplicación web, las mismas ayudan al desarrolla-
dor a realizar este tipo de aplicaciones de una manera rápida y sencilla.
Java Server Faces, es un lenguaje orientado a la creación de árboles de
componentes visuales en el servidor de modo que trata de independizar el
desarrollo de la interfaz visual, del lenguaje del cliente en el que se interpretará.
JSF nos proporciona la renderización de los componentes visuales en el lenguaje
del cliente, no debemos preocuparnos del HTML o JavaScript que se necesitará
en el cliente para generarlo, puesto que ya lo incorpora el renderizador del
propio componente [5].
El desarrollo de sistemas basado en componentes, es una aproximación del
desarrollo de software que describe, construye y utiliza técnicas de software
para la elaboración de sistemas abiertos y distribuidos mediante el ensamblaje
de partes de software reutilizables. La aproximación del desarrollo de sistemas
basado en componentes es utilizada para reducir los costes, tiempos y esfuerzos
de desarrollo del software, a la vez que ayuda a mejorar la fiabilidad y la
reutilización de la aplicación final.
Mediante el uso de componentes visuales de JSF, se logrará crear aplica-
ciones de forma simple, encapsulando la mayorı́a de la lógica en componentes
visuales, que generen editores de texto, lista de valores dinámicas, o campos
de texto con funciones de auto completar texto.

7
Java Server Faces cuenta con distintos Frameworks de interfaz gráfica dis-
ponibles, por lo que para el siguiente estudio se utilizó el Google Trends, ob-
servando ası́ que en los últimos años se destacan en tendencia mundial, el
RichFaces y el PrimeFaces, por dicho motivo fueron seleccionados para el es-
tudio de comparación.[3] [Vease Figura 1 ].

RichFaces es una biblioteca de código abierto basada en Java usando li-


brerı́as de componentes que permite crear aplicaciones web con Ajax. [4]

PrimeFaces es un Framework JSF, una librerı́a de componentes visuales


OpenSource.[4]

Figura 1: Gráfico de Interés Google Trends

A raı́z del estudio comparativo entre Frameworks Java Server Faces se


logrará determinar cuál de estas nos dará un mejor rendimiento, disponibilidad
de componentes, inicio rápido, problemas abiertos y caracterı́sticas principales
para poder desarrollar aplicaciones web.

6. Alcance del Trabajo


El proyecto incluirá el estudio de dos de los principales Frameworks de la
tecnologı́a JSF: RichFaces y PrimeFaces. Se pretende determinar parámetros
de comparación entre los componentes, identificando las caracterı́sticas de las
librerı́as, como también su compatibilidad entre los distintos navegadores y
servidores en los cuales se ejecutan, construyendo un prototipo para realizar
un análisis comparativo de ambos y lograr de ese modo identificar cuál de
ellos cuenta con las mejores caracterı́sticas para desarrollar un sistema web de
gestión ágil y eficiente en los procesos.

8
7. Impacto de la investigación
Beneficio en reducción de tiempos y mayor eficiencia en los procesos con
la implementación del sistema con el Framework JSF adecuado.
Beneficia al desarrollador en términos de conocimientos especı́ficos pa-
ra poder utilizar los Frameworks de manera más eficiente en proyectos
futuros.
Dar como resultado cuál de los Frameworks de interfaz JSF seleccionados
cuenta con las mejores caracterı́sticas para desarrollar un sistema web de
gestión ágil y eficiente en los procesos.

8. Método
8.1. Plan de Actividades
1. Investigación
a. Identificación acerca del concepto de Framework JSF.
b. Identificación de los beneficios de PrimeFaces y RichFaces.
c. Identificación de las desventajas de PrimeFaces y RichFaces.
d. Evaluación comparativa entre Frameworks JSF.
e. Documentación.
2. Pruebas y Análisis de Resultados
a. Desarrollar un pequeño aplicativo web piloto funcional para realizar prue-
bas con los Frameworks de interfaces JSF seleccionados.
3. Documentación.
a. Documentación Final.

8.2. Metodologı́a
Los métodos y técnicas a utilizar son:
a. Investigación de fuentes bibliográficas.
b. Estudio y comparación de los Frameworks de JSF seleccionados.
c. Implementación de un proyecto web piloto para pruebas experimentales
con ambos Frameworks de interfaz.
d. Muestreo de los resultados obtenidos.

9
9. Medios

9.1. Recursos Materiales


a. Notebook.

b. Internet.

c. Bibliográficos.

9.2. Cronograma de tareas


(Tabla 1).

10
Tabla 1: Cronograma de tareas

SEPT. NOV. DIC. ENE. FEB. MAR. ABR. MAY.


Actividades
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 3 1 2 3 4 1 2 3 4
Investigación
Documentación
Identificar los
conceptos
Investigación,e
identificación de
los beneficios
Investigación e

11
identificación de
las desventajas
Identificar variables
para la
evaluación
comparativa
Desarrollar
aplicativo web
Pruebas
y análisis
de resultados
Documentación
10. Bibliografı́a
Referencias bibliográficas.
[1] Juanjo Giménez http://www.genbetadev.com/frameworks/
primefaces-framework-sobre-jsf-2-0-primeros-pasos [Consulta:
2015, Mayo 20]

[2] Prime Tecnhnology. PrimeFaces. http://www.primefaces.org/ [Consul-


ta: 2015, Mayo 20]

[3] Grafico de Comparación Tendendencias de JSF en Google Trends,


2016. https://www.google.com/trends/explore#q=RichFaces%
2C%20primefaces%2C%20IceFaces%2C%20OpenFaces%2C%20Apache%
20MyFaces&cmpt=q&tz=Etc%2FGMT%2B3 [Consulta: 2016, Marzo 10]

[4] Alex Raúl Caiza Morillo. Facultad De Ingenierı́a En Ciencias Aplicadas -


Carrera De Ingenierı́a En Sistemas Computacionales. Estudio comparativo
de Frameworks ria para el Desarrollo de Aplicaciones Web (2011). http://
repositorio.utn.edu.ec/handle/123456789/1034 [Consulta: 2015, Ma-
yo 27]

[5] Eulalia Ximena Carrillo Robalino y Kara Mariuxi Sosa Paredes, 2013 -
Escuela Superior Politécnica de Chimborazo - Facultad de Informática y
Electronica - Escuela de Ingenieros en Sistemas. Estudio Comparativo de
Frameworks RIA para el Desarrollo de aplicaciones web con java server
Faces (jsf) http://dspace.espoch.edu.ec/bitstream/123456789/2712/
1/18T00531.pdf [Consulta: 2015, Mayo 26]

[6] ED BURNS, CHRIS SCHALK y NEIL GRIFFIN (2009). Java Server Faces
2.0. [Consulta: 2015, Mayo 20]

[7] JBOSS. RithFaces http://richfaces.jboss.org/ [Consulta: 2015, Junio


3]

[8] THINK AND SELL. ”Sistema de Gestion Normalizados”http:


//thinkandsell.com/servicios/consultoria/software-y-sistemas/
sistemas-de-gestion-normalizados/ [Consulta: 2016, Marzo 30]

12
NOTA DE PRESENTACIÓN DEL ANTEPROYECTO DE TFG.

08 de Abril del 2016

Ing. Osvaldo Miguel González

De nuestra mayor consideración:

Por la presente nos dirijimos a Usted, con el objeto de solicitar tenga a bien
considerar el inicio de nuestro Trabajo Final de Grado denominado ”Análisis
Comparativo de Frameworks JSF: PrimeFaces y RichFaces”, proponiendo co-
mo Profesor Orientador al Lic. José Eduardo Rojas Coppari.

Se adjunta a la presente nota, el anteproyecto del trabajo elegido.

Atentamente,

Martha Ayala Jara Guzmán González Cristaldo

Ing. Osvaldo Miguel González


HOJA DE ACEPTACIÓN DEL PROYECTO POR PARTE DEL
PROFESOR DE CATEDRA

08 de Abril del 2016

El que suscribe, profesor de la cátedra: Informática VIII, Osvaldo Miguel


González, avala el contenido del proyecto de Trabajo Final de Grado ”Análisis
Comparativo de Frameworks JSF: PrimeFaces y RichFaces”, de los alumnos
Martha Ayala Jara y Guzmán González Cristaldo, de la Carrera de Análisis
de Sistemas, ası́ como la viabilidad del mismo.

La finalización del mismo no debe exceder el periodo máximo de un año a


partir de la fecha de aprobación del proyecto.

Ing. Osvaldo Miguel González


HOJA DE CONFORMIDAD DEL PROFESOR ORIENTADOR O
TUTOR

08 de Abril del 2016

El que suscribe, profesor José Eduardo Rojas Coppari, manifiesta por este
medio, su conformidad en orientar el presente proyecto de Trabajo Final de
Grado ”Análisis comparativo de Frameworks JSF: PrimeFaces y RichFaces”,
de los alumnos Martha Ayala Jara y Guzmán González Cristaldo, de la Carrera
de Análisis de Sistemas hasta su finalización.

Lic. José Eduardo Rojas Coppari

Вам также может понравиться