Cómo crear una app nativa (I): la fase preparatoria

El uso de aplicaciones en terminales móviles está en alza y, debido a la disminución de costes y de la dificultad técnica vinculada a su programación y de los conocimientos necesarios para ello, las PYMES y los autónomos también han empezado a beneficiarse del desarrollo de aplicaciones móviles. Si se parte de una buena idea y el equipo cuenta con el nivel técnico preciso, tanto los principiantes, que pueden recurrir al diseño con plantillas, como los desarrolladores profesionales, que no suelen necesitar programas de apoyo, cuentan con un gran número de opciones con las que crear su propia app para Android o iOS.

Con esta primera parte iniciamos una serie en la que explicamos en profundidad cómo crear una app nativa, denominación que designa a aquellas aplicaciones móviles concebidas para un determinado sistema operativo (Android o iOS). Para empezar, detallamos los aspectos a considerar en la planificación previa al desarrollo de tu propia app.

Crear una app nativa: primeras reflexiones técnicas

Cuando se tiene una idea para una aplicación, las primeras reflexiones suelen girar en torno al formato más adecuado, decisión fundamental porque es el que determina las características técnicas de la aplicación y define el proceso de desarrollo posterior. Se puede escoger entre un gran número de formatos diferentes mientras que, en cuanto a las aplicaciones, junto a las nativas, también se desarrollan sobre todo aplicaciones web y híbridas.

En el manual sobre desarrollo de aplicaciones que iniciamos con esta primera parte nos hemos centrado en la programación de aplicaciones nativas por varias razones. En primer lugar, debido a la gran ventaja que representa su facultad para adaptarse al sistema operativo del dispositivo y, en segundo lugar, porque superan a las apps híbridas o web en rendimiento y en tiempos de respuesta más reducidos. Otros aspectos que demuestran menos limitaciones que otros formatos incluyen su capacidad para interactuar con archivos almacenados en el dispositivo, para acceder al espacio de memoria disponible completo y para utilizar casi todas las funciones nativas del dispositivo, como la cámara, el GPS o los mensajes “push”. En definitiva, a la hora de crear una aplicación, el formato nativo ofrece muchas más posibilidades que los otros dos.

A esto hay que añadir sus sencillas opciones de distribución, puesto que tanto Google (Android) como Apple (iOS) cuentan con sus propias tiendas, la Google Play Store en un caso y la App Store de Apple por el otro, donde los consumidores tienen a su disposición las aplicaciones diseñadas para estos sistemas operativos. Para la mayoría de usuarios, ambas tiendas representan la opción más habitual a la hora de descargar una aplicación. La tienda de Apple constituye, incluso, la única posibilidad en el caso de aplicaciones iOS. Lo único que hay que decidir es si se ofrece de forma gratuita o no.

Otra razón, no menos importante, para la creación de una app son los ingresos potenciales que esta puede generar. Después de todo, el número de transacciones realizadas a través de aplicaciones para smartphones ha incrementado razonablemente en los últimos años. Se espera que para el 2021 las ventas mundiales lleguen a 78 mil millones de dólares estadounidenses.

Descarga aquí la infografía acerca del lucrativo negocio de las aplicaciones móviles.

Por qué es mejor crear una native app

Debido a su alta capacidad de rendimiento, el formato nativo se utiliza sobre todo para aplicaciones muy complejas gráficamente y que requieren una gran potencia de cálculo, aunque también permite realizar aplicaciones sencillas que se benefician igualmente del elevado rendimiento de este formato. Si la aplicación proyectada debería acceder a determinadas funciones nativas del dispositivo, este formato ofrece la mayor variedad de opciones, permitiendo integrar fácilmente componentes como la cámara, el micrófono, la libreta de direcciones, el calendario, los mensajes, la geolocalización por GPS, el bluetooth, los sensores de posición y movimiento del dispositivo, entre otros.  

