Tabla III.VIII Parámetros posibles a comparar
Parámetros Generales Rendimiento Rendimiento Independiente Rendimiento con Base de Datos o Uso de Recursos o Capacidad de Respuesta o Requerimientos Mínimos o Escalabilidad.
Desarrollo Implementación de código embebido
Interfaz de Usuario Accesibilidad
Uso de Componentes
Producto Madurez del producto(Versiones)
Licencia Libre.
Costos Compatibilidad. Portabilidad
Navegadores Web
Patrón de Diseño Modelo MVC
Cumplimiento de estándares
Especificaciones JSR
Arquitectura Soporte de Servidores Web
Soporte de Multicapa
Manejo de Seguridad
A nivel de la Aplicación
A nivel de Base de Datos
A nivel del Servidor Web
Otros Simplicidad
3.4.2 Selección de los parámetros a comparar.
Para realizar el análisis cuantitativo y cualitativo de Tecnologías JSF y ADF, que permiten la construcción de aplicaciones Web, se ha tomado en cuenta varios aspectos relevantes,del listado mostrado anteriormente procedemos a seleccionar en lo que se ha consideradolos siguientes parámetros de comparación.
Tabla III.IX Parámetros a Comparar
Parámetro Justificación
Patrón de Diseño MVC
El patrón de arquitectura de software que separalos datos de una aplicación, la interfaz de usuario y la lógica de control en trescomponentes distintos, es el mismo que caracteriza las tecnologías JSF y ADF.
Seguridad
Es importante mantener seguridades en las aplicaciones Web, para de esta manera incrementar la confiabilidad del usuario en la navegación por nuestra página. Ciertos datos necesitan ser privados.
Producto
Es fundamental, analizar el entorno usado para el desarrollo de las aplicaciones Web, para ponerlas en producción.
Flexibilidad
Reusabilidad
Arquitectura orientada a Servicios ( SOA
Usabilidad
Colaboración
Set de Herramientas completo
Confiabilidad
3.4.3 Determinación de variables e indicadores a valorar
Tabla III.X Variables e Indicadores a Valorar
Parámetros Variables Indicadores
Patrón de Diseño MVC
Modelo
Conexión Visual a datos
Soporte para múltiples Bases de Datos.
Manipulación de base de datos
Desempeño con la base de datos
Vista
Diseñador GUI Visual
Facilidad de aprendizaje y uso de los elementos gráficos
Existencia de herramientas de ayuda y consulta
Herramientas de navegación de forma visual y grafica
Fusión de código y diseño.
Controlador
Generación automática de etiquetas de formulario.
Validaciones de Formulario.
Manejo visual de componentes de un formulario.
Manejo de controles personalizados.
Seguridad A nivel de
Aplicación
Variable Uso desesiones.
Manejo de Cookies.
Encriptación de datos.
Validación de datos.
Producto Madurez del
Producto Especificaciones Licenciamiento Costos Instalación JDK Contenedor de aplicaciones Entorno de Desarrollo Versionamiento
3.4.4 Descripción de los parámetros a valorar MANEJO DEL PATRÓN DE DISEÑO MVC
Es un patrón de arquitectura de desarrollo software que separa lasaplicaciones en tres capas diferenciadas: datos (Modelo), interfaz de usuario (Vista) y lógicade control (Controlador). Esto
permite una separación entre la interfaz de usuario y la lógicaque hace que el mantenimiento de las aplicaciones Web sea sencillo. [8]
Para la evaluación del manejo de Patrón Modelo Vista y Controlador se ha tomado como referencia las siguientes variables:
Modelo: Esta es la representación específica de la información con la cual el sistema opera, esta capa típicamente representa objetos almacenados en nuestras fuentes de datos, por lo que se realizara un análisis sobre la conectividad que consiste en la conexión con bases de datos dentro de una aplicación Java usando Java Database Connection (JDBC).
JDBC es una especificación de un conjunto de clases y métodos de operación que permiten a cualquier programa Java acceder a sistemas de bases de datos de forma homogénea. [16]
Vista: Manejo de los componentes de Interfaz de Grafica para el diseño de páginas.
Controlador: Responde a eventos del usuario e invoca cambios en elmodelo y probablemente en la vista.
SEGURIDAD
A Nivel de Aplicación: Permite que la aplicación proporcione confianza al usuario, y de esta manera no existan ataques a la funcionalidad del sistema. Mediante el manejo de roles dinámicos en la aplicación (es decir solo usuarios privilegiados tienen acceso a ciertas características de la aplicación, y estas pueden ser auditadas).
Mediante la Autenticación que es la que explota el método de validación de la identidad de un usuario, servicio o aplicación.
A Nivel de Base de Datos: La seguridad es algo que nunca se debe dejar pasar por alto en una aplicación web puesto que la información que se maneja está a disposición de los usuarios de la web, por lo cual es de suma importancia mantener un nivel de seguridad para evitar pérdidas o violaciones en nuestra información. Para evaluar este parámetro tomaremos en cuenta los principales aspectos que intervienen en la seguridad a nivel de Base de datos.
Hoy en día, las bases de datos son componentes cardinales de cualquier aplicación basada en web, permitiendo que los sitios web provean contenido dinámico, debido a que la información considerablemente sensible o secreta puede ser almacenada en tales bases de datos, se debe considerar seriamente la forma de protegerlas. Existen varias formas de seguridad por lo que nos centraremos en la creación de login para la Base de datos, usuario con derecho a crear, borrar y modificar objetos y que además puede conceder privilegios a otros usuarios sobre los objetos que ha creado o usuario con derecho a consultar, o actualizar, y sin derecho a crear o borrar objetos.
PRODUCTO
Madurez del Producto: Se basa en las especificaciones que cada tecnología usa, pues día a día surgen nuevas librerías o ideas para poder mejorar su funcionalidad.
Una licencia es aquella autorización formal con carácter contractual que un autor de un software da a un interesado para ejercer "actos de explotación legales". Pueden existir tantas licencias como acuerdos concretos se den entre el autor y el licenciatario. La distribución de los productos, derechos de uso de las herramientas, tecnologías y formas de licenciamiento son elementos que deben ser considerados en función del alcance la solución, dato que este es un tema que afecta directamente el presupuesto de los proyectos de desarrollo.
Los Costos criterio hace referencia directa al precio de las licencias que debe pagar el usuario por la utilización de las herramientas de desarrollo, para la creación de aplicaciones bajo los estándares J2EE. Si se considera la realización de paquetes independientes para el nivel del usuario.
Instalación: JDK, representa las versiones de Java. El contenedor de aplicaciones o servidor, nos permitirá ejecutar la aplicación, el mismo que debe soportar las versiones de las tecnologías utilizadas, pues no cualquier servidor las acepta.
Un servidor de aplicaciones generalmente gestiona la mayor parte (o la totalidad) de las funciones de lógica de negocios y de acceso a los datos de la aplicación.
Para el desarrollo de las aplicaciones Web con determinadas tecnologías es necesario el uso de las IDEs que son entornos de programación que ha sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica GUI.
3.4.5 Determinar la importancia de los parámetros
Tabla III.XI Importancia de Parámetros a Comparar
Parámetro Valoración
Patrón de Diseño MVC 40%
Seguridad 30%
Producto 30%
3.5 DESCRIPCIÓN DE LOS MÓDULOS DE PRUEBA