Diseño Y Desarrollo De Una APP

El desarrollo de aplicaciones para dispositivos móviles requiere tener en cuenta las limitaciones de estos dispositivos. Los dispositivos móviles funcionan con batería, hay que considerar una gran variedad de tamaños de pantalla, datos específicos de software y hardware como también distintas configuraciones. El desarrollo de aplicaciones móviles requiere el uso de entorno de desarrollo integrados.

Las aplicaciones móviles pueden aprovechar mucho más el contexto en el que se ejecutarán, sobre todo si se comparan con las aplicaciones tradicionales. Ello se debe a diferentes factores, entre los que se encuentran las capacidades actuales en hardware de los dispositivos, o la capacidad de acceder a la información del usuario a la que el propio dispositivo tiene acceso. Los dispositivos actuales aportan mucha información sobre el entorno del usuario. Por ejemplo, aportan información sobre la posición geográfica del mismo, lo cual permite desarrollar aplicaciones basadas en la localización, conocidas como (LBS o servicios basados en localización), un ejemplo de tales aplicaciones es el Waze. Así mismo, existen otras informaciones (como, por ejemplo, orientación, presión, luz, etc.). La posibilidad de grabar imágenes, vídeos, y audio también aportan información sobre el entorno del contexto del usuario (por ejemplo, aplicaciones que reaccionan al habla o las de realidad aumentada)

Las aplicaciones móviles suelen ser probadas primero usando emuladores y más tarde se ponen en el mercado en periodo de prueba. Actualmente un gran número de empresas se dedica a la creación profesional de aplicaciones. Aun así, han surgido páginas web como Mobincube, donde un usuario común puede crear aplicaciones de manera gratuita y sin conocimiento de programación; y plataformas como Yeeply, que te ayuda a encontrar desarrolladores y hacer de guía para crear tu app móvil.

El proceso de diseño y desarrollo de una aplicación, según CUELLO y VITTONE, ​ se puede estructurar en cinco etapas secuenciadas en los siguientes apartados:

A. Conceptualización
La aplicación parte de una idea que permita cubrir una necesidad o facilitar una actividad en el mundo real de un determinado sector de población en función de sus necesidades y problemas. La idea debe responder a las exceptivas factibles y concretas, lo que implica la necesidad de realizar un análisis prospectivo de la viabilidad del concepto que se quiere crear.

B. Definición
Determinada la posibilidad de acometer el proyecto, diseñador/es y desarrollador/es proceden a definir las funcionalidades de la aplicación en consonancia con el perfil de los usuarios y las especificaciones técnicas, con objeto establecer, los parámetros de acceso al hardware del dispositivo, si va a ser una aplicación específica para cada tienda (nativa) o híbrida,… El dimensionado de todo ello permitirá determinar el alcance del proyecto, su duración, coste económico y complejidad del diseño y programación de la aplicación.

C. Diseño
En esta etapa se materializan los aspectos de la etapa anterior (especificaciones, funcionalidades, etc.). Para ello se realiza, en primer lugar, un diseño esquemático sin gráficos “wireframe” que será testeado por un grupo usuarios. Superada esta prueba inicial el diseño definitivo será entregado al desarrollador en archivos y pantallas separadas para que añada el código de programación. Los sistemas operativos permiten interactuar con el usuario presentando en la pantalla los elementos necesarios para ello de forma distinta, lo cual debe tenerse en consideración por parte de los diseñadores de acuerdo con las siguientes premisas:

Interacción y patrones:
Experiencia del usuario: basadas en la simplicidad, sus conocimientos y costumbres, y el modo de navegación intuitiva.
 Interacción y formas de sostener el móvil.
Orientación del terminal.
Patrones de interacción: navegación, acciones, cuadros de diálogo, notificaciones y gestos.