Por otro lado, a diferencia de la mayoría de aplicaciones web y a muchas híbridas, las nativas no tienen que estar necesariamente conectadas a Internet para ejecutarse, de tal forma que aquellas aplicaciones con funciones que también tengan que estar disponibles en modo offline están, por así decirlo, predestinadas a este formato. Además, disponen del tiempo de latencia más reducido. Esta capacidad de implementar comandos rápidamente puede ser clave en el caso de juegos u otro tipo de aplicaciones en las cuales se tengan que realizar muchas peticiones en un lapso breve de tiempo.

Crear una aplicación nativa también es la mejor elección cuando se valora la usabilidad y una experiencia de usuario (UX) ajustada idóneamente al sistema operativo, ya que, al utilizar los frameworks estándar de cada sistema, la aplicación se puede adaptar perfectamente a la interfaz propia de cada plataforma. Esto, además de la coherencia en el diseño y el comportamiento de menús y botones, es lo que determina el mejor look and feel de las native apps frente a las otras y hace que su utilización iguale a la de otros programas en el mismo sistema operativo. No hay que olvidar que muchos usuarios ya están familiarizados con el look and feel de su sistema operativo móvil y consideran el mantenimiento de las directrices de diseño y de manejo como un factor de calidad, aspecto del que se puede beneficiar el desarrollo de aplicaciones nativas.

¿Qué valor añadido aporta mi aplicación?

Lo primero y principal a la hora de crear una app es tener una buena idea y estar convencido de su potencial comercial, así que, antes de comenzar a planificar su desarrollo, hay que examinar esta idea en profundidad. Un método probado para ello consiste en estudiar qué aporta la aplicación en ambos sentidos:

  • Valor añadido para el usuario: este solo usará una aplicación si obtiene un beneficio, el cual puede tener la forma de información, de entretenimiento, de soporte, de opciones de compra o de comunicación con otros usuarios de la aplicación.
  • Valor añadido para el desarrollador: una aplicación representa siempre una inversión, por lo que, de alguna forma, ha de resultar rentable. De nuevo, las opciones aquí también se diversifican enormemente, puesto que no solo el beneficio inmediato supone un valor añadido. También la ampliación de la clientela y el grado de conocimiento de la marca del fabricante pueden formar parte del beneficio, de la misma forma que la consolidación de una imagen determinada del fabricante.

Solo cuando se ha perfilado un beneficio tanto para el usuario como para el fabricante, es momento de comenzar con la fase de planificación. Para ello conviene ser realistas: estudia los objetivos realistas, si la aplicación es técnicamente factible y estima factores como el trabajo y la financiación necesarios para su desarrollo.

La fase de planificación en el desarrollo de aplicaciones

Cuanto más exhaustiva la fase de preparación y más relevante la información que se obtenga, más realista será la previsión de las probabilidades de éxito de la aplicación y del trabajo y de los gastos implicados en su desarrollo. No descartes compartir tu idea con la mayor cantidad de personas de confianza, porque cada opinión honesta puede proporcionarte un input muy valioso en lo referente a la planificación y a la implementación.

Los puntos que explicamos a continuación son elementos fundamentales a considerar en esta fase, que deberías plasmar en un concepto escrito. Para ello, puedes ayudarte de un denominado wireframe, un esquema o plano de página utilizado en diseño web y que no es otra cosa que una ilustración esquemática de tu aplicación, con el objetivo primordial de mostrar la experiencia del usuario y hacerla aprehensible. Este tipo de bocetos facilita posteriormente la implementación técnica pero no solo, porque en el caso que delegues la programación de la aplicación en un experto, puede resultar de gran ayuda a la hora de hacer la idea comprensible. El concepto escrito, como en el caso de cualquier otro proyecto, es un paso obligado también a la hora de buscar inversores.

Estudia a la competencia

Averigua si hay otros fabricantes que también han desarrollado una aplicación parecida y, si es el caso, cómo lo han hecho. Si aún no existe ninguna aplicación móvil de este tipo puedes contar con  un potencial innovador para tu proyecto, aunque también podría significar que se ha desarrollado en otra forma (en una web) o que es sencillamente poco practicable. Esto hace necesario investigar también a tus competidores fuera del ámbito de las aplicaciones, porque el análisis de los competidores y de los modelos de negocio similares no solo aporta las claves sobre la situación actual en el mercado sino que también proporciona estímulos para reflexionar en la implementación de tu propia app.

