Planificación de aplicaciones

Introducción

Si tienes una idea sobre una aplicación web, antes de desarrollarla debes planificar cuidadosamente los pasos a seguir. Esto es increíblemente obvio, pero es un punto que no puede ser omitido,  si vas a crear una nueva aplicación o la reconstrucción de una aplicación existente, éste artículo cubre los conceptos principales a tener en cuenta al planificar una aplicación y la preparación para la implementación.
 
Nota: Tenga en cuenta que se trata de algo simple, diseñado para ayudar a la gente a empezar; si usted es un desarrollador con experiencia empresarial, entonces probablemente trabaje correcta y rápidamente y las prácticas que emplee ayudaran a la diversidad de aplicaciones Web, lo cual es excelente.
 

Una Declaracion de Intenciones

Para empezar, usted debe anotar: ¿A quién está dirigida la aplicación?, ¿Cuál es su función? y ¿Cuál es el público objetivo de la aplicación? de la forma más precisa posible, y debe pensar en el contexto/situación en la que el público utilizara la aplicación. Para mi sencilla aplicación: Location Finder anoté dos listas, de la siguiente manera:

Funcionalidad:

  • Obtener la ubicación de un dispositivo con la mayor precisión posible.
  • Ingresar la ubicación en un mapa de Google.

Grupo de usuarios:

  • Desarrolladores que quieran aprender acerca de aplicaciones Web abiertas y su desarrollo, para ser usada probablemente en una oficina o en un tren.
  • Cualquier persona que quiera saber cómo funciona o para usarla al aire libre/fuera de casa.

Usted debe hacer la aplicación lo más sencilla posible; centrarse en conseguir que haga una cosa o un par de cosas, estrechamente relacionadas. Si usted tiene muchas ideas que desea alcanzar, es posible que desee dividirlas en diferentes aplicaciones. Si su aplicación requiere de experiencias diferentes para cada plataforma, es probable que necesite tener listas separadas de aplicaciones para escritorio y móviles (o incluso Tablet o TV).

A continuación, intenta escribir un resumen del uso de la aplicación, que atraerá a las personas a descargarlo y probarlo. Si usted puede resumirlo en una frase, entonces ¡su idea es probablemente una buena opción para una aplicación! Para "Location Finder", escribí:

Location Finder utiliza la geolocalización para saber dónde te encuentras, y muestra un mapa de los alrededores, haciendo uso de los mapas de Google.

Claro que para una aplicación solamente destinada a los usuarios finales sería así:

Location finder Localiza tu ubicación y muestra lo que hay alrededor.

Ya que esta aplicación está dirigida principalmente a personas en proceso a ser desarrolladores, decidí que ésta información sería de utilidad.

Primer dibujo de la aplicación

Una vez que haya decidido sobre la intención y el objetivo del público al usar su aplicación, siempre es una buena idea empezar con papel o bocetos, intente dibujar lo que la aplicación va a mostrar y vea como el usuario usará su aplicación. Usted probablemente querrá hacer un conjunto separado de dibujos para escritorio, móvil, Tablet, TV, etc, si su lista de funcionalidades así lo requieren.

Siempre incluya notas sobre lo que se necesita sean: gráficos, funciones, etc, en cada etapa, ya que al llegar a las etapas de diseño y desarrollo, será necesario incluirlas y así será menos propenso al olvido de interesantes funcionalidades. Para "Location Finder", hice solo un dibujo por lo sencillo de la aplicación:

Drawing of an app window, which includes a title bar containing the title Location Finder, and an install button, plus a map covering the res tof the windowPara una aplicación compleja dibuje las diferentes áreas de la aplicación, intente representar las diferentes áreas de trabajo, también intenté pensar en lo que busca el usuario con su aplicación.

¿Puede cualquier programa convertir una página en una aplicación Web abierta?

Toda pagina o documento se puede convertir en una aplicación Web abierta, pero en algunos casos tales como procesadores de texto, o complicados sistemas de ventas en línea, no se puede convertir facilmente, para estos casos es necesario hacer una versión diferente para móviles, lo mejor es hacer algo parecido a lo que hizo el servicio de ventas en línea eBay, como podemos ver en su página web de escritorio contiene complicados sistemas que serian un verdadero caos en un móvil, lo que hizo eBay es dividir toda la información y hacer que sea lo más fácil de ver, logró hacer que deslizando hacia abajo la pantalla se vea el resto de la información, además eBay puso lo más relevante arriba y las funcionalidades menos utilizadas abajo (o más escondidas) e intentó hacer las mínimas interacciones con el teclado.

screenshot of the ebay desktop site containing lots of adverts and controls                     screenshot of the ebay mobile site, with a much simpler interface than the desktop version

Google Docs es otro interesante ejemplo, en su versión de escritorio goza de funcionalidades que en un móvil serían un verdadero caos, lo que hizo fue dejar sólo el vizualizador de texto, en una interfaz simple, bonita y amigable.

The google docs desktop site, which looks like a standard word processor                     The google docs mobile site, which is more of a document reader than a word processor

En esta etapa ya debes pensar en las diferentes versiones de tu aplicación, para móviles, tablets, y escritorio, que incluiras y que no. En la mayoría de las situaciones sólo necesitarás fácilmente convertir tu web, o una web en una aplicación, en otras situaciones tendrás que diseñar un entorno totalmente nuevo para móviles, o tablets y a veces sera necesario crear una aplicación especialmente para su uso en una determinada plataforma.

Nota: Si vas a hacer un entorno totalmente diferente al clásico, preocupate de dar la opción a los usuarios de cambiar entre el clásico y tu entorno, no creas que a todos los usuarios les gustara lo que tú hagas.

Piensa sobre las tecnologias que usaras