Diseño Visual:
+Estilo del interfaz.
+Interfaces nativas o personalizadas.
+Identidad visual.
+Pantalla inicial e iconos.
+Retícula de maquetado.
+ Color y detalles visuales
+ Tipografía, lenguaje y ortografía.
+Animación de la App

Estas actividades habitualmente se documentan en un esquema de flujo de navegación de la aplicación. En función del tipo de desarrollo y del tipo de diseño (específico o híbrido) se definen los parámetros basados en los Human Interface Guidelines de la aplicación, desde que se accede a la aplicación, al contenido, a la navegación, el acceso a botones, menús y cajas o cuadros de diálogo, etc.
El diseño de la aplicación va a influir de manera significativa tanto en el coste económico de la misma como en su desarrollo.

Existen cinco grandes perfiles de diseño:

Diseño multiplataforma (genéricas): suele ser suficiente una programación basada en HTML5 y algún componente específico para cada tipo de dispositivo ej. una ventana emergente nativa). Suele ser la solución más rentable económicamente, pero la que dispones de funcionalidades más limitadas a determinados requerimientos.

Apps híbridas (nativas de diseño y navegación compartida): los diseños de flujos, navegación y gráficos comparten un porcentaje elevado de elementos en común lo que permite reducir tiempos y costes, pero resulta indispensable seguir la normativa, con la menor desviación posible, tanto de Apple, como de Google, Windows y BlackBerry, para no romper la experiencia y navegabilidad intuitiva de los usuarios de cada plataforma.

Diseño de aplicaciones nativas específicas para cada plataforma: requiere diseñar tantas veces como plataformas a programar. No obstante, algunos elementos son comunes y reutilizables, pero implica un mayor coste de diseño y desarrollo, si bien es el más óptimo y el que más aprovecha las funcionalidades de aplicaciones y dispositivos.

Diseño para iPad/tabletas, basado en dos técnicas:

* Adaptación por padding: en las hojas de estilo CSS3 para HTML y HTML5, el atributo padding es el que crea un espacio por dentro de la caja a la que se aplica sin que se toque o supere su borde, con objeto de adaptarse a la superficie de visualización. No tiene apenas coste de diseño pues se puede construir en su mayoría por programación.

* Diseño específico: es lo ideal para, pero dependerá mucho de los requisitos de la app. Implica rediseñar cada pantalla para obtener el rendimiento de las tabletas. Lógicamente tiene un coste de diseño específico.

Desarrollo
El programador, en función del tipo de aplicación diseñada se encarga de dar vida a los diseños y crear la estructura sobre la cual se apoyará el funcionamiento de la aplicación, creando el código funcional mediante un lenguaje de programación. Existen varios lenguajes de programación entre los que destacan:

Para Android: inicialmente Java, también Visual Basic y Basic4Android que es un desarrollo posterior especialmente indicado para desarrolladores de Android.

Para IOS: Objective-C, Python y, últimamente, Swift que es un novedoso lenguaje mucho más veloz y versátil que los citados anteriormente.

Para Windows se utiliza primordialmente Visual Basic.

Para BlackBerry fundamentalmente Java.

Finalizada la programación de la versión inicial, generalmente denominada versión beta, gran parte del tiempo se emplea en la corrección de errores en la aplicación como fase previa para su aprobación en las tiendas.

En 2014 llegó una herramienta para crear aplicaciones para Android o iOS sin programar, CreaTusApps. Dejó de ser necesario usar entornos de programación para realizar aplicaciones móviles.

Publicación
Una aplicación se publica tras un período de pruebas, su correcto y estable funcionamiento, sin errores de usabilidad y diseño, y cumpliendo las políticas y requerimientos de las tiendas. Durante toda la vida útil de la aplicación, es necesario un seguimiento analítico, estadístico y de comentarios de usuarios, para evaluar el comportamiento y funcionalidad de la app, detectar y corregir errores, y realizar mejoras o actualizaciones.















Comentarios

Entradas más populares de este blog