Si tu proyecto ya existe en una forma parecida, entonces el análisis de la competencia es inevitable, porque a través de él obtienes información de mucho valor sobre los supuestos que hasta ahora dieron buenos resultados y los que no. Los resultados positivos sirven de orientación y guía, mientras que los negativos, por su parte, muestran a qué estrategias y procederes sería mejor renunciar, así como en qué aspectos reside potencial de mejora y podrían ser integrados en tu aplicación.

En el caso de querer optimizar un concepto ya existente o querer modificarlo para aplicarlo en otro ámbito, es igualmente recomendable analizar al detalle los proyectos ya existentes en este sector. No todas las aplicaciones han de descubrir el Mediterráneo: pequeñas mejoras, funciones adicionales o el traspaso de una idea a otro sector también han favorecido el éxito de diversas aplicaciones (y a sus creadores).

Define a tu público objetivo

Definiendo al mercado de la aplicación se concretan al mismo tiempo aspectos como su funcionalidad, su diseño, su precio, etc. Para ello no te limites a confiar en tu intuición, sino en los datos estadísticos.

Si administras una página web de temática parecida, usar herramientas de analítica web como Google Analytics o Piwik puede resultar de gran ayuda para conocer a fondo a tus usuarios, revelando, por ejemplo, cuántos usuarios han accedido a la página mediante su dispositivo móvil y con qué sistema operativo, lo que te permite determinar qué plataformas son las más adecuadas para tu aplicación nativa. También aporta información sobre el comportamiento de las visitas, que sirve para determinar cuáles son las funciones más solicitadas y no deberían faltar, por consiguiente, en la aplicación.

Las encuestas, las entrevistas y los estudios de mercado constituyen otra manera de recabar información sobre tu audiencia. Es de esta manera como se descubre, por ejemplo, que el mayor grupo de usuarios de aplicaciones en España lo conforma la población joven (entre 25 y 34 años) en un 39%, por lo que una aplicación móvil para la tercera edad representaría un producto nicho.

Decántate por una plataforma

¿En qué sistema operativo quieres ofrecer tu aplicación? En ocasiones la segmentación de la audiencia ya proporciona la respuesta, como sucedería en el caso de querer dirigirse exclusivamente a clientes de Android o de Apple. Si la aplicación está vinculada a un software determinado que solo existe en una plataforma tampoco habrá que dedicarle mucho tiempo a esta cuestión.

Ahora bien, si no estás ligado a ningún sistema operativo en especial, entonces sí hay que considerar para qué plataformas queremos crear la aplicación o si queremos integrar a las dos (Android, iOS) en el proyecto, teniendo en cuenta que cada uno de los sistemas operativos tiene su propio lenguaje de programación. Esto significa que hay que desarrollar y mantener la aplicación para cada uno de los dos sistemas por separado, aunque si la aplicación despierta un gran interés, el incremento de los gastos y del trabajo puede merecer la pena. Es importante recordar que Android y iOS ocupan el mercado español de dispositivos móviles casi en su totalidad (Android a la cabeza con un gran margen de ventaja), siendo el porcentaje de otras plataformas como Windows 10 Mobile o BlackBerry 10 OS extremadamente bajo. El desarrollo de aplicaciones para estos dos últimos sistemas no sería, entonces, muy rentable, exceptuando unos pocos casos.

Delimita el número de prestaciones

Durante la programación, muchos desarrolladores siguen el principio de reducir la paleta de funciones a lo esencial porque una app, en la mayoría de los casos, tiene un determinado objetivo o al menos se concentra en una función principal. No obstante, en esta fase de preparación es posible fijar todas las prestaciones que parecen más importantes, aunque a partir de una cierta cifra hay que diferenciar entre aquellas imprescindibles y aquellas no tan necesarias. Lo más probable es que la aplicación final no cuente con todas ellas.

