Está en la página 1de 13

Actividad 5.

1 Investigación
5.1. Introducción a las tecnologías y herramientas móviles.
Tecnologías móviles: Dando el gran salto en todo el mundo. Tecnologías
móviles están apareciendo-up todo el mundo y por una buena razón. Lo más
importante, con una mejora mayor en penetración móvil internacional, es fácil
de visualizar por qué siendo la tecnología avanza para que coincida con el
requisito. Personas como sus teléfonos móviles y no aparatos están
conectados más íntimamente con ellos que su teléfono celular. La tecnología
móvil es utilizada en una diversidad de sectores, sin dejar de mencionar la
industria de la hospitalidad. Con el uso de la tecnología móvil en esta industria
competitiva, ahora la industria está funcionando sin problemas, así como con
una mayor eficiencia. Mobile Web amigable es una de las piezas claves de
tecnologías móviles. Con la creciente popularidad de Telcel, parece claro que
los sitios requieren para ser capaz de manejar esta posibilidad fresca por el que
los usuarios accedan a la web. Los estudios han revelado que
aproximadamente el veinticinco por ciento de internautas son usuarios móviles.
Realmente es una estadística increíble. Teléfono de Windows para la
comunicación rápida. Los usuarios de teléfonos celulares están aumentando
con el tiempo. Teléfono de Windows es un sistema operativo a través del cual
los usuarios de teléfonos celulares pueden interactuar con equipos con mayor
velocidad. Se trata de un sistema operativo avanzado que puede instalarse en
un teléfono celular. Sistemas informáticos pueden utilizarse con windows phone
e interactúan con diferentes dispositivos. Como resultado del uso de esta
nueva versión de la operación es fácil obtener resultados en forma de velocidad
rápida de comunicaciones e interacciones. Si usted necesita un sistema
avanzado que puede ser utilizado con teléfonos celulares debe elegir windows
phone para conseguir los niveles deseados de rendimiento. Pero, una cosa
importante es que; lotes de teléfonos inteligentes, así como otros dispositivos
tienen mucho que ofrecer. En que la simple llamada de teléfono, mensajes de
texto así como el uso de internet móvil, esto es ahora más difícil mantener con
tecnología celular en constante cambio. Convergencia de los estándares de
internet como ofrece una gran cantidad de dispositivos móviles con los planes
de nuevos y mejor llamados, es que la tecnología móvil ha cambiado el mundo
de internet. Mucha gente puede ahora utilizar los servicios de internet en todo
el mundo así como mantenerse al día con la familia o amigos. iPhone se ha
convertido en el más famoso multi tasking herramientas para tu móvil.
5.2 Clasificación y aplicaciones de los dispositivos móviles.

Existen diferentes formas y criterios para clasificar los distintos dispositivos


móviles que existen, una de estas formas de clasificación, es la de agruparlos
según la función que desempeñan. La clasificación es la siguiente:

o Dispositivos de comunicación:

Son aquellos cuya principal función es ofrecer la infraestructura para la


comunicación, generalmente telefónica. Tienen además servicios para
mensajes. Incluye Smartphones.

o Dispositivos de Computación:

Tienen mayor capacidad de procesamiento de datos y tienen una pantalla y un


teclado más parecido al de una computadora tradicional. En esta categoría
entran los PDA, laptops y netbooks.

o Reproductores Multimedia:

Diseñado para que el usuario pueda reproducir una gran cantidad de formatos
multimedia. Son los de más reducido tamaño. En esta categoría entran los
reproductores mp3, DVD portátiles, eBooks, entre otros.

o Grabador multimedia consola portátil:

Aquel que facilita la grabación de datos en un formato digital ya sea


generalmente de audio o de video. Ejemplos de esta categoría son las cámaras
tanto fotográficas y de video.

o Consola Portátil:
Dispositivo móvil cuya función es proporcionar al usuario una plataforma de 
juego. Aunque en tiempo recientes también reproducen multimedia. Otra forma
de definir los tipos de dispositivos móviles es la siguiente:

o Dispositivo Móvil de Datos Limitados:

Tienen una pantalla pequeña generalmente solo de texto, los servicios de datos
se limitan a SMS y WAP.

