¿Cuál es la parte más lenta de construir una aplicación móvil?

UI Personalización y Pulimentos.

Las necesidades de cada aplicación serán diferentes, pero creo que es justo decir que el trabajo de la interfaz de usuario tomará más tiempo para la mayoría de las aplicaciones porque finalmente debe ser probado por humanos.

El código de infraestructura, como cómo extraemos datos de un servicio web, es fácilmente comprobable con la automatización para la corrección y el rendimiento. También hay una gran cantidad de código existente diseñado para ayudar a administrar dichos modelos, que es un punto de partida sólido para la mayoría del desarrollo.

El código de vista, por otro lado, debe ser revisado por humanos para su corrección (“¿esto se ve exactamente como nuestro diseño?”) Y para evaluar qué tan bien realmente “funciona”. Cuando se trata de eso, la efectividad de un diseño solo se puede determinar con certeza una vez que está en sus manos. Incluso si codifica y prueba sus vistas, aún podría ser la elección incorrecta para su producto. Por lo menos, partes del diseño, sin duda, serán modificadas después de obtener un uso práctico.

El código de vista también se personalizará en gran medida para cada proyecto. Si su aplicación utiliza una gran cantidad de elementos de la interfaz de usuario, entonces probablemente no necesitará mucho código nuevo; Si está haciendo un trabajo más original, entonces un mayor porcentaje de su código y sobrecarga mental será sobre la capa de presentación.

Dado que el diseño visual y de interacción sigue siendo un diferenciador clave entre las aplicaciones móviles, seguirá afectando a más proyectos de esta manera.

Encontré tres partes que requieren más tiempo:

  1. Arquitectura. Tal vez sea solo para aplicaciones con datos complejos y muchas facetas de los datos para mostrar a los usuarios. Buenos ejemplos son los clientes de Facebook y Twitter.
  2. Diseño de interfaz de usuario. Debido a que puede ir tan lejos como desee en el diseño de la interfaz de usuario, incluso las aplicaciones simples pueden tomar mucho tiempo aquí. Si solo se apega a la interfaz de usuario estándar, no debería tomarle mucho tiempo.
  3. Optimización del rendimiento. Es difícil. Realmente difícil. Si no crees, pregúntale a Facebook.

Esta es una pregunta difícil, y su kilometraje variará mucho según el tipo de aplicación que esté planeando.

Algunas aplicaciones están en el diseño y desarrollo inicial, y luego se pueden dejar relativamente intactas durante años. Otros, especialmente las aplicaciones más complicadas y las aplicaciones conectadas a la tecnología de rápido movimiento (redes sociales, servicios de ubicación, etc.) necesitan atención constante o riesgo de rotura y experiencias de usuario obsoletas.

Y luego está el problema de construir el negocio, en lugar de la aplicación. Como cualquier otro producto, “construirlo y vendrán” no es una gran estrategia para las aplicaciones móviles. En mi experiencia, esto minimiza los costos / tiempo de diseño y desarrollo reales.

Desde la atención al cliente hasta los esfuerzos de marketing, la diferencia entre un poco y una gran cantidad de energía en la construcción de negocios produce retornos mucho mayores que la diferencia entre un poco y mucho esfuerzo al escribir la aplicación real.

Lo siento, no puedo ser más definitivo: hay demasiadas variables en la pregunta abierta. Si elabora un poco sobre el tipo de aplicación, ya sea que sea una tienda individual o tenga un equipo de desarrolladores experimentados, y el modelo de ingresos que está viendo, probablemente pueda ser más útil.

La parte que consume más tiempo es la prueba, teniendo en cuenta que la prueba es parte del ciclo de desarrollo. Con base en la experiencia, más de un tercio del tiempo usualmente pasa a las pruebas, esto incluye pruebas de integración y pruebas de aplicaciones reales.

Sin embargo, diferentes plataformas y enfoques de desarrollo influyen en el tiempo de prueba:

APIs
Cuantas más llamadas a la API y más API diferentes se utilicen, más durarán las pruebas. Las pruebas automatizadas pueden ayudar aquí.

Código nativo
¿Android es el peor, 400 tamaños de pantalla? Demasiadas versiones, modificaciones específicas del proveedor, etc. Por supuesto, no necesita atender a todos, pero sigue siendo complejo.

IOS ahora también tiene un buen grupo de tamaños y resoluciones de pantalla, pero al menos las cosas están mucho más controladas aquí y son más predecibles.

Windows Phone hasta ahora es fácil para garantizar la coherencia entre los teléfonos, pero obviamente no es tan popular.

HTML5
Construya una vez que se ejecute en todas partes … (¿Quién dijo eso?) Si bien esto es cierto, también hay un aumento en el tiempo de prueba debido al requisito de mejorar el rendimiento o el procesamiento en plataformas y dispositivos. Y, por supuesto, el navegador funciona: haz que funcione aquí, rómpelo allí.

