Ir al contenido principal

Reflexiones sobre el desarrollo de aplicaciones móviles

Ahora mismo existen distintos mercados diferenciados dentro de las aplicaciones móviles. Hace relativamente poco tiempo, las empresas que desarrollábamos aplicaciones móviles, buscábamos realizar un solo desarrollo multiplataforma, y que valiera para el mayor número de dispositivos posible. Esto se intentaba mediante tecnología Java J2ME. En este post hice una pequeña introducción.

El coste de desarrollar estas aplicaciones era altísimo, ya que siempre había que realizar adaptaciones para sacar el mayor rendimiento de cada dispositivo, y aun así no se conseguía. Cada fabricante instalaba una máquina virtual distinta, había particularidades a la hora de gestionar cada pila de Bluetooth... toda una odisea.

Actualmente hay distintas plataformas diferenciadas y las empresas optan por desarrollar aplicaciones nativas para cada plataforma. Los clientes suelen pedir que la aplicación funcione en distintas plataformas, para así llegar al mayor número de usuarios posibles. Si las empresas desarrolladoras no tienen el know how para desarrollar la aplicación en las plataformas requeridas, se suelen buscar alianzas para completar los servicios ofrecidos. Pero el planteamiento es utilizar tecnología nativa para cada puerto de la aplicación.

El mercado mundial actual, en cuanto a smartphones se refiere, lo copan las plataformas Android, iPhone, y Blackberry. Aun hay un parque bastante amplio de dispositivos Symbian pero, además de estar en el límite de lo que hoy denominamos smartphones, están en claro retroceso. Para ilustrar estas afirmaciones, podemos ver el artículo de Poder PDA basado en las estadísticas de Gartner del tercer trimestre de 2011. Cabe reseñar que Windows Phone 7, actualmente tiene una cuota de mercado bastante pequeña probablemente motivada por lo tarde que llegaron al mercado.




Blackberry tradicionalmente ha tenido una cuota de mercado amplia en dispositivos de empresa. La larga duración de la batería (cuando trabajamos, no nos podemos permitir el lujo de agotar la batería en 4 horas, sobretodo si estamos desplazados), su correo push, la seguridad (Blackberry implementa por omisión distintos protocolos de seguridad), o cuestiones relacionadas con la usabilidad (teclado qwerty físico, muy apropiado para escribir muchos correos), son factores que han influido en que las empresas eligieran Blackberry. Otro motivo importante, que no tiene que ver con la tecnología, y sí con el canal de distribución, es la apuesta que realizan las operadoras con respecto a los terminales que facilitan. Si Vodafone, o Movistar en España optan por favorecer la distribución de un modelo concreto, influirá decisivamente en las estadísticas de cuota de mercado. Esto último puede que sea factor clave en el avance de iPhone en usuarios de empresa.

Hasta la fecha, la mayoría de proyectos de desarrollo Blackberry que hemos llevado acabo en el Departamento de Ingeniería de Software de Soltel IT Solutions estaban orientados a soluciones empresariales, es decir desarrolladas por la empresa, para la empresa (modelo de negocio B2B). Sin embargo hemos recibido peticiones de proyectos Android y iPhone, cuyo usuario final, es el consumidor de a pie (modelo de negocio B2C). Esta separación, cada vez es menos evidente, ya que iPhone se está extendiendo en el entorno empresarial, y Blackberry ha intentado acercarse al gran público con dispositivos de gama media, como la Curve y aplicaciones como Blackberry Messenger, con gran aceptación entre los más jóvenes.

Android mantiene una cuota relevante en el mercado. Hay factores que han influido en que proliferen aplicaciones de esta plataforma, como por ejemplo, el ser una apuesta de Google, haber dispositivos potentes de varios fabricantes como HTC y Samsung, ser nativo Java, tener un SDK (Software Development Kit) abierto, con grandes facilidades para publicar en Android Market...

No podemos perder de vista la alianza subscrita entre Microsoft y Nokia (dispositivos Nokia con sistema operativo Windows Phone). En mi opinión, más allá de la calidad del producto, han llegado muy tarde, y puede que ya no haya pastel que repartir.