o Dispositivo Móvil de Datos Básicos:

 Tienen una pantalla de tamaño mediano, un menú para la navegación.


Servicios tales como correo, Contactos, navegador web básico.

o Dispositivo Móvil de Datos Mejorados:

Pantallas grandes, navegación por medio de pantalla táctil, mismos servicios


que el de datos básicos pero con más aplicaciones nativas y corporativas.
5.3 Entorno operativo de las aplicaciones móviles.

NetBeans es un entorno de desarrollo integrado libre, hecho principalmente


para el lenguaje de programación Java. Existe además un número importante
de módulos para extenderlo. NetBeans IDE es un producto libre y gratuito sin
restricciones de uso.

NetBeans es un proyecto de código abierto de gran éxito con una gran base de
usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios
en todo el mundo. Sun MicroSystems fundó el proyecto de código abierto
NetBeans en junio de 2000 y continúa siendo el patrocinador principal de los
proyectos (Actualmente Sun Microsystems es administrado por Oracle
Corporation).

La plataforma NetBeans permite que las aplicaciones sean desarrolladas a


partir de un conjunto de componentes de software llamados módulos. Un
módulo es un archivo Java que contiene clases de java escritas para
interactuar con las APIs de NetBeans y un archivo especial (manifest file) que
lo identifica como módulo. Las aplicaciones construidas a partir de módulos
pueden ser extendidas agregándole nuevos módulos. Debido a que los
módulos pueden ser desarrollados independientemente, las aplicaciones
basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros
desarrolladores de software.

El NetBeans IDE soporta el desarrollo de todos los tipos de aplicación Java


(J2SE, web, EJB y aplicaciones móviles). Entre sus características se
encuentra un sistema de proyectos basado en Ant, control de versiones y
refactoring.

El NetBeans IDE soporta el desarrollo de todos los tipos de aplicación Java


(J2SE, web, EJB y aplicaciones móviles). Entre sus características se
encuentra un sistema de proyectos basado en Ant, control de versiones y
refactoring.

NetBeans IDE 6.5.2, la cual fue publicada el 19 de noviembre de 2008,


extiende las características existentes del Java EE (incluyendo Soporte a
Persistencia, EJB 3 y JAX-WS). Adicionalmente, el NetBeans Enterprise Pack
soporta el desarrollo de Aplicaciones empresariales con Java EE 5, incluyendo
herramientas de desarrollo visuales de SOA, herramientas de esquemas XML,
orientación a web servicies (for BPEL), y modelado UML. El NetBeans C/C++
Pack soporta proyectos de C/C++, mientras el PHP Pack, soporta PHP 5.

Modularidad. Todas las funciones del IDE son provistas por módulos. Cada
módulo provee una función bien definida, tales como el soporte de Java,
edición, o soporte para el sistema de control de versiones. NetBeans contiene
todos los módulos necesarios para el desarrollo de aplicaciones Java en una
sola descarga, permitiéndole al usuario comenzar a trabajar inmediatamente.

Sun Studio, Sun Java Studio Enterprise, y Sun Java Studio Creator de Sun
Microsystems han sido todos basados en el IDE NetBeans.

Desde julio de 2006, NetBeans IDE es licenciado bajo la Common


Development and Distribution License (CDDL), una licencia basada en la
Mozilla Public License (MPL). En octubre de 2007, Sun anunció que NetBeans
desde entonces se ofrecerá bajo licenciamiento dual de Licencia CDDL y la
GPL versión 2.

Eclipse es una plataforma de software compuesto por un conjunto de


herramientas de programación de código abierto multiplataforma para
desarrollar lo que el proyecto llama “Aplicaciones de Cliente Enriquecido”,
opuesto a las aplicaciones “Cliente-liviano” basadas en navegadores.

Esta plataforma, típicamente ha sido usada para desarrollar entornos de


desarrollo integrados (del inglés IDE), como el IDE de Java llamado Java
Development Toolkit (JDT) y el compilador (ECJ) que se entrega como parte de
Eclipse (y que son usados también para desarrollar el mismo Eclipse). Sin
embargo, también se puede usar para otros tipos de aplicaciones cliente, como
BitTorrent o Azureus.

