¿Cuál es el mejor enfoque para arreglar una aplicación de iOS?

Las aplicaciones de prueba de concepto o MVP (producto mínimo viable) siempre cortan esquinas. Supongo que minimizó la cantidad de fondos que ingresó a la aplicación porque solo estaba probando el concepto. Esto está llevando a que la aplicación tenga muchos errores. Por lo general, los prototipos son descartables: se construyen extremadamente rápido para * solo * hacer su lista de requisitos. Esto lo hace más barato y más fácil de definir. También disminuye la cantidad de riesgo que toma, ya que no tiene que financiar un proyecto más grande.

No nos dio mucha información, pero aquí está mi sugerencia.

En mi experiencia, reconstruyes.

  1. La aplicación es probablemente bastante pequeña y no sabes qué libertades se tomó la agencia para crearla.
  2. Su producto podría haber pivotado o tiene nuevos requisitos para la aplicación. Es muy común comenzar con tu aplicación queriendo una cosa, pero ahora ves que podrías mejorarla si cambias tu concepto de manera X. Debido a que su aplicación inicial fue escrita por una agencia como prueba de concepto, es posible que el código no haya sido escrito para facilitar el cambio.
  3. La corrección de errores tan fundamentales (como errores cuando llega a una cierta cantidad de usuarios) podría ser la base de la aplicación. Si es así, entonces el desarrollador tendrá que reescribir gran parte del código para estabilizarlo. Si la tirita es demasiado grande, entonces la cantidad de tiempo que hace es más que reescribirla desde cero y hacerlo correctamente.

En cuanto a la agencia o la empresa, depende de usted. Mayor calidad proviene de la empresa (suponiendo que contratas correctamente) pero lleva más tiempo. La agencia es más cara por adelantado pero más rápida. En cualquier caso, no ha demostrado que tiene suficiente capital o si tiene * sentido * explorar esto. Contratar una agencia o desarrolladores de tiempo completo para una aplicación es un proceso costoso. Necesitas tener lo siguiente:

1) Diseñadores UI / UX.

2) Desarrolladores móviles

3) Desarrollador (es) de backend

4) Gerente (s) de proyecto

Una agencia se encargará de todo eso por usted como parte del costo más alto. Pero para hacer una aplicación completa, puede esperar pagar cientos de horas de trabajo.

Parte de su problema es probable en la pregunta.

“crear una aplicación para probar mi concepto”.

Si el objetivo era probar un punto, lograron lo que pediste. Al hacerlo, adoptaron el enfoque más económico de la arquitectura para lograr lo que estaba buscando (una prueba de concepto). Estos son comunes en la programación, ya que puede hacer que todo cambie rápidamente y a bajo costo antes de invertir grandes sumas de dinero en la construcción de la arquitectura para un sistema robusto.

Como tal, tendrá que reconstruir básicamente, no con la idea de que sea una prueba, sino con la idea de que sea una aplicación robusta y capaz que necesita expandirse a medida que crece la base de usuarios. En términos de desarrollo informático, “una solución escalable”.

Esto costará más que la prueba, ya que necesitará tenerlo diseñado con conceptos orientados al escalado y, dependiendo de lo que sea, esto puede ser más complejo de lo que parece.

La respuesta simple es que desarrollaron su aplicación como usted solicitó. Construye un camino de a a b. El camino era un camino de 1 carril, y en cuanto el tráfico aumenta un poco, tiene un atasco. Ahora necesita expandir ese camino, pero como un camino real, eso significa que necesita ampliar la infraestructura, lo que para un camino real puede significar comprar una propiedad para que pueda construir a ambos lados, o tal vez incluso redirigir el camino a un camino más accesible ubicación. La programación será la misma, quizás en lugar del hardware que utilizó, necesita algo más capaz. También debe inventar o usar nuevas reglas para los letreros que mantienen a los camiones a un lado, o tal, para garantizar que incluso durante las horas de mucho tráfico fluya el tráfico.

Cuanto más complicado sea el camino, más probabilidades tendrá de encontrar puntos de congestión que deben resolverse. Entonces, a medida que crezca, se necesitará una refactorización constante (ajustes del código). Al igual que en las carreteras, los ajustes a lo largo del tiempo comienzan a complicarse, y si desea que el tráfico fluya libremente, tendrá que regresar y reconstruir periódicamente.

No tenemos suficiente información para comenzar a ayudarlo a tomar ese tipo de decisiones.

Su mejor apuesta, en este punto, es retener los servicios de un ingeniero altamente calificado y experimentado en el que confíe para ayudarlo a evaluar sus elecciones.

¡Asegúrate de compensar a esa persona justamente por su tiempo y buena suerte!