Vous êtes sur la page 1sur 38

Captulo I Introduccin

Captulo I 1.1 INTRODUCCIN

Visual Basic .NET es la ltima versin del sistema de desarrollo Visual Basic. Antes de empezar a crear aplicaciones en Visual Basic .NET, ser til conocer y entender algunos conceptos bsicos de .NET. La plataforma .NET proporciona la base de la siguiente generacin de software que permite conectar sistemas, informacin, dispositivos y usuarios distintos de un modo ms unificado y personalizado. Incorpora servicios Web XML como el medio para permitir la interoperabilidad entre tecnologas diferentes. Proporciona a los desarrolladores de software las herramientas y la tecnologa para crear rpida y eficazmente soluciones de negocio que abarcan mltiples aplicaciones y mltiples dispositivos cliente entre diversas organizaciones. Permite a los usuarios controlar qu informacin y cmo y cundo se les entrega. La plataforma .NET incluye una completa familia de productos creados para trabajar con los estndares de XML e Internet. Estos productos incluyen los siguientes componentes que trabajan con soluciones basadas en XML:

Herramientas para desarrollar soluciones Servidores para gestionar, crear e implantar soluciones Servicios para integrar, conectar y reutilizar soluciones Clientes hardware y software para proporcionar experiencias sin precedentes a los usuarios

.NET es un evolucin del lenguaje Visual Basic, con esta tecnologa vienen incluidas nuevas herramientas de gran ayuda para los desarrolladores de software y vamos a dar ms nfasis en el desarrollo de aplicaciones para dispositivos mviles ya que es la investigacin de esta monografa. En el mundo empresarial el desarrollo de aplicaciones para dispositivos mviles como Pocket PC, PDA y Smartphone ha ido en aumento para los dispositivos que cuentan con alguna versin del sistema operativo Windows Mobile, para nosotros los desarrolladores contamos con .NET 2008 para poder desarrollar aplicaciones de manera sencilla casi de igual manera de como se desarrollara para una computadora personal. Adems de que con la instalacin de Visual Basic se instala SQL Server Compact Edition con el cual podemos crear bases de datos para dichos dispositivos.

Captulo I Introduccin

Pero ah no termina adems de que podemos desarrollar pginas web para dispositivos mviles as como aplicaciones orientadas a la web como si se estuviera en la oficina. Con visual Basic 2008 vienen herramientas esenciales para la programacin, a continuacin se describen las ms importantes para el tema de programacin para dispositivos mviles.

