Desarrollo de Apps – 10 consejos para su éxito.

He trabajado bastantes años desarollando apps web y móvil en varias empresas y como autónomo por mi propia cuenta. Me gustaría compartir mi experiencia en el desarrollo de webs y apps y resumir mi metodología en 10 simples puntos.

Para desarrollar esta idea, vamos a imaginar que tenemos un proyecto en mente, por ejemplo, un Facebook para mascotas – ¡os prometo que hay algunas en el mercado! – y nos iremos haciendo preguntas a medida que avancemos punto por punto.


1 – Antes de comenzar el desarrollo, analiza tu mercado, tu público y tu competencia.


Algunos clientes me comentan ideas sin tener muy en cuenta el mercado ni las necesidades finales del usuario. Una idea no basta para levantar un proyecto empresarial. A menudo ya hay alguien en el mercado que se le ha ocurrido algo parecido. Si tienes éxito, entonces alguien podrá salir a hacerte la competencia.


Es importante antes de empezar, tener claros los objetivos de tu app. ¿A qué problema le está haciendo frente? ¿Cómo quieres darla a conocer? ¿Quienes van a ser tus usuarios finales de la aplicación? En nuestro caso de facebook, desarrollarlo para mascotas podría ser una mala idea. He visto perros muy inteligentes pero ninguno de ellos se apaña muy bien con el móvil . No obstante, orientarla hacia un público que quisiera unirse a una red social orientada al mundo de las mascotas (con noticias, compra venta de accesorios, quedadas y encuentros para salir a pasear al perro, o guía de hoteles y lugares a los que viajar si viajas acompañado).

¿A que la idea del Facebook para perros ya no parece tan descabellada? Cada proyecto tiene un usuario final , y si lo que pretendes es algún dia monetizar tu app o volverla viral, tienes que dedicarla exclusivamente a tu público.


Investiga el mercado y averigua si hay gente desarrollando ya tu idea. Investiga su trabajo. Tu competencia es tu mejor forma de comprobar como funciona el mercado (si la hay). Cuando no puedes adelantarte a ella, lo mejor es aprender de sus puntos fuertes.


2. Si no lo estás, Infórmate bien de tecnologías.


Nadie nace aprendido. Si vas a meterte en el mundillo del desarrollo, es importante informarse un poco de como funciona. Conceptos como servidor web, back-end, api, front-end, nativo o multiplataforma deberían de empezar a sonarte, y si no sabes de que estoy hablando, búscalo en google (¡al acabar de leer este artículo, claro!).


El mundo de las tecnologías avanza a pasos agigantados. Vivimos en un mundo en el que cada cierto tiempo alguna empresa en algún lugar de la tierra lanza algo que revoluciona completamente el mercado y cambia las reglas. (Fijaos en el auge de las criptomonedas, de eso ya hablaré otro día). Si quieres que tu proyecto crezca, tendrás que ponerte un poco al día.


Una vez tuve a un cliente que empezó con una web y quedé a tomar un café con el. La tecnología NFC acababa de salir hacía relativamente poco y cuando me vió pagar acercando la tarjeta me preguntó acerca de aquella brujería. Al cabo de unos meses desarrollé una funcionalidad NFC en su proyecto para captar nuevos usuarios.


¿Os imagináis si, a través de nuestra plataforma para mascotas, pudiésemos vender un colgante decorativo con un adhesivo NFC que al acercar el móvil nos llevase a un apartado con información sobre si el perro está perdido o a quien llamar? ¿ Que tal información sobre que darle de comer?


Nunca se sabe de donde puede salir la siguiente innovación. Una de las formas más punteras de innovación es machine learning y reconocimiento de imágenes. Esta tecnología está permitiendo a empresas como Instagram puedan reconocer lo que hay en las fotos de sus usuarios y ofrecerles anuncios de productos similares para que compren.


3. Si no sabes o no tienes tiempo, asesórate.


Desarrollar una app móvil o web y lanzarla al mercado no es tarea fácil. He visto emprendedores que han querido desarrollar por si mismos una app teniendo ya un negocio o un trabajo, pensando que el desarrollo de esa app les permitiría tener más tiempo libre en un futuro.