Eclipse es también una comunidad de usuarios, extendiendo constantemente


las áreas de aplicación cubiertas. Un ejemplo es el recientemente creado
Eclipse Modeling Project, cubriendo casi todas las áreas de Model Driven
Engineering.

Eclipse fue desarrollado originalmente por IBM como el sucesor de su familia


de herramientas para VisualAge. Eclipse es ahora desarrollado por la
Fundación Eclipse, una organización independiente sin ánimo de lucro que
fomenta una comunidad de código abierto y un conjunto de productos
complementarios, capacidades y servicios.

Eclipse fue liberado originalmente bajo la Common Public License, pero


después fue re-licenciado bajo la Eclipse Public License. La Free Software
Foundation ha dicho que ambas licencias son licencias de software libre, pero
son incompatibles con Licencia pública general de GNU (GNU GPL).
ArquitecturaLa base para Eclipse es la Plataforma de cliente enriquecido (del
inglés Rich Client Platform RCP). Los siguientes componentes constituyen la
plataforma de cliente enriquecido:

Pantalla de carga de Eclipse Luna

Plataforma principal – inicio de Eclipse, ejecución de plugins

OSGi – una plataforma para bundling estándar.

El Standard Widget Toolkit (SWT) – Un widget toolkit portable.

JFace – manejo de archivos, manejo de texto, editores de texto

El Workbench de Eclipse – vistas, editores, perspectivas, asistentes

Los widgets de Eclipse están implementados por una herramienta de widget


para Java llamada Standard Widget Toolkit, a diferencia de la mayoría de las
aplicaciones Java, que usan las opciones estándar Abstract Window Toolkit
(AWT) o Swing.

La interfaz de usuario de Eclipse también tiene una capa GUI intermedia


llamada JFace, la cual simplifica la construcción de aplicaciones basadas en
SWT.

El entorno de desarrollo integrado (IDE) de Eclipse emplea módulos (en inglés


plug-in) para proporcionar toda su funcionalidad al frente de la plataforma de
cliente enriquecido, a diferencia de otros entornos monolíticos donde las
funcionalidades están todas incluidas, las necesite el usuario o no. Este
mecanismo de módulos es una plataforma ligera para componentes de
software. Adicionalmente a permitirle a Eclipse extenderse usando otros
lenguajes de programación como son C/C++ y Python, permite a Eclipse
trabajar con lenguajes para procesado de texto como LaTeX, aplicaciones en
red como Telnet y Sistema de gestión de base de datos. La arquitectura plugin
permite escribir cualquier extensión deseada en el ambiente, como sería
Gestión de la configuración. Se provee soporte para Java y CVS en el SDK de
Eclipse. Y no tiene por qué ser usado únicamente con estos lenguajes, ya que
soporta otros lenguajes de programación.

La definición que da el proyecto Eclipse acerca de su software es: “una especie


de herramienta universal – un IDE abierto y extensible para todo y nada en
particular”.

Imagen de Eclipse trabajando con el lenguaje de programación Python

En cuanto a las aplicaciones clientes, Eclipse provee al programador con


frameworks muy ricos para el desarrollo de aplicaciones gráficas, definición y
manipulación de modelos de software, aplicaciones web, etc. Por ejemplo, GEF
(Graphic Editing Framework – Framework para la edición gráfica) es un plugin
de Eclipse para el desarrollo de editores visuales que pueden ir desde
procesadores de texto wysiwyg hasta editores de diagramas UML, interfaces
gráficas para el usuario (GUI), etc. Dado que los editores realizados con GEF
“viven” dentro de Eclipse, además de poder ser usados conjuntamente con
otros plugins, hacen uso de su interfaz gráfica personalizable y profesional.

El SDK de Eclipse incluye las herramientas de desarrollo de Java, ofreciendo


