Académique Documents
Professionnel Documents
Culture Documents
Sistemas de flujo de datos (Dataflow) - Batch secuencial - Pipes-filters Sistemas llamada-respuesta - Programa principal (Main) y subrutinas, funciones, procedimientos - Sistemas OO - Capas jerrquicas Componentes independientes - Procesos que se comunican - Sistemas de eventos Mquinas virtuales - Interpretadores - Sistemas de reglas, basados en conocimiento Sistemas centrados en datos (repositorios) - Bases de Datos - Sistemas hipertexto - Pizarras (blackboard)
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Estilo - Cliente/Servidor
2 capas 3 capas n capas Tecnologa en el servidor Tecnologa en el cliente
UCLA
Rodolfo Caneln
Estilo - Cliente/Servidor
El par de entidades que ofrecen y requieren servicios constituye el modelo cliente/servidor
Client
UCLA
Interface
Server
Rodolfo Caneln
Modelo - Cliente/Servidor
El anlisis funcional de una aplicacin pone en evidencia tres
partes:
La interfaz usuario (presentacin). En general es grfica (GUI). Debe funcionar sobre varias plataformas La lgica de la aplicacin. Representa las reglas del negocio. Contempla el servidor de transacciones y/o el servidor del negocio (business services) El acceso a los datos. Contiene los procedimientos de acceso a los datos, la estructura de la(s) BD(s). Es el servidor de datos
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Estilo - Cliente/Servidor
Modelo de Dos Capas:
Este modelo se basa en que la conexin entre la aplicacin Java o el applet que se ejecuta en el navegador, se conectan directamente a la base de datos. Esto significa que el driver JDBC especfico para conectarse con la base de datos, debe residir en el sistema local. La base de datos puede estar en cualquier otra mquina y se accede a ella mediante la red. Esta es la configuracin tpica Cliente/Servidor: el programa cliente enva instrucciones SQL a la base de datos, sta las procesa y enva los resultados de vuelta a la aplicacin
UCLA Rodolfo Caneln
componentes (presentacin, lgica, datos) y conlleva a un modelo denominado en tres capas (estilo layers), en donde cada capa slo comunica con sus vecinos inmediatos
UCLA
Rodolfo Caneln
Capa datos
Capa lgica
GUI
UCLA Rodolfo Caneln
Capa presentacin
cliente/servidor
La GUI juega el rol de cliente y el servidor de transacciones juega el rol de servidor La capa de transacciones debe poseer una interfaz perfectamente definida que describe los servicios ofrecidos, para jugar el rol de servidor
UCLA
Rodolfo Caneln
El servidor de transacciones juega el rol de cliente y el servidor de datos juega el rol de servidor La componente servidor de datos debe poseer una interfaz perfectamente definida que descibe los servicios de acceso a los datos ofrecidos, para jugar el rol de servidor
UCLA
Rodolfo Caneln
Maquina Servidor
Estilo - Cliente/Servidor
Modelo de Tres Capas:
En este modelo de acceso a las bases de datos, las instrucciones son enviadas a una capa intermedia entre Cliente y Servidor, que es la que se encarga de enviar las sentencias SQL a la base de datos y recoger el resultado desde la base de datos. En este caso el usuario no tiene contacto directo, ni a travs de la red, con la mquina donde reside la base de datos.
UCLA
Rodolfo Caneln
Server Applications
Server Applications
Server Applications
SQL Net
BDD CONECTORES:
BDD
Repositorio (3)
ODBC, JDBC TCP/IP, HTTP, HTTPS, Socket, Objetos Distribuidos, CORBA, ORBA UCLA Rodolfo Caneln
Enfoque Re-Arquitectura
M i d d l e w a r e
Bases de datos
Programas de anlisis
Reportes y Anlisis
Una capa intermedia se crea entre las aplicaciones y las bases de datos. Usa tecnologa off-the-shell llamadas middleware y Enterprise Application Integration -EAI-. Permite cambiar las aplicaciones sin modificar las bases de datos. Reduce el tiempo de mantenimiento. No exige mucho cambio organizacional. UCLA
Rodolfo Caneln
EJEMPLO BSC
Capa de Presentaci n (1) cliente 1 cliente 2 cliente n
Proxy
Calidad de Software
Son los requerimientos que debe cumplir un sistema de software desde el punto de vista estructural o arquitectnico. Las caractersticas de calidad de un software, se presentan de acuerdo a tres puntos de vistas: el sistema, el negocio, la estructura arquitectnica.
UCLA Rodolfo Caneln
Calidad de Software
Modelo de Calidad ISO/IEC 9126-1 25010, 25030.
El modelo de calidad ISO 9126-1 es ahora un estndar en la industria del software y es definido en un alto nivel de abstraccin, en trminos de las visiones de calidad externa, interna y calidad en uso de las caractersticas de calidad.
UCLA
Rodolfo Caneln
Calidad de Software
(Modelo de Calidad ISO-9126-1)
Los modelos de calidad basados en productos se utilizan para medir el alcance de los atributos externos de un producto de software y relacionarlos con la calidad global del producto. La importancia de un diseo preciso de la arquitectura del software, ha crecido enormemente para la construccin de un sistema confiable.
UCLA
Rodolfo Caneln
Calidad de Software
Proporciona un framework para realizar
mediciones de las caractersticas especficas deseables, requeridas en el sistema final y percibidas por los diferentes participantes durante el proyecto de software Premisa: las caractersticas internas del producto en desarrollo afectan la calidad en uso y la calidad externa del producto final
UCLA
Rodolfo Caneln
PROCESO
DEPENDE
DEPENDE
DEPENDE
CONTEXTOS DE USO
MEDIDAS DE PROCESO
MEDIDAS INTERNAS
UCLA
MEDIDAS EXTERNAS
Rodolfo Caneln
Calidad de Software
Calidad interna: reflejo de la estrategia y
filosofa del diseo, se evala con mtricas internas Calidad externa: calidad del producto entregado, se evala con mtricas externas Calidad en uso: vista de la calidad del usuario final como resultado de utilizar el software, se evala con mtricas externas
UCLA Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
Provee resultados en tiempo razonable? Produce resultados deseados? Cmo se comporta en tiempo de ejecucin? Cmo responde a la conexin con otros sistemas?
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
1. Desempeo (performance):
Tiempo requerido para responder a un evento o conjunto de eventos procesados en un intervalo de tiempo. Rendimiento del tiempo de respuesta. Velocidad de generacin de pginas. Velocidad de generacin de grficos.
2. Seguridad (security):
Habilidad de un sistema para evitar un servicio a los usuarios no autorizados y proporcionarlo a los autorizados. Validacin de la entrada del usuario.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
3. Disponibilidad (availability):
Porcin del tiempo que el sistema est operativo. Se asocia con Integridad (habilidad para mantenerse operativo en el tiempo) y con Tolerancia a fallas (habilidad para mantenerse operativo y recuperarse de posibles fallas).
Recuperacin de errores.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
4. Funcionalidad (functionality): Habilidad del sistema para realizar el trabajo para el cual fue concebido.
Capacidad de recuperacin y bsqueda. Servicio de bsqueda en navegacin. Servicio relacionados con el dominio de la aplicacin. Proceso correcto de enlace
5. Usabilidad (usability): Como el usuario percibe y comunica con el sistema y comprende factores tales como: aprendizaje, desempeo, memorizacin, robustez, satisfaccin.
Capacidad de comprensin del sitio global. Capacidad esttica y de interfaz. Servicio de ayuda y realimentacin en lnea.
UCLA Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (N-Runtime)
Qu tan fcil se puede integrar, probar o modificar? Qu tan costoso es el desarrollo? Cul es el tiempo de mercadearlo, una vez concluido?
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
1. Modificabilidad (modifiability):
Habilidad para realizar cambios rpidamente y a un costo razonable.
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
2. Portabilidad (portability):
Habilidad del sistema para ejecutarse bajo diferentes ambientes computacionales.
Clave: Encapsulacin Esconde la capa de portabilidad o el conjunto de servicios que permiten la portabilidad.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
3. Reusabilidad (reusability):
Habilidad de poseer una estructura que pueda ser utilizada por otros sistemas.
4. Integrabilidad (integrability):
Habilidad para hacer que componentes del sistema desarrolladas separadamente trabajen juntas correctamente.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
5. Interoperabilidad (interoperability):
Habilidad de que el sistema, visto como un conjunto de componentes, pueda trabajar con otros sistemas.
UCLA
Rodolfo Caneln
Funcionalidad Confiabilidad
Usabilidad
Eficiencia
Mantenibilidad Portabilidad
- Comporta- Madurez - Tol. Fallas - Recuperab. -Conformidad miento en - Entendibilidad - Aprendibilidad tiempo - Uso de - Operatividad recursos - Atraccin - Conformidad - Conformidad
proceso de desarrollo Las caractersticas internas se deben relacionar con la etapa especfica del proceso de desarrollo No ofrece mtodo o guidelines para el proceso de construccn del modelo de calidad
UCLA
Rodolfo Caneln
principales, de hecho sensibles al cambiante ambiente. El contexto puede cambiar en una va tal que la puesta en operacin del objetivo no sea por tiempo valido o aceptable. En este sentido los requisitos pueden estar intermitentes entre los objetivos y la realidad actual. Por ejemplo, un objetivo para un servicio puede ser provedo para un usuario altamente interactivo. Si el contexto es favorable (Alto ancho de banda, Pantalla a color, Maquina virtual java disponible, entre otros.), El objetivo es trasladado a un servicio Usa un applet de Java para representar una cesta de compra (Finkestein y Savigni et .al, 2004).
UCLA
Rodolfo Caneln
ambientes mviles en estudio son (Wohltorf . et. al, 2004) : Los servicios se ejecuta en un ancho espectro de dispositivos, cada uno con configuraciones y funcionalidades diferentes. Los servicios deben siempre ser garantizados dentro del espectro de cobertura. El usuario debe seleccionar el uso de los servicios ofrecidos. Se debe garantizar un ambiente en el cual los usuarios y dispositivos se conectan y desconectan dinmicamente a la red. Los servicios ejecutados en el espectro de cobertura son restringidos por el tipo de dispositivo y la tecnologa de la plataforma de comunicacin del proveedor de servicios. En particular se tiene: La mayora de los dispositivos son pequeos, no slo en el tamao sino tambin en el poder computacional, tamao de memoria, carga limitada de batera, entre otros. Aunque la mayora de los dispositivos tiene alguna forma de conexin., incluso con los nuevos estndares de redes como GPRS, Bluetooth, 802.11x, entre otros. El ancho de banda todava esta relativamente limitado comparado con las tecnologas de red existentes. Adems, las conexiones son normalmente inestables
UCLA
Rodolfo Caneln
RequisitosArquitecturales
REQUISITOS NO FUNCIONALES
Minimizacin en el consumo de recursos (bateras, almacenamiento de datos, tamao del display , entre otros).
PROPIEDAD DE CALIDAD
Efficiency (performance) Con respecto a la utilizacin de recursos ; propiedad cuantitativa -Atributo: consumo de recurso para cada dispositivo
SOLUCIN ARQUITECTURAL
MTRICA
Protocolo de comunicacin de redes, Ancho dePorcentaje [0..1] banda. Medida durante la ejecucin
Los Datos deben ser transmitidos completa, correctamente Reliability (consistency) Provee un mecanismo, es decir el manejo de laMiddleware incluyendo MEDIATOR y consistentes con conexiones transientes. replica actualizando en cada dispositivo; propiedad cualitativa -Atributo: presencia de mecanismo
Boolean
Efficiency (performance) con respecto al tiempo de respuesta y conexiones; propiedad cuantitativa -Atributo: latency
Protocolo de comunicacin de redes, Ancho dePorcentaje [0..1] banda. Medida durante la ejecucin
Comunicacin flexible debe ser flexible a los requisitos de -Maintainability (changeability) Extensibilidad del ambiente de cambios y relaciones entre componentes que pueden ser ejecucin; propiedad cuantitativa estticos y dinmicos. -Atributo: Tamao -Portability (replaceability) Propiedad cuantitativa -Atributo: Tamao Solucin centralizada, donde la interfaz del dispositivo es Reliability (availability) Propiedad cualitativa distribuida por el middleware de la aplicacin a travs de -Atributo: presencia de un mecanismo, en este caso el middleware la red. soportado por el patrn agente MEDIATOR Reconfiguracion Dinmica de Interfaces Maintainability (changeability) Propiedad cuantitativa -Atributo: Tamao Reliability (consistency) propiedad cualitativa -Atributo: presencia de un mecanismo Portability (adaptability) propiedad cualitativa -Atributo: presencia de un mecanismo
Reflection [28] Mecanismo para observar el estado de un componente para permitir cambios dinmicos en la estructura y desempeo
-Medida de complejidad , es decir numero de componentes dinmicos en un periodo de tiempo -Medida de complejidad
Boolean
UCLA
Rodolfo Caneln
REQUISITOS FUNCIONALES
SOLUCION ARQUITECTURAL
Manejo de Datos
- Realiability (availability, consistency) Una instancia local provee una interface a un servicio local o Atributo: presencia de un mecanismo Mtrica: Boolean remoto. Ejemplo: Ejecutando localmente un web proxy - Efficiency (performance) con respecto al PushObject [17] Un dispositivo enva un objeto especfico con un requisito limitado espacio y al limitado tiempo de respuesta fuera. Ejemplos : SMS, OBEX Atributo: consumo de recursos de cada RequestObject [17] dispositivo Un dispositivo requiere un objeto especifico (Una pagina Mtrica: Porcentaje [0..1] web) desde otro dispositivo. Ejemplo : WAP - Maintainability (changeability) CannedCode [17] Propiedad cuantitativa Un dispositivo enva cdigo, el cual es ejecutado sobre otro Atributo: Tamao dispositivo. El cdigo no debe ser ejecutado sobre el dispositivo que envi. Ejemplo : WMLscript, web filters
LocalProxy [17]
- Maintainability (changeability) Encapsula funciones y datos de no orientados a objetos enAtributo: Tamao APIs concisas, portables, mantenibles y robustas interfacesMtrica: Medida de complejidad - Reliability (fault-tolerance) de clases ComponentConfigurator[28] Permite al componente reconfigurarse en tiempo de ejecucinAtributo: presencia de un mecanismo. vaciando, modificando, recompilando o encadenandoMtrica: Boolean -Usability(attractiveness, operability) estticamente la aplicacin. Atributo: presencia de un mecanismo. Interceptor[28] Permite transparentemente adicionar servicios cuando ciertosMetrica: Boolean
WrapperFaade[28]
Extension Interface[28]
Permite exportar mltiples interfaces por un componente. El componente funcionalmente es extendido y modificado.
Compartimiento de Datos
Repository [44]
UCLA
Rodolfo Caneln
Procesamiento
Los servicios se ejecutan en una diversidad de dispositivos, cada uno1. Las funcionalidades deben adaptarse a las caractersticas de los Dispositivos.
1. Hacer posible los servicios, lo cual implica, ancho de banda apropiado y garantizar las conexiones mviles, tenindose que solventar problemas de redes. 2. Tiempo de transmisin apropiado. Tiempos de respuesta adecuados dentro de un rango establecido.
Confiabilidad (confiability) -Disponibilidad (Availability) Eficiencia (eficiency) -Comportamiento del tiempo (Time Behaviour) con respecto al tiempo de respuesta y a las conexiones.
El usuario selecciona los servicios disponibles en el rea de cobertura. 1. Ofrecer funcionalidades que respondan a las necesidades de los usuarios.
UCLA
Rodolfo Caneln
Requisitos Funcionales
APLICACIONES MOVILES
Propiedades de calidad asociadas (Caractersticas de calidad ) ISO/IEC 9126-1 [15] Requisitos Funcionales Manejar Datos: Los datos deben ser transmitidos completa y correctamente. Confiabilidad (confiability) -Disponibilidad (availability) Con respecto a lo limitado del recurso de espacio) Eficiencia (Efficiency) -Comportamiento del tiempo (Behaviour time) (con respecto al tiempo de respuesta limitado). Funcionalidad (Functionality) -Precisin (accurancy) En el estndar QoS ISO [17], la integridad esta relacionada con acurrancy.
Usabilidad (Usability) -Atractivo (atractiveness) -Operabilidad (Operability) Portabilidad (Portability) -Adaptabilidad (adaptability) -Escalabilidad (Scalability)
Portabilidad (Portability) -Conformidad (compliance) -Escalabilidad (Scalability) Funcionalidad (Functionability) -Seguridad (Security)
Compartir Datos: Los dispositivos mviles formarn una red ad-hoc que se conecta entre ellos para intercambiar laConfiabilidad (Confiability) informacin y para proporcionar los servicios a los usuarios. -Disponibilidad (Availability) Funcionalidad (Functionality) -Interoperabilidad (Interoperability)
UCLA
Rodolfo Caneln
un mecanismo Request/Response.
www.url.com
Request
HTTP protocol
Response
Workstation
HTML
El server web browser, un request y envia Desde unremoto procesa elusuario indica un un HTML es un request a recibido por URL. Esteresponse que es un server el UCLA browser y presentado al usuario Rodolfo una como remoto sobre el protocolo HTTP. Caneln pagina WEB.
Requerimientos (Calidad) Acceso Remoto Interoperatibilidad Extensibilidad (de software y datos) Escalabilidad Upward Compatibility
UCLA
Rodolfo Caneln
Internet
Textual. Multimedia. Informacin Esttica. Objetivo: Disponer rpidamente del sitio. Reducir costos de implementacin. Informacin de acceso pblico. Utilizacin de herramientas para ayudar a construir la interfaz de las pginas. Indices de informacin. Herramientas de bsqueda.
UCLA
Rodolfo Caneln
Zona Abierta
Servidor de informacin Servidor Web Lgica de Aplicacin Conexiones a Datos Conexin con Backend.
Red Interna
Aplicacin Aplicacin Aplicacin Aplicacin
Internet
Servidor de BD
Rodolfo Caneln
Uso de Middleware: Capa de software que reduce el esfuerzo de programacin para enlazar aplicaciones diferentes.
La clave es la interfaz que sirve para intercambiar informacin entre compaas. Comunicaciones independientes de la plataforma.
UCLA
Rodolfo Caneln
Inventario. B2B.
Poder vender a clientes a travs de la Internet. Implementar un sistema de gestin de rdenes de compra por la red. Funciones Inventario Gestin de rdenes de compra Informacin de precios Distribucin Clculo de impuestos Procesamiento de crditos Herramientas Middleware para acceder a la BD. Aplicaciones de personalizacin a clientes y Gestin de relaciones entre consumidores (CRM)
Zona Abierta
Servidor de informacin Servidor Web Lgica de Aplicacin Conexiones a Datos Conexin con Backend. Cortafuegos del dominio
Red Interna
Nodo de Integracin Aplicacin Aplicacin Directorio Seguridad Aplicacin Sistemas de Gestin Servidor de BD Nodo de Gestin y Creacin de contenidos
Rodolfo Caneln
Cliente
Cookie
Internet
IP seguro y No seguro
UCLA
Rodolfo Caneln
registers
establishes connection
UCLA
Rodolfo Caneln
WWW server
RMI URL
UCLA
Rodolfo Caneln
Estilo - Cliente/Servidor
2 capas 3 capas n capas Tecnologa en el servidor Tecnologa en el cliente
UCLA
Rodolfo Caneln
Server Applications
Server Applications
Server Applications
SQL Net
BDD CONECTORES:
BDD
Repositorio (3)
ODBC, JDBC TCP/IP, HTTP, HTTPS, Socket, Objetos Distribuidos, CORBA, ORBA UCLA Rodolfo Caneln
EJEMPLO BSC
Capa de Presentaci n (1) cliente 1 cliente 2 cliente n
Proxy
Tecnologa en el Servidor
CGI: Shell, Perl, C. APIs Web Propietarias: ISAPI, NSAPI. ASP. PHP. Java Script. JSP JSP (Servlets). MIDLETS
UCLA
Rodolfo Caneln
Tecnologa en el Cliente
Tecnologa de Clientes:
Etiquetas:
XLETS
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Se utilizar una tcnica basada en el estndar ISO 9126-1 para especificar las caractersticas de calidad relevantes de una aplicacin Web, refinadas hasta el nivel de sub-caracterstica, involucradas en el proceso de desarrollo arquitectnico de la aplicacin.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
Provee resultados en tiempo razonable? Produce resultados deseados? Cmo se comporta en tiempo de ejecucin? Cmo responde a la conexin con otros sistemas?
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
1. Desempeo (performance):
Tiempo requerido para responder a un evento o conjunto de eventos procesados en un intervalo de tiempo. Rendimiento del tiempo de respuesta. Velocidad de generacin de pginas. Velocidad de generacin de grficos.
2. Seguridad (security):
Habilidad de un sistema para evitar un servicio a los usuarios no autorizados y proporcionarlo a los autorizados. Validacin de la entrada del usuario.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
3. Disponibilidad (availability):
Porcin del tiempo que el sistema est operativo. Se asocia con Integridad (habilidad para mantenerse operativo en el tiempo) y con Tolerancia a fallas (habilidad para mantenerse operativo y recuperarse de posibles fallas).
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
4. Funcionalidad (functionality):
Habilidad del sistema para realizar el trabajo para el cual fue concebido.
Capacidad de recuperacin y bsqueda. Servicio de bsqueda en navegacin. Servicio relacionados con el dominio de la aplicacin. Proceso correcto de enlace
UCLA
Rodolfo Caneln
Calidad de Software
Atributos observables en Tiempo de Ejecucin (Runtime)
5. Usabilidad (usability):
Como el usuario percibe y comunica con el sistema y comprende factores tales como: aprendizaje, desempeo, memorizacin, robustez, satisfaccin.
Capacidad de comprensin del sitio global. Capacidad esttica y de interfaz. Servicio de ayuda y realimentacin en lnea.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (N-Runtime)
Caractersticas o atributos que responden a preguntas sobre el sistema, tales como:
Qu tan fcil se puede integrar, probar o modificar? Qu tan costoso es el desarrollo? Cul es el tiempo de mercadearlo, una vez concluido?
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
1. Modificabilidad (modifiability):
Habilidad para realizar cambios rpidamente y a un costo razonable. Incluye los aspectos: extensin, eliminacin, adaptacin, reestructuracin.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
2. Portabilidad (portability):
Habilidad del sistema para ejecutarse bajo diferentes ambientes computacionales. Clave: Encapsulacin Esconde la capa de portabilidad o el conjunto de servicios que permiten la portabilidad.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
3. Reusabilidad (reusability):
Habilidad de poseer una estructura que pueda ser utilizada por otros sistemas.
4. Integrabilidad (integrability):
Habilidad para hacer que componentes del sistema desarrolladas separadamente trabajen juntas correctamente.
UCLA
Rodolfo Caneln
Calidad de Software
Atributos No observables en Tiempo de Ejecucin (Runtime)
5. Interoperabilidad (interoperability):
Habilidad del sistema, visto como un conjunto de componentes, pueda trabajar con otros sistemas.
Transferencia de data entre la aplicacin Web y otro software. Siguiendo estndares de conectividad y manejo de protocolos.
Facilidad de cmo el sistema puede ser probado y demostrar sus fallas a travs de pruebas.
Conveniencia: Ya que la aplicacin Web debe tener un conjunto apropiado de funciones para realizar las tareas que la misma debe cumplir: mecanismos de bsqueda de la aplicacin, mecanismos de navegacin y browsing, organizacin del contenido.
UCLA Rodolfo Caneln
Exactitud: Si la aplicacin es de tipo transaccional, debe proporcionar resultados correctos. Interoperabilidad: Es conveniente que la aplicacin Web interacte con otros sistemas especficos, por ejemplo, transferencia de data entre la aplicacin Web y otro software, estndares de conectividad y manejo de protocolos. Seguridad: En aplicaciones transaccionales y de UCLA Rodolfo Caneln comunicacin, es necesario prevenir de accesos no autorizados
Madurez: Referida a la frecuencia de fallas: presencia de errores en los enlaces, errores de navegacin. Recuperabilidad: Atributos de la aplicacin Web, necesarios para recuperacin en caso de fallas o de errores. Tolerancia a fallas: Atributos de la aplicacin Web necesarios para mantener un nivel de eficiencia en caso de falla.
UCLA Rodolfo Caneln
Entendibilidad: Ya que es necesario que el usuario en poco tiempo reconozca la lgica de la aplicacin y para qu sirve, entendimiento global de la aplicacin Web, posesin de realimentacin y ayuda en lnea, etc.
UCLA
Rodolfo Caneln
Aprendizaje: Esfuerzo necesario para aprender a usar la aplicacin Web, sobre todo en el caso de aplicaciones que se van a usar frecuentemente, como transaccionales, de entretenimiento, aplicaciones interactivas, etc. Atractividad: Las aplicaciones Web deben ser atractivas a sus usuarios. Operatividad: Esfuerzo necesario, para controlar y operar la aplicacin Web, facilidades de navegacin, facilidades para localizar la UCLA Rodolfo Caneln informacin, etc.
Comportamiento en el tiempo: Rendimiento del tiempo de respuesta, velocidad de generacin de grficos, velocidad de generacin de pginas, etc. Utilizacin de recursos: Cantidad de recursos utilizados y duracin de su uso para ejecutar una funcin: imgenes , video, sonido.
UCLA Rodolfo Caneln
SUBCARACTERISTI CAS
SEGURIDAD
CONFIABILIDAD
ATRACTIVIDAD OPERATIVIDAD
UTILIZACION DE RECURSOS
Rodolfo Caneln
Analizabilidad: Atributos relacionados con el esfuerzo necesario para diagnosticar deficiencias o causas de fallas: documentacin disponible, trazabilidad de la aplicacin, estructura de la aplicacin, etc. Cambiabilidad: Atributos de la aplicacin relacionados con el esfuerzo necesario para hacer modificaciones o corregir errores en la misma: uso de estndares de programacin, uso de modularidad,, desarrollo basado en componentes, etc.
UCLA Rodolfo Caneln
tener efectos inesperados producto de modificaciones. En una aplicacin Web, se pueden incorporar y desincorporar componentes sin afectar el desempeo de la aplicacin.
UCLA
Rodolfo Caneln
Adaptabilidad: Las aplicaciones Web deben tener alta escalabilidad, permitiendo a las mismas correr en diferentes plataformas. Instalabilidad: Esfuerzo necesario para instalar la aplicacin en un ambiente especfico. Slo es necesaria la instalacin en el servidor.
UCLA Rodolfo Caneln
SUBCARACTERISTICAS
ANALIZABILIDAD
CAMBIABILIDAD
PORTABILIDAD
ADAPTABILIDAD
INSTALABILIDAD
MODELO DE CALIDAD PARA APLICACIONES WEB: VISION INTERNA UCLA Rodolfo Caneln
UCLA
Rodolfo Caneln
Anlisis de los requerimientos funcionales y no funcionales del sistema para establecer las metas de calidad. Dar prioridad a las subcaractersticas de calidad tomando en cuenta los requerimientos de calidad del sistema. Presentacin de los estilos arquitectnicos a utilizarse para definir la arquitectura.
UCLA
Rodolfo Caneln
Actividades a realizar para evaluar las arquitecturas propuestas (continuacin): 4. Uso del modelo de calidad ISO 9126-1 para evaluar los estilos. 5. Construccin de la tabla de comparacin. 6. Analizar los resultados obtenidos.
UCLA
Rodolfo Caneln
Caractersticas Funcionalidad
Sub-Caractersticas Capas Conveniencia Si (Suitability) Interoperatibilidad Si Seguridad Mecanismos a nivel de protocolo y socket Madurez Tolerancia a Fallas Recuperabilidad Protocolo + Socket No Depende de mecanismos adicionales Velocidad de respuesta de la capa Mensaje de: solicitud y respuesta
Repositorio Si Si Mecanismo por cada requerimiento del cliente Depende de mecanismos adicionales Depende de mecanismos adicionales Depende del tiempo de respuesta del DataServer Invocaciones a la base de datos Si
O-O No Mecanismos a nivel de pase de mensajes Alta No No Depende del tiempo de respuesta del mensaje Paso de mensajes
Confiabilidad
Eficiencia
UCLA
Rodolfo Caneln
Caractersticas Mantenibilidad
Capas Si Si Si Si Bajo Si Si Si Si
Portabilidad
Repositorio Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales.
O-O Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales. Depende de mecanismos adicionales.
UCLA
Rodolfo Caneln
Conclusiones
-
La clasificacin y comparacin de estilos arquitectnicos son problemas complejos. La especificacin de los atributos de calidad usando un modelo de calidad basado en estndares internacionales ofrece una amplia y global visin de las caractersticas y atributos de calidad para arquitectura de software desde el punto de vista del arquitecto y del usuario. La evaluacin de estilos arquitectnicos respecto a atributos de calidad se basa en la definicin de modelos de calidad.
UCLA
Rodolfo Caneln
CLASES Siguen
Octubre Middleware Protocolos EAI Noviembre Caracterizacin Arquitectura Patrones Framework Construccin de la interfaz
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Patrones ms comunes: Thin Web Client (Cliente Web Ligero) Fat Web Client (Cliente Web Pesado) Web Delivery (Distribucin Web) No es una lista completa evolucin tecnolgica constante Es posible aplicar varios patrones a una misma
arquitectura (topologa)
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
til para aplicaciones basadas en Internet Mnimo control de la configuracin del cliente El cliente slo necesita un browser Web que realiza peticiones de pginas Lgica del negocio ejecutada en el servidor
Usos Conocidos
UCLA
Rodolfo Caneln
Mnima arquitectura para una aplicacin Web Sus principales elementos estn en el servidor
Elementos: Browser del cliente (Cte) Servidor Web (Cte) Conexin HTTP (Ctor) Pginas HTML (Cte) Pginas del servidor (Cte) Servidor de Aplicaciones (Cte)
UCLA
Pginas del Servidor + Active Server Pages + Java Servlets + ISAPI + NSAPI + CGI + Java Server Pages
UCLA
Rodolfo Caneln
Persistencia
UCLA
Rodolfo Caneln
Pginas del Servidor + Active SP + Java SP + Java Servlets + ISAPI + NSAPI + CGI
UCLA
Mapping de Persistencia
RodolfoPersistencia Caneln
Adecuada para aplicaciones cuyas respuestas del servidor puedan ser completadas dentro del
tiempo de respuesta aceptable esperado por el usuario y del valor de timeout permitido por el browser del cliente
No adecuada si la aplicacin necesita permitir al usuario iniciar y controlar un proceso del negocio duradero Capacidad de sofisticacin limitada a lo soportado por el browser y la especificacin HTML
UCLA Rodolfo Caneln
Interfaz de usuario
UCLA
Rodolfo Caneln
se desea una interfaz de usuario sofisticada, o el cliente puede ejecutar algo de lgica del negocio
Validacin de datos
Elementos:
Los del patrn Cliente Web Ligero Scripts del Cliente (Cte, Ctor) - Documentos XML (Cte, Ctor) Controles ActiveX (Cte, Ctor) - Applets de Java (Cte, Ctor) UCLA Rodolfo Caneln JavaBeans (Cte, Ctor)
Persistencia
Rodolfo Caneln
No todos los browsers soportan JavaScript o VBScript ActiveX slo soportado por clientes MS-Windows
y el usuario puede desactivar su uso
Cada browser implementa su propia versin de Java Diferencias en la implementacin del DOM Comprobar el comportamiento correcto de los scripts, controles o applets para cada browser y configuracin del cliente que deba ser soportada
UCLA Rodolfo Caneln
Pruebas
Web Delivery
(Distribucin Web)
Sistema de objetos distribuidos basado en un sitio Web Usa protocolos de comunicacin entre cliente y servidor
diferentes a HTTP Pueden ejecutarse objetos reales en el contexto del cliente o el browser,
Con acceso a recursos del cliente Pueden comunicarse directamente con objetos del servidor y con otros browsers
UCLA
Rodolfo Caneln
Web Delivery
(Distribucin Web)
No muy adecuado para aplicaciones basadas en Internet o cuando la red es poco fiable Ms adecuado para intranets (seguridad y rapidez)
Comunicacin directa y persistente entre cliente y servidor Combinado con otros patrones de arquitectura
UCLA
Rodolfo Caneln
Web Delivery
Usos Conocidos CNN Interactive Web Site
(Distribucin Web)
acceso pblico va browsers y HTML3.2 tras el sitio Web est una red basada en CORBA de browsers, servidores y objetos distribuidos Aplicacin Cliente Web Pesado para gestin de pacientes e historiales Aplicacin Distribucin Web para facturacin
UCLA
Rodolfo Caneln
Web Delivery
(Distribucin Web)
Elementos:
Los del patrn Cliente Web Ligero y DCOM (protocolo Cte Ctor) IIOP (protocolo Cte Ctor) RMI (protocolo Cte Ctor)
UCLA
Rodolfo Caneln
Web Delivery
(Distribucin Web)
Comunica directamente con objetos del servidor Interfaz del cliente y Objetos del negocio
Descargados por el browser automticamente desde el servidor Comunicacin, asncrona e independiente, con objetos del servidor
UCLA Rodolfo Caneln
Web Delivery
(Distribucin Web)
Consecuencias (del uso de este patrn) Traslada parte de la carga del servidor al cliente Portabilidad (anlogo a Cliente Web Pesado) Requiere una red slida
Conexiones cliente - servidor de larga duracin Una cada del servidor puede ser muy problemtica
UCLA
Rodolfo Caneln
Web Delivery
ActiveX del Cliente Browser Applet Java
(Distribucin Web)
DCOM
Http, Https, CORBA Servidor de Aplicaciones Servidor Web Pginas del Servidor Pginas HTML IIOP
RMI
Enterprise JavaBeans
Persistencia
Proxy
Configurator
UCLA
Rodolfo Caneln
Configurator
observar el estado de un componente con el fin de poder cambiar estructura y comportamiento de un sistema en tiempo dinmico.
Configurator
Configurator
Interceptor Extension Interface Multi-DataBase
Favorece la mantenibilidad,
UCLA
Rodolfo Caneln
Configurator
Interceptor Extension Interface Multi-DataBase
Favorece la mantenibilidad
UCLA
Rodolfo Caneln
Configurator
Interceptor Extension Interface Multi-DataBase
Favorece la mantenibilidad (facilidad
UCLA
Rodolfo Caneln
Configurator
Interceptor Extension Interface Multi-DataBase
Favorece la mantenibilidad (facilidad
UCLA
Rodolfo Caneln
Configurator
Interceptor Extension Interface Multi-DataBase
un modelo cliente/servidor, donde agentes o mediadores, aceptan los queries de los usuarios, los reconducen a las BDs disponibles y devuelven las respuestas adecuadas.
UCLA
Completion Token
UCLA
Rodolfo Caneln
Reactor Asynchronous
aplicaciones multiplexen y despachen servicios que son liberados a uno o mas clientes.
Completion Token
Facilita el mecanismo de activacin
UCLA
Rodolfo Caneln
Reactor Asynchronous
Completion Token
Favorece la mantenibilidad.
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Favorece la adaptabilidad (a
diferentes ambientes).
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Favorece la mantenibilidad, la
extensibilidad, la adaptabilidad.
UCLA
Rodolfo Caneln
testing).
UCLA
Rodolfo Caneln
Favorece la extensibilidad, la
adaptabilidad.
UCLA
Rodolfo Caneln
La heterogeneidad: El procesamiento se llevara a cabo en un espectro ancho de dispositivos del cliente, cada uno con configuraciones y funcionalidades diferentes. El predominio de Dispositivos "Pequeos": Muchos dispositivos sern pequeos, no slo en el tamao sino tambin en el poder computacional, tamao de memoria, entre otros. Capacidades limitadas de la Red: La mayora de los dispositivos tendran alguna forma de conexin. Sin embargo, incluso con los nuevos estndares de redes como GPRS, Bluetooth, 802.11x, etc., El ancho de banda todava estara relativamente limitado comparado a las tecnologas de red existentes. Adems, las conexiones son normalmente inestables. La alta Movilidad: Los usuarios pueden llevar los dispositivos de un lugar a otro sin detener los servicios. Orientados al Usuario: Se relacionaran los servicios al usuario en lugar de a un dispositivo especfico o localizacin especfica. El Ambiente muy Dinmico: Un ambiente en el cual los usuarios y dispositivos siguen instalndose, dentro y fuera de la red. Aplicaciones Distribuidas: Una aplicacin simple tiene que ser desarrollada de una manera distribuida, es decir tiene que identificar partes que corran independientemente sobre otros dispositivos.
UCLA Rodolfo Caneln
Nuevos requisitos que deben ser incorporados en Diversidad: La cual se define como la La adaptacin a la la infraestructura
habilidad para que las aplicaciones puedan adaptar su funcionalidad segn los requisitos del dispositivo, redes, entre otros. La Interaccin creciente con las conexiones punto a punto: Muchos de estos dispositivos formarn una red ad-hoc que se conecta entre ellos para intercambiar la informacin y para proporcionar los servicios a los usuarios. El Modelo de Computacin flexible: En un ambiente de computacin mvil, hay varias maneras de acceder tipos diferentes de datos segn las necesidades de los diferentes usuarios. Una combinacin de cdigo y movilidad de los datos debe permitir construir un modelo de computacin flexible.
UCLA
Rodolfo Caneln
Dispositivos mviles
Telfonos inteligentes
Pads
Se_Ejecutan 1..*
Otros Handhelp
Servicios
Contexto
QoS
1..*
Comunicacin
Localizacin
Perfil
Nivel de ruido
UCLA
Rodolfo Caneln
MIDDLEWARE
Servicios y Aplicaciones
Seguridad
UCLA
Rodolfo Caneln
GUI cliente
Mediator
Contexto
Servicios y Aplicaciones
Seguridad
UCLA
Rodolfo Caneln
Procesamiento
Los servicios se ejecutan en una diversidad de dispositivos, cada uno1. Las funcionalidades deben adaptarse a las caractersticas de los Dispositivos.
1. Hacer posible los servicios, lo cual implica, ancho de banda apropiado y garantizar las conexiones mviles, tenindose que solventar problemas de redes. 2. Tiempo de transmisin apropiado. Tiempos de respuesta adecuados dentro de un rango establecido.
Confiabilidad (confiability) -Disponibilidad (Availability) Eficiencia (eficiency) -Comportamiento del tiempo (Time Behaviour) con respecto al tiempo de respuesta y a las conexiones.
El usuario selecciona los servicios disponibles en el rea de cobertura. 1. Ofrecer funcionalidades que respondan a las necesidades de los usuarios.
UCLA
Rodolfo Caneln
Requisitos Funcionales
APLICACIONES MOVILES
Propiedades de calidad asociadas (Caractersticas de calidad ) ISO/IEC 9126-1 [15] Requisitos Funcionales Manejar Datos: Los datos deben ser transmitidos completa y correctamente. Confiabilidad (confiability) -Disponibilidad (availability) Con respecto a lo limitado del recurso de espacio) Eficiencia (Efficiency) -Comportamiento del tiempo (Behaviour time) (con respecto al tiempo de respuesta limitado). Funcionalidad (Functionality) -Precisin (accurancy) En el estndar QoS ISO [17], la integridad esta relacionada con acurrancy.
Usabilidad (Usability) -Atractivo (atractiveness) -Operabilidad (Operability) Portabilidad (Portability) -Adaptabilidad (adaptability) -Escalabilidad (Scalability)
Portabilidad (Portability) -Conformidad (compliance) -Escalabilidad (Scalability) Funcionalidad (Functionability) -Seguridad (Security)
Compartir Datos: Los dispositivos mviles formarn una red ad-hoc que se conecta entre ellos para intercambiar laConfiabilidad (Confiability) informacin y para proporcionar los servicios a los usuarios. -Disponibilidad (Availability) Funcionalidad (Functionality) -Interoperabilidad (Interoperability)
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Usuario
Diseador Grfico
Para el diseo de Interfaces de Usuario se requiere un equipo que incluya al usuario, especialistas del dominio de la aplicacin y a especialistas de otras disciplinas
Psiclogo
Usuario
UCLA Rodolfo Caneln
...
etc.
Estudios empricos.
UCLA
Rodolfo Caneln
Guas de Diseo
Los principios son conceptos de alto nivel que orientan la actividad del diseo de la interfaz Los lineamientos son reglas que se establecen en una organizacin para el diseo y desarrollo de interfaces referentes al look and feel
UCLA
Rodolfo Caneln
progresiva, pero...)
UCLA
Rodolfo Caneln
Un patrn de interaccin describe una solucin exitosa a un problema recurrente concerniente a la interfaz de usuario, en un contexto dado
UCLA
Rodolfo Caneln
Antecedentes
90s
Patrones en Computacin
Patrones en IHC Patrones de interaccin como una herramienta apropiada para la captura y reutilizacin de las experiencias y conocimientos de los expertos
UCLA Rodolfo Caneln
Patrones de Diseo
Un patrn de interfaz sirve para:
Describir un problema, su contexto y la solucin Generalizar una solucin Facilitar la comunicacin entre miembros de distintas
UCLA
Rodolfo Caneln
La construccin de software usable, La comunicacin entre los miembros del grupo de desarrollo multidisciplinario, Para la construccin del prototipo de interfaz (incorporando esta actividad al proceso de desarrollo de software).
UCLA
Rodolfo Caneln
El usuario desea introducir datos de fechas y no desea preocuparse por la sintaxis del dato Permitir que el usuario elija la fecha de un calendario tal como se encuentra en el mundo real y que solo realice seleccin el usuario no tipea. Todos los sistemas que requieran que el usuario introduzca fechas (importante en interfaces internacionales)
Contexto Fuerzas
UCLA
Rodolfo Caneln
Aunado Implica
Visualizar la Problemtica considerando varias reas
UCLA
Rodolfo Caneln
Con frecuencia un diseador se enfoca sobre un rea especfica del problema, descuidando otras reas del Problema
Aunado Problemtica que se presenta en las fases iniciales de diseo Pudiese causar
Patrones de Diseo
UCLA
Posible Solucin
Rodolfo Caneln
Patrones de Diseo
Los patrones se derivan del diseo de software exitoso y que pueden ser reutilizados como bloques de construccin para nuevos diseos. Patrones Mviles
Los patrones mviles cubren reas del problema que los autores encontraron frecuentemente en los escenarios mviles Los patrones mviles relacionados pueden agruparse en patrones de clases, utilizando una Jerarqua de Patrones.
UCLA Rodolfo Caneln
Jerarqua de Patrones
UCLA
Rodolfo Caneln
Jerarqua de Patrones
Los patrones mviles no solo son aplicables en los escenarios mviles
Los patrones de diseo que aparecen frecuentemente en escenarios mviles son buenos candidatos para nuevos proyectos
UCLA
Rodolfo Caneln
Descripcin de Patrones de Diseo Mviles describir los patrones de diseo mviles se utiliza el esquema de Para
descripcin de Patrones utilizados por Gamma. Pattern Name
Intent Also Known As Motivation Applicability Consequences Structure Participants Collaborations Consequences Implementation Sample Code Known Uses Related Patterns
UCLA Rodolfo Caneln
Pattern Name
De la descripcin propuesta usada en el desarrollo de software orientado a objeto: Se reemplaza la seccin Implementation por Examples Se agrega la seccin Classes
Proxy
Se utiliza cuando es imposible referenciar a un objeto, por
ejemplo porque resida en otro procesador Una ventaja es que ofrece la posibilidad de que el servidor pueda estar en un espacio de direcciones distinto al cliente en un sistema Distribuido La principal desventaja es la perdida de performance cuando hay un solo cliente porque podran comunicarse directamente. Otra desventaja es que debe conocer la direccin del servidor Broker.
UCLA
Rodolfo Caneln
CONTEXTO
Considere un usuario en un browser Web con un dispositivo handhelp. La resolucin de la pantalla del dispositivo es actualmente pobre entonces elementos como grficos y tablas son dificultosos de mostrar.
FUERZAS
Un usuario requiere una tarea especifica : Busca seguridad en el ancho de banda de la red Busca seguridad en los recursos computacionales ( memoria) sobre el dispositivo local Espera apropiadas I/O acorde a las capacidades locales disponibles.
UCLA
Rodolfo Caneln
UCLA
Rodolfo Caneln
Patrones de Interaccin Mv
UCLA
Rodolfo Caneln
Patrones de Interaccin Mv
EJEMPLOS
ProxyWeb ( http://www.intellisync.com) permite a usuarios handhelp usar browser sin forzar las limitaciones. El proxy preprocesa las paginas , descarga las imgenes y pre calcula el layout apropiado. Como resultado la cantidad de datos transferidos al dispositivo es reducido drsticamente. PocketDreamTeam es la versin PalmOS.
PATRONES RELACIONADOS
PushObject, RequestObject
CLASES
ServiceUsage, MobileService
UCLA
Rodolfo Caneln
Patrones de Interaccin Mv
Proxy - Estructura
Client
Subject Request( )
...
Real Subject Request( )
Real Subject
...
Proxy Request( )
UCLA
Rodolfo Caneln
Patrones de Interaccin Mv
Image
Draw() GetExtend() Store() Load() ImageImp extend
ImageProxy Image
Draw() GetExtend() Store() Load() Name extend
UCLA
Ventajas
Principalmente los patrones son una herramienta para
describir diseos.
consecuencias. (un diseador est consiente de los pro y los contra de un patrn especfico). diseos exitosos.
UCLA
Rodolfo Caneln
Anlisis Crtico
Los patrones mviles propuestos por el autor pueden considerarse Alejandrinos?
El esquema propuesto para describir los patrones a pesar de hacer referencia al esquema presentado por Gamma, ha sido bastante modificado, se aproxima mucho mas al esquema propuesto para describir los patrones de interaccin presentado por Colocar autor ojo Rodolfo.
El trabajo presentado abre las puertas a un rea especfica de la investigacin, y son muchos los beneficios para los diseadores de aplicaciones mviles que traera el enriquecimiento de la jerarqua de patrones presentada por el autor.
Conclusiones
La jerarqua de patrones presentada no pretende estar completa.
En el futuro se espera completar la coleccin de patrones mviles; en tal sentido se analizan las aplicaciones existentes en la computacin mvil y los frameworks. la seccin Clases que indica cmo un patrn se integra en la jerarqua de patrones. Las clases del patrn dan informacin adicional de la estructura a un diseador, as pueden clasificarse los problemas y soluciones relacionadas a un patrn especfico ms fcilmente los patrones de movilidad tienen una caracterstica fuertemente informal.
UCLA
Rodolfo Caneln
Bibliografa
Thomas Plan, Richard Guy and Rajive Bagrodia . Universitu of California At los angeles .A scalable, Distributed Middleware Service Architecture to Support Mobile Internet Applications. 7 workshop on wireless mobile Internet. Rome 2001. Jonathan Knudse . Wireless Java: Developing with JavaTM 2 Micro Edition July 2001. Sun Microsystems Inc. Connected, Limited Device Configuration (JSR-30), 2001 Tim Lindholm and Frank Yellin . The Java Virtual Machine Specification (Java Series), Second Edition. Addison-Wesley, 1999, ISBN 0-201-43294-3 August 1998. Development of a Java-based version of ExploreNet http://www.cs.ucf.edu/ExploreNet/ - 27.6KB - explorenet: 17
UCLA
Rodolfo Caneln