Una app requiere de mucho tiempo y de un buen plan de negocio a sus espaldas. Si no tienes un equipo de desarrollo involucrado en tu proyecto, y ocupas tu tiempo con otro trabajo / estudios / familia… vas a necesitar a un consultor de confianza que te asesore y te guíe durante el desarrollo. No basta un equipo de desarrollo (los cuales suelen estar involucrados en varios proyectos de varios clientes). Tiene que ser alguien que entienda de tecnología y se involucre en tu proyecto. Que entienda las necesidades de tus usuarios finales y que te ayude en la toma de decisiones críticas durante todo su transcurso de vida.


4. Especifica y define bien tu producto. La fase inicial de definición es la más importante.


Si hay algo que puedo decir que he aprendido a base de experiencia, es la importancia que tiene definir bien tu producto. “Un facebook para mascotas” no funciona. Tienes que tener bien claras las cosas que se deben de poder hacer a través de tu app. ¿Cómo deben poder conectarse los usuarios? ¿Cómo deberá integrarse con redes sociales ya existentes? ¿Deberá poder funcionar offline?


Cualquier proyecto debe de llevar asociada a ella una especificación de requisitos que pueda transmitirle al equipo de desarrollo exactamente como debe de ser desarrollada.
En nuestro caso imaginario. Podríamos empezar definiendo que nos gustaría que los usuarios pudiesen registrarse a través de facebook o instagram y Deberían de ser capaces de poder tener varios perfiles para sus diversas mascotas. También cada mascota debería de tener una foto principal de perfil y una lista en el que se mostraran las fotos como en Instagram.

Un documento de word en la que describes como quieres que funcione tu aplicación es fundamental para evitar luego malentendidos en el futuro – me explico. Cuando contactas con un equipo de desarrollo, le planteas tu proyecto y ellos deben estimar las horas que van a tardar en desarrollar tu app. Ellos, al igual que tu, también quieren hacer negocio (nadie trabaja gratis), así que usarán esa estima para decirte cuanto dinero va a costar desarrollarlo.


Si en el documento, tu proyecto está bien especificado, la estima estará mejor hecha. De verdad que no puedo enfatizar con suficientes palabras lo importantísimo que es esta etapa. Los mejores proyectos que he visto siempre han llevado una buena especificación de desarrollo a su lado.


Me apena decirlo, pero en este mundo los malentendidos están a la orden del día. He visto a algún cliente salir de una reunión enfurecido porque el equipo de desarrollo le diseñó un sistema de mensajes en lugar de un chat en directo. Aunque pueda parecer lo mismo, para un equipo de desarrollo no lo es. Un buen equipo de desarrollo permite ser algo laxo con algunas de las especificaciones, pero un cliente que exige más modificaciones, más cambios y más funcionalidades que el desarrollador no tenía previsto acaba quemando al equipo.

Invision es una herramienta genial para trabajar con equipos de desarrollo y definir la linea gráfica de tu app.


La mejor forma de definir un proyecto es de manera funcional, siempre definiendo – de cara al usuario final – cuales van a ser las acciones que va a poder realizar a través de tu aplicación. Si encima lo acompañas de un diseño gráfico, reducirás el número de malentendidos al mínimo. Puede costar una pequeña inversión de horas o dinero diseñando un prototipo, pero puedes creerme si te digo que serán las mejores invertidas en tu app.


Muy importante, suelo aconsejar comenzar con un Mínimum Viable Product, o MVP. Un MVP viene a ser la lista de cosas que tu app tiene que poder hacer para que la gente quiera descargar la aplicación. Es una forma de empezar tu proyecto sin arriesgar todo tu presupuesto en el desarrollo. Empieza poco a poco. Presta atención a como se comportan tus usuarios y sigue desarrollando tu app con esa información en mente.


Asegúrate también de que el equipo de desarrollo utiliza algún Framework para programar tu app. El código será más mantenible y desarrollar actualizaciones y nuevas funcionalidades será más fácil. Además de que si tienes que cambiar de equipo de desarrollo (por que quieres contratar a tu propio equipo de programación o porque no te ha gustado como han trabajado contigo) te será mucho más fácil y rápido.