1.2 .NET FrameWork Es la herramienta ms importante ya que .NET FrameWork es la parte fundamental se puede decir que es el corazn de la tecnologa .NET. Es el marco de trabajo y ejecucin comn a toda la tecnologa .NET. El .NET FrameWork es un componente de software que se instala en el sistema operativo. Dentro del .NET Framework estn integrados los lenguajes .NET (C#, VB.NET, J# ), el CRL, el CLS, ADO.NET, ASP.NET. .NET soporta populares: varios lenguajes de programacin, siendo los ms

C# VB.NET C++ controlado J# Delphi

Todos ellos trabajan perfectamente integrados con el .NET Framework, siendo C# el lenguaje principal, ya que es el nico que ha sido desarrollado especficamente para .NET. Gran parte de la biblioteca de clases que componen el Framework estn escritas en C#. .NET FrameWork es el conjunto de espacios de trabajo y clases que sirven de base a los lenguajes .NET. Cualquier programa que desarrollemos utilizando la tecnologa .NET, independientemente del lenguaje utilizado, estar basado en .NET FrameWork. 1.3 El Common Language Runtime El CLR es el verdadero ncleo del Framework de .Net, ya que es el entorno de ejecucin en el que se cargan las aplicaciones desarrolladas

Captulo I Introduccin

en los distintos lenguajes, ampliando el conjunto de servicios que ofrece el sistema operativo estndar Win32. La herramienta de desarrollo compila el cdigo fuente de cualquiera de los lenguajes soportados por .Net en un mismo cdigo, denominado cdigo intermedio (MSIL, Microsoft Intermediate Lenguaje). Para generar dicho cdigo el compilador se basa en el Common Language Specification (CLS) que determina las reglas necesarias para crear cdigo MSIL compatible con el CLR. De esta forma, indistintamente de la herramienta de desarrollo utilizada y del lenguaje elegido, el cdigo generado es siempre el mismo, ya que el MSIL es el nico lenguaje que entiende directamente el CLR. Este cdigo es transparente al desarrollo de la aplicacin ya que lo genera automticamente el compilador. Sin embargo, el cdigo generado en MSIL no es cdigo mquina y por tanto no puede ejecutarse directamente. Se necesita un segundo paso en el que una herramienta denominada compilador JIT (Just-In-Time) genera el cdigo mquina real que se ejecuta en la plataforma que tenga la computadora. De esta forma se consigue con .Net cierta independencia de la plataforma, ya que cada plataforma puede tener su compilador JIT y crear su propio cdigo mquina a partir del cdigo MSIL. La compilacin JIT la realiza el CLR a medida que se invocan los mtodos en el programa y, el cdigo ejecutable obtenido, se almacena en la memoria cach de la computadora, siendo recompilado slo cuando se produce algn cambio en el cdigo fuente.

1.4 Biblioteca de clases de .Net Cuando se est programando una aplicacin muchas veces se necesitan realizar acciones como manipulacin de archivos, acceso a datos, conocer el estado del sistema, implementar seguridad, etc. El Framework organiza toda la funcionalidad del sistema operativo en un espacio de nombres jerrquico de forma que a la hora de programar resulta bastante sencillo encontrar lo que se necesita. Para ello, el Framework posee un sistema de tipos universal, denominado Common Type System (CTS). Este sistema permite que el programador pueda interactuar los tipos que se incluyen en el propio Framework (biblioteca de clases de .Net) con los creados por l mismo (clases). De esta forma se aprovechan las ventajas propias de la programacin orientada a objetos, como la herencia de clases predefinidas para crear nuevas clases, o el polimorfismo de clases para modificar o ampliar funcionalidades de clases ya existentes.

Captulo I Introduccin

La biblioteca de clases de .Net Framework incluye, entre otros, tres componentes clave:

ASP.NET para construir aplicaciones y servicios Web. Windows Forms para desarrollar interfaces de usuario. ADO.NET para conectar las aplicaciones a bases de datos.

La forma de organizar la biblioteca de clases de .Net dentro del cdigo es a travs de los espacios de nombres (namespaces), donde cada clase est organizada en espacios de nombres segn su funcionalidad. Por ejemplo, para manejar ficheros se utiliza el espacio de nombres System.IO y si lo que se quiere es obtener informacin de una fuente de datos se utilizar el espacio de nombres System.Data. La principal ventaja de los espacios de nombres de .Net es que de esta forma se tiene toda la biblioteca de clases de .Net centralizada bajo el mismo espacio de nombres (System). Adems, desde cualquier lenguaje se usa la misma sintaxis de invocacin, ya que a todos los lenguajes se aplica la misma biblioteca de clases. 1.5 ADO.NET Un tema de suma importacin es sin lugar a dudas ADO.NET que es un conjunto de clases que exponen servicios de acceso a datos para el programador de .NET. ADO.NET ofrece abundancia de componentes para la creacin de aplicaciones de uso compartido de datos distribuidas.

Captulo I Introduccin

Constituye una parte integral de .NET Framework y proporciona acceso a datos relacionales, XML y de aplicaciones. ADO.NET satisface diversas necesidades de desarrollo, como la creacin de clientes de base de datos de aplicaciones para usuario y objetos empresariales de nivel medio que utilizan aplicaciones, herramientas, lenguajes o exploradores de Internet. En la actualidad ADO.NET ya es parte del .NET Framework, esto quiere decir que es, de alguna manera, parte del sistema operativo y no ms un redistribuible de 4 5 MB que se necesita alojar junto al cliente o junto al instalador de una aplicacin. Esto significa que nosotros, como desarrolladores, estaremos enfocados ms al acceso a datos y a la lgica para manipular estos datos. La mayora de las aplicaciones necesitan algn mecanismo de acceso a datos. Disponemos de tres opciones excelentes para obtener acceso a los datos: ADO.NET, ADO y OLE DB. A continuacin se detallaran muchos conceptos importantes a cerca de ADO.NET. 1.6 Acceso a datos con ADO.NET ADO.NET es una tecnologa de acceso a datos que se basa en los objetos ADO (Objetos de Datos ActiveX) anteriores. Es una manera nueva de acceder a los datos construida sobre ADO. ADO.NET puede coexistir con ADO. Tambin podemos decir que ADO.NET es un conjunto de clases que exponen servicios de acceso a datos al programador de .NET. ADO.NET proporciona un conjunto variado de componentes para crear aplicaciones distribuidas de uso compartido de datos. Forma parte integral de .NET Framework, y proporciona acceso a datos relacionales, datos XML y datos de aplicaciones. ADO.NET es compatible con diversas necesidades de programacin, incluida la creacin de clientes de bases de datos clientes y objetos empresariales de nivel medio utilizados por aplicaciones, herramientas, lenguajes o exploradores de Internet. ADO.NET utiliza un modelo de acceso pensado para entornos desconectados. Esto quiere decir que la aplicacin se conecta al origen de datos, hace lo que tiene que hacer, por ejemplo seleccionar registros, los carga en memoria y se desconecta del origen de datos. ADO.NET es un conjunto de clases que usted utiliza para acceder y manipular orgenes de datos como por ejemplo, una base de datos en SQL Server o una planilla Excel.

Captulo I Introduccin

ADO.NET utiliza XML como el formato para transmitir datos desde y hacia su base de datos y su aplicacin Web. Hay 3 espacios de nombres que se importar formulario Windows si est usando ADO.NET: en un formulario Web o

System.Data. System.Data.SqlClient. System.Data.OleDb.

El modelo de objetos ADO.NET provee una estructura de acceso a distintos orgenes de datos. Tiene 2 componentes principales: El Dataset y el proveedor de Datos .NET 1.7 ACTIVE SERVER PAGES (ASP) .NET La instalacin de Visual Studio .NET instala de manera automtica el SDK de .NET Framework con el cual tambin viene incluido el IIS para poder crear y ejecutar nuestras pginas web aspx. Con esta herramienta se pueden desarrollar aplicaciones web robustas y detalladas en poco tiempo, ahora la manera de programar asp .net es como si se desarrollara una aplicacin winform arrastrando y soltando los elementos del cuadro de herramientas. ASP.NET es un ambiente de programacin construido sobre el entorno NGWS ( New Generation Windows Services, "Servicios de Nueva Generacin de Windows" ). ASP.NET ofrece varias ventajas importantes sobre los modelos previos: Mejor Eficiencia: ASP.NET corre cdigo compilado sobre el entorno NGWS en el servidor. Distinto a sus predecesores interpretados, ASP.NET usa amarres tempranos ("early binding"), as como compilacin justo a tiempo ("just-in-time compilation"), optimizacin nativa, y servicios de cach, sin configuracin adicional. Para los desarrolladores, esto significa eficiencia dramticamente superior antes de escribir la primera lnea de cdigo. Poder y Flexibilidad: Porque ASP.NET est basado en el Entorno Comn de Ejecucin de Lenguajes (Common Language Runtime, o "CLR"), el poder y la flexibilidad de la plataforma completa est disponible para los desarrolladores. Las libreras de Clases del CLR, la Mensajera, y las soluciones de Acceso a Datos, son accesibles a travs de Internet. ASP.NET permite el uso de una gran variedad de lenguajes de programacin y, por tanto, usted puede escoger el mejor lenguaje para su aplicacin, o particionar su aplicacin en varios lenguajes. Ms an, la interoperabilidad del CLR garantiza que su inversin en el desarrollo de aplicaciones COM es preservada cuando se migra a ASP.NET.

Captulo I Introduccin

Simplicidad: ASP.NET hace fcil el ejecutar tareas comunes, desde el simple envo de un formulario o la autenticacin de un cliente, hasta el despliegue y la configuracin de un Web. Por ejemplo, el entorno de paginado de ASP.NET le permite construir interfaces de usuario que separan limpiamente la lgica de su aplicacin del cdigo de su presentacin, y maneja eventos con un modelo sencillo de procesamiento de formularios al estilo de Visual Basic. Adicionalmente, el CLR simplifica el desarrollo con servicios de cdigo gerenciado, como el conteo automtico de referencias y la limpieza automtica de la memoria utilizada por su aplicacin. Gerenciabilidad: ASP.NET usa un sistema jerrquico de configuracin, basado en archivos de texto, que simplifica la aplicacin de parmetros de configuracin al servidor y sus aplicaciones. Porque la informacin de configuracin es almacenada como texto, nuevos parmetros pueden ser configurados sin recurrir a herramientas de administracin locales. Esta filosofa de "cero administracin local" tambin se extiende al despliegue de aplicaciones de ASP.NET. Una aplicacin de ASP.NET se despliega a un servidor simplemente copiando los archivos necesarios al servidor. No hay que reiniciar el servidor, ni siquiera para reemplazar cdigo compilado que ya est en servicio. Escalabilidad y Disponibilidad: ASP.NET ha sido diseado para la escalabilidad con caractersticas especficamente dirigidas a mejorar el funcionamiento de servidores racimados (clustered) y de servidores con procesadores mltiples. Los procesos del servidor son vigilados y gerenciados por el entorno del ambiente de ejecucin de ASP.NET, as que si algn proceso se entorpece o se detiene, un nuevo proceso puede ser creado para reemplazarlo, lo cual ayuda a mantener la disponibilidad de su aplicacin para manejar solicitudes de servicio. 1.8 Emulador Windows Mobile El software en los mviles a incrementado da a da y existen diversas herramientas para desarrollarlas, Visual Basic .NET no es la excepcin es por eso que ha incluido esa parte para desarrollar aplicaciones para los dispositivos mviles que cuentan con el sistema operativo Windows Mobile. Pero para tener los emuladores con la versin ms reciente del Windows Mobile que hasta la realizacin de esta monografa es la 6, cuenta con dos versiones la estndar para Smartphone y la profesional para PocketPC es necesaria la instalacin aparte de la herramienta Windows Mobile SDK. Son esenciales los emuladores ya que podemos estar desarrollando las aplicaciones en ellos y una vez finalizadas las aplicaciones ejecutarlas de manera directa en el dispositivo eso es lo que recomiendan los expertos de Microsoft.

Captulo II Introduccin Dispositivos Mviles

Captulo II Introduccin dispositivos mviles

2.1 Dispositivos Mviles.

La necesidad de una computadora y un servicio de conexin a la red, para poder tener acceso a los servicios y la informacin disponible en le World Wide Web, se haba convertido en una considerable preocupacin para las empresas donde los usuarios pedan, cada vez con mayor insistencia, que las nuevas tecnologas permitieran conectarse desde cualquier lugar sin tener la necesidad de una PC. Estos factores contribuyeron a que la industria creara dispositivos mviles con nuevas caractersticas, como los telfonos celulares y los PDAs o handhelds. El desarrollo de la tecnologa ha avanzado rpidamente, los dispositivos mviles se usan cada vez con mayor frecuencia por el pblico en general, en diversas actividades, en especial en la WEB. Ahora no resulta extrao hallar personas en el metro haciendo llamadas locales o de larga distancia haciendo uso de la telefona celular, o adelantando algn trabajo con el uso de una laptop. Estos dos ejemplos, comunes para todos, son slo una muestra de lo que se llama Computacin Mvil. Se puede definir la Computacin Mvil como la serie de artefactos y equipos porttiles, hardware, que hacen uso de la computacin para lograr su funcionamiento, as, se tiene a las computadoras porttiles, los telfonos celulares, los cuadernos de notas computarizados, las calculadoras de bolsillo, etc. Aunque en la actualidad no son muchas las personas que traen su computadora bajo el brazo, tampoco son raras, y es que la computacin mvil ha dejado de ser un instrumento de presuncin, para convertirse en un medio de trabajo. Pero eso no es todo: empieza transformarse en el medio de trabajo.

Da a da los dispositivos mviles han tomado un valor agregado en las empresas y en la vida cotidiana, si hace solo algunos aos nos hablaran que los dispositivos mviles iban a adquirir tal importancia se hablara de un gasto muy elevado y de acuerdo a las caractersticas de aquel entonces se dira un gasto innecesario, pero en el presente con la gran variedad con la que se cuenta y con el avance tecnolgico tanto en hardware y software, se ha tomado como un nuevo paradigma para los desarrolladores de software, ya que contamos con lenguajes para

Captulo II Introduccin Dispositivos Mviles

desarrollar aplicaciones para gran diversidad actualmente de continuacin vamos a ver uno a entre ellos y las diferentes mercado para estos dispositivos

dispositivos mviles. Pero se tiene una equipos como Smartphone, PocketPC, PDA. A uno con las caractersticas y diferencias plataformas que estn presentes en el y las diferentes empresas.

2.2 Personal Digital Asistan (PDA)

Por sus siglas en ingles PDA en espaol es asistente personal digital, diseadas originalmente como agendas electrnicas que modernamente son utilizadas como computadoras de mano y que pueden realizar muchas de las funciones que una computadora de escritorio (ver pelculas, crear documentos, juegos, correo electrnico, navegar por internet, reproducir archivos de audio, etc.) pero con la ventaja de ser realmente porttil. Nos remontamos a los 90s cuando apareci en los Estados Unidos de Norteamrica presentada por la empresa Apple y este aparato ya contaba con todas las caracterstica de las PDAs modernas, sin embargo el Apple Newton fue un rotundo fracaso para Apple. Con la aparicin de la empresa Palm se desarroll una nueva etapa de crecimiento y desarrollo tecnolgico para estos dispositivos. Hoy en da estos dispositivos que podemos encontrar con pantalla tctil para ingresar informacin, y al menos conectividad infrarrojos, Bluetooth o Wifi y con almacenamiento tanto interno como externo. Estas son algunas de las caractersticas que se pueden ver a simple vista aparte podemos tener tanto el sistema operativo que venga integrado y en la parte del Hardware como procesador y memoria RAM. Hoy podemos ver mltiples usos de las PDAs tanto en hospitales, en la educacin y hasta en los autos por mencionar algunos usos de estos pequeos pero excelentes dispositivos. Una pda hoy en da trae procesador Intel que corre a 624 lector de huella digital, memoria ROM 128 MB y memoria RAM 128 diferente tamaos de pantalla, colores y resolucin de pantalla, sistemas operativos 2 principalmente PALM OS y Windows Mobile. podemos encontrar precios de hasta los 700 dlares. Mhz, MB, con PDAS

Captulo II Introduccin Dispositivos Mviles

Figura PDA

2.3 Pocket PC

Una computadora de bolsillo. Este se trata de una pequea computadora diseada para ocupar el mnimo espacio y pueda ser fcilmente transportada de un lado a otro, que ejecuta el sistema operativo Windows CE o Windows Mobile de Microsoft entre otros con ello obtenemos aplicaciones similares a las de una computadora de escritorio. Microsoft saco su lnea al mercado llamndola Palm PC pero por demanda de la empresa Palm se le cambio de nombre como Pocket PC como hasta ahora se le conoce. Dentro de sus caractersticas principales podemos encontrar un procesador que corre 624 MHz, memoria RAM de hasta 256 MB, pantalla tctil de diferentes resoluciones y colores. Con un precio estimado de entre los 150 a 200 dlares.

Captulo II Introduccin Dispositivos Mviles

Figura Pocketpc

2.4 Smartphone Para el ao 1992 sali el primer telfono inteligente presentado por la empresa IBM con el nombre de Simn ya con pantalla tctil y aparte de ser telfono mvil, contena correo electrnico y enviaba y reciba fax adems de que permita instalar aplicaciones entre sus caractersticas que ms resaltaron. Ha sido tal el crecimiento que hoy en da los telfonos son ms completos la mayora trae para acceder a internet a travs de este, correo electrnico, juegos, msica, videos, etc. Pero lo que ms nos enfoca a nosotros y que antes no se menciono es la capacidad de ejecutar aplicaciones como si se tratase de una computadora pero obviamente tanto en PDAs como en PocketPC estas aplicaciones son mucho ms completas y complejas. Diferentes compaas estn en competencia ofreciendo estos dispositivos para ganar terreno dentro de la telefona mvil ya que hoy la mayora de la gente cuenta con un celular. Hoy podemos encontrar en los Smartphones sistemas operativos tan completos como si de una computadora se tratara, existen diferentes sistemas operativos y por ende diferentes aplicaciones dependiendo de la plataforma con la que se cuente. Las caractersticas de los SmartPhones si varia demasiado de entre un dispositivo u otro, ya que estos no son caractersticas tan generales varan bastante y por consecuencia el precio tambin. Pero va un rango de precio de 3000 hasta los 10000 pesos.

Captulo II Introduccin Dispositivos Mviles

Figura Smartphone

2.5 Principales Plataformas para Dispositivos Mviles A continuacin veremos las plataformas sobresalido en los dispositivos mviles. ms importantes que han

2.5.1 Symbian OS En el ao 1998 la empresa Symbian compro la divisin de software a una coalicin de fabricantes de telfonos mviles. Recientemente, Symbian es una inversin conjunta de Ericsson, Panasonic, Siemens AG, Samsung y Sony Ericsson, la empresa tiene una plantilla de 750 empleados, trabajando en un sistema que es utilizado por 15 licenciatarios en todo el mundo. Altamente flexible, Symbian es un sistema disponible en cuatro versiones: UIQ, Nokia Series 60, 80, 90 y Nokia 9200 Communicator, cuyas caractersticas dependen directamente del dispositivo sobre el cual va a funcionar (si es un telfono mvil o PDA, si tendr lpiz o teclado, etctera).

Captulo II Introduccin Dispositivos Mviles

Pero, sin lugar a dudas, son sus ventajas en cuanto a ahorro de memoria y energa las que han convertido a este software en una opcin tan particular. Varias funciones especiales le permiten mantener los recursos desocupados al mximo, mientras que el apagar la CPU cuando las aplicaciones no estn realizando un proceso le permite conservar las bateras durante semanas, mientras que en circunstancias normales duraran apenas unas horas. Su espectro de programacin tambin es amplio. Hasta la ltima versin lanzada, el sistema es capaz de ejecutar aplicaciones construidas en C++, OPL, Python, VisualBasic, Simkin, Perl y las versiones de Java, J2ME y Personal Java. En la actualidad Symbian cubre un amplio mercado en los telfonos inteligentes y gracias a sus capacidades de este sistema operativo hoy en da vendedores de software independiente y organizaciones que estn desarrollando aplicaciones basadas en Symbian, principalmente porque por la mejor capacidad de procesamiento y mejores grficos que pueden desarrollar los nuevos terminales.

2.5.2 Palm OS En 1996, Jeff Hawkins desarroll la primera versin del sistema operativo Palm para un nuevo producto de la empresa U.S. Robotics, llamado Pilot PDA. Tras ser adquirida por 3Com al ao siguiente, la compaa cambi el nombre de su lnea por PalmPilot debido a una demanda presentada por la casa de lpices Pilot. Finalmente, los dispositivos terminaran siendo bautizados como Palm, al igual que su fabricante. A partir de entonces, Palm cosech un xito tremendo en el mercado de los organizadores digitales. La versin 2.0 del sistema acompa el lanzamiento de los dispositivos PalmPilot Personal y Professional, mientras que la serie Palm III vio la luz junto a la versin 3.0, cuyas sucesivas actualizaciones proporcionaran compatibilidad con puertos de expansin y nuevos procesadores, as como la posibilidad de tener una pantalla a color. Para la versin 4.0, Palm dispona su lnea m500, dando acceso a tarjetas de memoria, telefona, funciones de seguridad y mejoras en su interfaz. Por ltimo, la versin 5.0 acompaara a la lnea Tungsten T, al tiempo que la empresa se divida en PalmOne (equipos) y PalmSource (software) para canalizar mejor sus ventas. Para agosto de 2003, el sistema contaba con ms de 19 mil aplicaciones disponibles, tanto comerciales como gratuitas.

Captulo II Introduccin Dispositivos Mviles

El lanzamiento de la versin 6.0 del sistema fue secundado por un patrn de desarrollo que auguraba la venida de una versin 6.1 en 2004, llena de nuevas caractersticas, por lo que los potenciales licenciatarios decidieron esperar. Y como quien tropieza dos veces, la salida de esa versin tambin fue acompaada de un patrn que describa la prxima versin 7.0, basada en Linux. Para palm OS podemos crear nuestras aplicaciones en JAVA sin ningn problema, tambin es posible con el lenguaje de programacin C, al igual que es posible desarrollar aplicaciones para palm desde Visual Basic gracias a su kit de desarrollo para Palm OS.

2.5.3 Pocket PC - Windows Mobile Vamos a ver la plataforma que ms nos interesa para la elaboracin de esta monografa y es sin lugar a dudas propiedad de Microsoft y es que dicha empresa se ha hecho de una gran cuota del mercado desde que arrib al segmento a finales de los 90's. Y como si la gran rivalidad quedase en evidencia desde un principio, ya en el ao 2000 la gigante de Redmond era demandada por Palm debido a su intencin de bautizar su lnea de ataque como 'Palm PC'. El nombre fue cambiado a Pocket PC. Pocket PC es un estndar, un conjunto de normas que Microsoft dicta para que los fabricantes puedan utilizar el nombre en sus productos. Precisamente, para ser considerados estos deben contar con:

Una versin del sistema Windows CE (Recientemente Windows Mobile). Aplicaciones de fbrica dentro de un chip no modificable (ROM). Una pantalla tctil. Un pad direccional o touchpad. Botones destinados a ejecutar las aplicaciones incorporadas. Estar basado en los procesadores ARM4 Intel XScale.

Conocido en un principio como Windows CE, el sistema operativo acab llamndose Windows Mobile y, aunque tiene una interfaz muy similar a su hermana a los sistemas operativos de Microsoft, sus aplicaciones no son compatibles. Es que esta versin fue creada especficamente para mquinas con pocos recursos, gracias a un ncleo capaz de funcionar en menos de 1 MB de memoria.

Captulo II Introduccin Dispositivos Mviles

Durante su desarrollo, Windows CE y Windows Mobile han sido implementados en dispositivos Handheld PC (HPC), Pocket PC (PPC), Pocket PC 2002, 2003 y 2003 SE, as como en Smartphones. En Visual Basic .NET podemos crear nuestras aplicaciones para los dispositivos que cuenten con esta plataforma instalada en algn dispositivo mvil. 2.6 Android Es una plataforma libre para telfonos mviles basados en GNU/Linux y con licencia basada GPL. El anuncio por parte de Google y las compaas lderes mundiales del sector de las telecomunicaciones sobre la creacin de Android, el sistema operativo para mviles basado en el ncleo de Linux, ha supuesto el mayor empujn que ha recibido el software libre quizs en toda su historia. Y es que en un sector en el que todava no hay un monopolio de facto como en el de los ordenadores de escritorio, en el que tambin se est progresando, la colaboracin de Google y los gigantes de las telecomunicaciones van a suponer para Android poder competir en unas condiciones inmejorables contra sus rivales de cdigo cerrado. Creado por la Open Handset Alliance, alianza tecnolgica encabezada por Google, acompaada de compaas del nivel de T-Mobile, HTC, Motorola, Telefnica, Samsung, Intel o Nvidia; tiene el respaldo suficiente para tener un xito seguro y para convertir al software libre en el producto dominante en esta porcin del mercado de la tecnologa. El potencial de Android no est slo avalado por las empresas que lo respaldan sino por sus propias caractersticas tcnicas, basado en el ncleo del kernel 2.4.16 de Linux implementando todos los controladores primarios (Cmara, usb, teclado, etc.) y drivers personales de cada empresa. Y no solo instalado en celulares si no en tablets, Android permite el control de los dispositivos por medio de bibliotecas desarrolladas por Google mediante el lenguaje de programacin JAVA. Las libreras de este sistema operativo estn basadas en C y C++, expuestas a todos los desarrolladores a travs del Framework de las aplicaciones de Android System C library, libreras de medios, libreras de grficos, 3D, SQlite, etc.

2.7 Conectividad en Dispositivos Mviles Los dispositivos mviles modernos cuentan con uno o varios tipos de conexin como puede ser Wi-fi, infrarrojos o bluetooth, con lo cual se puede tener acceso a otros dispositivos mviles para intercambio de informacin o conexin con algn servidor, o en caso de conectarnos a alguna red por medio Wi-fi con lo cual podemos tener conexin a cualquier red en el mundo ciberntico. Vamos a ver cada una de ellas incluso algunas que ya estn obsoletas.

2.7.1 Bluetooth

Captulo II Introduccin Dispositivos Mviles

Bluetooth es un estndar empleado en enlaces de radio de corto alcance, destinado para remplazar el cableado existente entre dispositivos electrnicos como telfonos celulares, PDA's, computadoras (y muchos otros dispositivos) ya sea en el hogar, en la oficina, en el auto, etc. La tecnologa empleada permite a los usuarios conexiones instantneas de voz y datos entre varios dispositivos en tiempo real. El modo de transmisin empleado, asegura proteccin contra interferencias y seguridad en el envo de datos. Entre sus principales caractersticas, pueden robustez, baja complejidad, bajo consumo y bajo costo. nombrarse su

El radio Bluetooth es un pequeo microchip que opera en una banda de frecuencia disponible mundialmente. Pueden realizarse comunicaciones punto a punto y punto multipunto.

2.7.2 WIFI (Wireless Fidelity) Fenmeno que est cambiando la forma en que concebimos Internet. Nos sumergimos en las tecnologas de hoy y del maana, que tienen como objetivos impulsar el acceso a la red y facilitar el uso cotidiano de dispositivos tecnolgicos. La conectividad inalmbrica ya es una realidad que se ha propagado como un virus por todo el mundo, y que contina expandindose a territorios desconocidos. En los ltimos tres aos la tecnologa Wireless ha sido el foco de atencin de muchas empresas, especialmente de los proveedores de servicios de Internet, dado que stos se ven obligados a cambiar sus modelos de negocios.

Captulo III Programacin en Dispositivos Mviles

Captulo III. Introduccin a la Programacin en dispositivos mviles con Visual Basic 2008 3.1 Introduccin Hace ya varios aos que Microsoft dispona de entornos especficos para la programacin de dispositivos mviles (sistemas empotrados, PDAs, smartphones, etc.). Se trataba de entornos particulares, exclusivamente para este tipo de programacin y que requeran de perfiles de desarrolladores muy concretos y especializados. Tenamos entornos especializados para la programacin de aplicaciones Web, integracin para office, etc. Obviamente esto representaba un problema, y era que cada programador o diseador de software deba tener un perfil especfico por tipos de aplicaciones, Web, mviles, office, etc. No solo era un problema para los propios programadores que deban conocer mltiples SDKs y sobre todo entornos diferentes, sino sobre todo para las empresas, que no podan reutilizar a sus desarrolladores en diferentes tipos de proyectos.

Otro problema que supona este paradigma de programacin es que a menudo aplicaciones muy similares para diferentes entornos (Web, rico, mviles) o ya incluso para diferentes versiones de los dispositivos mviles (Windows CE) requeran ser codificadas por separado, pudindose reutilizar poco cdigo entre todas ellas.

Y aqu es donde entr en juego .NET ya que tena justamente esta visin, un entorno de desarrollo nico, independientemente del tipo de aplicacin (rica, Web, mvil, etc.) y que permitiese poder ejecutar el mismo cdigo en diferentes dispositivos.

Pero apareci el .NET Framework, una capa de abstraccin entre el hardware del dispositivo y el cdigo fuente, que permita aislar al programador del tipo de hardware y sistema para el que se codificaba en la mayor medida de lo posible. Toda aplicacin .NET requiere por lo tanto este Framework instalado en la mquina

Independientemente del lenguaje que usemos en Visual Studio, todos generan lo que se conoce como Cdigo Intermedio (IL Code). Este es el

Captulo III Programacin en Dispositivos Mviles

cdigo que se compila en tiempo real por el .NET Framework y luego es ejecutado en ltima instancia directamente sobre el procesador. Visual Studio 2008 ha dado un gran paso adelante, un nuevo hito en las herramientas de desarrollo de Microsoft. Consiguiendo un entorno nico para todo tipo de aplicaciones.

3.2 Requisitos Previos

Lo primero que necesitamos para este tipo de desarrollos es Visual Studio 2008. A medida que van apareciendo nuevos dispositivos solo necesitamos descargar el SDK para actualizar Visual Studio. Por ejemplo, podemos descargar el SDK para Windows Mobile 5.0 Smartphone o Pocket PC. Otro requisito es ActiveSync o el centro de dispositivos de Windows Mobile incluido en Windows vista y Windows 7, este el mdulo que permite la conexin y sincronizacin desde una PC con un dispositivo mvil. Todo el desarrollo que hagamos podemos usar un dispositivo fsico conectado al PC a travs de ActiveSync o uno de los emuladores que vienen por defecto con Visual Studio o se instalan con las SDKs correspondientes de cada nuevo sistema. Estos emuladores utilizan la tecnologa de virtualizacin y contienen una imagen binaria del Sistema Operativo original, con lo cual la compatibilidad con el dispositivo fsico real es del 100%. Independientemente del tipo de dispositivo que escojamos veremos como en tiempo real podremos hacer el despliegue de la aplicacin al mismo y depurar la ejecucin en el dispositivo desde nuestro Visual Studio en la computadora. Exactamente como si de una aplicacin rica se tratase, sin nada nuevo para el programador. Para la realizacin de este documento trabajaremos con la versin Windows Mobile 6.0 Smartphone, pero todo puede extrapolarse a otras versiones de nuestros sistemas para movilidad basados en Windows CE. La interfaz grfica que nos presenta Visual Studio 2008 para la programacin para dispositivos mviles es la misma que para generar una aplicacin Windows Presentation Foundation la cual apunta a la creacin de interfaces de usuario ms dinmica, la principal gran diferencia es que en la interfaz para el entorno de dispositivos mviles depende del entorno que seleccionemos del dispositivo en base a esto se cargan los componentes en la barra de herramientas que soporta dicho dispositivo o sistema operativo y a su ves tiene que ver si el mvil tiene pantalla tctil o no, eso carga tambin diferentes componentes.

Captulo III Programacin en Dispositivos Mviles

En la siguiente imagen se muestra el entorno de programacin para mvil seleccionando la versin de Windows Mobile 6 estndar y nos carga el emulador que se muestra.

Realmente no existe una diferencia significativa la superficie de dibujo es un Smartphone, pero su barra de herramientas sigue estando ah, las propiedades, depuracin, etc. Es el mismo modelo de programacin. Basta con arrastrar elementos para empezar a desarrollar aplicaciones en el dispositivo. Los dispositivos con pantalla tctil pueden usar los botones comunes para realizar acciones y los dispositivos con pantalla normal funcionan a base de mens usando obviamente el teclado esa es una gran diferencia a la hora de programar. Cuando se ejecuta una aplicacin podemos escoger si queremos usar un emulador o un dispositivo con el sistema operativo Windows Mobile o Windows CE dependiendo en donde vamos a instalar la aplicacin. Si escogemos ejecutar la aplicacin en un emulador nos aparece un dispositivo como se muestra en siguiente imagen

Captulo III Programacin en Dispositivos Mviles

Hasta aqu vimos las opciones bsicas del entorno de programacin para dispositivos mviles. Si tenemos ya una aplicacin con un buen diseo donde la lgica de negocio son libreras de componentes con cdigo de negocio exclusivamente (clculos, acceso a base de datos, etc.) podremos utilizar dicho ensamblado teniendo en cuenta que el dispositivo ejecuta un subconjunto del Framework, as que siempre y cuando el cdigo que contenga est soportado podr funcionar sin cambios. Si este cdigo solo contiene Lgica de Negocio es muy probable que sea compatible, si por el contrario hemos insertado cdigo de presentacin, o Aplicaciones de Windows estas funciones obviamente no se encontrarn en el Compact Framework.

3.3 Entorno de programacin para mviles en Visual Basic .net 2008 Al mismo tiempo que evolucionaba el lenguaje, las herramientas que Microsoft proporciona para programar tambin evolucionaban para adaptarse a las novedades. Visual Studio .NET (2002). Visual Studio .NET se public en 2002 y fue la primera versin de Visual Studio en introducir el Framework .NET. Esta versin de Visual Studio introdujo, junto con el Framework .NET tres nuevos lenguajes de programacin, C#, VB.NET y Visual J#.

Captulo III Programacin en Dispositivos Mviles

En esta primera versin de Visual Studio .NET se podan programar aplicaciones Windows.Forms (aplicaciones de escritorio) y aplicaciones ASP.NET (Aplicaciones Web).

Visual Studio .NET 2003. Visual Studio .NET 2003 se public en 2003 fue una actualizacin menor de Visual Studio .NET, bsicamente propiciada por la introduccin de la versin 1.1 del Framework .NET. En esta versin se aadi por primera vez la posibilidad programar para dispositivos mviles usando .NET, ya fuera usando Compact Framework, o ASP.NET Visual Studio 2005. Publicado el 4 de octubre de 2005, se bas en el Framework .NET 2.0. Aade soporte de 64-bit (x86-64: AMD64 e Intel 64, e IA-64: Itanium) Ediciones: Express, Standard, Professional, Tools for Office, y 5 ediciones Visual Studio Team System (Architects, Software Developers, Testers, y Database Professionals) La versin interna de Visual Studio 2008 es la 8.0, mientras que el formato del archivo es la 9.0. Visual Basic Express Edition. A partir de la introduccin en el mercado de la versin 2008 de Visual Studio Microsoft public lo que se conoce como ediciones Express de distintos programas. Las versiones Express son versiones limitadas pero gratuitas, pensadas para usos no profesionales (principiantes, aficionados y pequeos negocios), existiendo una edicin independiente para cada lenguaje. Visual Basic Express Edition es una versin de Visual Studio limitada. Esta versin permite slo programar en VB.NET, y adems limita el tipo de proyectos que se pueden desarrollar. Visual Web Developer Express Edition permite programar pginas ASP.NET en VB. Se lanz el service Pack 1 para Visual Studio 2008 el 14 de diciembre de 2006. Visual Studio 2008. de el

Captulo III Programacin en Dispositivos Mviles

Gracias al creciente mercado de las PDAs y Smartphones se requieren cada vez ms aplicaciones que cubran las necesidades de los usuarios de este tipo de tecnologa. Bsicamente el entorno de programacin de visual studio 2008 se basa en dos principales tecnologas la primera es Embedded Visual Tools que son un conjunto de SDKs para los dispositivos antes mencionados y que incluyen Embedded Visual Basic y Embedded Visual C++ totalmente compatibles con Windows CE, esta herramienta se viene incluida en la tecnologa .NET o en su caso si no queremos instalar por cualquier razn Visual Studio completo se puede instalar solo la herramienta y no se requiere ningn tipo de licencia y se puede descargar de forma gratuita desde el sitio oficial de Microsoft. La segunda herramienta que tiene que ver directamente con el entorno de desarrollo de Visual Studio 2008 para Windows CE es el Managed Device Emulator en su versin 3.0, actualizada ya con soporte para versiones nuevas de Windows CE, esta herramienta es un conjunto de archivos para emulador y dispositivos reales. Esta herramienta pieza fundamental para la comunicacin entre ActiveSync y los emuladores en esta herramienta recae la responsabilidad de conexin y desconexin entre ambos, esta herramienta tambin instalada con el Visual Studio y el cual ofrece una cantidad de emuladores con caractersticas mejoradas y nuevas. Gracias a las nuevas mejoras de esta herramienta se puede tener un intercambio de archivos bidireccional entre el PC y PDA. La resolucin de las pantallas en los dispositivos a aumentado y por lo tanto en los emuladores tambin, son muy novedosos los emuladores ya que el realismo en sus perifricos es excelente por ejemplo ofrece 3 puertos com as como simulacin de disponibilidad de batera y dems. El Managed Device Emulator es una pieza fundamental para la comunicacin entre el ActiveSync y los emuladores ya que en ella recae la responsabilidad de conexin y desconexin entre ambos. Podemos conectar, enlazar, desconectar, eliminar y gestionar estados. Dentro del entorno de programacin que maneja Visual Studio 2008 viene el panel de controles que son objetos que disponen de sus propias propiedades y mtodos, y cuya utilidad es la de facilitar el desarrollo de aplicaciones. Se pueden tener los objetos bsicos que son habitualmente: los botones de comando, las cajas de texto, las etiquetas, los botones de opcin, etc. Los objetos y controles que el Visual Basic carga son los que por defecto pueden incluirse en el dispositivo y estos aparecen en la caja de herramientas, dependiendo del modelo del sistema operativo Compact Edition se cargan ms controles y objetos en dicha caja.

Captulo III Programacin en Dispositivos Mviles

Otra parte importante que se carga es la tradicional barra de propiedades de los controles u objetos que tengamos cargados al momento de estar programando alguna aplicacin. Dicho control nos da las caractersticas particulares para de los controles que los diferencian unos de otros. Las propiedades ms generales son forma, color, tamao, etc. Los valores de las propiedades de un control seleccionado se almacenan dentro de cada control o formulario en forma de estructura. Algo que no creando y en el diversos recursos va diseando como falta dentro del entorno son los formularios que se van cual se va viendo el diseo de la aplicacin con los que se vallan incluyendo, es de gran utilidad ya que se se mostrara la aplicacin en el dispositivo.

3.4 Ejemplo de Programacin

Vamos a ver dos ejemplos prcticos el famoso Hola Mundo de todos los lenguajes de programacin y aparte uno que calcule el promedio de 3 calificaciones introducidas en una caja de texto y mediante un botn realice el clculo. Como primer paso para realizar el hola mundo una vez abierto nuestro entorno de programacin Visual Basic .NET 2008 es crea un proyecto nuevo como se muestra en la imagen que a continuacin se presenta, en la pantalla que nos muestra cuando ponemos proyecto nuevo escogemos SmartDevice y seleccionar el Framework de los que tenemos instalados. Adems de ponerle el nombre a nuestro proyecto que para este ejemplo se llamara Hola Mundo y le dan en el botn ok.

Captulo III Programacin en Dispositivos Mviles

Una vez que pasamos la ventana anterior inmediatamente aparece una nueva pantalla en la cual elegiremos la plataforma para nuestro dispositivo en el cual se va a ejecutar el hola mundo. Y damos clic en ok.

Visual Basic carga nuestro entorno de programacin para empezar a realizar nuestra aplicacin.

Captulo III Programacin en Dispositivos Mviles

Vemos del lado izquierdo de la imagen la caja de herramientas con todos los componentes que podemos usar en nuestra aplicacin tan solo seleccionando el control o componente, arrastrarlo a nuestro proyecto y soltarlo. En el ejemplo tenemos dos botones y una etiqueta que es donde vamos a mandar la leyenda Hola Mundo.

Una vez que ejecutamos el programa nos manda una pantalla en donde tenemos que seleccionar en donde vamos a ejecutar la aplicacin si en algn dispositivo conectado o en el emulador, para estos dos ejemplos

Captulo III Programacin en Dispositivos Mviles

seleccionaremos que se ejecute en el emulador dando como resultado lo que nos muestra la siguiente imagen.

Quedando un simple cdigo de la siguiente manera: Public Class Form1 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Close() 'cerramos la aplicacin End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me.Label1.Text = "Hola mundo!" 'en esta linea se manda el texto "Hola Mundo" a la etiqueta End Sub End Class

Para la segunda aplicacin que es calcular el promedio de tres calificaciones pidiendo al usario que introduca las 3 calificaciones en cajas de texto la aplicacin quedo de la siguiente manera.

Captulo III Programacin en Dispositivos Mviles

El cdigo de la aplicacin es el siguiente:

Public Class Form1 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Close() 'cerramos la aplicacin End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim prom As Double 'declaramos una variable de double prom = (Double.Parse(TextBox1.Text) + Double.Parse(TextBox2.Text) + Double.Parse(TextBox3.Text)) / 3 'se le asigna a la variable prom lo que traen las cajas de texto 'pero antes se convierte de cadena a un numero de tipo Double TextBox4.Text = prom End Sub End Class Para poder realizar estos programas es necesario el Visual Basic .NET,los SDKs para poder ejecutar los emuladores de las versiones de los sistemas operativos Windows Compact Edition o Windows Mobile, y si se quieren ejecutar en el dispositivo hay que realizar una sincronizacion de la PC con el dispositivo movil. 3.5 Uso de conectividad

Captulo IV Base de Datos para Dispositivos Mviles

Captulo IV Bases de datos para dispositivos mviles 4.1 Introduccin El uso de computadoras porttiles, telfonos mviles y PDA est aumentando y es probable que aumente en el futuro con ms y ms aplicaciones que residen en los sistemas mviles. Es evidente que en el futuro un gran porcentaje de aplicaciones requerir el uso de una base de datos de algn tipo con la capacidad de descargar informacin de un repositorio de informacin y actuar sobre esta informacin aun cuando est desconectado. Una base de datos mvil es una base de datos que puede ser instalada en un dispositivo de computacin mvil a travs de una red mvil. El cliente y el servidor tienen conexiones inalmbricas. La memoria cach se mantiene para almacenar los datos frecuentes y transacciones de manera que no se pierdan debido a un fallo de conexin. Una base de datos es una forma estructurada de organizar la informacin. Esto podra ser una lista de contactos, informacin de precios o la distancia recorrida. Un ejemplo de esto es una plantilla de trabajadores con bases de datos mviles. En este escenario el usuario requerira poder acceder y actualizar la informacin de los archivos en los directorios de inicio de un servidor o cliente de registros de una base de datos. Este tipo de acceso y carga de trabajo generada por dichos usuarios es diferente de las cargas de trabajo tradicionales visto en los sistemas cliente servidor de hoy. Las bases de datos mviles permiten a los empleados introducir datos sobre la marcha. La informacin puede ser sincronizada con una base de datos de servidor posteriormente. 4.2 Origen Los sistemas de base de datos surgen a finales del siglo XIX, y fueron desarrollados a partir de la necesidad de almacenar grandes cantidades de datos. Hay que destacar la figura de Herman Hollerit, quien fue denominado el primer ingeniero estadstico de la Historia, puesto que construy la llamada Mquina Automtica Perforador de Tarjeta capaz de realizar el censo de los Estados Unidos en solo 3 aos. Con esto, ahora se podan obtener importantes datos referentes a la poblacin. Desde ese momento los sistemas de bases de datos van evolucionando y se produce una evolucin de soportes direccionados con una mayor capacidad, y un menor coste. Lo mismo ocurre con las necesidades de almacenar diversos tipos de datos como documentos, archivos, por lo que van surgiendo BD distribuidas y paralelas, o las BD orientadas a objetos. Llegado el siglo XXI y en respuesta a las nuevas necesidades de asequibilidad y eficiencia surgen las Bases de Datos Mviles. En los ltimos aos los grandes avances en la tecnologa de comunicaciones inalmbricas han dado origen a dispositivos en forma de ordenadores porttiles, PDAs o algunos otros dispositivos con acceso a

Captulo IV Base de Datos para Dispositivos Mviles

Internet. Si a esto le unimos la rpida distribucin de las comunicaciones, ya sea de accesos desde telfonos mviles, conexiones inalmbricas o va satlite, podemos tener acceso a todo tipo de informacin desde prcticamente cualquier sitio y en cualquier momento. Esto resulta muy cmodo y ventajoso, ya que en algunos casos el usuario de un dispositivo mvil puede conectarse a un servidor de base de datos corporativos gracias a los agentes mviles y trabajar all con los datos mientras que en otros el usuario puede descargar los datos y trabajar con ellos en un dispositivos mvil, es decir, varias aplicaciones pueden tener acceso simultaneo a la informacin compartida. Esta caracterstica permite a los usuarios estar en una sincronizacin con la base de datos corporativa en diferentes ubicaciones geogrficas. Por todo esto, podramos definir una base de datos mvil como una base de datos portable y fsicamente independiente del servidor corporativo de bases de datos, pero que es capaz de comunicarse con ese servidor desde sitios remotos, permitindose el compartir los datos. 4.3 Arquitectura BBDD Mvil La arquitectura general de una plataforma mvil es un modelo distribuido formado por computadores fijos, estaciones base y unidades mviles. Los computadores fijos son computadores de uso general que no disponen de medios para comunicarse con las unidades mviles. Las estaciones base disponen de enlaces inalmbricos para conectar con las unidades mviles; son mquinas que actan de intermediarios entre las unidades mviles y los computadores fijos. Los computadores fijos y las estaciones base estn interconectados por medio de una red fija (cableada) de alta velocidad. Las unidades mviles se conectan a las estaciones base mediante enlaces inalmbricos; los enlaces ms comunes son el estndar 802.11 (Wi-Fi), el servicio GPRS y la tecnologa Bluetooth.

Las unidades mviles se pueden mover libremente por un espacio conocido como dominio de movilidad geogrfica, cuyo alcance est determinado por la cobertura de los enlaces inalmbricos. Este dominio se divide en dominios ms pequeos llamados celdas. Cada celda es controlada por una estacin base. El movimiento de las unidades mviles dentro del dominio de movilidad geogrfica no debe estar restringido, es decir, se debe garantizar el acceso a la informacin aunque las unidades mviles se muevan entre las celdas.

Captulo IV Base de Datos para Dispositivos Mviles

4.4 Sistemas Gestores de Bases de Datos mviles Muchos fabricantes ofrecen SGBD mviles capaces de comunicarse con los principales SGBD relacionales. Estos SGBD mviles estn adaptados a los recursos limitados de las unidades mviles y proporcionan una serie de funcionalidades adicionales: Comunicacin con el servidor centralizado de base de datos mediante tcnicas de comunicacin inalmbrica. Replicacin de datos en el servidor centralizado de base de datos y en el dispositivo mvil. Sincronizacin de datos entre el servidor centralizado de base de datos y el dispositivo mvil. Gestin de datos en el dispositivo mvil. Anlisis de los datos almacenados en el dispositivo mvil.

Algunos ejemplos de Sistemas Gestores de bases de datos mviles son: iAnywhere Solutions, empresa filial de Sybase, lidera el ranking del mercado de bases de datos mviles gracias a SQL Anywhere. Este paquete proporciona bases de datos que pueden utilizarse tanto a nivel de servidor (soporta mquinas de hasta 64bits) como a nivel de dispositivo mvil. SQL Anywhere se compone de las siguientes tecnologas: SQL Anywhere Server: sistema gestor de bases de datos relacionales para los sistemas de bases de datos mviles. Ultralite: sistema gestor de bases de datos que puede embeberse en dispositivos mviles. Mobilink: tecnologa de sincronizacin para el intercambio de datos entre bases de datos relacionales y bases de datos no relacionales.

Captulo IV Base de Datos para Dispositivos Mviles

QAnywhere: facilita el desarrollo de aplicaciones mviles robustas y seguras. SQL Remote: permite a los usuarios de dispositivos mviles sincronizar sus datos con otras bases de datos SQL Anywhere.

DB2 Everyplace de IBM es una base de datos relacional y un servidor de sincronizacin que permite extender las aplicaciones y los datos empresariales a dispositivos mviles. Gracias a un consumo de recursos reducido, esta base de datos puede integrarse en dispositivos como PDAs y telfonos mviles. Microsoft tambin ofrece una base de datos para dispositivos mviles. Se trata de Microsoft SQL Server Compact Edition, un motor de bases de datos que permite desarrollar aplicaciones en cualquier plataforma Windows incluyendo Tablet PCs, Pocket PCs, SmartPhones y equipos de escritorio. Oracle Database Lite 10g es la solucin de Oracle para desarrollar aplicaciones en entornos mviles. Proporciona un cliente que permite la realizacin de consultas SQL para acceder a los datos locales del dispositivo y un servidor para gestionar los datos de forma centralizada. Otros productos menos utilizados son Borlands JDataStore, una base de datos Java para dispositivos mviles y aplicaciones Web, o MobiSnap, un proyecto de investigacin cuyo objetivo es soportar el desarrollo de aplicaciones con bases de datos relacionales en entornos mviles.

4.5 Ejemplos de BD Mviles La plataforma Java Micro Edition (Java para dispositivos mviles, J2ME) incluye un mecanismo de almacenamiento de datos llamado Record Management System(RMS). Base de datos formada por almacenes de registros (Record Store). Un almacn de registros es un conjunto de registros. Un registro es un conjunto de bytes.

Captulo IV Base de Datos para Dispositivos Mviles

Problemas:

Un almacn de registros slo puede ser utilizado por el programa que lo crea. No tiene lenguaje de manipulacin de datos. descripcin de datos ni lenguaje de

Slo permite guardar y recuperar bytes.

4.6 Aplicaciones mviles y tipos de datos Las aplicaciones mviles se categoras: Aplicaciones verticales Aplicaciones horizontales clasifican en las dos siguientes

En las aplicaciones verticales, los usuarios acceden a los datos en una celda especfica; fuera de la celda los datos no estn disponibles. Un ejemplo de aplicacin vertical es la obtencin de informacin sobre las plazas libres de un determinado estacionamiento pblico. En las aplicaciones horizontales, los datos estn distribuidos por todo el sistema, y los usuarios pueden acceder a ellos desde cualquier celda. La aplicacin horizontal ms comn es el acceso al correo electrnico.

Los datos se clasifican en tres categoras: Datos privados: pertenecen a un usuario y slo l puede acceder a ellos y manejarlos. Por ejemplo, los datos del perfil de un usuario de cualquier aplicacin que gestione datos personales. Datos pblicos: pueden ser consultados por cualquier usuario, pero slo pueden ser modificados por una nica fuente. Por ejemplo, los datos de las cotizaciones de la bolsa. Datos compartidos: pueden ser accedidos por un grupo determinado de usuarios, quienes tienen permisos para leerlos y para escribirlos. Por ejemplo, los datos de seguros de una compaa aseguradora que vende productos utilizando agentes comerciales.

4.7 Tipos Modernamente estamos comprobando cmo los diferentes tipos de bases de datos mviles tienen un gran auge. Debido principalmente al desarrollo de las comunicaciones inalmbricas y a los ordenadores porttiles o laptop, PDAs, telfonos mviles o celulares, y cualquier otro aparato de similares caractersticas. Este enorme desarrollo de los tipos de bases de datos mviles es debido al auge que tienen actualmente las redes inalmbricas y las comunicaciones va satlite, lo que permite el poder acceder a datos desde prcticamente cualquier sitio. Los usuarios se pueden acceder a este tipo de bases de datos mviles desde cualquier punto fuera de la empresa, por ejemplo si estn visitando a un cliente y necesitan un

Captulo IV Base de Datos para Dispositivos Mviles

listado de precios poder acceder al ltimo y ms actual de todos. Una base de datos es el conjunto de datos o informacin de contenido similar almacenados de forma ordenada para su posterior uso. Y una base de datos mviles sera una base de datos portable y fsicamente independiente del servidor corporativo que nos la suministra, y que nos permite comunicarnos con ella desde cualquier lugar remoto compartiendo su informacin. Los tipos de bases de datos mviles son a grandes rasgos: Las bases de datos mviles de las diferentes empresas o bases de datos corporativas mviles. Las bases de datos mviles que se crean a travs de los telfonos mviles. Las bases de datos mviles que son consecuencia de las comunicaciones inalmbricas generadas por los ordenadores porttiles, PDAs u otro aparato que tenga acceso a Internet.

4.8 SQL SERVER COMPACT Microsoft SQL Server Compact (SQL Server CE) es un motor de base de datos relacional, de libre descarga y distribucin, tanto para dispositivos mviles como para aplicaciones escritorio. Especialmente orientada a sistemas ocasionalmente conectados, ofrece unas caractersticas especialmente tiles para clientes ligeros. La versin ms reciente es SQL Server Compact 4.0. Anteriormente era conocida como SQL Server CE o SQL Server Mobile. Desde la versin 2.0, el lanzamiento de SQL Server Compact ha ido ligado al de Microsoft Visual Studio .NET. Recientemente, Scott Guthrie, Vice-presidente Corporativo de la Divisin de Desarrollo de Microsoft, anunci el lanzamiento de SQL Server Compact 4.0 con novedades relacionadas principalmente al desarrollo de aplicaciones ASP.NET. 4.8.1 HISTORIA Fue presentada por Microsoft en el ao 2001 como SQL Server CE 1.0 para ofrecer almacenamiento relacional y sincronizacin de aplicaciones mviles Pocket PC 2002 desarrolladas con Embedded Visual Basic y Embedded Visual C++ con sistemas SQL Server 2000. Junto con la aparicin de Visual Studio .NET 2003 y con ello .NET Compact Framework 1.1 se present SQL Server CE 2.0 y System.Data.SqlServerCe.dll como interfaz de desarrollo para aplicaciones .NET Compact Framework junto a la interfaz de desarrollo para aplicaciones nativas. En noviembre del 2006, junto al lanzamiento oficial de Visual Studio .NET 2005 y SQL Server 2005, Microsoft lanza la versin 3.0 renombrada a SQL Server Mobile 3.0. Tras esta versin aparecen nuevas caractersticas y funcionalidades como el acceso simultneo, soporte

Captulo IV Base de Datos para Dispositivos Mviles

transaccional o la integracin con Visual Studio .NET y SQL Server Management Studio. Hasta la fecha, SQL Server CE no ofreca ningn tipo de herramientas de administracin ms que la Query Analyzer para Windows Mobile. Meses ms tarde se anuncia una nueva versin bajo el nombre en clave SQL Server Everywhere la cual ofreca soporte multiplataforma para sistemas operativos basados en Windows CE y Windows 32/64 bits. Dicha edicin fue lanzada oficialmente bajo el nombre SQL Server Compact 3.1. SQL Server Compact 3.5 SP1 fue presentada junto a Visual Studio 2008.NET SP1. 4.8.2 CARACTERSITCAS Una base de datos SQL Server Compact, a diferencia de una base de datos SQL Server que se expone como un Servicio Windows, se ejecuta bajo en proceso de la aplicacin que la consume (in-process). El tamao mximo del archivo de base de datos es de 4 Gb. y la extensin por defecto es .sdf la cual puede ser modificada. El nombre de la base de datos est limitado a 128 caracteres. En cuanto a limitaciones destacar que el nmero mximo de tablas por base de datos es de 1024 con un tamao mximo por registro de 8060 bytes con un tamao por pgina de 4 Kb. y 2 Gb. para campos BLOB. SQL Server Compact posee un motor de base de datos as como un procesador y un optimizador de consultas especialmente diseado para entornos mviles. Soporta un subconjunto de tipos de datos y de sentencias T-SQL de SQL Server y entre las ltimas novedades de la versin 4.0 se encuentran:

Consultas jerarquizadas con SELECT FROM Instrucciones CROSS APPLY y OUTER APPLY Instruccin CAST y DECIMAL SET IDENTITY INSERT Instruccin TOP

Respecto a los tipos de datos nicamente soporta tipos de datos de (nchar, nvarchar, ntext).

de texto, SQL Server cadena compatibles con

Compact Unicode

A nivel de seguridad SQL Server Compact 4.0 ofrece la posibilidad de cifrado del fichero de base de datos con una contrasea de acceso restringida a un mximo de 40 caracteres ofreciendo tres tipos de modos de cifrado:

Captulo IV Base de Datos para Dispositivos Mviles

Platform Default (Por defecto) Engine Default PPC2003 Compatibility

Existe una nica base de datos temporal por sistema la cual es imprescindible para llevar a cabo, por ejemplo, operaciones ORDER BY. Su creacin es implcita si no se especifica lo contrario en la cadena de conexin. En entornos de ejecucin bajo plataforma Windows 32/64 bits, SQL Server Compact soporta transacciones ligeras a travs de contextos transaccionales administrados por LTM (Lightweight Transaction Manager) expuestos desde la versin .NET Framework 2.0 a travs del espacio de nombres System.Transaction. Para plataformas Windows CE podemos hacer uso de las sentencias BEGIN, COMMIT y ROLLBACK TRANSACTION de T-SQL as como a travs del objeto SqlCeTransaction expuesto en el espacio de nombres System.Data.SqlServerCe. Ponemos total nfasis en SQL Server Compact ya que ser nuestro motor de base de datos para la realizacin del programa final que tiene que manejar datos de una escuela que tienes nivel secundaria y bachillerato.

Captulo V Programacin de una aplicacin con Base de datos sobre un dispositivo mvil

Captulo V Programacin de una aplicacin con Base de datos sobre un dispositivo mvil

5.1 PLANTEAMIENTO DEL PROBLEMA Hasta el da de hoy el control escolar de la escuela Montaez Centro Educativo Acambarense lleva su control escolar usando Microsoft Access para almacenar la informacin dando problemas desde la manera de usarlo y la captura de calificaciones es errnea dando problemas a la institucin a la hora de entrega de calificaciones as como a la hora de generar los reportes, y errores de promedios al final del ciclo. Al analizar el software en reunin con el rgano colegiado del plantel se lleg al acuerdo de realizar un nuevo software de control escolar en los dos niveles a nivel secundaria y nivel bachillerato dado que el colegio ofrece educacin en estos niveles. En la actualidad han surgido y actualizado herramientas de desarrollo como los lenguajes de programacin y manejadores de base de datos, en el colegio la plataforma es Windows en sus diferentes versiones XP, Vista, 7. Se adapta a la realizacin de esta monografa ya que se usara Visual Basic .NET 2008 y como manejador de base de datos SQL server en su versin normal y en la versin para dispositivos con plataforma Windows Mobile que es SQL Server Compact.

5.2 INTRODUCCIN Despus de realizar un anlisis de las necesidades de los profesores para realizar una captura y entrega de calificaciones en tiempo y forma, en la escuela Montaez Centro Educativo Acambarense en la ciudad de Acmbaro en el estado de Guanajuato, se lleg al acuerdo de realizar un Software con las siguientes caractersticas:

Que el programa permita la captura de calificaciones por maestro, por grupo y por materia en cualquier lugar sin restriccin de horario y da. Tambin que el docente tenga la posibilidad de crear reportes para los alumnos y que se entreguen al personal correspondiente sin que el maestro explique de manera verbal en primera instancia que el programa se sincronice ya sea al trmino de cada clase o en el horario en el que tanto maestro como coordinador estn disponible para la descarga de reportes.

Captulo V Programacin de una aplicacin con Base de datos sobre un dispositivo mvil

Generar promedios de calificaciones mensualmente o bimestralmente segn las necesidades del maestro, nivel, grupo o materia. Dar de alta y baja de alumnos as como la posibilidad de pasar lista en el dispositivo. Sincronizar los dispositivos con la computadora central para que se vacen calificaciones y se generen las boletas y reportes para entrega de calificaciones. 5.3 5.4 5.5 5.6 5.7 5.8 ANTECEDENTES OBJETIVO JUSTIFICACIN IMPLEMENTACIN DEL SOFTWARE PRUEBAS Y RESULTADOS CONCLUSIONES

BIBLIOGRAFA: http://larevistainformatica.com/tipos-de-bases-de-datos-moviles.htm http://www.forosdelweb.com/f21/bases-datos-moviles-126407/ http://modelobdpnfi.wordpress.com/2010/04/14/bases-de-datos-federadasbases-de-datos-moviles/ http://en.wikipedia.org/wiki/Mobile_database

Captulo V Programacin de una aplicacin con Base de datos sobre un dispositivo mvil