Creo que la parte más importante es entender en qué te estás metiendo antes de hacerlo. Esto se aplica a cualquier cosa en la vida que sea compleja … ya sea que esté diseñando un auto nuevo, construyendo un cohete, comprando víveres para su familia … 😉

¡Y haciendo una aplicación móvil!

Entonces, ya sea un proyecto interno o para un cliente, lo primero que hay que entender es qué es exactamente lo que hay que hacer. Por ejemplo, algunas preguntas que debe hacer son:

– ¿Estás construyendo la aplicación desde cero o hay trabajo que ya se ha hecho?
– ¿Para qué sistemas operativos?
– ¿Quién se encargará del diseño, es su equipo / organización u otra persona?

En resumen, hacer buenas preguntas basadas en su experiencia incluso antes de que comience el proyecto es fundamental.

En segundo lugar, muchas personas en la alta gerencia o clientes encuentran el desarrollo de aplicaciones móviles como una especie de magia compleja de hocus-pocus, porque no lo entienden, al igual que no todos pueden saber qué tan bien conoce su abogado la ley, cómo su médico practica medicina y demás. Toman la decisión sobre cómo usar a estas personas en función de su relación con ese experto en particular. Por lo tanto, el tiempo dedicado a desarrollar una buena relación con su gerencia de nivel superior o el cliente es absolutamente crítico.

En tercer lugar, documentar cosas importantes! Es una inversión en tiempo que paga dividendos … No es solo una buena práctica, de acuerdo con el PMI (Project Management Institute), se requiere. Así que dedique el tiempo y realmente valdrá la pena más adelante cuando surjan las inevitables confusiones. Documente el plan de comunicaciones (para grandes proyectos), el alcance del trabajo, la propuesta comercial, incluidos los términos y condiciones específicos, etc. Muchas personas se saltan este paso, o debido a su pobre inglés no pueden llevarlo a cabo. Luego, cuando surgen confusiones, la gente se frustra y, en el peor de los casos, el proyecto de desarrollo de aplicaciones móviles se descarta.

Finalmente, mantener una buena disciplina de comunicación para garantizar que todos estén en la misma página (el punto X significa lo mismo para todos). Esto está intrínsecamente relacionado con los puntos anteriores mencionados anteriormente.

Si hace todo esto, e incluso es moderado o bueno en la programación, estará bien con la ejecución del proyecto porque no tomará algo que no entenderá en primer lugar.

Para resumir:
1. Haga preguntas (según su experiencia con el tipo de aplicación)
2. Construir una buena relación interna y externa al proyecto.
3. Documentar cosas (de nuevo en función de su experiencia)
4. Buena disciplina de comunicación.

Y esa suma total es que la recopilación y difusión de requisitos es la parte más importante y, por lo tanto, dónde se debe dedicar tiempo y esfuerzo.

Lo mismo con otros productos de software de interfaz de usuario realmente. Pero una gran cosa de la que debemos darnos cuenta es que las aplicaciones tienen que luchar por ese espacio en la pantalla de inicio. Las aplicaciones se eliminan muy rápidamente si causan una mala impresión.
Se debe hacer mucho trabajo para explicar el valor de su aplicación realmente rápido y bien, y hacer que alguien se sienta bien al descargar su aplicación. Es decir, no hay primera impresión de faux pas’s. Como la necesidad de registrarse antes de saber qué hace la aplicación, no pedir permisos prematuramente, etc.

En resumen: la incorporación del usuario debe ser perfecta para crear una oportunidad entre los millones de aplicaciones.

Aparte de eso: la programación eficiente lleva mucho tiempo, lo que hace que un dispositivo relativamente liviano haga mucho trabajo sin dejar que la interfaz sufra con un mal rendimiento.

En un método de desarrollo de aplicaciones Lean startup (o, para el caso, en cualquier enfoque de desarrollo de productos), la parte más lenta es acercar las cosas a la perfección.

Puede obtener la versión 1 en el mercado bastante rápido y luego, en iteraciones posteriores, intenta obtener cosas que “funcionan” cada vez mejor y llevarlas al siguiente nivel.

La aplicación no se siente lo suficientemente suave a veces. Toque este botón no responde de inmediato, está sucediendo algo incorrecto. Intenta encontrar cuellos de botella, optimizar, optimizar más y el proceso continúa.

Descubres que las llamadas de red que estás haciendo no son lo suficientemente eficientes. Usted investiga, compara y prueba algunas optimizaciones de nivel de red y alguna precarga inteligente de datos / recursos de la red para que “funcione rápido”.

La interfaz de usuario está bien. No se ve bien en esta combinación de resolución / tamaño de pantalla específica. No encaja bien con el paquete de sistema operativo personalizado de algunos fabricantes. No hay suficientes personas capaces de encontrar esta opción, ¿qué mejor podemos hacer para que llame un poco más la atención? Usted prueba cosas A / B para validar varias hipótesis.

