Você está na página 1de 5

LIMITACIONES DEL DESARROLLO DE APLICACIONES EN

DISPOSITIVOS MVILES
Alejandro Botero Lpez
Hugo Giraldo Arenas
Alexandra Moyano Romero
boteroa@javeriana.edu.co
hugo.giraldo@javeriana.edu.co
alexandra.moyano@javeriana.edu.co
Noviembre 2003

Resumen
En este artculo se muestran las
principales caractersticas de los
dispositivos mviles as como sus
limitaciones y tecnologa utilizada.
Adicionalmente se da una breve
explicacin
sobre
algunas
plataformas y arquitecturas para
desarrollar aplicaciones para estos
dispositivos mviles.
Finalmente, se hablar sobre los
agentes mviles, posible alternativa
para lidiar con las limitaciones
inherentes de estos dispositivos.
Palabras clave:
Dispositivos Mviles, arquitecturas
distribuidas, J2ME, JXTA, peer to
peer, agentes mviles.

1.

Introduccin

El uso de los dispositivos mviles se


ha incrementado notablemente en los
ltimos aos. Se estima que para el
ao 2005 sean ms de 100 millones
los suscriptores de telefona celular
[IE2003].
Como todo dispositivo tiene sus
ventajas y sus limitaciones. La
principal ventaja es el acceso a
cualquier tipo de informacin en
cualquier momento y desde cualquier
lugar. Las limitaciones se ven tanto
en hardware como en software y

sern descritas posteriormente. Lidiar


con estas limitaciones es un reto hoy
en da.
Para hablar sobre este tema primero
se darn algunos conceptos bsicos
sobre los dispositivos mviles.
Continuaremos
definiendo
las
arquitecturas
distribuidas
y
finalizaremos con el tema de agentes.

2.

Dispositivos Mviles

Aunque las capacidades de hardware


pueden variar de un dispositivo a
otro,
bsicamente
todos
los
dispositivos mviles cuentan con
capacidad de almacenamiento y
procesamiento. Dentro de esta
categora podemos encontrar PDAs,
telfonos celulares, beepers y
computadores porttiles, todos con
una caracterstica en comn: son
personales y acompaan al usuario
en todo momento.
Algunas de las limitaciones que
tienen estos dispositivos mviles son
la capacidad de almacenamiento y de
procesamiento limitado, ancho de
banda limitada, la latencia es alta y
hay
intermitencia
en
la
comunicacin.

2.1

Tecnologas

La telefona celular comenz en


Colombia
usando
TDMA
(comunicacin por tiempos) en
donde una sola celda se encargaba
del trfico y el ancho de banda era

relativamente bajo (800 MHz).


Ahora, se ha introducido la
tecnologa 3GSM por parte de
Comcel,
PCS
(Personal
Communication
Services)
con
Colombia Mvil y CDMA con
Bellsouth.
Todas las nuevas tecnologas tienen
el mismo principio de la telefona
celular tradicional: una antena tiene
un rea especfica de alcance para su
seal. Este permetro se conoce como
celda y cuando los usuarios estn
en l, pueden conectarse a dicha
antena. La diferencia fundamental es
que las nuevas tecnologas operan
con un ancho de banda mayor (1900
MHz), el cual les sirve para
transmitir voz, datos e imgenes con
una mayor rapidez.

2.2

Protocolos

Los protocolos de comunicacin


Bluetooth y el estndar 802.11b son
utilizados
para
dispositivos
inalmbricos.
Estos
protocolos
comparten algunas caractersticas
como la banda de transmisin que va
desde 2.4 a 2.485GHz. Su principal
diferencia es la velocidad. Bluetooth
opera a una velocidad alrededor de
720kbps, que es muy inferior a la del
estndar
802.11b
que
es
aproximadamente
de
11mbps
[KG2003].
Bluetooth es ms favorable para
conectar un dispositivo en una red
pequea donde la rapidez no es
indispensable y el bajo consumo de
energa es fundamental. Por otro
lado, el estndar 802.11b es mejor
cuando un computador necesita
conectarse a Internet (gracias a su
rapidez), pero su desventaja aparece
cuando se quiere conectar un
dispositivo rpidamente en un
ambiente seguro [KG2003].

Dentro de los protocolos de


transmisin de datos encontramos
I-MODE y WAP. El primero es un
servicio de transmisin por paquetes
que permite una conexin continua
con Internet a travs de los telfonos
mviles. I-mode usa un subtexto de
HTML llamado cHTML para
convertir la informacin. Los
servicios ms utilizados por los
usuarios son mail "i-mode", banca
mvil e informacin de transporte en
general. WAP (Wireless Application
Protocol) es una especificacin para
un conjunto de protocolos de
comunicacin inalmbrica para el
acceso a Internet.