un IDE con un compilador de Java interno y un modelo completo de los
archivos fuente de Java. Esto permite técnicas avanzadas de refactorización y
análisis de código. Mediante diversos plugins estas herramientas están también
disponibles para otros lenguajes como C/C++ (Eclipse CDT) y en la medida de
lo posible para lenguajes de script no tipados como PHP o Javascript. El IDE
también hace uso de un espacio de trabajo, en este caso un grupo de
metadatos en un espacio para archivos planos, permitiendo modificaciones
externas a los archivos en tanto.

Spring es un framework para el desarrollo de aplicaciones y contenedor de


inversión de control, de código abierto para la plataforma Java.

Los primeros componentes de lo que se ha convertido en Spring Framework


fueron escritos por Rod Johnson en el año 2000, mientras trabajaba como
consultor independiente para sus clientes en la industria financiera en Londres.
Mientras escribía el libro Expert One-on-one J2EE Design And Development
(Programmer to programmer), Rod amplió su código para sintetizar su visión
acerca de cómo las aplicaciones que trabajan con varias partes de la
plataforma J2EE podían llegar a ser más simples y más consistentes que
aquellas que los desarrolladores y compañías estaban usando por aquel
entonces.

En el año 2001 los modelos dominantes de programación para aplicaciones


basadas en web eran ofrecidas por el API Java Servlet y los Enterprise
JavaBeans, ambas especificaciones creadas por Sun Microsystems en
colaboración con otros distribuidores y partes interesadas que disfrutaban de
gran popularidad en la comunidad Java. Las aplicaciones que no eran basadas
en web, como las aplicaciones basadas en cliente o aplicaciones en batch,
podían ser escritas con base en herramientas y proyectos de código abierto o
comerciales que proveyeran las características requeridas para aquellos
desarrollos.

Se formó un pequeño equipo de desarrolladores que esperaba trabajar en


extender el framework y un proyecto fue creado en Sourceforge en febrero de
2003. Después de trabajar en su desarrollo durante más de un año lanzaron
una primera versión (1.0) en marzo de 2004. Después de este lanzamiento
Spring ganó mucha popularidad en la comunidad Java, debido en parte al uso
de Javadoc y de una documentación de referencia por encima del promedio de
un proyecto de código abierto.
Sin embargo, Spring Framework también fue duramente criticado en 2004 y
sigue siendo el tema de acalorados debates. Al tiempo en que se daba su
primer gran lanzamiento muchos desarrolladores y líderes de opinión vieron a
Spring como un gran paso con respecto al modelo de programación tradicional;
esto era especialmente cierto con respecto a Enterprise JavaBeans. Una de las
metas de diseño de Spring Framework es su facilidad de integración con los
estándares J2EE y herramientas comerciales existentes. Esto quita en parte la
necesidad de definir sus características en un documento de especificación
elaborado por un comité oficial y que podría ser criticado.

Spring Framework comprende diversos módulos que proveen un rango de


servicios:

Contenedor de inversión de control: permite la configuración de los


componentes de aplicación y la administración del ciclo de vida de los objetos
Java, se lleva a cabo principalmente a través de la inyección de dependencias.

Programación orientada a aspectos: habilita la implementación de rutinas


transversales.

Acceso a datos: se trabaja con RDBMS en la plataforma java, usando Java


Database Connectivity y herramientas de Mapeo objeto relacional con bases de
datos NoSQL.

Gestión de transacciones: unifica distintas APIs de gestión y coordina las


transacciones para los objetos Java.

Modelo visto controlador: Un framework basado en HTTP y servlets, que


provee herramientas para la extensión y personalización de aplicaciones web y
servicios web REST.

Framework de acceso remoto: Permite la importación y exportación estilo RPC,


de objetos Java a través de redes que soporten RMI, CORBA y protocolos
basados en HTTP incluyendo servicios web (SOAP).

Convención sobre Configuración: el módulo Spring Roo ofrece una solución


rápida para el desarrollo de aplicaciones basadas en Spring Framework,
privilegiando la simplicidad sin perder flexibilidad.

Procesamiento por lotes: un framework para procesamiento de mucho volumen


que como características incluye funciones de registro/trazado, manejo de
transacciones, estadísticas de procesamiento de tareas, reinicio de tareas, y
manejo de recursos.

Autenticación y Autorización: procesos de seguridad configurables que


