Proyecto integrador. Las TIC en la sociedad S4.pptx
RIA Rich Internet Application
1. RIA
Rich Internet Application
Las aplicaciones RIA son un nuevo tipo de aplicaciones con más ventajas que las
aplicaciones Web tradicionales. Estas surgen como una combinación de las ventajas
que ofrecen las aplicaciones Web y las aplicaciones tradicionales (aplicaciones de
escritorio).
Adicionalmente se encuentran las capacidades multimedia donde no hace falta ningún
reproductor del Sistema Operativo del usuario.
usted, la plataforma está todavía en
algún lugar en la “Nube”.
✔ Usar una plataforma de tipo cliente:
Para empresas con cierta resistencia
a ubicar sus activos en la Nube, la
única forma de adquirir capacidades
para construir RIA es hacerlo por su
propia cuenta empleando alguna de la
variedad de herramientas de tipo
Plataforma de Cliente RIA, como
Adobe Flex/Air, Java FX o por medio
de algún framework Javascript.
Introducción Que obtener con RIA
✔ Menor costo total de propiedad:
Los valiosos beneficios que las aplicaciones
Con RIA no hay necesidad de instalar
Ricas de Internet (RIA) representan para las
software del lado del Cliente ni
empresas ya han sido ampliamente
ocuparse de mantener a cada nuevo
documentados y son claramente
usuario. La aplicación se configura
reconocidos; desde un bajo costo total de
automática y transparentemente en el
propiedad, hasta la disponibilidad total de la
lado del Cliente y toda la aplicación y
aplicación, mayor seguridad y una
las actualizaciones de la misma y así
experiencia del usuario mejorada.
como de la plataforma se llevan a
cabo en el servidor .
Contextos de ✔ Estar listo para SaaS : Las
implementación de RIA aplicaciones SaaS representarán el
25% de todo negocio de software. RIA
Inicialmente las RIA estaban enfocadas a dos es un componente esencial en el
posibles entornos: desarrollo de una propuesta exitosa
✔ Usar una Plataforma como servicio de Software como Servicio (SaaS).
(PasS): Con ejemplos como ✔ Mejor experiencia del usuario y
Force.com, Google, Microsoft, productividad : A diferencia de las
Amazon y LongJump. Si esta fuera la aplicaciones de Internet típicas, las
opción elegida, entonces deberá RIA no requieren una comunicación
considerar que si bien todas las Cliente-Servidor para cada dato
partes del sistema son provistas por procesado y cada actividad. La
2. aplicación corre más rápido y más depurar que las aplicaciones web
agradablemente, los empleados tradicionales
hacen su trabajo más rápido y los
✔ Consistencia: la interfaz de usuario y
clientes reciben un mejor servicio.
las experiencias pueden ser
✔ Mas disponibilidad de la aplicación: controladas por el sistema operativo,
Las RIA pueden ejecutarse el monitoreo del rendimiento y
remotamente desde cualquier parte y diagnóstico de errores puede tornarse
pueden accederse en cualquier difícil.
momento vía un amplio abanico de
✔ Instalación y mantenimiento: no se
dispositivos móviles portátiles. Los
precisa instalación y su
usuarios pueden acceder a los datos
mantenimiento es automático
necesarios para trabajar desde su
propia casa o desde fuera de la ✔ Offline: puede ser soportada
empresa. reteniendo el estado en la máquina
cliente
✔ Mejor seguridad corporativa y
protección de derechos de ✔ Seguridad: se mejora la seguridad
propiedad intelectual : La por medio de actualizaciones
arquitectura multicapa de RIA le automáticas y “sandbox”. Pero las
permite ocultar los elementos extensiones por si mismas son
sensibles de su aplicación y evitar el sujetas a vulnerabilidades
robo corporativo, el abuso del activo, ✔ Rendimiento: puede ser mejorado
clientes y el malware. dependiendo de la aplicación y de las
características de la red. Aplicaciones
Características básicas que pueden procesar localmente en el
cliente evitando viajes hacia el
✔ Facilidad en la conectividad servidor lo que incrementa su
✔ Distribución de la aplicación entre rendimiento. Dándole más trabajo al
cliente y servidor cliente también se puede incrementar
el rendimiento del servidor. Por el
✔ Acceso local o remoto contrario los recursos necesarios
✔ Inteligencia en la interfaz hacen difícil que las aplicaciones
puedan ejecutarse en dispositivos
pequeños, móviles o embebidos
Características clave ✔ Riqueza: añadiendo características
✔ Accesibilidad: AJAX nativo en los que no son nativas en los
navegadores web y es el único RIA navegadores web como captura de
framework que puede ser encontrado vídeo
por los diferentes motores de
búsqueda.
Beneficios
✔ Comunicaciones avanzadas: con
servidores que soporten nuevas ✔ No necesitan instalación (solo es
tecnologías se puede mejorar la necesario mantener actualizado el
experiencia del usuario al utilizar navegador web).
protocolos de red optimizados y ✔ Las actualizaciones hacia nuevas
entradas y salidas asíncronas. Se versiones son automáticas.
requiere de una conexión de banda
ancha confiable ✔ Se pueden utilizar desde cualquier
ordenador con una conexión a
✔ Complejidad: las soluciones Internet sin depender del sistema
avanzadas puede ser más difíciles de operativo que este utilice.
diseñar, desarrollar, implementar y
✔ Generalmente es menos probable la
3. infección por virus, que utilizando por Arquitectura
ejemplo programas ejecutables.
Generalmente se tiene una aplicación cliente
✔ Mayor capacidad de respuesta, ya
stateful y una capa de servicios separada.
que el usuario interactúa directamente
RIA se apoya más sobre un desarrollo
con el servidor, sin necesidad de
cliente-servidor en vez de un desarrollo web
recargar la página.
tradicional, en donde el estado se mantiene
✔ Ofrecen aplicaciones interactivas que en el servidor en sesiones. El cliente sabe
no se pueden obtener utilizando solo acerca de si mismo y el tipo de datos que
HTML, incluyendo arrastrar y pegar, esta solicitando y únicamente solicita los
cálculos en el lado del cliente sin la datos que necesita sin ninguna otra
necesidad de enviar la información al información.
servidor.
✔ Cliente: Se maneja la interacción
✔ Evita la problemática del uso de entre el usuario y la interfaz del
diferentes navegadores al abstraerse usuario, el usuario invoca comandos,
de ellos a través de un framework. actualiza vistas y carga datos. Aquí se
mantiene el estado de la aplicación,
se manejan todas las peticiones de
Que puede hacer RIA datos hacia el servidor y se controla
✔ Emular el comportamiento de como se presentan los datos.
aplicaciones de escritorio ✔ Servicios: Aquí se manejan y se
✔ Variedad de efectos procesan todas las peticiones de la
aplicación cliente y delega las
✔ Manejo de datos del lado del cliente acciones en el servidor, estas pueden
✔ Lógica del negocio del lado del cliente ser, guardar datos en la base de
datos, actualizar los archivos del
✔ Redefinición de la metáfora "Pagina" sistema, retornar datos al servidor, o
✔ Emulación del comportamiento de algún tipo de proceso analítico.
aplicaciones de escritorio Determina y le da formato a los datos
que son retornados al cliente.
✔ Arrastrar y soltar
✔ Menús y barra de herramientas
Tecnologías
✔ Menús contextuales
A continuación enumeramos algunas de las
✔ Ventanas y wizards tecnologías utilizadas por las RIA:
✔ Paneles ✔ DTHML
✔ Arboles ✔ HTML
✔ Validación de formularios ✔ Javascript
✔ Acciones del teclado ✔ CCS
✔ Controles No HTML ✔ AJAX
✔ Acordeones ✔ XML
✔ Combobox ✔ Flash, Extensiones de los browsers
✔ Spinner box ✔ Java
✔ Sliders ✔ ActiveX
✔ ✔ XUL
✔ CURL
5. Algunas aplicaciones en la web
Autor
Esteban Saavedra López
Presidente de la Fundación AtixLibre (Bolivia)
Activista de Software Libre en Bolivia
jesaavedra@opentelematics.org
esteban.saavedra@atixlibre.org
http://jesaavedra.opentelematics.org
http://www.atixlibre.org