2.3 Herramientas
desarrollo

de

Existen diferentes herramientas que


facilitan el rpido desarrollo de
aplicaciones. El uso de estas
herramientas depende tanto del
lenguaje en el que sepa programar el
desarrollador como de la tecnologa
utilizada por los dispositivos. A
continuacin se explicarn algunas
de estas herramientas.
J2ME (Java 2 Micro Edition) es
una versin de Java que es, tanto un
lenguaje de programacin, como una
plataforma desde la que se puede
descargar y ejecutar aplicaciones en
los terminales mviles de forma
abierta y sencilla. Los terminales que
integran J2ME permiten descargar
bajo demanda aplicaciones escritas
en esta tecnologa para ser utilizadas
directamente desde el mvil,
permitiendo
una
mayor
personalizacin [VN 2002].
BREW
("Binary
Runtime
Environment for Wireless") es una
creacin de la empresa Qualcomm
que intenta ofrecer la solucin para
generar
aplicaciones
dinmicas

altamente grficas en el Cliente


(Telfono Celular) esto a diferencia
de WAP-WML donde un Servidor de
Pginas genera un contenido muy
restringido para el Cliente [OL2003].
A diferencia de J2ME, BREW es una
tecnologa basada en los lenguajes C
y C++, esto ofrece una alternativa
para aquellos que no estn
especializados en el mundo Java.
JXTA es una plataforma abierta para
computacin de punto a punto. Visto
de una manera simple es un grupo de
protocolos para interoperabilidad
basados en XML. El cdigo es
abierto. Un punto JXTA puede tomar
diferentes formas mientras se
comunique utilizando protocolos
JXTA.
En la figura 1 vemos un conjunto de
puntos JXTA pertenecientes a
diferentes grupos. Cada peer o punto
tiene asignado un nico PeerID de
128 bits. Cada punto puede
pertenecer a uno o ms grupos de
puntos donde cooperan entre s
configurndose dinmicamente.. Los
puntos utilizan unos canales virtuales
de comunicacin de doble va
llamados Pipes los cuales tienen un
nico PipeID.

Figura 1. Grupos de puntos JXTA


[MA2003].

.NET Compact Framework, como las


anteriores, es una herramienta para la
construccin de aplicaciones basadas
en
tecnologas
de
internet.
Corresponde a la versin para

dispositivos mviles del conocido


framework de .NET de Escritorio.

3.

Arquitecturas

La arquitectura de un sistema es su
estructura en trminos de sus
componentes
especificados
por
separado. Un modelo arquitectnico
de un sistema distribuido trata sobre
la colocacin de sus partes y las
relaciones entre ellas. Algunos
ejemplos pueden ser el modelo
cliente-servidor y el modelo de
procesos peer to peer. El objetivo
global del modelo arquitectnico es
asegurar que la estructura satisfar
las demandas presentes y previsibles
sobre l.
En la figura 2 encontramos la
evolucin de las arquitecturas
distribuidas en las ltimas dcadas.
Primero
surgi
un
modelo
cliente/servidor.
La
segunda
arquitectura que se presenta es la que
conocemos como Web Based.
Finalmente,
encontramos
la
arquitectura peer to peer que ha
cogido mucho auge ltimamente con
servicios como el ofrecido por
Napster, Gnutella o Kazaa.

Figura 2. Evolucin de las arquitecturas


distribuidas [SR2003].

3.1

Peer 2 Peer

P2P (Peer to Peer) es una


arquitectura en donde todos los
puntos
desempean
tareas
semejantes,
interactuando

cooperativamente como iguales para


realizar una tarea distribuida o de
cmputo sin distincin entre cliente y
servidor. P2P descubre y se adapta a
nuevas fuentes de informacin.
Replica informacin a travs de otros
puntos para protegerla. Construye
servicios complejos combinando
simples. Incrementa el desempeo a
medida que hay ms puntos dentro
de la red. Las principales ventajas del
P2P son la mejor utilizacin del
ancho de banda, procesador,
almacenamiento y otros recursos del
computador [MA2003].
P2P
tambin
tiene
algunas
desventajas entre las que podemos
encontrar una alta carga de la red.

3.2

Cliente / Servidor

La tecnologa cliente servidor se


propag rpidamente a nivel mundial
y es considerada como una de las
arquitecturas ms utilizadas.
La arquitectura C/S hace referencia a
la forma de comunicarse que tienen
dos aplicaciones. En general, las
comunicaciones en Internet siguen
este modelo: el cliente hace una
peticin (ya sea http, ftp, ...) y el
servidor le responde envindole la
informacin (sea un archivo o una
consulta a una base de datos). Tanto
el cliente como el servidor son
aplicaciones que se estn ejecutando
en diferentes mquinas (aunque
podran hacerlo en la misma)
comunicadas a travs de Internet.
Esta arquitectura presenta algunos
problemas entre los que encontramos
un alto requerimiento de red, un
difcil control de versiones del sw,
se necesita una conexin dedicada
con el servidor y es difcil actualizar
los programas en cada mquina.

4.

Agentes

Un agente puede ser definido como


un proceso autnomo o semiautnomo que realiza una funcin
definida. Pueden ser clasificados por
su movilidad como estticos o
mviles, o de acuerdo a varios
atributos primarios que deben exhibir
como autonoma, aprendizaje y
cooperacin.

4.1

Agentes Mviles

Un agente mvil es un programa en


ejecucin (lo que incluye tanto
cdigo como datos) que se traslada
de un computador a otro en la red
realizando una tarea para alguien.
Por
ejemplo,
recolectando
informacin
y
retornando
eventualmente con los resultados. Un
agente mvil puede hacer muchas
solicitudes a los recursos locales que
visita, por ejemplo, accediendo a
anotaciones individuales en una base
de datos [GC 2001].

4.2

Plataformas

Existen diferentes plataformas para


el desarrollo de aplicaciones con
agentes.
A
continuacin
describiremos algunas de ellas.
Primero encontramos la plataforma
Aglets, la cual se basa en objetos
java y utiliza serializacin para la
conservacin del estado de los
agentes.
La
seguridad
es
configurable por el usuario. Est
disponible para Solaris y Windows
[IH1997].
La
siguiente
plataforma
es
Messengers se basa en mensajes
inteligentes para transportar el
comportamiento de los agentes. Es
un intrprete del lenguaje MO en
cada nodo del sistema. Entre los
elementos
que
contiene
esta

plataforma
estn
los
threads
intrpretes, memoria compartida con
pares clave/valor, colas de threads
bloqueantes
y
canales
de
comunicacin con otros nodos
[IH1997].
Finalmente,
tenemos
Voyager
implementa un ORB. Est construida
en lenguaje Java. Se encarga de su
propia redireccin de mensajes y se
comunica con otros objetos Java
[IH1997].

5.

Discusin
conclusiones

El gran auge que han tenido los


dispositivos mviles en las ltimas
dcadas ha ocasionado que el
desarrollo de aplicaciones para estos
dispositivos se vuelva inminente. Sin
embargo, esta tarea se ha convertido
en un reto para la comunidad de
desarrolladores
debido
a
sus
limitaciones. Como respuesta, ha
surgido la necesidad de que algunos
paradigmas
de
componentes
distribuidos entren a solucionar
estos inconvenientes.
Una posible solucin para este
problema es disear una arquitectura
para un ambiente con dispositivos
mviles que se base en componentes
distribuidos.
Esta arquitectura se puede basar en
P2P utilizando herramientas como
J2ME o JXTA para su desarrollo.
Debido a que estos dispositivos se
caracterizan por su movilidad, el
utilizar agentes mviles podra ser
una alternativa conveniente.

6.

Referencias

[IE2003]
The
International
Engineering Consortium. Global
System for Mobile Communication
(GSM). 2003.

[IH1997] Israel Herranz. Agentes


Mviles: Un nuevo paradigma en la
concepcin de sistemas distribuidos.
http://greco.dit.upm.es/~encarna/doct
orado/agmovil/index.htm
[KG2003]
Kris
Gross,
Bluetooth. BMA373. Bradley
University
en
http://students.bradley.edu/~theyen/b
ma373/final%20paper.doc
[MA2003]
Mohamed AbdelAziz.
P2P Programming With Project
Code-named
JXTA.
Sun
Microsystems. 2003
[OL2003]
Osmosis
Latina.
Aplicaciones
Inalmbricas
un
Modelo
Nuevo
en
http://www.osmosislatina.com/aplica
ciones/j2mebrew.htm
[SR2003]
Srinkanth
Raju.
Developing peer to peer
applications using JXTA and Java.
Sun Microsystems. 2003
[VN2002]
Vnunet.
Los
terminales se hacen inteligentes
gracias a Java. Julio del 2002

Você também pode gostar