El mercado móvil exige nuevas prácticas de desarrollo de software
Según la consultora Gartner, los métodos tradicionales usados para definir y desarrollar aplicaciones de escritorio no funcionan a la hora de desarrollar aplicaciones móviles.

Los métodos tradicionales usados para definir y desarrollar aplicaciones de escritorio no funcionan a la hora de desarrollar aplicaciones móviles. Al menos, ésa es la conclusión a la que ha llegado la consultora Gartner tras comprobar que la creciente presión sobre las organizaciones del sector tecnológico para ofrecer un gran número de apps móviles ha llevado a emplear nuevas técnicas de desarrollo.
Durante una reciente presentación a los líderes chinos del sector TIC, Van Baker, vicepresidente de investigación de Gartner, declaró: "Las prácticas tradicionales de los equipos de desarrollo no funcionan a la hora de trabajar en dispositivos móviles, debido a la variedad de los mismos, la conectividad de red, y otros factores específicos de la tecnología móvil". Según Baker, a los usuarios les suele resultar difícil describir eficazmente lo que necesitan que haga una app móvil, por lo que la tradicional práctica de sentar a un analista de negocios con los usuarios finales (es decir, organizar focus groups de consumidores o empleados) resulta inútil para los desarrollos en entornos móviles. En palabras de Baker, "la experiencia asociada a los dispositivos móviles es significativamente diferente de la de los dispositivos de escritorio, con sesiones más breves y una visualización condicionada a las limitaciones del tamaño de la pantalla".
Testeo y analítica de apps
El testeo de las aplicaciones móviles también difiere de forma notable del aplicado en el tradicional software de escritorio: en entornos móviles el comportamiento de los sistemas operativos y de los dispositivos puede variar enormemente de un caso a otro. En palabras de Baker, "lo importante es que las compañías se den cuenta de que todavía tenemos mucho que aprender sobre cómo diseñar, construir y lanzar buenas aplicaciones móviles". Una vez que la aplicación se lanza, es importante entender cómo es usada –a la hora de la verdad– por los usuarios reales, dado que su comportamiento puede diferir con respecto al mostrado en las pruebas. Por ello, los sistemas de analítica in-app resultan fundamentales para dotar de utilidad a los resultados que arroja el uso de las aplicaciones: las aplicaciones de analítica, ya ofrecida por proveedores especializados (como Flurry), ya incluidas en soluciones MADP (Appcelerator, Kony, Pega Software) pueden indicar a los desarrolladores el uso que se da a su software.
‘Agile development’
De acuerdo a los estudios de Gartner, el desarrollo de la típica aplicación de escritorio supone aproximadamente año y medio de trabajo y, una vez lanzado, la vigencia de software puede llegar a mantenerse cinco años antes de sustituirlo por otro. De este modo, se diferencian por poseer ciclos de vida largos (y estables en cuanto a las funcionalidades del mismo). Las aplicaciones móviles son muy diferentes: necesitan ser revisadas con frecuencia para satisfacer las expectativas de los usuarios finales. El ritmo de los cambios en el mercado de la telefonía móvil resultan incompatibles con una reducción de la velocidad de desarrollo, por lo que exigen adoptar prácticas de desarrollo y puesta en marcha de aplicaciones que permitan mejorar incrementalmente las aplicaciones tan rápidamente como cambien las expectativas de los usuario. Por ello, se hace necesario implementar técnicas de agile development o 'desarrollo ágil' de software.
El agile development es el nombre que recibe un conjunto de técnicas de ingeniería de software que minimiza los riesgos desarrollando sucesivas versiones del software (las llamadas 'iteraciones') en pequeños periodos de tiempo, de 2-8 semanas, aproximadamente. Casa una de estas iteraciones incluye sus propias etapas de planificación, análisis de requisitos, diseño, programación, revisión y documentación, llevadas a cabo por grupos autoorganizados y multidisciplinares. Todo esto es ya casi más una corriente de pensamiento que una mera técnica de programación, que cuenta ya incluso con su propio manifiesto de 12 puntos ("La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial", etc.).