soportan un rango de estándares, protocolos, herramientas y prácticas a través
del subproyecto Spring Security (antiguamente Acegi).
Administración Remota: Configuración de visibilidad y gestión de objetos Java
para la configuración local o remota vía JMX.

Mensajes: Registro configurable de objetos receptores de mensajes, para el


consumo transparente desde la a través de JMS, una mejora del envío de
mensajes sobre las API JMS estándar.

Intel XDK Es un kit de desarrollo creada por Intel para crear aplicaciones
nativas para los teléfonos celulares y las tabletas que utilizan  tecnologías de la
web como HTML5, CSS y Javascript.Las aplicaciones están compiladas vía on-
line en la plataforma Cordova  para hacer aplicaciones cross-platform. Está
disponible para descargarse gratuitamente para Windows, OS X y Linux (32-bit
y 64-bit).

Las aplicaciones están compiladas vía on-line en la plataforma Cordova  para


hacer aplicaciones cross-platform. Está disponible para descargarse
gratuitamente para Windows, OS X y Linux (32-bit y 64-bit).

 Características
 Pistas de código
 Conclusión de código
 Emulador
 Pruebas de dispositivo móvil vía Intel App Preview
 Soporte de plugins Third Party
 Soporte de plantillas
 Drag-nDrop UI
 Soporte para APIs de expansión de dispositivo
 Soporte de plataforma móvil
 iOS
 Windows 8
 Windows Phone 8
 Chrome OS
 Firefox OS
 Tizen OS
5.4 Desarrollo de aplicaciones móviles.

