¿Qué es el desarrollo móvil?

El desarrollo móvil describe los procesos y procedimientos necesarios para programar el software de dispositivos móviles, como teléfonos inteligentes, relojes inteligentes y tablets.

Demostración del Motor de aplicaciones
Cosas que hay que saber sobre el desarrollo móvil
La evolución del desarrollo móvil ¿Cuáles son las principales plataformas de desarrollo móvil? ¿Cuáles son los diferentes métodos de desarrollo móvil? ¿Cuál es el proceso de desarrollo de aplicaciones? ¿Cuáles son los componentes para crear una interfaz de usuario eficaz? Desarrollo móvil con ServiceNow
Expandir todo Contraer todo La evolución del desarrollo móvil

La informática moderna ya no está vinculada exclusivamente a los ordenadores de escritorio y portátiles, que durante décadas han sido los únicos protagonistas. Actualmente, la mayoría de las tareas informáticas se realizan en dispositivos móviles y más de la mitad del tráfico total de Internet procede de smartphones, tablets y otros dispositivos inalámbricos.

A medida que la informática avanza en su transición de una disciplina estacionaria a una sin ataduras, aumenta la demanda de software que funcione eficazmente en dispositivos móviles. Pero no solo se trata de crear funciones móviles, sino diseñar aplicaciones que, además de utilizarse en dispositivos móviles, aprovechen al máximo las capacidades únicas de estos terminales.

Para abordar de manera eficaz esta necesidad, cada vez más empresas confían en el desarrollo móvil.

¿Cuáles son las principales plataformas de desarrollo móvil?

Para ejecutar una aplicación, el dispositivo móvil necesita un sistema operativo, que actúa como intermediario en la interacción entre el hardware informático y los programas que se ejecutan. El sistema operativo garantiza que los procesos de software que se ejecutan en el equipo accedan a los recursos adecuados y funcionen según lo previsto.

Las plataformas de desarrollo móvil son, básicamente, un sistema operativo diseñado para desarrollar, probar e implementar aplicaciones móviles. Aunque históricamente ha habido varias plataformas de desarrollo móvil, actualmente dos grandes competidores se reparten la mayor parte de la cuota de mercado: iOS y Android.

Android

Android es la plataforma de desarrollo móvil con mayor cuota de mercado, aproximadamente el 80 %. Esto se debe a que Android es un sistema operativo de código abierto que permite que muchos tipos de dispositivos de distintos fabricantes ejecuten diferentes versiones del sistema operativo Android. Basado en Linux y con el respaldo de Google, Android permite que cualquiera pueda desarrollar hardware compatible con su sistema operativo. Lo mismo ocurre con el desarrollo de aplicaciones para dispositivos Android: los desarrolladores tienen plena autonomía para crearlas, lo que hace que las aplicaciones sean más flexibles y no tengan apenas barreras de entrada.

Google proporciona herramientas nativas para el desarrollo de aplicaciones móviles Android, por ejemplo, Android Studio. Además, gracias a su naturaleza de código abierto, los proveedores externos también pueden (y de hecho lo hacen) crear sus propias herramientas de desarrollo para Android. Las amplias directrices de Google para los desarrolladores garantizan el buen funcionamiento de la aplicación final en muchos tipos de hardware. Sin embargo, dado que el número potencial de dispositivos Android es prácticamente ilimitado, no es posible garantizar plenamente la eficacia de las nuevas aplicaciones en todos los tipos de hardware y en todas las situaciones posibles.

iOS

Aunque iOS solo representa alrededor del 18 % de la cuota de mercado, posiblemente sea la plataforma dominante. Es propiedad de Apple, empresa conocida principalmente por popularizar la informática móvil con las tecnologías de iPhone y iPad.

La razón por la que iOS no se ejecuta en tantos dispositivos como Android es que no es de código abierto y se usa exclusivamente en productos Apple. De igual manera, para crear aplicaciones para iOS, los desarrolladores deben utilizar un equipo Mac que ejecute OS X (el sistema operativo estándar para Mac).

Apple también proporciona herramientas y bibliotecas nativas para el desarrollo móvil, y recomienda a los desarrolladores utilizar el lenguaje de programación Swift, propiedad de Apple.

Apple mantiene un control muy estricto sobre el hardware y el software utilizado para el desarrollo de iOS, por lo que es un sistema operativo con gran capacidad de respuesta, estable y fácil de usar. La fragmentación de dispositivos tampoco es un problema, pues Apple solo permite ejecutar sus aplicaciones en su propio hardware patentado. Por otro lado, al aplicar directrices más estrictas, resulta más difícil crear aplicaciones completamente personalizadas y cualquier aplicación nueva de iOS debe enviarse a App Store con antelación para su revisión y aprobación.