La mayor parte de los usuarios espera que la utilización de una aplicación sea intuitiva y fácil de entender, por lo que haces bien si en la planificación ya cuidas de que el diseño de la aplicación en sí y de sus prestaciones no sea demasiado complejo. Realizar bocetos de cada pantalla del menú, donde además se puede incluir el menú de navegación y su visualización en diferentes tamaños de pantalla, es una buena forma de hacer la idea palpable. De esta forma todos los implicados en el desarrollo de tu app obtienen una impresión más veraz de su aspecto final y de su funcionamiento.

Asegura la financiación y define el modelo de ingresos

La financiación sostiene o hace caer a un proyecto. Cuando los propios medios no permiten afrontar los gastos implicados en el desarrollo y el mantenimiento de la aplicación, hay que pensar en contactar con inversores, patrocinadores y otras fuentes de ingresos. Para ello se requiere una planificación de costes. No obstante, también en el caso de disponer de financiación propia, conviene planificar el presupuesto lo más exactamente posible. Hay que considerar que, en el caso de la mayoría de aplicaciones nativas, además de gastos de desarrollo, también se han de considerar los de mantenimiento.

Otro aspecto a considerar en este punto es la definición del modelo de negocio de la aplicación, es decir, de qué forma y en qué medida se obtienen beneficios con ella. Una aplicación para una tienda online no necesita explicación en este sentido, pero si por el contrario, se proyecta una aplicación al margen del eCommerce o de la comercialización del negocio principal de una compañía, entonces se puede escoger una de estas tres variantes:

  • Pago por descarga: en este caso los usuarios pagan un precio fijo por la descarga de una aplicación. Sin embargo, a los usuarios les cuesta, en general, pagar por descargar una aplicación, cuando la mayoría, en el caso de Android, son gratuitas. Los usuarios de Apple son considerados una clientela más predispuesta a desembolsar, pero, aun cuando tu audiencia esté dispuesta a pagar, no hay que subestimar la alta competencia en el mercado de las aplicaciones. El éxito de una aplicación de pago no viene solo determinada por el contenido, sino también por su buena reputación y su grado de popularidad. Para dar la oportunidad a los usuarios de familiarizarse con los contenidos de la app se puede optar por ofrecerla gratuita al principio –en su denominada versión “lite”. Una vez convencidos de su utilidad, tras un cierto plazo de tiempo, los usuarios pueden pagar por seguir usándola o por la instalación de la versión completa.
  • In-app purchase (compras dentro de la aplicación): este modelo de monetización permite la compra de funcionalidades adicionales o, por ejemplo, el bloqueo de publicidad dentro la aplicación. Las denominadas Freemium apps también se basan en este modelo, ofreciendo la aplicación en su forma básica de forma gratuita, pero no las ampliaciones o la versión completa. En este modelo es fundamental diseñar una política equilibrada de precios: precios muy altos o que crecen de forma continua o desproporcional espantan más que atraen a los usuarios.
  • In-app advertisement (anuncios en la aplicación): este es precisamente el método más popular entre sistemas Android, pues también es posible obtener ingresos con banners publicitarios y otros formatos de marketing móvil. Aquí es importante no dañar la experiencia del usuario con la publicidad, porque abusar de ella o hacerla molesta a ojos del usuario puede perjudicar la percepción de la aplicación. En este modelo de negocio también se incluye el marketing de afiliados, un programa de cooperación por el cual se inserta en la aplicación el enlace a la página web de un comerciante. Cuando algún usuario sigue el enlace y adquiere allí algún producto o servicio, el gestor de la aplicación recibe una comisión.

Sin embargo, a la hora de crear una app la monetización no siempre es el objetivo principal. Cuando los ingresos capitales del proveedor proceden de otros servicios, las aplicaciones pueden servir como mero instrumento de marketing o para mejorar el renombre del fabricante. Muchas compañías y organizaciones utilizan las aplicaciones como forma de comercializar su negocio central. Para ello, las tiendas online utilizan las shopping apps, pero los diarios digitales que elaboran artículos para su propia aplicación representan otro ejemplo de ello. Empresas como Google, Facebook, Dropbox o Spotify también utilizan las aplicaciones para monetizar servicios que ya existían antes de su introducción y disponen de su propio modelo de negocio.