La forma en que cree que sus usuarios deberían usar la aplicación está, en ocasiones, lejos de cómo la usan actualmente. El mejor uso se encuentra en algún punto intermedio y para llegar allí es en lo que pasa su tiempo.

El equipo de desarrollo de aplicaciones móviles que ha desarrollado aplicaciones gráficas es consciente de que el desarrollo de interfaces de usuario (UI) es una de las partes más lentas del desarrollo, prueba y mantenimiento de aplicaciones. La reutilización también es esencial en la IU.

Si haces una buena arquitectura de software, entonces la arquitectura es la parte que más consume. Si descuida la etapa de arquitectura, su fase de depuración se vuelve muy larga y tediosa, y toma más tiempo en el proyecto. Entonces haz una buena arquitectura.

La codificación es la parte que consume más tiempo. ¡Pero hey! Hay una solución fácil: ¡tercerización! – Es la forma más rápida y barata. Si elige sabiamente, ahorrará mucho dinero y obtendrá una gran calidad. Reino sin título: casa de software iOS y Android. Estamos en el mercado desde 2009. Hemos desarrollado docenas de aplicaciones y algunas de ellas fueron presentadas por la tienda de aplicaciones. Echa un vistazo a nuestro sitio web.

Bueno, la parte que consume más tiempo tiene que ser el proceso de prueba. Estoy de acuerdo con Drew Thach en que la creatividad lleva tiempo, pero la otra parte importante que toma suficiente tiempo de desarrollo es el proceso de prueba donde se verifica la precisión de cada funcionalidad. Si se encuentra algo inexacto, se lo devuelve para correcciones que pueden requerir desarrollos adicionales. Por otra parte, vuelve para la última prueba. El producto final que llega a la mano del usuario llega después de una prueba exhaustiva. Todo el proceso de desarrollo en breve se ha explicado aquí: – http://www.themobapp.com/mobile-

Integración de backend! Es la tarea más compleja y lenta en el desarrollo de aplicaciones móviles. La creación de aplicaciones móviles con MBaaS ahorra mucho tiempo. Este documento técnico ayudará a todos aquellos que participan en el desarrollo de aplicaciones móviles a nivel empresarial.

Desarrollar cosas que parezcan “más simples” e intuitivas desde el punto de vista del usuario

La codificación es la parte que consume más tiempo. ¡Pero hey! Hay una solución fácil: ¡tercerización! – Es la forma más rápida y barata. Si elige sabiamente, ahorrará mucho dinero mientras obtendrá una gran calidad. Hemos desarrollado docenas de aplicaciones y algunas de ellas fueron presentadas por la tienda de aplicaciones.

Creo que UI / UX es la parte que requiere más tiempo, luego de la investigación de mercado de requisitos y la depuración en tercer lugar.

Califico los puntos de mención a continuación como la parte más lenta de construir una aplicación móvil:

  • Programación eficiente
  • Creación de una aplicación perfecta en una tienda de aplicaciones (como Google Play o la App Store de Apple).

Tiene que ser el desarrollo del concepto … el pensamiento creativo lleva tiempo

UI y prueba de errores

Ajustes y pruebas de IU en dispositivos con múltiples factores de forma, especialmente para plataformas fragmentadas de hardware como Android y BlackBerry (múltiples dispositivos y sistemas operativos)

Esperemos pensar profundamente y validar la experiencia del usuario y la propuesta de valor.

More Interesting

¿Hay alguna empresa o personas que desarrollen aplicaciones gratuitas para alguien?

¿Cuál es la mejor manera de usar MaskChat?

¿Qué es un buen libro para leer para comprender los conceptos básicos del desarrollo de aplicaciones móviles y poder hablar con éxito con los desarrolladores con los que puedo trabajar?

¿Puedo leer algunos mensajes de aplicación sin su móvil?

¿Cuál es el mejor bootcamp / curso de desarrollo de aplicaciones iOS en Londres?

¿Qué tan complejo es construir una aplicación social para iPhone como Instagram? ¿Necesitaré mis propios servidores?

Me gustaría hacer una aplicación tan popular como Snapchat, Uber o algo así. Tengo una idea para una aplicación. ¿Qué piensa usted al respecto? ¿Crees que tiene el potencial de ser tan popular?

¿Cuál es su proceso para planificar y diseñar su aplicación antes de escribir una sola línea de código?

¿Cuáles son las compañías que son buenas para el desarrollo de aplicaciones de Android en Mumbai?

Entre Python y Javascript, ¿qué idioma sería mejor para desarrollar aplicaciones móviles de alto rendimiento?

¿Cuál es tu historia de desarrollar tu primera aplicación?

¿Cómo podemos construir una aplicación móvil exitosa?

¿Qué necesito aprender para programar una aplicación como Tinder y Snapchat?

¿La App Store se llenará tanto que no tendrás ninguna posibilidad de tener éxito?

¿Cuánto cuesta desarrollar una aplicación de citas como Clover con las mismas características?