Entre los sistemas operativos para dispositivos móviles se tienen: Symbian Os,
Android, Linux,Windows Mobile, Blackberry Os, iPhoneOs, Palm Os.
Entre los lenguajes de programación utilizados para escribir programas para
dispositivos móviles se tienen:
C#, utilizado en Pdas y Teléfonos Inteligentes familia Microsoft. J2ME, de gran
aceptación y difusión, pionero en el entorno móvil. C, utilizado en varios
dispositivos móviles.
Partiendo de la definición de sistema operativo: Capa compleja entre el
hardware y el usuario, concebible también como una máquina virtual, que
facilita al usuario o al programador las herramientas e interfaces adecuadas
para realizar sus tareas informáticas.
Podemos deducir que el uso de uno u otro S.O determinarán las capacidades
multimedia de los dispositivos, y la forma de éstas de interactuar con el usuario.
Existen multitud de opciones, si bien las más extendidas son Symbian,
BlackBerry OS, Windows Mobile, y recientemente iPhone OS y el sistema móvil
de Google, Android, además por supuesto de los dispositivos con sistema
operativo Linux.
Las características básicas de cada uno son las siguientes:
Symbian.
Este es el sistema operativo para móviles más extendido entre “smartphones”,
y portanto el que más aplicaciones para su sistema tiene desarrolladas.
Actualmente Symbian ocupa más del 65% del mercado de sistemas operativos.
Su principal virtud es la capacidad que tiene el sistema para adaptar e integrar
todo tipo de aplicaciones. Admite la integración de aplicaciones y, como
sistema operativo, ofrece las rutinas, los protocolos de comunicación, el control
de archivos y los servicios para el correcto funcionamiento de estas
aplicaciones. La tecnología del sistema operativo Symbian se ha diseñado
teniendo en cuenta puntos clave como el poder proporcionar la energía,
memoria y gestión de entrada y salida de recursos requeridos específicamente
en los dispositivos móviles. También, supone una plataforma abierta, ésta es la
clave, que aúna telecomunicaciones y los estándares globales de internet.
Windows Mobile.
Microsoft lanzó su propio Windows para móviles, antes conocido como
Windows CE o Pocket PC, tiene una larga historia como segundón en el campo
de los PDA u ordenadores de bolsillo, sin embargo hace pocos meses superó
por primera vez al hasta entonces líder, Palm OS. Windows Mobile es un
sistema operativo escrito desde 0 y que hace uso de algunas convenciones de
la interfaz de usuario del Windows de siempre. Una de las ventajas de
Windows Mobile sobre sus competidores es que los programadores pueden
desarrollar aplicaciones para móviles utilizando los mismos lenguajes y
entornos que emplean con Windows para PC. En comparación, las
aplicaciones para Symbian necesitan más esfuerzo de desarrollo, aunque
también están optimizadas para cada modelo de teléfono.
Android.
Android es un sistema operativo móvil de google basado en Linux y Java que
ha sido liberado bajo la licencia Apache. El sistema busca, un modelo
estandarizado de programación que simplifique las labores de creación de
aplicaciones móviles y normalice las herramientas en el campo de la telefonía
móvil. Al igual que ocurriera con Symbian, lo que se busca es que los
programadores sólo tengan que desarrollar sus creaciones una única vez y así
ésta sea compatible con diferentes terminales. Google promete una plataforma
de desarrollo gratuita, flexible, económica en el desarrollo de aplicaciones y
simple, diferenciada de los estándares que ofrecen Microsoft o Symbian.
iPhone OS.
iPhone OS es una versión reducida de Mac OS X optimizada para los
procesadores ARM. Aunque oficialmente no se puede instalar ninguna
aplicación que no esté firmada por Apple ya existen formas de hacerlo, la vía
oficial forma parte del iPhone Developer Program (de pago) y hay que
descargar el SKD que es gratuito. iPhone dispone de un interfaz de usuario
realmente interesante amigable con el usuario.
Blackberry OS.
BlackBerry es un sistema operativo multitarea que está arrasando en la escena
empresarial, en especial por sus servicios para correo y teclado QWERTY.
Actualmente BlackBerry OS es también proveedor de servicios de correo
electrónico a dispositivos que no son BlackBerry, gracias al programa
BlackBerry Connect. Así, en líneas generales, en un dispositivo BlackBerry es
posible redactar, enviar y recibir todo tipo de mensajes de correo electrónico, al
igual que en el programa que se utiliza en un ordenador. Además, es posible
realizar y contestar a las llamadas que se emitan a través de la red de telefonía
móvil, lo que permite sustituir el teléfono móvil. También, como evolución
lógica, los dispositivos de este fabricante permiten la navegación por internet
en páginas HTML o WAP y tiene la capacidad de enviar o recibir mensajes
SMS. Este sistema operativo incorpora múltiples aplicaciones y programas que
convierten a los dispositivos en completos organizadores de bolsillo con
funciones de calendario, libreta de direcciones, bloc de notas, lista de tareas,
entre otras.
Linux.
Aunque no acaba de despegar porque existen multitud de versiones, ya cuenta
con más del 5% del mercado. De hecho, Android se basa en Linux.
Palm OS.
Convertido en el auténtico líder del mercado desde su aparición en 1996,
comenzó a ceder protagonismo con la llegada del nuevo siglo, hasta que en
2003 el fabricante se vio en la necesidad de dividirse y la plataforma pasó a
formar parte de la empresa denominada PalmSource japonesa Access.

5.5. Aspectos de seguridad.


El diseño de la aplicación tenemos dos aspectos seguridad a tener en cuenta:
el acceso a la misma parte por los usuarios y el respaldo de la base de datos
de la aplicación.
Acceso al sistema:
Existen dos perfiles para la aplicación: recepcionista y administrador.
Decidimos implantar el uso de contraseña a nivel de perfil en vez de usuario,
para que les resulte más cómodo a estos el cambio de usuario, sin necesidad
de salir de la aplicación para volver a entrar. Estas contraseñas se guardan en
la base de datos utilizando algún algoritmo.
Respaldo de la base de datos:
Para el respaldo de la base de datos utilizamos un scrip que se ejecutara de
forma automática por el servidor.
Debido a que el tamaño de la base de datos no será muy grande y no tenemos
problemas de capacidad en el disco duro, desechamos la posibilidad de
realizar copias de seguridad incrementales, optando únicamente por copias
completas.
 Copia diaria: se realizan a lo largo del dia y se conservan una semana.
 Copia mensual: se realizan una copia mensual, que se guarda
indefinidamente.

Registro de actividad
La aplicación guarda en la base de datos un registro de actividad, registrando
los inicios de sesión y las operaciones realizadas por cada usuario.

También podría gustarte