No olvides el marco legal

La creación y comercialización de una aplicación móvil también está ligada a directivas. Tan pronto como una app recoge, procesa y almacena datos personales de los usuarios, el fabricante está obligado, ya antes de la recopilación de los datos en sí, a informar de forma exhaustiva e inteligible (Declaración sobre protección de datos) sobre los datos que se van a almacenar y con qué finalidad.

Como afirma la Agencia Española de Protección de Datos, el marco legal aplicable a cualquier app dirigida a los usuarios europeos es la Directiva de Protección de Datos 95/46, en combinación con la Directiva 2002/58/CE de Privacidad y Comunicaciones Electrónicas. En particular subraya la necesidad de obtener el consentimiento informado y previo del usuario. Este marco normativo es aplicable con independencia de dónde esté ubicado el desarrollador de la aplicación o la tienda que la comercialice, debido a que estos programas recurren a medios ubicados en la Unión Europea, como son los propios terminales de los usuarios”.

Las aplicaciones móviles también han de estar preparadas en cuanto a la protección de la privacidad de los datos. En primer lugar, tienen el deber de informar a los usuarios, ya en el momento de la descarga, de los datos que se van a recopilar y con qué finalidad, así como de las aplicaciones nativas del dispositivo a las cuales la nueva aplicación tendrá acceso, dando la opción de poder denegar la instalación. En segundo lugar, la finalidad del tratamiento de los datos ha de ser explicada de forma sencilla y comprensible, así como también se ha de evitar recopilar datos innecesarios para el funcionamiento de la aplicación o para un uso distinto del descrito. El fabricante, en tercer lugar, ha de informar a los abonados de la aplicación sobre su identidad, sobre el lugar donde se almacenarán los datos y cómo se hará y sobre las formas en que pueden ejercer sus derechos denominados ARCO (acceso, rectificación, cancelación y oposición).

Existen diversas fuentes fiables en Internet donde puedes informarte detalladamente. En la página de la consultoría experta en protección de datos Atico34, por ejemplo, encuentras una explicación detallada de las obligaciones legales de los desarrolladores de aplicaciones móviles. Si lo prefieres, puedes acceder a las normativas de la LOPD en su propia página web o en la de la base de datos EUR-Lex, donde se ofrece acceso gratuito a la Directiva de Protección de Datos 95/46 y a la Directiva 2002/58/CE de Privacidad y Comunicaciones Electrónicas.

Por último, aunque suene obvio, hay que tener en cuenta de no incumplir el derecho de marcas a la hora de dar un nombre a la aplicación, así como otros factores jurídicos en el caso de gestionar una tienda online. Un experto puede informarte en profundidad al respecto.

Crear tu propia app: no subestimes las ventajas de la planificación

Crear una aplicación puede convertirse en una tarea exigente, porque, junto a aspectos internos de contenido, también hay que ocuparse de aspectos económicos o legales de central importancia. Sin embargo, una planificación exhaustiva merece el tiempo que se le dedica, porque de otra manera se correría el riesgo de olvidar puntos importantes que podrían dar lugar a un concepto mal elaborado o imposible de realizar.

Una vez finalizada esta fase preparatoria y asegurada la financiación del proyecto, solo queda pasar a la práctica. Dar este paso suele imponer respeto, especialmente cuando se es inexperto en el sector, cuando, en realidad, no hay nada que temer, porque más importante que el know how necesario para su programación, que tanto pueden aportar colaboradores como una agencia especializada, es tener una buena idea.

En la segunda parte de nuestra serie ilustramos cómo crear una app y presentamos diferentes posibilidades a la hora de pasar a la realización del proyecto. Entre otras cosas, entenderás en qué casos conviene utilizar plantillas y en qué otros deberías dejar la programación en manos expertas.