El mundo de la tecnología es cambiante. El pasado es hace dos años, y el futuro es dentro de un minuto. Esto se acentúa en la tecnología móvil, donde los cambios son constantes. Una empresa experta en desarrollo de software para móvil, no puede permitirse el lujo de no conocer las plataformas más importantes que copan el mercado, aunque estas queden fuera de su stack tecnológico. Por otro lado las librerías y frameworks que los fabricantes ponen a disposición de desarrolladores hacen que el escalón entre el desarrollo de una aplicación móvil y una web o de escritorio se reduzca.

Comentarios

  1. Estupenda lección técnica sobre arquitectura y sistemas operativos de Roberto Galli en su blog: http://gallir.wordpress.com/2011/12/07/android-ios-tiempos-de-respuestas-y-por-que-nada-es-gratis-en-sistemas-informaticos/#comment-12995

    Ideal para profundizar en las plataformas móviles más extendidas.

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Métrica v3 vs Metodologías Ágiles

Métrica v3: Metodología de Planificación, Desarrollo y Mantenimiento de sistemas de información que propone el Ministerio de Administraciones Públicas. Cualquier defensor de la técnicas, metodologías y herramienta ágiles sostendrá que Métrica v3 es un sistema demasiado pesado, tanto en su implementación, como en sus procesos de mantenimiento. Yo lo corroboraría, pero sin demonizarla. Estoy acostumbrado a que en este mundo de la informática se creen auténticos "dogmas de fe", que acarrean sus propias "guerras religiosas". Algunos ejemplos podrían ser: Software privativo vs Software libre, Windows vs Linux, Web Services vs Rest, Oracle vs MySQL, Explorer vs Firefox, Apache vs IIS, Eclipse vs Netbeans, y así podríamos seguir con un largo etcétera. En vez de buscar la mejor solución, o soluciones universales, yo propongo realizar un intenso análisis, y respondernos ciertas preguntas. Por regla general, no hay una solución que valga "para todo". La pregunta que

Lenguajes: Pasado, Presente y Futuro

Escribo este post al hilo del artículo que he leido en dosideas.com. En él, se habla de las habilidades que debería tener un programador para tener un currículum relevante en los próximos cinco años: 1. Uno de los "3 Grandes" (Java, .NET, PHP) 2. Aplicaciones Ricas de Internet (RIA - Rich Internet Applications) 3. Desarrollo web 4. Servicios web 5. Habilidades humanas 6. Un lenguaje de programación dinámico y/o funcional 7. Metodologías ágiles 8. Conocimiento de dominio 9. "Higiene" de desarrollo 10. Desarrollo móvil A partir de este artículo, estuve debatiendo con algunos compañeros y saqué algunas conclusiones que quiero plasmar aquí. Pienso que el artículo es un poco mejorable, dada la arbitrariedad con la que se han escogido los conocimientos a adquirir. De hecho, muchas de esas habilidades hay que tenerlas en el presente (yo cumpliría de 9 a 10). Me voy a centrar en el punto 1, uno de los "3 Grandes" (Java, .NET, PHP). Antes de hablar de "gran

¿Por qué Yii Framework?

En Soltel presumimos de tener una actitud innovadora, que nos obliga a probar las distintas tecnologías que van llegando al mercado, y que ajustándose a nuestro stack, puedan mejorar en algo nuestros desarrollos. Una vez analizado el framework o librería, lo probamos en proyectos internos que nos permitan conocer con más detalle sus características. En este trabajo de campo es donde realmente se decide si es interesante o no añadir el framework a nuestro stack, y con ello ofrecerlo en los desarrollos que realizamos para nuestros clientes. En este proceso, llevábamos bastante tiempo buscando un framework PHP que realmente aportara valor y se adecuara en tiempos de desarrollo, rendimiento y arquitectura a lo que necesitamos ofrecer en nuestros proyectos. Ya habíamos descartado frameworks como Prado, por ser bastante pesado y tener una arquitectura demasiado compleja. Con Yii, sin embargo, nos hemos llevado una agradable sorpresa. Yii es un framework PHP, libre (licencia BSD), basado en