Otras plataformas

El 2 % restante de cuota de mercado restante lo comparten el resto de plataformas de desarrollo móvil, entre ellas, las de Windows y Blackberry, pero casi todos los desarrolladores centran sus esfuerzos en las plataformas de Android o iOS, o bien en una combinación de ambas.

¿Cuáles son los diferentes métodos de desarrollo móvil?

Existen varios enfoques para el desarrollo móvil, de los cuales estos son los tres más habituales:

Desarrollo nativo

Probablemente, el método de desarrollo móvil más directo y obvio consiste en utilizar las herramientas y plataformas que proporciona el proveedor del sistema operativo. Estas herramientas suelen ser fáciles de utilizar y proporcionan ejemplos, herramientas, marcos de trabajo y otros recursos para garantizar una depuración más rápida y una funcionalidad óptima en el sistema operativo en el que se ejecutará la aplicación.

Pero las herramientas de desarrollo nativas también presentan ciertos inconvenientes. Al estar diseñadas para facilitar el desarrollo para sus respectivos sistemas operativos, se basan en diferentes lenguajes de programación. Esto significa que los desarrolladores que quieran codificar con herramientas de Android o iOS deben conocer los lenguajes que utilizan esas herramientas, en lugar de trabajar con sus lenguajes de preferencia. Asimismo, la creación de una aplicación para ambos sistemas operativos puede significar un doble trabajo, ya que hay que codificar la aplicación dos veces, seguir dos procesos y aplicar dos conjuntos de prácticas recomendadas.

Sin embargo, para aquellos que solo están interesados en crear aplicaciones para un sistema operativo, el desarrollo nativo puede ser la solución más rápida y sencilla.

Ventajas

  • Rendimiento optimizado
    Al aprovechar al máximo las características del dispositivo, las aplicaciones de desarrollo nativo suelen funcionar mejor y con mayor coherencia.
  • Mayor facilidad de uso
    Las aplicaciones nativas están diseñadas para funcionar en dispositivos específicos, por lo que pueden aprovechar sus capacidades inherentes para proporcionar una mejor experiencia de usuario.
  • Codificación de plataforma única
    El desarrollo de aplicaciones nativas es más sencillo, pues están pensadas para una sola plataforma y sistema operativo.

Desventajas

  • Se necesita especialización
    Las aplicaciones nativas diseñadas para sistemas operativos específicos requieren que los desarrolladores tengan conocimientos especializados de codificación para el dispositivo en cuestión.
  • Se requiere un gran esfuerzo de desarrollo
    Dado que las aplicaciones nativas se desarrollan específicamente para sistemas operativos concretos, se precisa un gran esfuerzo de desarrollo para crear una aplicación capaz de funcionar en más de una plataforma, lo que también conlleva un incremento en los costes y el tiempo dedicado.

Marcos de trabajo multiplataforma

El fin de los marcos de desarrollo multiplataforma (también llamados híbridos) es que los desarrolladores puedan crear aplicaciones móviles que funcionen eficazmente en los dos sistemas operativos principales. En teoría, esto significa que el desarrollador solo tendrá que escribir el código una vez para después ejecutarlo en todas las plataformas compatibles. La mayoría de los marcos multiplataforma suelen favorecer uno de los sistemas operativos, lo que obliga a los desarrolladores a tener que ajustar la versión de la aplicación prevista para el otro.

A menudo, los marcos de trabajo multiplataforma son abstracciones; utilizan bibliotecas y marcos nativos, por lo que es necesario que los desarrolladores tengan conocimientos básicos de estos elementos. Otros adoptan un enfoque híbrido e incorporan componentes HTML basados en web, además de los componentes nativos.

La mayoría de las soluciones multiplataforma solo son compatibles con un lenguaje de programación específico, por lo que muchos desarrolladores seleccionarán el marco en función de los lenguajes de programación con los que estén familiarizados.

Ventajas

  • Desarrollo más rápido
    Para el desarrollo de aplicaciones multiplataforma se requiere un único conjunto de códigos compatible con varios sistemas operativos, lo cual acelera todo el proceso.
  • Desarrollo más fácil
    Los desarrolladores de aplicaciones híbridas solo tienen que aprender una tecnología, lo que reduce la barrera de entrada y facilita el proceso de desarrollo.
  • Público objetivo más amplio
    Dado que las aplicaciones multiplataforma están diseñadas para su distribución a través de las principales tiendas de aplicaciones, los desarrolladores pueden llegar tanto a usuarios de Android como de iOS.