5. Consulta a varios equipos de desarrollo. ¡Que no te vendan la moto!


Hay muchísimas empresas en el sector que se dedican a esto. Cada una tiene su propio estilo con sus puntos débiles y sus puntos fuertes. Investiga el mercado. Basta preguntarle a san Google y vas a toparte con un montón de equipos dispuestos a llevarte el proyecto.

Pregúntales, infórmate acerca de las tecnologías que van a utilizar. Observa de que manera participan contigo en el brainstorming y toma idea de sus sugerencias. Ellos llevan muchas más apps desarrolladas que tu y sabrán de que manera hacer frente.


No te fies siempre de google. La mayoría de empresas tratarán de engatusarte enseñándote sus proyectos estrella y diciendo lo maravillosa que es su metodología agile para tu proyecto. Es normal, pero no te dejes engañar. Un buen portafolio es fundamental para comprender de que manera trabajan, pero no siempre es garantía de éxito. Básate más en como te traten, de que manera te ayudan a definir tu proyecto y su disponibilidad para involucrarse en el.


Hasta los mejores equipos pueden verse saturados por una cantidad abrumadora de trabajo, y a veces esto les puede hacer fallar en plazos, retrasarse etc. Un desarrollador que no pueda prestar la suficiente atención a tu proyecto puede no ser la mejor alternativa, por muy bueno que sea tu proyecto. No te preocupes, hay muchos.


Por precios, la media de coste de desarrollo (de calidad) por hora en España suele oscilar entre los 30€ y los 40€, pero puede ser más alta o más baja según si el equipo está en una ciudad como Barcelona o en un pueblo cerca de Valladolid o Murcia donde el coste de vida es más barato. Ten en cuenta esto a la hora de escoger a un equipo si vives en una gran ciudad. Piensa que todo el desarrollo se puede hacer a través de internet y hay un montón de plataformas digitales para gestionar este tipo de proyectos de forma remota. Yo he gestionado decenas de proyectos de forma descentralizada y remota, y muchos de los clientes con los que he trabajado han podido ahorrarse un buen pellizco en el desarrollo final de su proyecto con resultados de la misma cálidad o superior. Y si te aporta más confianza conocer al equipo en persona, viajar dentro de España no es tan caro, y si tenemos en cuenta que la diferencia de precio puede ser de hasta 10.000 € , igual te sale a cuenta.


6. Escucha a tu asesor técnico de confianza.


Durante el transcurso del desarrollo pueden salir barreras tanto de negocio como tecnológicas ( y esto ocurre sin importar lo bien que hayamos planteado el proyecto) . Todos los proyectos (serios) en los que he trabajado han tenido sus dificultades y problemas. Saber analizar cada uno de los problemas y tomar la decisión acertada es vital para la buena salud del proyecto. A menudo, algunos clientes acaban sin tener el tiempo suficiente para pensar de que manera sortear estos problemas. Tener una persona con conocimientos técnicos gestionando tu equipo y solventando tus dudas es crucial para el éxito de tu negocio.


7. Presta atención al desarrollo de tu proyecto. Aprende de tu equipo.


Presta atención a de que manera se lleva a cabo el desarrollo del proyecto. Aprende de como los desarrolladores hablan contigo y de que manera interactúas con ellos. Aprende de las herramientas que ellos utilizan para realizar un seguimiento de las tareas. A estas alturas, alguna de las palabras como Trello, Asana, Jira, Bitbucket, Invision…. debería sonarte. Eso de “yo funciono con emails y excel” ya no te va a funcionar si quieres que tu proyecto tenga éxito. ¿Crees que toda una industria de desarrollo utiliza esas herramientas para presumir? No puedo expresar cuanto estas herramientas agilizan todo el desarrollo. La mejor forma de evitar retrasos inesperados es involucrándose, y la mejor forma de involucrarse es participando con el equipo de desarrollo a través de sus plataformas.


A menudo habrá más de 2 personas implicadas en tu proyecto. Si a estas alturas solo utilizas correos electrónicos, parte de la información acabará perdiéndose o llegando tarde a la persona que toca, y esto causa retrasos en los proyectos más a menudo de lo que te imaginas.
Si todavía no la has utilizado nunca, échale un vistazo a Trello. Es una herramienta gratuita y muy útil para la gestión de tareas y proyectos de este tipo, y si no has utilizado nunca una herramienta como esta, te servirá como un buen aprendizaje para otras similares pero más complejas.