Muchas personas creen que llenar su aplicación de funcionalidades la hace cada vez mejor, y probablemente sea así, pero no olvides que el diseño y separar los contenidos, es muy importante, para que tu aplicación llegue a ser popular, si integraras tecnologias de última generación, preocúpate de que para el usuario sea fácil usar la aplicación.

Hablamos con mucho mas detalle acerca de esto en la sección Desarrollando aplicaciones Web, pero en general lo mas importante es la funcionalidad, el diseño, y los requisitos de la aplicación, además de integrar nuevas y alucinantes tecnologias. Ejemplos de preguntas que te ayudaran:

  • ¿Es necesario el almacenamiento offline? si tu aplicación necesita conectarse a internet frecuentemente, para guardar datos, lo mas probable es que necesites una conexión cliente-servidor-base de datos. Si tu aplicación necesita guardar los datos en el dispositivo, lo mejor sería que se instale en el sistema. Si necesitaras que la información esté en el móvil y en la red, tú necesitarás un mecanismo especial cliente-servicio de almacenamiento en línea, tales como IndexedDB o localStorage. (La información proporcionada en estas lineas es básica, se necesitará un grado mayor de conocimiento, para la implementación de su aplicación)
  • ¿Necesitas reproducir o manipular videos, fotos etc? Tú probablemente necesites funciones de HTML5 tales como <canvas>, <video>, o <audio>.
  •  Para obtener información acerca de lo que sucede alrededor del dispositivo necesitaras API's. tales como: API del estado de la bateríaAPI del sensor de proximidad, o API de la orientación del dispositivo.

Plan de pruebas

Quizás esto lo consideraras obvio pero es una de las partes más importantes de un proyecto, pues el plan de pruebas permite la corrección de errores antes de la liberación de la aplicación al público, recuerda probar cada caracteristica de tu aplicación en periodos cortos de tiempo, para así no quedar con muchos errores, tiempo y dinero desperdiciado. Un resumen de el plan de pruebas:

  • Crea una versión básica de tu aplicación y entregasela a tus familiares, amigos, colegas, que ellos te den la primera impresión y te digan si les gusta o no, y si tienen alguna idea para agregar a la aplicación o si hay un error, también preguntales sobre el diseño, si esta bien si le falta algo, si es muy aburrido, o si tiene mucho color, todo esto te servira para solucionar los primero problemas.
  • Comparte tus dibujos, y haz preguntas tales como, ¿le falta algo?, ¿que les gustaría que incluya en mi aplicación?, ¿qué diseño les gusta mas?.
  • Después de esto es una buena idea compartir tu aplicación con personas fuera del equipo de diseño, desconocidos, y que te digan realmente lo que es tu aplicación para ellos, y si la descargarian o no, por qué sí y por qué no.
  • Haz diversas pruebas con tu aplicación, házla funcionar bajo estrés (varias aplicaciones al mismo tiempo) y házla funcionar en diversos dispositivos, puede que sólo en tu dispositivo funcione correctamente, también pruébala en momentos de escasa memoria, y en navegadores antiguos, si quieres hacer una aplicación genial, preocúpate de que funcione en todos los dispositivos.
  • Antes de enviar la aplicación al público en general, prueba todas las funciones nuevamente, corrige todos los errores restantes y termina de solucionar los problemas, aunque después actualices la aplicación a una nueva versión, no puedes asegurarte de que todos la actualizaran.

Conclusión

Esperamos que este articulo allá superado sus expectativas, ya estas listo para empezar a desarrollar una aplicación web, o para empezar cualquier proyecto. Creer en ti, siempre es lo más importante. Ahora un resumen del articulo.

¿Cuál es el proposito de su aplicación?
Crear un listado de tareas y de ideas es una gran forma de comenzar una aplicación, otra buena idea es decir lo que la aplicación hará en una sola frase. Ejemplo: "Mi aplicación será la mejor aplicación en mensajeria"; "Mi aplicación está destinada a todos los que olvidamos las cosas al ir al supermercado"
Céntrate en una sola cosa
Es posible que quieras llenar de funcionalidades tu aplicación, recuerda que las buenas aplicaciones estan hechas para una sola cosa.
¿Qué personas utilizaran tu aplicación? ¿En qué entorno?
Es muy importante dar a las personas lo que desean, por ejemplo si crearas una aplicación para escuchar música de rock, toques negros le daran un excelente sabor a tu aplicación, pero si lo que buscas es hacer una aplicación para la venta en línea lo mejor sera el blanco.
 
Concéntrate en algunas caracteristicas
Al terminar revisa nuevamente el listado de tareas que hiciste en el inicio, sé sincero contigo mismo, ¿hiciste lo que querias o no?, si no es así pero lo que has hecho cumple una función o un servicio, entonces le felicito, con el tiempo intenta integrar nuevas funcionalidades a tu aplicación siempre que tengan que ver con el tema principal, y siempre sin perder el toque de diseño.
Vistas de la aplicación
Piense acerca de cómo se ve su aplicación en un móvil y en un tablet, las aplicaciones más populares con el tiempo sacan una versión de la aplicación para tablet, si tu aplicación alcanza un número elevado de usuarios y de popularidad, es bueno siempre pensar en hacer la app para otra plataforma.
Tecnologia requerida
Haz un listado de lo necesario para que su aplicación funcione correctamente, así lograrás hacer facilmente el listado de requerimientos.
Plan de trabajo
Recuerde que construir un plan de trabajo es muy importante, hágalo y cúmplalo, le aseguramos que al final, ahorrará tiempo y dinero.                                 
Revisado por Enrique V.

Vea también

Etiquetas y colaboradores del documento

 Colaboradores en esta página: ungatoquecomesushi, OscarCou, Daril, Stojan, maedca, teoli, JFabio
 Última actualización por: ungatoquecomesushi,