Desventajas

  • Facilidad de uso reducida
    Las aplicaciones creadas para los dos sistemas operativos principales no suelen aprovechar al máximo las características específicas de sus plataformas, lo cual puede afectar a la facilidad de uso y ralentizar su funcionamiento en comparación con las aplicaciones de desarrollo nativo.
  • Implantación más lenta de nuevas características
    Cuando se introducen nuevas características nativas, los desarrolladores multiplataforma deben esperar a que su marco de desarrollo sea compatible con ellas.
  • Dificultades de personalización
    La personalización es mucho más difícil cuando la aplicación no se desarrolla de manera nativa y puede no ser posible personalizarla del todo si se utilizan marcos multiplataforma.
  • Problemas de rendimiento
    Las aplicaciones que no se diseñan para un sistema operativo específico pueden tener dificultades de comunicación y problemas de rendimiento.

Aplicación web móvil

Un tercer enfoque para el desarrollo móvil que es cada vez más popular es el uso de una aplicación web móvil. Esta alternativa consiste en desarrollar una aplicación web a la que se pueda acceder a través de un navegador web estándar y optimizarla para su uso en dispositivos móviles.

Esto puede parecer un “parche”, pero la realidad es que las aplicaciones web móviles pueden ser igual de efectivas, funcionales y terminadas que las desarrolladas de forma nativa. De hecho, hay muchos marcos de trabajo diseñados para ayudar a los desarrolladores a crear aplicaciones web móviles que parezcan aplicaciones nativas cuando se ejecutan en un sistema operativo móvil específico. Las aplicaciones web móviles pueden incluso incorporar funcionalidades de los dispositivos en los que se ejecutan, como el acceso a la cámara, la marcación de números de teléfono, la obtención de datos de ubicación y mucho más.

Ventajas

  • Mantenimiento simplificado
    Al utilizar lenguajes y reglas de programación estándar de sitios web, las aplicaciones web móviles son tan fáciles de crear y actualizar como los sitios web.
  • Desarrollo más rápido
    En el desarrollo de aplicaciones web solo se utiliza un conjunto único de códigos, lo que acelera y simplifica el proceso de desarrollo. Además, al no precisar la aprobación de las principales tiendas de aplicaciones, se pueden lanzar mucho más rápido.
  • Menor coste
    La codificación simplificada y los ciclos de desarrollo más rápidos dan lugar a menores costes de desarrollo.
  • Accesibilidad óptima
    Las aplicaciones web funcionan de forma muy similar a los sitios web y se puede acceder a ellas a través de cualquier navegador estándar.

Desventajas

  • Requieren Internet
    Dado que a las aplicaciones web se accede a través de navegadores web estándar, es necesario tener conexión a Internet. Sin acceso a Wi-Fi o datos móviles, los usuarios no podrán utilizar la aplicación.
  • Accesibilidad limitada a funciones
    Las aplicaciones web no tienen acceso a las funciones nativas de un dispositivo o sistema operativo, lo que puede limitar su funcionalidad.
  • No están vinculadas a tiendas de aplicaciones
    Este tipo de aplicaciones no están disponibles en las tiendas de aplicaciones y es posible que pasen desapercibidas.

¿Cuál es el proceso de desarrollo de aplicaciones?

Aunque cada desarrollador puede adoptar un enfoque distinto o utilizar diferentes metodologías, el proceso de desarrollo de aplicaciones suele consistir en seis pasos:

1. Idea

El equipo de desarrollo debe trabajar con otros departamentos y partes interesadas para establecer los requisitos de la aplicación potencial. Esto incluye todas las funciones y capacidades que debe incluir la aplicación, así como el público objetivo y los problemas específicos que deberá resolver.

2. Diseño

Con la idea de la aplicación firmemente establecida, el siguiente paso es diseñar la interfaz de usuario (UI) y la experiencia de usuario (UX) para la aplicación.

3. Development

La etapa de desarrollo es donde comienza la codificación real. Los equipos de desarrollo programan la aplicación y cumplen con las pautas establecidas. Se inician las pruebas preliminares con el objetivo de garantizar un funcionamiento óptimo.

4. Evaluación

Cuando se acerca el fin del proceso de desarrollo, deben realizarse pruebas más exhaustivas, que servirán para determinar no solo si la aplicación funciona o si hay fallos que se deben resolver, sino si la calidad general y la experiencia del usuario serán las adecuadas.

