Grupo de apoyo a la preparación de la XXII convocatoria de oposiciones al Cuerpo Superior de Sistemas y Tecnologías de la Información de la Administración del Estado
DESARROLLO DE APLICACIONES NATIVAS (APPS) PARA MÓVILES Decisiones iniciales. Su principal ventaja es el rendimiento logrado por la integración con el hardware. Pero esta opción provoca la total dependencia de la plataforma. Por tanto, para abarcar al 95% de los usuarios, tendremos que desarrollar en las 3 plataformas más importantes, (iOS, Android y Windows). Elegiremos esta opción cuando:
Necesitemos velocidad de respuesta alta. Necesidad de identificarse y hacer transacciones de manera segura. Si se requiere de una mayor interacción del usuario con el smartphone, como la utilización de la pantalla multitouch-screen o de otros componentes hardware. Cuando necesitemos el uso de cámara, geolocalización, etc.
Este tipo de tecnologías no permite un desarrollo único, que se adapte automáticamente al tamaño del dispositivo, ( smatphones, tablets, tv…). Suele requerir un desarrollo extra que suele aumentar el presupuesto en un 20-40%.
Gestión del proyecto. 1.- Gestiones previas. Si nos inclinamos por el uso de Apps nativas, habrá que pagar una licencia anual para el desarrollo y despliegue con las plataformas más populares:
Apple Store: en torno a 80 €. Google Play: en torno a 25 €.
2.- Planificación temporal del desarrollo. En función de su dimensión, el tiempo que habrá que planificar para la fase de construcción, (desarrollo), sería:
Simple: Datos offline, sin conexión con servidores. Entre 2 y 4 semanas. Medio: Datos estáticos con conexión a un servidor externo. Entre 4 y 8 semanas. Complejo: Si tiene bases de datos, integración web, sistemas de pago o redes sociales. Entre 8 y 12 semanas. Experto: Procesos de negocio con integraciones complejas. Unas 15 semanas. 1
Grupo de apoyo a la preparación de la XXII convocatoria de oposiciones al Cuerpo Superior de Sistemas y Tecnologías de la Información de la Administración del Estado
3.- Despliegue.
La subida a producción, (sobre todo a Apple Store), requiere una revisión basada en aspectos técnicos, de usabilidad y contenido, por parte de Apple, Google ...etcétera. En el caso de Apple, puede tardar alrededor de unos 7 días en enviar el informe. Si no pasase la revisión, habrá que corregir los "errores" y volver a enviarlo. Esto en Apple, en el caso de los informes sobre otras plataformas los tiempos y requisitos suelen ser menores.
Tecnologías de desarrollo.
iOs. o o o o
Desarrollo en Objective-C, utilizando el SDK 4.3 o superior. Entorno de desarrollo Xcode. Pruebas y despliegue con Instruments. Herramientas adicionales Interface Builder.
Android. o Programación Java Native Android utilizando el SDK 2.3.3. o Entorno de desarrollo Eclipse, AVD Manager. o Pruebas JMETER y TestUnit.
Windows. o Microsoft Visual Studio 2010 Express compatible con firmwares a partir de Windows Phone 7.5 (Mango).
Pruebas del desarrollo. Para este caso, habrá que probar en las plataformas elegidas. Para las más populares habrá que tener en cuenta:
iOS: Mediante una plataforma de distribución, se envía la app a un máximo de 100 clientes para que la prueben. Para ello es necesario tener el UID de los dispositivos ya que si no, no puede instalarse. También existen simuladores como el iOS Simulator que permite simular el comportamiento de un dispositivo con este sistema operativo. Android: En este caso, basta con tener un simulador que permita reproducir el comportamiento del dispositivo. Windows: Para esta tecnología se puede optar por el uso de emuladores o un dispositivo físico donde poderlo instalar y probar. En este segundo caso, algunas
2
Grupo de apoyo a la preparación de la XXII convocatoria de oposiciones al Cuerpo Superior de Sistemas y Tecnologías de la Información de la Administración del Estado empresas proporcionan dispositivos físicos para ser gestionados remotamente de forma gratuita. Lo más populares son Samsung Developers y Nokia Developers.
Proceso de desarrollo de aplicaciones nativas Además del total acceso a los elementos del teléfono las aplicaciones nativas no requieren de conexión web para ser ejecutadas (aunque esto tiende a cambiar). Por último es importante destacar que las aplicaciones nativas tendrán mucha más visibilidad ya que se distribuyen a través de la app store de los fabricantes.
Existen sin embargo algunas desventajas a la hora de elegir esta opción.
Al estar desarrolladas para un dispositivo específico quedan fuera de su potencial mercado numerosas aplicaciones. Tienes que esperar a que te aprueben la aplicación para tenerla accesible al gran público. Necesitas desarrolladores con conocimientos específicos de la plataforma
3
Grupo de apoyo a la preparación de la XXII convocatoria de oposiciones al Cuerpo Superior de Sistemas y Tecnologías de la Información de la Administración del Estado
Algunas ventajas de este tipo de aplicaciones son que las aplicaciones nativas tienen acceso total a las utilidades del sistema operativo del dispositivo: Dispositivos de almacenamiento, cámara, gps, acelerómetro, etc. Esto hace que la experiencia de usuario sea la más completa. Además del total acceso a los elementos del teléfono las aplicaciones nativas no requieren de conexión web para ser ejecutadas (aunque esto tiende a cambiar). Por último es importante destacar que las aplicaciones nativas tendrán mucha más visibilidad ya que se distribuyen a través de la app store de los fabricantes.
Funcionalidades extra.
Notificaciones: o Esta funcionalidad sólo tendría sentido para las aplicaciones nativas. Consiste en poder enviar a los usuarios actualizaciones o notificaciones referentes a la aplicación. Existen dos formas: o programarlo o contratar el servicio con plataformas específicas. La primera opción es más costosa de desarrollar y de mantener. La segunda opción está más extendida, con las plataformas push como por ejemplo Apple Push Notification Server, C2DM de Android o Google Cloud Messagging entre otras.
Firma móvil: o Consiste en proporcionar al móvil la capacidad de firmar digitalmente. Básicamente habría que instalar un cliente o applet de firma electrónica 4
Grupo de apoyo a la preparación de la XXII convocatoria de oposiciones al Cuerpo Superior de Sistemas y Tecnologías de la Información de la Administración del Estado para el sistema operativo móvil que se pretende. Para lograr esta funcionalidad, existen soluciones de mercado como Viafirma platform, pero además, desde la Administración se ha lanzado la aplicación “Cliente @firma móvil” disponible para plataformas con sistema operativo Android, iOS y Windows, (más información en el documento “Cliente @firma móvil” de la carpeta Material Adicional). Para más información sobre firma móvil, se puede consultar en el apartado de “Identificación y Autenticación” del apartado Transversal.
Un caso de éxito: eAdmon Es una aplicación que publica los recursos de la Administración disponibles en redes sociales, habilitando el diálogo continuo con la sociedad desde donde ciudadanos y empresas lo deseen. La aplicación ofrece también a ciudadanos y empresas los servicios orientados a la vida en movilidad desarrollados por ministerios y organismos públicos. Si se creara una aplicación nativa, sería importante gestionar su inclusión en el catálogo que recoge esta aplicación.
5