8. Cuida la relación con tu equipo de desarrollo.


Tu equipo de desarrollo es quien te realiza tu app. Como norma general, cuanto mejor relación tengas con ellos, mejor estará desarrollada tu app conforme a tus aspiraciones.

Se razonable, en este tipo de proyectos se suelen producir retrasos. A veces el equipo se enfrasca en un problema que surge durante el desarrollo, otras veces tienen que atender fallos más críticos en otros proyectos que no son el tuyo. Ellos también son una empresa y deben gestionar todo su trabajo para atender correctamente a todos sus clientes (los mejores en hacer esto suelen ofrecen precios más competitivos). Un retraso de una semana en un proyecto de tres meses no te va a cambiar la vida. Negocia y pacta. Si son profesionales y el error de su parte es grave, te ofrecerán algún tipo de compensación o descuento sobre el precio final.


Cambiar de equipo de desarrollo suele ser como el botón rojo. Es una decisión muy drástica que llevará consigo una pérdida de tiempo y de dinero. Solo la recomiendo cuando el equipo de desarrollo ha mostrado una grave falta de profesionalidad de manera reiterada y una dejadez en las comunicaciones contigo. ¿Qué puede ir mal?


Manten un canal de comunicación abierto con el equipo de desarrollo que le permita realizar un seguimiento de todas las comunicaciones de manera sencilla y cuando se pongan con lo tuyo, trata de prestar atención a sus peticiones. Más del 50% de retrasos son causados por el propio cliente que no logra mantener un flujo de comunicación acertado con el equipo de desarollo.


Si tienes a un equipo interno de personas trabajando con tu equipo de desarrollo, trata de ofrecerles un método de compartir toda la información acerca del proyecto, y asegúrate de que saben quien es el responsable de que parte del desarrollo.


9. Crea las cuentas de los servicios externos de tu app al principio del proyecto. ( Apple Store, Play Store, cuenta de Paypal, información bancaria…)


Otra de las cosas que veo que causan algunos retrasos es que los clientes se esperan hasta el final para crear cuentas para estas cosas. Si vas a encargarte tu del servidor, asegurate de que el equipo de desarrollo tiene acceso al mismo. Crea las cuentas de Apple Developer y Android Developer al comenzar el desarrollo. Es muy importante que estas cuentas sean de tu propiedad. Una vez creadas, comparte toda la información necesaria con el equipo de desarrollo desde el minuto uno.


10. Testea, reitera, testea.


No he conocido a nadie que haya tenido una idea para desarrollar una app y que durante el transcurso del desarrollo la haya cambiado completamente. Testea, comprueba, asegúrate de que compruebas cada iteración con métricas y datos. No te cases con nada.

Podría contar el caso de un cliente que esperaba que le desarrollasen una web como Linked In y empezar a funcionar en 4 meses. El desarrollo de la app solo ocupa el 25% del trabajo en un negocio. Se realista, las empresas punteras del sector llevan años de experiencia y millones de dólares invertidos en sus productos, con unas estrategias muy cuidadas para exprimir al máximo su volumen de negocio.


Ten paciencia. Si hay algo que he podido aprender es que el buen software y las buenas ideas , apoyadas por un buen trabajo detrás, crecen siempre.

Para finalizar este artículo , me voy a tomar la libertad de pensar que si has leido hasta aqui es por que tienes alguna idea en mente. Si hay algunas cosas que no has entendido, o te interesa conocer más sobre este proceso de desarrollo, no dudes en preguntarnos! en Hamro te atendemos sin compromiso. Pregúntanos aquí sin compromiso y reserva ya tu consulta gratuita.


Os dejo una charla muy interesante del maestro Luis Von Ahn, sobre como utilizó google el esfuerzo de millones de humanos para digitalizar libros sin que ellos se diesen apenas cuenta.

Be the first to comment

Lo más popular entre los lectores

Email *
Suscribirme

¿De qué va esto?

Lo más reciente

Las categorías

Te puede interesar...