5. Realizar el lanzamiento

Una vez completadas las pruebas finales, tras asegurarse de que llega a los estándares fijados, la aplicación está lista para publicarse.

6. Marketing

Aunque técnicamente no forma parte del desarrollo de aplicaciones, el marketing ayuda a garantizar que los esfuerzos del equipo de desarrollo tengan su recompensa. La estrategia de marketing es esencial para que el público sepa que la aplicación está disponible y cuáles son sus características. Al mismo tiempo, un buen marketing puede generar comentarios valiosos que los desarrolladores pueden utilizar para mejorar la aplicación a través de soporte adicional.

¿Cuáles son los componentes para crear una interfaz de usuario eficaz?

El éxito de casi cualquier aplicación móvil depende de su facilidad de uso. La interfaz de usuario determina cómo se visualizará la aplicación y cómo los usuarios interactuarán con ella, por lo que crear una interfaz de usuario eficaz exige ciertos componentes:

Arquitectura de información

En la creación de la arquitectura de la información, los desarrolladores especifican la funcionalidad de la aplicación y, al mismo tiempo, detallan en qué consistirá la interfaz.

Diagramas reticulares

Los diagramas reticulares crean una representación visual básica de cómo debería ser la aplicación terminada. Esto incluye el tamaño de los diversos elementos y su relación entre sí con respecto al diseño.

Guías de estilo

Las guías de estilo son referencias que proporcionan detalles relevantes sobre la aplicación para garantizar que el diseño mantenga la coherencia en todo momento.

Maquetas

Partiendo de la base de los diagramas reticulares y las guías de estilo, las maquetas demuestran el flujo de la aplicación, presentado como una visualización estática.

Prototipos

Un prototipo es la versión preliminar de una aplicación en la que se incorporan o se descartan los componentes anteriores. Ofrece a los desarrolladores una visión dinámica del funcionamiento de la aplicación antes de finalizarla por completo. De este modo, pueden identificar los potenciales desafíos de la interfaz de usuario y la experiencia de usuario. Su finalidad es que el producto final tenga más probabilidades de cumplir o superar las expectativas del usuario.

Precios de App Engine Explora cómo lanzar al mercado nuevas aplicaciones empresariales en la mitad de tiempo y con un tercio del coste. Ver precios
Desarrollo móvil con ServiceNow

La creación de aplicaciones potentes y fiables se ha convertido en una necesidad para cualquier empresa que quiera ser competitiva en el actual panorama empresarial, cada vez está más conectado. ServiceNow®, líder en gestión de TI, ofrece soluciones de desarrollo de aplicaciones que facilitan el acceso de las empresas a herramientas y recursos avanzados que les permitan idear, desarrollar, lanzar y mantener aplicaciones atractivas y eficaces.

Studio para móvil de ServiceNow tiene todo lo que las organizaciones necesitan para desarrollar aplicaciones móviles personalizadas sin necesidad de contar con un batallón de desarrolladores o tener amplios conocimientos de codificación. Las plantillas listas para usar, las funciones de arrastrar y soltar, y las opciones de personalización integradas en Studio para móvil hacen que el desarrollo de aplicaciones sea tan sencillo como pulsar un botón. Además, las herramientas de configuración del Generador de aplicaciones móviles de ServiceNow van un paso más allá y optimizan la organización, la visibilidad y la orientación en la creación de aplicaciones.

Primeros pasos con Creator Workflows Conecta tu empresa mediante flujos de trabajo digitales gracias a Now Platform. Descubre App Engine Contactar
Medios Artículos ¿Qué es ServiceNow? ¿Qué es la hiperautomatización? ¿Qué es el desarrollo con poco código? Informes de analistas Gartner nombra a ServiceNow líder en plataformas de aplicaciones empresariales que requieren poco código Forrester: Hyperautomation Leads to Transformative Business Outcomes (Con la hiperautomatización se consiguen resultados empresariales que suponen una transformación) Fichas técnicas Now Assist para creadores Digitize, automation, and govern any workflow with App Engine (Digitalización, automatización y control de flujos de trabajo con Motor de aplicaciones) Aplicaciones móviles de ServiceNow eBooks Escala la implementación de aplicaciones de código bajo Desarrollo de aplicaciones sin dispersión Cuatro pasos para automatizar y conectar tu organización White papers Desarrollo de código bajo para empresas How to Keep People at the Center of Hyperautomation (Cómo poner a las personas en el centro de la hiperautomatización)