guía de referencia para el desarrollo y distribución de aplicaciones en plataformas móviles
DESCRIPTION
Esta tesis tiene la intención de ser un estudio útil para una creciente comunidad de universitarios y personas de habla hispana que quieren incursionar en el desarrollo de aplicaciones móviles.Se presenta un conjunto de prácticas determinantes para obtener un producto de software exitoso en el mercado.TRANSCRIPT
Universidad NacionalAutónoma de México
Facultad de Ingeniería
“Guía de Referencia para elDesarrollo y Distribución de Software
en Plataformas Móviles”
Tesis Profesional que para obtener el título de Ingeniero en Computación presenta:
Héctor Zárate Rea
Asesora: Laura Sandoval Montaño
Ciudad de México, Septiembre de 2011.
Agradecimientos
A las personas que inventaron y han hecho posible:
Y por supuesto, a mi padre, a la maestra Laura Sandoval, a Flor Aguilar y a todas las personas
increíbles que han estado cerca de mi y que me han apoyado: mis amigos.
:)
Héctor Zárate Rea
Licencia
Una guía de referencia sería de poca utilidad si encontrarla, consultarla y distribuirla fuera difícil.
Lamentaría que este fuera el caso.
Guía de Referencia para el Desarrollo y Distribución de Software en Plataformas Móviles by Héctor Zárate Rea is
licensed under a Creative Commons Attribution-NonCom-mercial-ShareAlike 2.5 Mexico License.
Tabla de Contenidos
Introducción 1
La Visión de un Producto de Software 1
Más allá del bit y del byte 2
Advertencia 3
Objetivo 5
Desarrollar un Producto 7
Sobre la Ingeniería en general 7
El Proceso de Diseño en la Ingeniería 8
La tarea del software 9
Dispositivos Móviles 10
Nuevas Plataformas Móviles, Distribución y el Contexto Actual 11
Android 13
iOS 14
Blackberry 15
Hacer un Producto de Software Valioso 17
Planeación 18
Planeación 18
Scrum 20
Roles Importantes dentro de Scrum 21
El Ciclo Scrum 22
Planeación y Bitácora del Producto 22
2. Iteraciones (Sprints) 22
3. Juntas Diarias (¡pfff!) 22
Demostraciones 23
5. Retrospectiva 23
Algunas Buenas Prácticas para Cada Iteración 24
Claridad en el Código 24
Comentar el Código 24
Wikis 25
Respaldos de Seguridad 25
Control de Versiones 26
Tips de Verificación y Validación para cada iteración 27
Probar la aplicación en dispositivos físicos 28
Usuarios ßeta 28
Errores Fatales 28
Verificar la interfaz de usuario 29
Verificar problemas de conectividad 29
Interfaces de Usuario 30
Pasos para Crear una Interfaz de Usuario 31
Arte y Diseño Gráfico 32
Elementos de Diseño en las Interfaces de Usuario 32
Color 33
Tipografía 33
Imágenes 34
Distribución y Agrupación 35
Sonidos 35
Principios Básicos para el Diseño de Interfaces 36
Internacionalización y Localización 37
Accesibilidad 39
Consideraciones Particulares para Plataformas Móviles 39
Pantallas Pequeñas 40
Menos Memoria y Menores Capacidades de Procesamiento 40
Batería 40
Conexiones Costosas 41
Servicios de Posicionamiento 41
Gestos y Nuevas Formas de Interacción 41
Ayuda Mínima 42
Duración de la Interacción 42
Interacción Individual con las Aplicaciones 42
Integración con el Sistema del Dispositivo 43
Medir Resultados: Tests de Usabilidad 43
¿Qué esperar de una buena interfaz? 45
Marketing 46
1. Conocer a la audiencia 47
2. Elementos Importantes de Marketing Dentro de la Aplicación 49
Nombre de la Aplicación 49
Look’n Feel 50
Ícono 50
Pantalla Splash 51
Actualizaciones 52
3. Elementos de Marketing dentro de la Tienda Electrónica: 53
Screen-shots 53
Copy (Descripción) 54
Categoría 56
Precio 58
4. Tener un sitio web para el producto 60
Información indispensable del sitio 60
Algunas Estrategias de SEO 61
5. Mantenerse en Comunicación 62
Blog 63
Redes Sociales 64
Facebook 65
Twitter 66
5. Hacer una Marca 67
¿Qué es una Marca? 68
Registro de una marca en México 69
Conclusiones 73
Glosario 76
Bibliografía 79
/ Introducción1
“Ladies and Gentlemen please take your seats. The show is about to begin.”
- ?
La Visión de un Producto de Software
La producción de software2 en México es generalmente hecha bajo la demanda de un cliente
que solicita una solución específica para un problema específico. Resultando generalmente en
software que una empresa utilizará para su operación.
Esta práctica, la producción de software "In-House", ha sumergido al ingeniero en computa-
ción mexicano en un trabajo técnico de limitada creatividad donde adapta e implementa solu-
ciones existentes para resolver un listado de requisitos de un cliente.
Este tipo de trabajo, concentrado en resolver un set de problemas de un cliente en particular,
no ofrece la oportunidad de hacer un software tan refinado y atractivo porque este tipo de ca-
racterísticas no son costeables3. Aunque es una actividad redituable, la mayoría de las veces
se limita a perseguir el cumplimiento y aprobación de los requerimientos mínimos acordados
con el cliente.
En contraste, un producto de software comercial, disponible a usuarios finales en el mercado,
requiere un esfuerzo continuo de innovación y creatividad los cuales impactarán directamente a
los usuarios, traduciéndose directamente en su satisfacción y a su vez generando más ventas.
1
1 Toda la vida me he preguntado si en verdad hay alguien leyendo los capítulos introductorios de los libros.
2 Software es un término completamente válido en la lengua española y aparece en el Diccionario de la Real Academia Española (RAE) vigésimo segunda edición. Aunque puede sustituirse por expresiones españolas como “programas in-formáticos” esto es tan alienante como decir “pantaloncillos cortos” en lugar de “shorts”. Los anglicismos que aún no están contemplados en la RAE son incluidos en un glosario y son escritos en cursivas.
3 Spolsky, Joel. “Yale Talk” en More Joel on Software. Estados Unidos: Apress, 2008.
Pero hacer un producto de software en México era una tarea prácticamente imposible y una
visión ajena a muchos desarrolladores. Hacer un producto requería de una infraestructura im-
portante para realizar la distribución física de los productos o en el caso de optar por una dis-
tribución en línea, los trámites para aceptar pagos con tarjetas de crédito, las medidas anti-pi-
ratería y la infraestructura tecnológica para hacer la entrega virtual del producto eran una su-
matoria de obstáculos suficientemente grande como para hacer desistir a cualquiera.
Pero en los últimos años, junto con los dispositivos móviles, aparecieron nuevas plataformas
que resolvieron todos los problemas anteriores; revolucionando por completo algunos escena-
rios adversos como el caso de México. Esto ha abierto nuevas posibilidades para el ingeniero,
pero al mismo tiempo lo hace enfrentarse a nuevos retos de los que tiene que ser consciente y
que a primera vista, podrían parecer de poca incumbencia para la ingeniería.
Más allá del bit y del byte
Esta tesis tiene la intención de ser un estudio útil para una creciente comunidad de universitarios
y personas de habla hispana que quieren incursionar en el desarrollo de aplicaciones móviles.
Pero su análisis no está centrado en “el bit y el byte”, sino en presentar el conjunto de prácti-
cas determinantes para obtener un producto de software exitoso en el mercado y crear cons-
ciencia acerca del deber de invención de la Ingeniería.
Se ha dividido en 5 capítulos que pueden o no ser leídos consecutivamente. De hecho, el lector
con déficit de atención (o meramente cansado de la linealidad) es libre de consultar cualquier
capítulo aleatoriamente o de hojear el libro para leer solamente los párrafos con las imágenes
más interesantes. Los capítulos son los siguientes:
1. Desarrollar un Producto
Una excursión teórica acerca de la ingeniería, su tarea, el proceso de invención, el contexto
del cómputo móvil y las plataformas actuales.
2. Planeación
Descripción de una metodología ágil para la planeación de un proyecto y algunas buenas prácticas.
2
3. Interfaces de Usuario
Uno de los elementos más importantes en la comercialización de un producto. Se mencio-
nan consideraciones particulares de los dispositivos móviles, sus elementos, una metodolo-
gía para proponer interfaces y una metodología para verificarlas.
4. Marketing
Estrategias básicas para lograr la exposición de la aplicación y alcanzar a los compradores.
5. Casos de Estudio
¿Cómo aplicar realmente el contenido de este trabajo? Se estudia un caso de éxito que ha
implementado la mayoría de las prácticas aquí mencionadas.
Advertencia
Ante la convención, podría parecer un texto sobrado de humor e iconografía, pero esto no es
arbitrario, se ha hecho con la intención de que sea un trabajo consumible por una comunidad
que requiere textos prácticos, directos y cercanos a ella. De cualquier forma, la academia en-
contrará descanso en saber que la investigación fue tan cuidadosa y formal como en la tesis
más notable y aburrida del acervo.
Así que sin más preámbulos, “Guía de referencia para el desarrollo y distribución de software
en plataformas móviles”.
3
/ Objetivo
Analizar las prácticas que constituyen una aplicación exitosa dentro de los escaparates virtua-
les de las plataformas móviles y presentar a la Comunidad Universitaria una guía de referencia
que contenga información clave para el desarrollo y distribución exitosos de un producto de
software comercial dentro de estas nuevas plataformas .
5
/ Desarrollar un Producto“An amazing invention - but who would ever want to use one?”
- Rutherford B. Hayes
Sobre la Ingeniería en general
La ingeniería es un conjunto de actividades metódicas, científicas y conscientes
basadas en la apreciación y aplicación de las ciencias, la experiencia y la técni-
ca. Estas actividades se orientan a crear herramientas y adaptar el entorno del
ser humano para su bienestar y comodidad, pero ocurren determinadas por
el contexto socio-político en el que se llevan a cabo.
Varios resultados de la ingeniería como estructuras, máquinas, aparatos o
nuevos procesos (hardware, reglas y sistemas4) pueden ser llamados tecnología,
la cual a su vez, puede definirse como el arte y conocimiento de “hacer las cosas”5. Un proce-
so en parte ciencia y en parte arte, llevado a cabo dentro de los márgenes del método y la
exactitud, pero acompañada de ingenio, creatividad e innovación.
Dentro de esta invención deliberada se producen artefactos tecnológicos orientados a que las
personas extiendan sus capacidades físicas naturales y así, satisfagan necesidades prácticas,
logren objetivos concretos y (en el mejor de los casos) mejoren su calidad de vida.
Estos artefactos son objetos físicos hecho por humanos para otros humanos, que tienen una
función particular y están acompañados de un plan de uso. En una definición más extendida y
actualizada, son objetos (ya no necesariamente físicos, pudiendo ser también abstracciones)
muchas veces inconcebidos que tienen un propósito de uso, una descripción bien definida de
su estructura compositiva e instrucciones acerca de cómo usarlos.
7
4 Dusek, Val. Philosophy of technology: an introduction. Reino Unido: Blackwell Publishing. 2006. Páginas 31-33.
5 Bird, Michael S. Art and interreligious dialogue: six perspectives. Estados Unidos: University Press of America. 1995. Pagina 60.
El Proceso de Diseño en la Ingeniería
La ingeniería concibe estos artefactos en un proceso conocido como “diseño”, varias
actividades metódicas y sistemáticas para crear cosas nuevas y que en contraste con
los esfuerzos hechos por la investigación científica, requieren ser una tarea plau-
sible: con un pronóstico claro de éxito y con certidumbre acerca de la dura-
ción y el costo que representará, acotaciones insalvables y presentes en
cualquier proyecto de diseño para la ingeniería.
Este proceso desde una perspectiva general consta de 5 etapas, al final de las cuales el artefacto será,
además, un objeto disponible a la compra con un ciclo de vida en el mercado. Es decir, un “producto”.
1. Convertir necesidades en funciones.
2. Convertir las funciones en descripciones específicas.
3. Llevar a cabo la construcción de un artefacto según las descripciones propuestas.
4. Probar el artefacto.
5. Producir el artefacto (prototipo) en una escala masiva6.
Hasta este punto, debería tenerse un producto que presente una solución a algún problema real y que
al utilizarlo para esta tarea, hiciera la vida de quien lo use (el usuario) más productiva, saludable o feliz.
No obstante, hacer un gran producto sería inútil sin consumidores que costearan su desarrollo:
hoy en día el diseño de producto debe contemplar también la forma de conseguir y mantener
esos consumidores, tarea que es conocida como marketing.
8
6 Este paso es la diferencia entre un prototipo y un producto.
Koren, Yoram. The Global Manufacturing Revolution: Product-Process-Business Integration and Reconfigurable Systems. Estados Unidos: John Wiley and Sons. 2010. Página 5-6.
La tarea del software
El software es precisamente un artefacto que ha adquirido gran importancia
para la sociedad y que hoy se utiliza en forma masiva para mejorar la calidad
de vida y soportar actividades como el trabajo, la transportación y el entrete-
nimiento. En teléfonos, automóviles, Furbys7, aviones y línea blanca entre
otras cosas, el software es virtualmente omnipresente en la vida moderna.
Pero decir que el software es una herramienta que simplifica las tareas del
hombre es ahora una definición insuficiente. Se ha convertido en un componente de la socie-
dad que, más allá de contribuir aisladamente, está transformando todas las actividades de ella
como la política, la economía, los negocios, la comunicación y la socialización8. La transforma-
ción que está efectuando en la sociedad es tan profunda, que podría ser comparada con la re-
volución industrial en el siglo XVIII y XIX.
¿Y qué es exactamente el software? El software puede ser visto como una maquinaria virtual
construida mediante instrucciones en un lenguaje formal de computadora para ser ejecutadas
por otras computadoras. Esencialmente se divide en dos categorías: software de aplicación
(aplicaciones) que sirve para hacer tareas útiles y software operativo, el cual está encargado de
la operación misma de la computadora donde se ejecuta.
La primera categoría, las aplicaciones, tienen un valor importante y directo para el usuario por-
que éstas determinan cómo realizará determinadas tareas. Por lo que el reto más importante
de desarrollar una aplicación hoy, no está en el aspecto técnico, sino en proveerle a los usua-
rios herramientas significativas para ellos.
9
7 Thrift, N. J. Knowing capitalism. India: SAGE. 2005. Páginas 190-191.
8 Barkhuus, Louise. Student Socialization in the Age of Facebook. Universidad de California, San Diego. 2010.
Dispositivos Móviles
Los dispositivos móviles de hoy como teléfonos, tablets o iPods son el último
capítulo de una larga historia de distintas tecnologías que han convergido para
otorgar movilidad física a los entornos computacionales.
A cambio de otorgarle al usuario la posibilidad de movilidad física, estos dispositivos
tienen interfaces de entrada menos cómodas, pantallas pequeñas y menores presta-
ciones de hardware, pero esto no debe hacer pensar que su potencial es por de facto me-
nor al de una computadora de escritorio. Muy al contrario, su portabilidad, duración de la batería,
servicios de posicionamiento y capacidad de comunicación y conectividad los hacen más podero-
sos y adecuados para ciertas tareas que cualquier computadora portátil o de escritorio.
Existe una clara tendencia de que el uso de la computación se está inclinando hacia el uso de
estos dispositivos móviles: el mercado de las computadoras móviles ha continuado creciendo
significativamente en los últimos años9, al grado de sobrepasar las ventas de computadoras de
escritorio10; 3 de cada 4 personas en el mundo utilizan la telefonía celular11, superando la pro-
porción del 33% de personas que tienen acceso a internet; su uso y capacidades son cada vez
más parecidos al de una computadora de escritorio; y en internet hay cada vez más teléfonos
conectados12, con un pronóstico que apunta a que estos superen a las computadoras de escri-
torio y laptops en poco tiempo.
10
9 Wauters, Robin. Smartphones Lead Global Mobile Market to 20% Growth in Q1. Seeking Alpha. 29 de Abril de 2011. Consultado el 5 de Mayo de 2011.<http://seekingalpha.com/article/266539-smartphones-lead-global-mobile-market-to-20-growth-in-q1>
10 Arthur, Charles. Android dominance of worldwide smartphone sales goes on, says Canalys. guardian.co.uk. Consulta-do el 5 de Mayo de 2011.<http://www.guardian.co.uk/technology/blog/2011/may/04/android-smartphone-worldwide-dominates>
11 Internet and mobile phone usage data published by UN. Royal Statistical Society eNEWS. 1ero. de Febrero de 2009. Consultado el 5 de Mayo de 2011.<http://www.rssenews.org.uk/articles/20110131_2>
12 Ingram, Mathew. Mary Meeker: Mobile Internet Will Soon Overtake Fixed Internet. GigaOm - Tech News and Analysis. 12 de Abril de 2010. Consultado el 5 de Mayo de 2011.<http://gigaom.com/2010/04/12/mary-meeker-mobile-internet-will-soon-overtake-fixed-internet/>
Nuevas Plataformas Móviles, Distribución y el Contexto Actual
El 11 de Julio de 200813 Apple inauguró el “App Store”. Una tienda virtual disponible des-de cualquier dispositivo iPhone, iPod Touch o iPad en la cual se puede descargar soft-ware para estos dispositivos de una forma muy sencilla.
Este nuevo escaparate electrónico y su programa de desarrollo, le dio a todos los desarrolladores de software una forma más simple de crear aplicaciones innovado-ras y de distribuirlas a un nivel global sin preocuparse por aspectos como la imple-mentación de números de serie o la forma de distribución y pago.
Esto posibilitó a un grupo particular y de interés en este trabajo, desarrolladores individuales o grupos de desarrollo muy pequeños, con la oportunidad de comercializar un producto de software ante usuarios finales: desde tener una idea, hasta hacer llegar su última y más refinada versión a millones de usuarios.
Esta nueva tendencia presentó un éxito inimaginable, reportando ventas de 1.5 mil millones14 de des-cargas en su primer año. Naturalmente, varias compañías replicaron el modelo. Entre ellas estuvieron Android Market para Android (Octubre de 200815), App World de RIM (1ero. de Abril de 200916), Nokia con Ovi Store (26 de Mayo de 200917) y App Catalog de Palm (6 de Junio de 200918).
Al respecto, el dominio del mercado para cada plataforma en Estados Unidos19:
11
13 Quinn, Michelle. Apple: App Store still coming July 11. CNET News . 11 de Junio de 2008. Consultado el 2 de Mayo de 2011.<http://news.cnet.com/8301-13579_3-9966086-37.html>
14 Antony, Bruno. “Change In The Air”. Billboard, Agosto 15 de 2009.
15 Horn, Leslie. Want Free Apps? Try the Android Market. PC Mag. 28 de Abril de 2011. Consultado el 2 de Mayo de 2011.<http://www.pcmag.com/article2/0,2817,2384594,00.asp>
16 Patel,Nilay. BlackBerry App World to launch April 1, says BusinessWeek. Engadget. 26 de Marzo de 2009. Consultado el 2 de Mayo de 2011.<http://www.engadget.com/2009/03/26/blackberry-app-world-to-launch-april-1-says-businessweek/>
17 Eric. Update on Ovi Store opening. Ovi by Nokia - Blog. 26 de Mayo de 2009. Consultado el 2 de Mayo de 2011.<http://blog.ovi.com/2009/05/26/update-on-ovi-store-opening/>
18 Barletta, Bryan. Palm Pre App Catalog Reaches 1 Million Downloads. Medialets. 24 de Junio de 2008. Consultado el 2 de Mayo de 2011.<http://www.medialets.com/palm-pre-app-catalog-reaches-1-million-downloads>
19 Arthur, Charles. Nokia and RIM bleeding smartphone share while Android cleans up. guardian.co.uk . 18 de Abril de 2011. Consultado el 29 de Abril de 2011.<http://www.guardian.co.uk/technology/2011/apr/18/smartphone-market-android-win-nokia-rim-lose>
Figura 1: Dominio del mercado de smartphones por sistema operativo
Esta información revela que las plataformas más importantes hoy en día son Android, iOS de
Apple y los dispositivos Blackberry de RIM; aunque para un país en desarrollo como México,
estas cifras son ligeramente distintas: los dispositivos de gama baja (como los producidos por
Nokia) tendrán un mayor dominio del mercado por su menor costo.
A continuación se analizarán brevemente las tres plataformas más representativas por su im-
portancia en el mercado:
Android iOS RIM Symbian Windows Otros
1%5%1%11%
27%55%
12
Android
Android es un set de software open-source basado en Java que opera en un
kernel de Linux. Este incluye un sistema operativo, middleware y otras apli-
caciones. La programación de aplicaciones se realiza en Java (utilizando
preferentemente Eclipse) y aunque las interfaces pueden definirse también
en Java, pueden definirse en XML utilizando herramientas más cómodas.
Los componentes de una aplicación son:
• Actividades
Análogas a ventanas y diálogos.
• Proveedores de ContenidoAbstracciones para generar, acceder y disponer de data en las aplicaciones, información que
puede ser contenida entre aplicaciones.
• ServiciosAplicaciones que no tienen un ciclo de vida corto y finito, sino que continúan ejecutándose en
el background independientemente de otras actividades.
• Intentos (Intents)Notificaciones internas que avisan a las aplicaciones de cambios de estado del hardware o
"mensajes" enviados por otras aplicaciones.
Como una característica especial, las aplicaciones de terceros se ejecutan con la misma priori-
dad que los procesos del sistema, y todas las aplicaciones pueden tener acceso a los mismos
recursos de los que dispone el sistema operativo.
Como recursos comunes se tiene almacenamiento, conectividad a internet, multimedia (imáge-
nes, audio y video), servicios de posicionamiento (GPS) y telefonía. Ya que hay distintos fabri-
13
cantes produciendo dispositivos con Android (los más importantes20: Motorola, HTC y
Samsung), sus características de hardware (velocidad del procesador, tamaño de la pantalla,
etc.) pueden variar enormemente entre cada dispositivo.
El canal oficial para a distribución y venta de aplicaciones es Android Market.
iOS
iOS es el sistema operativo basado en Darwin con el que cuentan los dispositivos
móviles comercializados por Apple.
El primer dispositivo de este sistema operativo fue el iPhone, puesto a la venta
el 29 de Junio de 200721. Tras este primer dispositivo continuaron nuevas ge-
neraciones, otro dispositivo idéntico en su funcionalidad exceptuando el teléfo-
no y la localización GPS, iPod Touch y más recientemente una tablet llamada iPad.
Los recursos físicos con los que cuentan estos dispositivos son acelerómetros, cámaras, servi-
cios de posicionamiento, pantalla táctil (todos), multimedia y telefonía.
El desarrollo sobre esta aplicación se hace en el lenguaje Objective-C. Las herramientas de de-
sarrollo son gratuitas, pero para la publicación de una aplicación, el desarrollador necesita rea-
lizar un proceso de registro y el pago de una cuota. Antes de su publicación, todas las aplica-
ciones son revisadas personalmente y evaluadas en términos de usabilidad y desempeño.
Una de las ventajas de la plataforma iOS (iPhone, iPod Touch y iPad) es la poca segmentación
que hay entre dispositivos, con lo que se evita tener que considerar distintos tamaños de pan-
talla o diferencias sustanciales en el hardware.
14
20 Warren, Christina. Motorola Droid Is Android’s Dominant Device [STATS]. Mashable. 27 de Abril de 2011. Consultado el 2 de Mayo de 2011.<http://mashable.com/2010/04/27/admob-stats-march-2010/>
21 Block, Ryan. iPhone release date confirmed: yours on June 29th. Engadget. 3 de Junio de 2007. Consultado el 30 de Abril de 2011.<http://www.engadget.com/2007/06/03/iphone-release-date-confirmed-yours-on-june-29th/>
La venta y distribución de aplicaciones se hace a través del Apple Store, la cual gestiona todo el
proceso de compra, instalación y actualización de las aplicaciones. El pago en esta tienda puede
hacerse con tarjetas de crédito o con tarjetas prepagadas que se venden en tiendas de servicio.
Apple anunció en su reporte financiero del segundo cuarto de 2011 que había vendido un total
acumulado de 189 millones22 de dispositivos con el sistema iOS.
Blackberry
Blackberry es una línea de smartphones comercializada por la compañía canadiense Research
in Motion (RIM). El nicho de mercado de estos dispositivos es el sector em-
presarial23, aunque desde el lanzamiento del modelo Pearl 8100 está inten-
tando tener una mayor penetración en el mercado de consumo24.
Aunque son hechos por un mismo fabricante, las características físicas de los dispositivos son
variables: tamaño y resolución de pantalla, si es táctil o no, disposición del teclado físico, velo-
cidad del procesador, memoria, velocidad de la conexión a internet y el sistema operativo,
también es diferente entre cada uno, pudiendo existir diferencias considerables.
Las plataforma de desarrollo para los smartphones Blackberry es Java, pudiendo usar varios
IDE’s como Eclipse o NetBeans.
La distribución y venta de las aplicaciones se hace en la tienda App World, desde el explorador
del dispositivo o desde una aplicación de escritorio especial.
Después de evaluar estas 3 plataformas, el estudio de esta guía de referencia será enfocado
hacia la plataforma iOS por ser una plataforma innovadora, fácil de usar y de gran potencial.
15
22 Jordan, Jon. Apple has sold a total of 189 million iOS devices. Pocket Gamer. 20 de Abril de 2011. Consultado el 30 de Abril de 2011.<http://www.pocketgamer.co.uk/r/Various/Apple+news/news.asp?c=29297>
23 McIntyre, Douglas. Is BlackBerry Maker RIM Ripe for a Rebound? Daily Finance. 5 de Febrero de 2011. Consultado el 2 de Mayo de 2011.<http://www.dailyfinance.com/2011/05/02/blackberry-rim-research-in-motion-stock-shares-rebound-outlook/>
24 Wargo, John. BlackBerry Development Fundalmentals. Estados Unidos: Addison-Wesley Proffesional. 2009. Página 4.
Sin embargo, será escrita de la forma más general posible para que todos los principios men-
cionados sean aplicables a las demás plataformas de hoy.
En cada una de estas plataformas se han facilitado varios procesos como el de la distribución y
pago, pero al mismo tiempo ha surgido un reto importante: como existe un único canal oficial para
la venta de aplicaciones, en cada tienda ocurre una feroz competencia directa25: más de un nego-
cio ofrece el mismo producto o servicio en el mismo mercado a través de los mismos canales de
venta.
Pero esta competencia no debe ser entendida como algo negativo, ya que impulsa la innova-
ción por parte de los que ofrecen un bien o servicio y permite a los consumidores tener más
opciones y mejores productos a un mejor precio. Además, conocer a la competencia es una de
las mejores formas de entender el mercado y saber qué es lo que necesita y cuáles son las ne-
cesidades que no han sido atendidas.
Otro cambio está en la forma en que los usuarios consumen el software: ahora están me-
jor informados y ya no tienen que atenerse a algunas pocas opciones independientemen-
te de si buenas o malas. Por si fuera poco, ahora tienen expectativas muy altas sobre la
calidad de las aplicaciones que compran.
Todo esto coloca al ingeniero en entorno muy competitivo, globalizado y extremadamente di-
námico en el que puede ofrecer sus propios productos a potencialmente miles o millones de
usuarios al mismo tiempo y en el mismo canal en el que lo hacen grandes corporaciones, inge-
nieros de otros países y equipos de trabajo más grandes o con más experiencia
16
25 Pinson, Linda. Steps to Small Business Start-Up. Estados Unidos: Kaplan Publishing. 2006. Página 22.
Hacer un Producto de Software Valioso
La invención de un producto de software de este tipo comienza con el in-
geniero (supuestamente aquel hombre con el deber de desarrollar ingenie-
ría) haciendo un esfuerzo consciente por observar su entorno, anticipar, inter-
pretar y adaptar las necesidades de las personas para visualizar nuevas formas
de hacer las cosas y dar con un producto útil. A continuación, se deben:
1. Fijar las necesidades del consumidor y definir quiénes son los consumidores del producto.
2. Definir un conjunto de acciones que el artefacto de software hará para que el usuario
cumpla estas necesidades.
3. Partiendo de esas acciones, determinar funciones específicas (y la capacidad de esas fun-
ciones) para que el consumidor cumpla esas necesidades.
4. Diseñar, planear e implementar el producto de software ideado.
Las funciones específicas que el producto realice serán, junto con la usabilidad y la interfaz de
usuario, los parámetros de comparación más importantes con otras aplicaciones similares. Todas
estas funciones deben poder traducirse en beneficios directos para el consumidor, como por
ejemplo: horas de diversión, ganar tiempo al hacer cierta tarea o bajar de peso más rápidamente.
Entre estas funcionalidades se debe identificar aquella (o aquellas) que son únicas en la aplica-
ción y que la caracterizan frente a la competencia. Saber esto sirve para tener una mejor idea
de como invertir los recursos disponibles durante el desarrollo y tener una idea clara de los
mensajes que quieren darse durante las actividades de marketing.
Por último, debe pensarse en la factibilidad monetaria del proyecto; debe ser una solución a
una necesidad generalizada o si se trata de una aplicación con un nicho de mercado, éste de-
be ser lo suficientemente grande para generar ventas suficientes con las cuales costear el pro-
yecto (y unas fascinantes vacaciones en un lugar remoto y paradisíaco).
17
/ Planeación“Life is what happens to you while you're busy making other plans”
- John Lennon
Planeación
La planeación de un proyecto es una actividad centrada en completar un resultado
dentro de un tiempo y costo determinado satisfaciendo las expectativas del cliente.
Esta guía presupone que los proyectos realizados por sus lectores presenta-
rán características particulares como:
• Serán realizados por un individuo o un equipo pequeño de individuos.
• La dimensión del proyecto es relativamente pequeña y la primera fase de desarrollo es corta.
• El resultado del proyecto se presentará en un mercado competitivo que requiere velo-
cidad y flexibilidad.
• Probablemente se efectuará sin horarios ni espacios bien definidos, utilizando el tiempo
libre y localizándose en casa de uno de los colaboradores, la biblioteca de la escuela o el Starbucks más cercano.
• No es un trabajo solicitado por un cliente, sino un esfuerzo particular por colocar un producto en el mercado.
• Sus integrantes cuentan con poca experiencia en la producción comercial de software.
• Se ejecutan con un presupuesto muy limitado.
• Todos los miembros del equipo comparten responsabilidades a un nivel similar.
18
Distintos proyectos y contextos requieren distintos tipos de planeación: una página web hecha por
una persona, no requiere el mismo tipo de planeación que el software tolerante a errores utilizado
en aviones y hecho por un equipo de cientos de personas con un presupuesto de millones de dóla-
res. Por lo general, entre mayor sea la complejidad y mayor el número de colaboradores de un pro-
yecto, se requerirá una mayor estructura en su planeación. Por esto, aunque la mayoría de las me-
todologías comparten algunos principios, no hay “metodología panacéica” aplicable a todos los
tipos de proyectos y aún la utilización de “mejores prácticas” no es garantía de éxito26.
Las consideraciones anteriores apuntan a utilizar nuevas metodologías (como el enfoque ágil)
en lugar de las metodologías tradicionales, las cuales están íntimamente vinculadas con los
procesos y estructuras del negocio. Estas últimas, fueron diseñadas para equipos de trabajo
mucho más grandes o proyectos de mayor duración y complejidad, haciendo muchos de sus
procesos y documentación un esfuerzo innecesario para proyectos más pequeños.
Las metodologías ágiles surgieron como respuesta a metodologías que en teoría son efectivas,
pero que en la práctica no lo son tanto. En el enfoque ágil, se persigue la mejora continua, en-
contrar la calidad desde la primera vez, producir únicamente lo que es necesario y enfocarse
en el desarrollo del software en lugar de en la extensiva documentación, midiendo el progreso
del proyecto en unidades de software funcional.
Scrum es uno de los métodos de desarrollo más populares para el desarrollo ágil y uno muy
adecuado para las características de proyectos de este tipo, razones por las cuales será anali-
zado con detalle y sugerido para planear la ejecución de un proyecto.
19
26 McGuire, Eugene. Software process improvement: concepts and practices. Londres : Idea Group Inc.
1999. Página 19.
Scrum
Scrum extiende el método de desarrollo incremental a algo llamado proceso de control empírico,
en donde los ciclos de retroalimentación se convierten en el elemento nuclear. Está inspirado en
varias áreas de conocimiento como teoría de complejidad, sistemas dinámicos y la teoría de
creación del conocimiento de Nonaka y Takeuchi, adaptándolas al desarrollo de software.
A grandes rasgos, las fases de desarrollo se dividen en pequeñas iteraciones llamadas
“sprints”, las cuales duran típicamente entre una y cuatro semanas.
Primero, se identifican y capturan las tareas requeridas en una bitácora que es actualizada, es-
timada y priorizada al principio de cada una de estas iteraciones. El equipo mantiene breves
juntas durante cada día de desarrollo para discutir el progreso, plan y potenciales problemas
del proyecto y se trabaja en las tareas definidas en la bitácora. Finalmente al término del sprint,
se demuestran y recapitulan los avances obtenidos y se inicia uno nuevo para repetir el ciclo
hasta haber terminado la totalidad del proyecto.
Figura 2: El ciclo scrum
Planeación
Sprint
Demostración
Retrospectiva
20
Antes de explicar a detalle cada una de estas fases, hay que conocer los roles principales que
existen en ellas:
Roles Importantes dentro de Scrum
• Equipo Scrum:
Trabajan efectivamente en los problemas del software. Se sugiere como máximo 9 personas. Los miembros del equipo deben decidir cómo se distribuye el trabajo y cómo se define.
• Product Owner
Representa la voz del cliente y administra la bitácora del producto, una lista de tareas priori-zada por su rentabilidad hacia el negocio. Por lo general se trata de un cliente, pero también
puede ser alguien que sea parte de la organización. En un enfoque completo, su labor requie-re conocimiento de procesos de ingeniería, marketing y negocios.
• Scrum Master
Scrum Master es un nombre más divertido para quien en la normalidad sería conocido como “Project Manager”. Su tarea es la de poner al equipo de trabajo en las mejores circunstancias posibles y, des-
pués de cada iteración, hacer una retrospectiva para revisar las conclusiones y experiencias con el fin de motivar y mejorar el conocimiento del equipo para atacar la siguiente iteración.
21
El Ciclo Scrum
1. Planeación y Bitácora del Producto
En el primer sprint del proyecto, el “Product Owner” compila todos los requerimien-tos y especificaciones de un nuevo producto para plasmarlas en algo llamado “his-torias”, las cuales son una descripción de funcionalidades de alto nivel escritas de forma breve. En el caso de planear la actualización de un producto se escribirían nuevas funciones y parches. Después de esto y al principio de los siguientes sprints, se seguirán los siguientes pasos:
A. Cada “historia” que no ha sido implementada, es puesta en la bitácora del producto y el rol de “Product Owner” les asigna prioridades.
B. El equipo asigna una valoración de complejidad para cada historia (Ej: 1, 2, 3, 5, 8), se estiman cuántas historias pueden ser realizadas durante una iteración y el equipo se compromete a ha-cer su mejor esfuerzo para terminar todo el trabajo propuesto durante el siguiente sprint.
2. Iteraciones (Sprints)
A. Todas las historias son implementadas progresivamente en orden de importancia, por-que son las que representan más valor desde la perspectiva del negocio. Cada equi-po (o individuo) es responsable de cumplir las historias que ha escogido.
3. Juntas Diarias (¡pfff!)
Durante cada día de desarrollo, el Scrum Master se reúne con el equipo de trabajo para responder, en una junta breve, tres preguntas:
• ¿Qué avances se han hecho desde la última junta?• ¿Qué va a hacerse desde ese punto hasta la siguiente junta?
• ¿Hay algún conflicto o situación que impida llevar a cabo el plan?
De esta forma se logra que todo el equipo esté informado acerca del progreso del proyecto y que los problemas que se han encontrado, sean resueltos.
22
4. Demostraciones
Al final de cada iteración se hace una demostración de todo el software fun-
cional que se haya realizado: todas las historias son demostradas ante el rol
de “Product Owner”, quien las aceptará o rechazará.
Como esta metodología está basada en la iteración de componentes de software
funcional, en este punto las historias deberán operar en su totalidad y estar libres
de errores. El último apartado de este capítulo, menciona la tarea de verificación y validación.
Buena Idea: Aún mejor es presentar las historias terminadas apenas se hayan completa-
do, evitando una historia rechazada que se traslapa a la siguiente iteración.
5. Retrospectiva
Tras la demostración, los miembros del equipo y su juicioso Scrum Master
responden las siguientes preguntas:
• ¿Qué se llevó a cabo bien?
• ¿Qué puede ser mejorado?
• ¿Qué acciones pueden tomarse para mantener una alta calidad en el futuro trabajo?
Realimentando la siguiente iteración con los resultados aplicables.
23
Algunas Buenas Prácticas para Cada Iteración
Claridad en el Código
Algunos programadores escriben código conciso, complicado e indescifrable para denotar
su basto conocimiento acerca de la sintaxis del lenguaje y sus trucos más recónditos. Es-
tos intentos desesperados por llamar la atención deben ser sustituidos por la escritura de
un código claro, simple y entendible en el que distintas personas con distinta experiencia
pueden trabajar fácilmente.
Un código entendible es más fácil de mantener; y durante su manutención, se reduce el riesgo
de introducir nuevos errores porque su lógica no sea clara.
Comentar el Código
Los comentarios27 son notas dentro del mismo código del programa que seña-
lan pasos y características claves del mismo y que están escritas de tal forma
que la computadora pueda ignorarlas para la ejecución del programa.
Esta práctica genera un tipo de documentación interna que, implementada
correctamente, permite entender más fácilmente el código en cuestión y es-
to a su vez facilita el mantenimiento y actualización del proyecto, así como la re-utilización de
código mediante la legendaria práctica del copy-paste.
Tampoco hay necesidad de caer en una sobre-explicación innecesaria: los comentarios son
empleados cuando el código no puede ser más claro mediante otros medios.
24
27 Morley, Deborah. Understanding Computers: Today and Tomorrow, Comprehensive. Estados Unidos:
Cengage Learning. 2009. Páginas 561-562.
Buena Idea: Escribir los comentarios del código al mismo tiempo que se codifica. Escri-
birlos tiempo después de codificar es más complicado ya que probablemente requerirá
re-entender el código.
Wikis
Un wiki28 es un software en línea que permite a todos sus visitantes cambiar su contenido mediante la edición de las páginas dentro de un explorador; convirtiéndola en una plataforma simple y fácil de usar para el trabajo colecti-vo de textos e hipertextos.
Un wiki privado para los participantes del proyecto puede utilizarse para escribir toda la documentación referente al proyecto: bitácoras, resultados de pruebas de verificación y validación, tareas a completar, etc.
En la red existen varias alternativas disponibles y la mayoría de ellas son gratuitas29.
Respaldos de Seguridad
Discos duros dañados, archivos corruptos, virus, empleados vengativos borran-do archivos sensibles, laptops hurtadas a manos de bandidos sin escrúpulos: parecería que la posibilidad de perder todo el trabajo invertido en una aplicación es ineludible. Aunque ciertamente no lo es, sí vale la pena tener un plan en que, ante un infortunio como los antes mencionados, permitiera reanudar el trabajo sobre el proyecto de manera rápida, sencilla y económica (en términos de tiem-po y dinero) y sin tener que repetir ningún esfuerzo.
W
25
28 Ebersbach, Anja. Wiki: Web Collaboration. Berlin: Springer. 2008. Pagina 12.
29 :)
Por fortuna, un proyecto para una plataforma móvil tenderá a ser un conjunto de archivos y re-
cursos de tamaño relativamente pequeño y que fácilmente podría respaldarse sobre un CD,
DVD, Disco Duro, memoria USB o un servidor remoto. Además de los recursos y archivos del
proyecto mismo, es útil hacer copias de seguridad de la documentación del proyecto.
Se exponen algunos principios básicos:
• Ordenar la información
backup.tar.gz o backup2.tar.gz no son títulos muy descriptivos. Un buen orden y una buena deno-minación de los archivos de respaldo, hacen una recuperación de datos mucho más simple.
• Distintas Locaciones
Lejos de detallar ejemplos como huracanes u otras catástrofes remotas , existe el caso mucho más cotidiano de que un ladrón entrara a una casa u oficina. Además de llevarse todas las
computadoras del lugar, es probable que decidiera equiparse también con accesorios como discos duros y memorias, convirtiera cualquier práctica del respaldo de información en un es-
fuerzo absolutamente fútil.
Control de Versiones
Los sistemas de control de versiones (CVS) pueden considerarse como parte de las estrategias de
backups y respaldos de seguridad, aunque incluye mayores alcances y beneficios. El mercado
oferta un sinnúmero de posibilidades, varias de ellas gratuitas, cada una con una comunidad de
adeptos y fanáticos que defienden religiosamente las virtudes de cada sistema y se ocupan en se-
ñalar las faltas y deficiencias de aquellos que no utilizan30. Aunque existen diferencias funcionales y
filosóficas entre cada sistema, todos los CVS deberían poder hacer lo siguiente31:
• Mantener y permitir el desarrollo de un repositorio de contenido.• Llevar un registro de todos los cambios hechos sobre cada recurso del repositorio.• Proveer acceso al historial de ediciones de cada uno de estos recursos.
26
30 Un vistazo fugaz a este recurso ejemplifica claramente el punto: http://atomized.org/2005/09/subversion-sucks/
31 Loeliger, Jon. Version Control with Git. Estados Unidos: O'Reilly Media, Inc. 2009. Página 1.
Tomando en cuenta las consideraciones enunciadas al principio del capítulo, la elección del Siste-
ma de Control de Versiones queda prácticamente reducida a la comodidad que pudiera significar
un sistema sobre otro: como si el equipo tiene experiencia con algún sistema particular o si el CVS
esta integrado al Entorno de Desarrollo (IDE) y supondría un uso mucho más simple del mismo.
Tips de Verificación y Validación para cada iteración
Como se mencionó anteriormente los componentes completados al término de cada iteración
son componentes funcionales y libres de bugs. Lo que implica que deben haber sido probados
y se ha verificado que su comportamiento es exactamente el esperado.
En este tipo de aplicaciones la verificación y validación del programa tiene un objetivo muy concre-
to: buscar la satisfacción del cliente por la compra que ha hecho. Los compradores de software
son cada vez más intolerantes a productos con errores y ahora tienen altas expectativas que de no
ser cumplidas, resultan en comentarios negativos en la tienda, o peor aún, en medios como blogs o
redes sociales que podrían impactar negativamente en las ventas y percepción del producto.
Estas demostraciones justificadas de frustración son causadas principalmente por dos causas:
un desempeño deficiente y falta de usabilidad. El equipo de desarrollo debe invertir todo es-
fuerzo necesario para eliminar o reducir de forma drástica cualquiera de estas deficiencias.
Debe considerarse que un producto final distribuido en una tienda, será puesto a prueba por
un gran número de usuarios en un amplio conjunto de posibilidades impredecibles acerca su
uso. Entre mayor sea su uso, mayores las probabilidades de que bugs “ocultos” o difíciles de
encontrar sean, de hecho, encontrados.
Existe un sinnúmero de técnicas y procedimientos detallados para probar código, pero este
trabajo se acotará a señalar algunas estrategias que den una perspectiva general y práctica de
la calidad del producto y sus componentes:
27
Probar la aplicación en dispositivos físicos
Probar la aplicación permite verificar dos aspectos importantes de la aplicación:
• Primero, que la interfaz sea funcional (tamaño y disposición de los botones y texto) en un entorno real.
• Segundo, los simuladores no representan fidedignamente el desempeño de los dispositivos,
uso de memoria, conectividad, sistema operativo y otros recursos de hardware. Puede haber diferencias importantes en la velocidad del programa o incluso no funcionar del todo.
Acelerómetros o servicios de posicionamiento tampoco están disponibles en los simuladores.
Usuarios ßeta
El equipo de desarrollo (o desarrollador) están demasiado involucrados y conocen demasiado el
producto para detectar todos los bugs por sí mismos. Solicitar algunos usuarios beta a través de
redes sociales o en el círculo de amigos de uno mismo, permite encontrar bugs difíciles de en-
contrar y hacer mejoras en su usabilidad. Como una ventaja adicional se tiene acceso a nuevas
perspectivas para descubrir nuevos segmentos de mercado y nuevas funcionalidades.
Errores Fatales
No hay frustración más grande para el usuario que una aplicación que termina abrup-
ta e inexplicablemente.
Si este tipo de errores son detectados, la aplicación está todavía
lejos de poder llegar al mercado.
28
Buena Idea: Errores fatales que se presentan de maneras misteriosas, ocurren común-
mente debido a problemas con la disponibilidad de memoria.
Verificar la interfaz de usuario
La interfaz del usuario debe ser obvia y consistente. En el capítulo “Interfaces de Usuario” se
sugiere una metodología simple, pero valiosa para la verificación de la interfaz de usuario. Am-
pliamente recomendable. ;)
Verificar problemas de conectividad
Si la aplicación depende de conectividad con la red para funcionar, deben pro-
barse casos en donde ésta sea nula o deficiente. La aplicación debe ser tole-
rante a este tipo de “eventualidades” no tan eventuales en los móviles.
Buena Idea: Poner el dispositivo dentro de una caja de zapatos forrada de papel alumi-
nio32 permite probar un enlace degradado de Wi-Fi o de datos; además de dar al desarro-
llador un romántico aire científico-experimental.
29
32 Scholz, Fritz. Electroanalytical Methods: Guide to Experiments and Applications. Berlin: Springer. 2010.
Página 335.
/ Interfaces de Usuario“It is far better to adapt the technology to the user than to force the user to adapt to the technology”
- Larry Marine
Las interfaces de usuario33 son todo aquel espacio gráfico y físico en donde los usuarios inte-
ractúan con el software. Dentro de este espacio se le presenta información, la cual él debe en-
tender, evaluar e interpretar para decidir qué hacer con ella. Una vez que decide qué hacer, és-
te crea un plan de acción y retroalimenta a la interfaz con entradas de acuerdo a este plan. En-
tonces, el software interpreta esas entradas y genera cambios internos en los modelos que re-
presentan la información con la que el usuario está interactuando. Todos estos cambios, deben
ser reflejados nuevamente en la interfaz para que el ciclo pueda iniciarse nuevamente.
La interfaz de un producto de software es una de las partes más críticas del mismo y no es un
aspecto que deba dejarse hasta el final del desarrollo, sino que muy al contrario, deberá contem-
plarse desde el inicio del mismo, ya que una interfaz mal diseñada puede hacer que el uso de
una aplicación se convierta en algo verdaderamente tortuoso y en un entorno en donde existen
cientos de competidores, el usuario no dudará ni un momento en buscar una aplicación con una
funcionalidad similar (o incluso menor) a cambio de una interfaz más atractiva y cómoda.
Además de ser una parte crítica del desarrollo, también es uno de los procesos más divertidos
de todo el ciclo, puesto que: existen reglas claras y bien definidas acerca de cómo lograr una
buena interfaz; no representan un reto técnico insalvable o algoritmos desafiantes que imple-
mentar y finalmente; los esfuerzos invertidos en este proceso son inmediatamente observables
y profundamente satisfactorios.
30
33 Olsen, Dan. Developing user interfaces. Estados Unidos: Morgan Kaufmann. 1998. Páginas 11 y 12.
Pasos para Crear una Interfaz de Usuario
Pero, ¿cómo comenzar con el diseño de una interfaz? El primer paso
para hacer una buena interfaz es conocer perfectamente a quienes van
a usarla y entender cuáles son las tareas que querrán llevar a cabo.
Teniendo esto claro, se puede proceder a definir un modelo de funcio-
nalidad, el cual describirá las acciones que puede hacer el usuario sobre
los datos, el estado del sistema y la capacidad de acción que puede
ejercer sobre los mismos. Una definición de la funcionalidad cuidadosa
puede hacer que implementar futuras innovaciones en la aplicación sea
más simple. Al terminar de especificar el listado de funcionalidades del
programa se puede evaluar y realizar alguna retroalimentación junto con
algunos usuarios potenciales a fin de verificar que las funcionalidades
propuestas estén satisfaciendo sus expectativas y necesidades. En esta
fase no deben contemplarse aún pantallas, comandos, etc.
Una vez que se ha definido toda la funcionalidad involucrada a través
de la aplicación, se pueden empezar los bosquejos de la presentación
visual. En este punto, deben hacerse varias consideraciones respecto
a los elementos de diseño gráfico (consideraciones enunciadas más
adelante) y respecto al rendimiento y prestaciones del dispositivo: po-
dría ser que los autores del software deseen darle una interfaz con
animaciones y millones de colores, pero que muchos de los dispositi-
vos donde se ejecutará el programa sean de gama baja y que cuenten
con pantallas pequeñas con 256 colores.
Casi a la par de la presentación, se definen las acciones que pueden
realizarse en ella. En fechas actuales, esto no debe limitarse a un as-
pecto visual, sino que de ser posible, debería utilizar las nuevas formas de interacción de los
dispositivos móviles (sensores, gestos en pantallas táctiles, etc.).
Definir
Funcionalidad
Proponer
Presentación
Asignar
Acciones
Conocer al
Usuario
Integrar
Arte
31
Finalmente, teniendo el aspecto funcional de la aplicación, este debe integrarse con el diseño
gráfico y arte de la aplicación, buscando siempre la cooperación y el balance entre función y
forma. Al respecto, el arquitecto Louis Sullivan dijo: “la forma sigue la función”. El sentido origi-
nal de esta frase radica en que Sullivan estaba convencido de que las formas físicas más bellas
resultan de diseños que expresen la naturaleza esencial del material en cuestión y que ésta es
una regla simple común en la naturaleza.
Arte y Diseño Gráfico
El arte y diseño gráfico de una aplicación hacen que sea atractiva y que la actividad de utili-
zarla no solamente sea útil sino también placentera. Muy pocas veces se considera la estéti-
ca como un aspecto relevante, pero en un entorno tan competitivo como estas nuevas plata-
formas de comercialización, la estética puede ser el diferenciador determinante en la elección
entre varias aplicaciones similares.
El arte de una aplicación incluye mensajes, íconos, colores e imágenes y estas consideraciones
deben estar presentes durante todo el desarrollo de la aplicación y no solo en las últimas eta-
pas. Un resultado notable y competitivo es prácticamente imposible de lograr sin la colabora-
ción de profesionales de las artes gráficas.
Elementos de Diseño en las Interfaces de Usuario
Todos los elementos que se describen a continuación deberán utilizarse con el fin de comuni-
car más claramente un mensaje al usuario, al mismo tiempo deben considerarse los lineamien-
tos de Interfaz Humana específicos para cada plataforma, ya que aunque existen tendencias
universales, puede llegar a haber variaciones entre plataformas.
32
Color
La vida diaria está plagada de colores que transmiten mensajes importan-
tes, como los semáforos o colores en carteles de advertencia; también
existe el caso de colores que no apelan a un fin utilitario, sino que tienen un
fin estético como los colores en la ropa que usamos. Las interfaces de
usuario no son la excepción en el dominio del color: este puede ser usado
para resaltar y estructurar la información que se presenta al usuario y para
hacer la interfaz más atractiva.
Buena Idea: El uso excesivamente desinhibido del color produce estéticas incongruen-
tes, de mal gusto e incompatibles con su funcionalidad. En una palabra, kitsch34.
Tipografía
La tipografía es el “arte de disponer correctamente el material de imprimir, de
acuerdo con un propósito específico: el de colocar las letras, repartir el espacio y
organizar los tipos con vistas a prestar al lector la máxima ayuda para la com-
prensión del texto”35. Es una disciplina que ha estado presente desde las prime-
ras interfaces con el propósito de tener una mejor y más rápida legibilidad.
Deben elegirse fuentes que sean legibles y al mismo tiempo atractivas. Su tamaño debe ser
suficientemente grande para que pueda ser leído con comodidad por personas de distintas
edades y sus variantes de peso, inclinación y color deben ayudar a resaltar y organizar la in-
formación que se presenta ante el usuario.
A
33
34 Ejemplos, historia y un extenso debate acerca del término alemán “kitsch” pueden ser disfrutados en el libro “A Com-panion to Aesthetics” de Stephen Davies.
35 Morison, Stanley. Principios fundamentales de la tipografía. España: Ediciones del bronce. 1998.
Buena Idea: En la red hay miles de fuentes disponibles para descargar, pero no por esto hay
que utilizarla todas. Distintas fuentes transmiten distintos mensajes; usar más de 2 o 3 fuen-
tes por pantalla (4 o 5 por aplicación) resulta en caóticos y confusos popurrís tipográficos.
Imágenes
Las imágenes en las interfaces son ahora tan importantes como el texto que
contienen y el avance en el hardware de los dispositivos permite usar imágenes
de mejores resoluciones y mayores profundidades de color. Pero no solo debe prestarse atención a la calidad del archivo en términos de su resolución y color,
sino que también al contenido pictórico y lo que este representa hacia el usuario:
íconos e imágenes dentro de la aplicación pueden representar comandos, estados, objetos y resulta-
dos del modelo de datos. Todas estas imágenes e íconos deberán ser obvias para los usuarios exper-
tos y evidentes para los nuevos usuarios.
Para íconos e imágenes que tengan una relación directa con la funcionalidad del programa se pueden
evaluar mediante el mismo método que los diseñadores del American Insitute of Graphic Arts (AIGA)
utilizaron en 1981 para evaluar señales utilizadas en medios de transporte público de Estados Uni-
dos36. Esta evaluación contempla 3 dimensiones diferentes:
• Sintaxis: Es la relación entre las imágenes utilizadas. ¿Cómo se relaciona este símbolo con otros símbolos? ¿Es entonces consistente en la forma en que está dibujado? ¿Sus características como dimensión, orientación, formato, color, etc. son consistentes con los demás símbolos?
• Pragmatismo: Describe la relación de la imagen con el usuario. ¿Las personas pueden leer clara-mente el símbolo? ¿El símbolo es afectado por condiciones de luz, ángulo de visión u otro tipo de ruido? ¿El símbolo es igualmente efectivo al ser muy pequeño o muy grande?
• Semántica: Es la relación de la imagen con su significado. ¿Qué tan bien representa este símbolo a su significado? ¿Personas de distintas culturas entienden bien este símbolo? ¿Personas de distintas edades entienden el mismo significado? ¿Este símbolo es utilizado universalmente?
34
36 AIGA. Symbol Signs: The System of Passenger / Pedestrian Oriented Symbols Developed for the US Department of Transportation. Estados Unidos: Hasting House. 1981.
Un gran ejemplo de lo anterior es el trabajo iconográfico del Sistema de Transporte Colectivo
Metro de la Ciudad de México del diseñador Lance Wyman hecho en los años sesenta. Wyman
trabajó bajo la consigna de hacer pictogramas de cada una de las estaciones para que los visi-
tantes extranjeros (y analfabetas mexicanos) de los juegos olímpicos de 1968 pudieran identifi-
car las estaciones independientemente del idioma que hablaran.
Distribución y Agrupación
Al disponer controles y textos dentro de la interfaz, deben mantenerse márgenes consistentes entre
los bordes de las pantallas y los controles relacionados entre si deben mantenerse en grupo. Contro-
les que no tengan relación con otros deben mantenerse ligeramente separados.
Al hacer uso de márgenes se debe intentar usar una misma medida para que el usuario reconozca y
visualice la información más fácilmente.
Sonidos
Los estímulos auditivos informan a las personas de señales importantes que ocurren
a su alrededor, como alarmas contra incendios o bebés al borde de la inanición. Es
un sentido fuertemente ligado a la experiencia de vida de las personas mediante el
cual reciben información (no necesariamente crucial) del medio que los rodea. Las apli-caciones pueden hacer uso de este sentido para:
1. Llamar la atención del usuario y alertarlo de un cambio de estado relevante para él (por
ejemplo, batería baja);
2. Envolverlo en la experiencia de la aplicación (como lo hace la música de los video-juegos);
3. Dar más retroalimentación acerca de las acciones que realiza el usuario sobre el sistema (¿el mejor ejemplo? los tonos que se escuchan al marcar un número telefónico) y finalmente, pero no menos
importante;
4. Hacer la interfaz de usuario más divertida :)
35
Como todo en esta vida, debe hacerse un uso moderado de este recurso para evitar que sea demasia-do invasivo hacia el usuario y los archivos deberán ser de la máxima calidad posible evaluando también
que no sobredimensionen innecesariamente el tamaño final de la aplicación.
Principios Básicos para el Diseño de Interfaces
Además de las consideraciones enunciadas en la sección anterior, vale la pena mencionar una
de las listas de principios de diseño más universales, útiles y, al mismo tiempo, más actualiza-
das hasta el momento: 8 principios investigados y depurados durante veinte años por Shnei-
derman y Plaisant y nombradas “Las Ocho Reglas de Oro para el Diseño de Interfaces”37.
1. Buscar Consistencia:
Esto quiere decir homogeneizar las propiedades de los elementos visuales como por ejem-
plo: fuentes, distribución y tamaños; y unificar todos los términos utilizados a lo largo del
producto: menús, ventanas, avisos, documentación, etc..
2. Atender la Usabilidad Universal
Durante el diseño de la usabilidad de un producto, se debe tener en mente que los usua-
rios, por lo general, difieren en edad, experiencia y capacidades. Los usuarios inexpertos
agradecerán algunos mensajes de ayuda mientras que los usuarios expertos preferirán co-
mandos o atajos para realizar más rápidamente sus tareas.
3. Ofrecer Retroalimentación Informativa
Las acciones del usuario sobre el sistema, deben provocar alguna retroalimentación por parte de
éste, y esta retroalimentación debe ser proporcional a la magnitud de las acciones del usuario.
4. Agrupar las interacciones para indicar su fin
Las interacciones secuenciales con el sistema deben organizarse en grupo de tal forma que
un inicio y un fin puedan ser identificados y que al llegar a este, el usuario del sistema pue-
da encontrar el alivio emocional de “haber terminado una tarea” (esto también hace refe-
rencia al punto No. 3).
36
37 Shneiderman, Ben. Designing the User Interface: Strategies for Effective Human-Computer Interaction. Estados Uni-dos: Addison-Wesley. 2009.
5. Prevenir Errores
El sistema debe ayudarle al usuario a evitar errores, por ejemplo: evitar caracteres alfabéti-
cos dentro de un campo destinado a “Código Postal”.
6. Permitir la fácil retracción de las acciones
A todos nos gustaría que la vida tuviera un botón de “CTRL-Z” que aliviara la ansiedad y
miedo de cometer errores y explorar nuevas posibilidades. Dentro de lo posible, las accio-
nes efectuadas dentro de un sistema deben ser reversibles.
7. Hacer sentir al usuario que tiene el control
Un automóvil que no responde a la operación del usuario es un automóvil que nadie le gus-
taría usar (y una peligrosa situación que a nadie le gustaría vivir). Este fenómeno se presen-
ta también durante el uso de cualquier software.
8. Reducir la carga en la memoria de corto plazo
La memoria a corto plazo de las personas comunes esta limitada a retener 7 ± 2 ele-
mentos38. Esta es una consideración importante para el diseño de menús, opciones e
información dentro del producto.
Internacionalización y Localización
Estas nuevas plataformas de distribución permiten al desarrollador colocar sus aplicaciones
dentro de un alcance global. Salvo excepciones donde la aplicación se dirija a una audiencia
delimitada a una región de composición afín entre sí (idioma, cultura, etc), habrá que considerar
Oh là là!
37
38 Miller, George. The Magical Number Seven, Plus or Minus Two Some Limits on Our Capacity for Processing Informa-tion. Psychological Review, Vol. 101, No. 2. Páginas 343-352.
adaptar la aplicación, su contenido y recursos, para ser consumidos dentro de distintas culturas. A
este proceso, la estrategia de diseño en la que se soporta a la comunidad global de usuarios del
cómputo mediante variaciones sistemáticas entre regiones y culturas, se le denomina localiza-
ción39.
Por otro lado, la internacionalización significa “habilitar una aplicación o un sistema, para pre-
sentar distintos formatos y lenguajes sin cambios en su código fuente”40. El proceso de locali-
zación no se refiere únicamente al lenguaje escrito, sino a describir y alinear todo contenido de
una aplicación dentro de la familiaridad de la ubicación geográfica, el lenguaje, sensibilidades
particulares y los formatos numéricos de una cultura.
La lista de items a considerar para una localización incluye principalmente:
• Menús y cualquier texto estático dentro de la aplicación
• Íconos y gráficas,
• Archivos de sonido que incluyan palabras
• Ayuda en línea (si es que la hay)
• Texto dinámico como fechas, horas y valores numéricos
En la mayoría de los casos, no será indispensable contar una localización que incluya 125
idiomas, pero se deberá identificar perfectamente la audiencia a la que va dirigida el producto y
a partir de esto, evaluar qué idiomas y localizaciones son los más importantes para la comer-
cialización del producto y hacerlo de los más inclusivos o generales hacia los más particulares.
Una localización prácticamente indispensable es la del idioma inglés, pero algunos casos es-
pecíficos requerirán alguna otra con la misma urgencia: un diccionario francés-español / espa-
ñol-francés, deberá estar localizado (al menos) para el idioma francés y español.
38
39 Rosson, Mary Beth. Usability engineering: scenario-based development of human-computer interaction. Estados Uni-dos: Morgan Kaufmann. 2002. Página 352.
40 Kogent Solutions Inc. Java Server Programming Java Ee5 Black Book. Estados Unidos: Dreamtech Press. 2008. Apéndice H.
Buena Idea: La primera localización que uno debería pensar en hacer es para el idioma inglés.
Accesibilidad 41
Accesibilidad42 se refiere al conjunto de características que debe proveer un
entorno, producto o servicio para ser usado en términos de confort, seguridad
e igualdad para todas las personas, particularmente para todas aquellas
personas con discapacidades. El diseño de las interfaces de usuario debe
ser pensado bajo la idea de diversidad y no en función de la persona co-
mún, promedio o joven: cualquier persona de cualquier edad debe ser capaz
de poder utilizar cualquier interfaz sin tener que enfrentar ningún problema.
Es deseable que si la plataforma provee algún componente para mejorar la accesibilidad de la
aplicación (como etiquetas especiales para un lector de voz) estos sean utilizados.
Consideraciones Particulares para Plataformas Móviles
Los dispositivos móviles son también un equipo de cómputo y como tal, comparte algunas ca-
racterísticas con computadoras de escritorio, laptops o servidores. Pero también presentan
características únicas y diferencias funcionales que requieren un enfoque nuevo al desarrollar
aplicaciones para ellos:
39
41 Macías, José A. New trends on human-computer interaction: research, development, new tools and methods. Estados Unidos: Springer. 2009. Página 133.
42 1st National Accessibility Plan 2004-2012. España. 2004.
Pantallas Pequeñas
Las resoluciones actuales de los dispositivos móviles más modernos se encuen-
tran alrededor de los 320 x 480 (iPhone 2G, 3G, 3GS, iPod Touch 2G, 3G) y 640
x 960 pixeles (iPhone 4). Resoluciones 3 o 4 veces más pequeñas comparadas
con la resolución del monitor de una computadora de escritorio común.
Como consecuencia, se requiere que el diseño de la interfaz de usuario
presente únicamente los elementos indispensables y que los mantenga en
una cantidad mínima para evitar un producto poco atractivo y difícil de usar.
Menos Memoria y Menores Capacidades de Procesamiento
Vivimos una época en la que el precio de las memorias RAM y los procesado-
res han permitido ser más indulgentes en la evaluación del desempeño y
aprovechamiento de los recursos que tienen nuestras aplicaciones. Sin em-
bargo, cualquier dispositivo móvil cuenta con una cantidad de memoria RAM
mucho más limitada y una capacidad de procesamiento aproximadamente 3
veces menor que el de una computadora de escritorio. Debe ponerse espe-
cial atención a fugas de memoria y uso ineficiente de la misma; de igual forma
debe mantenerse al margen el tamaño de todos los recursos multimedia.
Batería
Un teléfono o cualquier otro dispositivo móvil tiene una cantidad limitada de
energía provista por baterías. Un buen diseño en una aplicación debe pro-
curar evitar hacer cálculos innecesarios, conexiones redundantes a internet
o un uso innecesariamente intensivo de los servicios de posicionamiento
(GPS) que pudieran agotar la carga de las baterías del dispositivo y dejar al usua-
rio desprovisto de su inseparable gadget en una situación de vida o muerte.
<
40
Conexiones Costosas
En México, la conectividad en los dispositivos móviles (tanto voz y datos) tie-
nen un costo monetario muy alto43. La aplicación debe minimizar (sin com-
prometer su función) el número de conexiones a internet o el tamaño de los
datos que descarga, porque esto representa un costo para el usuario.
Servicios de Posicionamiento
Casi es obvio señalar que un dispositivo móvil implica movimiento. Esto le
puede dar al desarrollador nuevas posibilidades respecto a otras plata-
formas: saber la localización del usuario puede derivar en funcionalida-
des de mucho valor para este.
Gestos y Nuevas Formas de Interacción
Hasta hace no mucho tiempo, la interacción con los dispositivos electróni-
cos (no solo móviles) estaba limitada a las puntas de los dedos. Afortuna-
damente, las interfaces más recientes empiezan a incluir nuevas dimen-
siones entre esta interacción entre dispositivos e individuos: reconocimien-
to efectivo de voz, sensibilidad a gestos táctiles más complejos, sensibili-
dad al movimiento, cámaras, etc.
Para lograr una experiencia total y actualizada de la aplicación, se requiere pen-
sar en todas estas nuevas formas de interacción y buscar aprovecharlas de forma
que hagan la interacción con el usuario más natural, rápida y dinámica.
41
43 “[altas tarifas], las cuales son 43.5% superior al promedio de las que aplican los países miembros de la OCDE,” Alonso, Ramiro. "Cofetel envía modelo de costos a la Cofemer" El Universal. 3 de Marzo de 2011. Consultado el 25 de Marzo de 2011. <http://www.eluniversal.com.mx/finanzas/84947.html>
Ayuda Mínima
Una aplicación móvil tiene la intención de poder ser accedida fácilmente y ser
utilizada de manera rápida y efectiva. Por esta misma razón y el limitado
espacio en pantalla, se prefiere evitar la necesidad de mostrar una ayuda
en pantalla, el diseño de la interfaz de la aplicación puede recurrir a los con-
troles estándar de la plataforma, con los cuales el usuario estará familiariza-
do, disponiéndolos de una manera lógica y obvia, que lleve al usuario a intuir fá-
cilmente el funcionamiento de la aplicación.
Duración de la Interacción
La interacción de los dispositivos móviles ocurre en intervalos de tiempo muy
cortos y de manera paralela a las actividades cotidianas del usuario. Esto
quiere decir que las aplicaciones móviles se usan mientras el usuario con-
duce su automóvil44, usa el transporte público o espera formado en una lí-
nea al borde de un aburrimiento paralizador y que por esta misma razón de-
berán ser breves, rápidas y altamente funcionales ya que el usuario no tiene la
capacidad de invertir mucha atención mientras las utiliza.
Interacción Individual con las Aplicaciones
El usuario de un dispositivo móvil utiliza una única aplicación a la vez mientras utiliza su dispo-
sitivo. Aunque es posible que viaje entre una y otra, esta tarea esta aún lejos de ser igual de
eficiente que una computadora de escritorio; este suplicio debe ser evitado a toda costa.
Por ejemplo: que el usuario deba abrir una sesión de su explorador para registrarse en un for-
mulario y después de eso, regresar a la aplicación en cuestión.
42
44 Se estima que 28% de los accidentes automovilísticos en EU están relacionados con el uso de teléfonos.
Halsey III, Ashley. "28 percent of accidents involve talking, texting on cellphones" The Washington Post. 13 de Enero de 2010. Consultado el 4 de Marzo de 2011. <http://www.washingtonpost.com/wp-dyn/content/article/2010/01/12/AR2010011202218.html>
Integración con el Sistema del Dispositivo
Este punto apela al primer principio básico para el diseño de interfaces de usuario: consisten-
cia. El usuario de un dispositivo móvil, estará familiarizado con los menús y ventanas que pre-
sente su sistema operativo y la aplicación deberá intentar adaptar estos elementos y sus para-
digmas dentro de ella con naturalidad. Poner poca atención a las características y lineamientos
particulares de cada plataforma deja al usuario con una sensación inconsciente de que su apli-
cación está pobremente desarrollada o incompleta.
Medir Resultados: Tests de Usabilidad
Una prueba de usabilidad intenta caracterizar el Look’n Feel de la aplicación y sus aspectos de
uso desde el punto de vista del usuario. Por lo tanto estas pruebas (más correctamente valida-
ciones), son subjetivas y varían entre usuario y usuario. A grandes rasgos, lo que esperarían
evaluar es:
1. Facilidad de uso
2. Velocidad
3. Satisfacción visual (estética)
Hacer un test de usabilidad a gran escala y de la forma tradicional es costoso y requiere un
gran esfuerzo, pero existen formas alternativas de llevar a cabo “tests de usabilidad caseros”
que mejorarán notablemente el resultado de cualquier aplicación. Basada en una descripción
de David Barnard45, una guía rápida para realizar tests de usabilidad:
43
45 Mark, Dave. IPhone User Interface Design Projects. Estados Unidos: Apress. 2009. Capítulo 3.
1. Primero lo primero: hay que encontrar algunos usuarios de la plataforma para que analicemos los
resultados que tienen nuestras interfaces sobre ellos46. Estamos buscando al usuario común de la
plataforma, no un power-user o mucho menos al hacker experto que le ha hecho intrincadas modi-
ficaciones al sistema operativo de su teléfono. Al mismo tiempo, estamos buscando usuarios que
sean representativos del mercado al que nos estamos dirigiendo.
Amigos, amigos de amigos o extraños con caras amigables en un restaurante de comida rápida
usando un dispositivo de la plataforma en cuestión, son buenos sujetos para pruebas de usabilidad.
Buena Idea: Nada mejor para despertar el interés de los sujetos de estudio que
recompensar su participación con algún atractivo incentivo como: una copia gra-
tuita del producto, cerveza gratis, una comida o tarjetas pre-pagadas para una al-
guna tienda electrónica de música.
2. Encontrado algún sujeto de estudio, comienza la prueba de usabilidad. En este segundo paso se
limitaría a presentarle la aplicación junto con una descripción breve de lo que hace y a explicarle
que en la prueba no hay respuestas buenas o malas y que sus errores son valiosos para el resul-
tado. Hay que hacer hincapié en que esta descripción no es un tutorial de cómo utilizarla.
3. A continuación se le ponen al sujeto de estudio algunos casos de uso dentro de la aplicación
para observar su interacción y escuchar lo que el sujeto de estudio dice mientras realiza es-
tos casos. Es importante resistir la urgencia de intervenir y “guiarlo” por la aplicación. De es-
ta forma se pueden observar dónde puede mejorar la interfaz del usuario.
Ej: si los usuarios no asocian las imágenes de la interfaz con su significado sería conveniente cam-
biarlas por imágenes más representativas o por texto; si de pronto el usuario queda estupefacto sin la
mínima idea de cómo enfrentar un caso de uso, y esto requiere una larga explicación por parte del
desarrollador, es una señal inequívoca de que la interfaz es un fracaso y necesita rediseñarse comple-
tamente. Un resultado como este puede ser doloroso para desarrolladores apegados a alguna idea
de interfaz en particular, pero es indispensable estar dispuesto a ajustarla, cambiarla y (en un enfoque
casi budista) “dejarla ir” con el fin de satisfacer verdaderamente las necesidades reales del usuario.
44
46 ¿Alguien dijo cuyos?
¿Qué esperar de una buena interfaz?
En resumen, todo el esfuerzo invertido en la interfaz de usuario busca:
1. Hacer el uso de la aplicación obvio: La función principal de la aplicación debe ser inmedia-
tamente visible para los usuarios expertos e inexpertos. Todos los principios mencionados
anteriormente además de los lineamientos y componentes estándar de cada plataforma son
una forma de lograr esto.
2. Hacerlo consistente: Los usuarios tienen una idea general de cómo operar sus dispositivos:
conocen, entienden y esperan comportamientos, metáforas y gestos que utilizan en su dis-
positivo comúnmente para operar el sistema o utilizar las aplicaciones originales del mismo.
Estas ideas generales debe ser replicadas dentro de la aplicación para ser consistentes con
el dispositivo. Por supuesto, si hay forma de extender la interfaz y lograr alguna innovación,
esta idea no debe ser rechazada solo por no ser estándar.
Con el fin de involucrar y comprometer al usuario en la utilización de la aplicación y, si existe,
en la marca que la comercializa. Elementos que se traducen en mayores ventas, elección sobre
los competidores y expectativas de los usuarios sobre nuevos productos.
45
/ Marketing“I do not read advertisements - I would spend all my time wanting things”
- Franz Kafka
El marketing47 es un conjunto de actividades que tiene dos objetivos. Primero, atraer nuevos compradores hacia un bien o servicio haciendo énfasis en el posible valor que este podría tener
para ellos. En segundo lugar, conservar a los clientes ya existentes buscando continuamente la satisfacción que tienen con un producto.
Su papel dentro del desarrollo de aplicaciones es crítico ya que sin compradores, no habría ga-
nancias que costearan el trabajo y recursos invertidos en el desarrollo y porque sin importar el orden de eficiencia de los algoritmos empleados o qué tan buena e innovadora sea una idea,
los nuevos entornos de distribución son tan competitivos que exigen un esfuerzo de marketing para una aplicación exitosa.
Una estrategia de marketing involucra principalmente dos actividades48: identificar una audien-
cia a la cual dirigir un producto, determinando el posicionamiento deseado de ese producto en su mente, y hacer un plan para lograrlo. Con la idea de plan, este capítulo sugiere 6 pasos cla-
ves para la publicación y distribución de una aplicación. Pasos que no deben ser vistos como un evento único, sino como un esfuerzo continuo.
46
47 Moore, Karl. Marketing: the basics. Inglaterra: Taylor & Francis. 2009
48 Silk, Alvin. What is marketing? Estados Unidos: Harvard Business Press. 2006
1. Conocer a la audiencia
Sería imposible pensar en una estrategia de marketing sin conocer y delimitar
la audiencia a que este irá dirigido. Este paso permite, además, hacer un uso más eficiente de recursos limitados como tiempo y dinero que hay que
invertir en estas labores.
El propósito y función de la aplicación da una idea general de hacia qué público va dirigido el producto, pero entre más conocimiento se tenga de la audiencia, más fácil será elegir los me-
dios adecuados para hacer llegar los mensajes publicitarios hasta ella y satisfacer sus necesi-dades y expectativas a través del producto de software.
La forma en que las grandes empresas llegan a conocer su mercado es a través de estudios de
mercado, los cuales les proveen información acerca de las razones por las cuales las personas compran sus productos, la importancia de estos productos en su estilo de vida, etc.
Aunque el desarrollador emprendedor no tiene la capacidad de invertir en un detallado estudio
de mercado, hay formas de conocer mejor a su audiencia invirtiendo tan solo algo de tiempo.
Una de estas formas es mediante la revisión de reseñas de otros productos semejantes en la tienda electrónica. El estudio de estas reseñas (por lo general, brutalmente honestas y ocasio-
nalmente devastadoras), provee un mayor conocimiento acerca de las personas que compraron ciertos productos y la satisfacción general que han tenido con ellos: ¿qué es lo que están espe-
rando de una aplicación?, ¿cuáles son los puntos débiles que encuentran en ella?, ¿cuáles son las funcionalidades que más valoran?, ¿cuál es la forma en que utilizan cierto producto? y ¿qué
es aquello que significa más valor para ellos?
Después de una indagación rápida del mercado, puede empezarse a definir algunos puntos clave a fin de conocerlo mejor. Algunos fabricantes ponen a disposición de los programadores cifras acerca
de las ventas de sus dispositivos y detalles como el número de descargas que realizan, etc.
47
Si la plataforma no cuenta con información oficial al respecto, estas pueden ser buscadas en internet o en una revisión de notas de prensa relacionadas con las ventas de los dispositivos de
interés. Cruzando los datos obtenidos en la investigación de la plataforma junto con el conoci-miento que se tiene acerca de la audiencia de la aplicación, pueden resolverse algunas pregun-
tas acerca del mercado como:
• ¿De qué tamaño es la audiencia?
• ¿A qué demografía pertenecen? (país, sexo, ubicación geográfica, profesión, etc.)
• ¿Cuáles son los hábitos de su estilo de vida?
• ¿A qué grupo de edad pertenecen?
48
2. Elementos Importantes de Marketing Dentro de la Aplicación
La impresión de marketing más importante de un producto es creada a partir del uso y contac-
to con él. Los siguientes elementos deben lograr esta impresión fuerte, positiva y única con el
usuario durante el uso de la aplicación.
Nombre de la Aplicación
El nombre de la aplicación es importante para su marketing, ya será identificada
verbalmente con este título dentro de reseñas, listados y motores de búsqueda.
En primera instancia deberá ser suficientemente corto para desplegarse completo en las tiendas y los dispositivos. Además de ser original y creativo, debe intentar
describir la funcionalidad del programa y resolver intuitivamente la pregunta que cual-
quier comprador potencial se hará: ¿para qué sirve esta aplicación?
“Word” de Microsoft o “Pages” de Apple son ejemplos de un buen nombre. Al mismo tiempo
que son originales y simples, los dos nombres nos dan una idea de su funcionalidad, ambas aplicaciones son procesadores de textos.
Deberán evitarse nombres difíciles de deletrear o pronunciar: son más difíciles de recordar, más
difíciles de encontrar en la tienda digital donde se distribuya y es más difícil para las personas
distribuir el rumor de boca en boca. Como una regla general: si al decirlo por teléfono, el nom-
bre se confunde y descompone al grado de recordar el juego “teléfono descompuesto”, enton-ces seguramente se trata de un nombre muy complicado y debería optarse por otro menos
pomposo y más claro. Los formatos de escritura afines a la cultura del hacking son otro ejem-
plo de como no titular una aplicación.
Mala Idea: Ponerle un nombre “l33t” a una aplicación: b1nary.
49
Por último, hay que cerciorarse de que el nombre no esté infringiendo alguna marca registrada
o propiedad intelectual y que por esta razón la aplicación pudiera no ser aprobada para su pu-
blicación en la tienda electrónica.
Look’n Feel
“Look and Feel” es un término que se refiere a la descripción de la aparien-
cia de una aplicación, las sensaciones que esta evoca en el usuario y las
acciones que él puede tomar dentro de ella.
Puede optarse por apegarse completamente a los controles estándar de la pla-
taforma o complementarlos con gráficos y otros elementos multimedia para buscar “sumergir”
al usuario en la experiencia del software.
En cualquiera de los casos, debe valorarse en primer lugar a la audiencia a la que el producto
va dirigido junto con sus expectativas y ser creativo dentro de los límites de este contexto,
buscando consistencia en su apariencia y función para lograr simplicidad y facilidad de uso al
mismo tiempo que sea atractivo e innovador para sobresalir entre otros productos similares.
Aspectos de usabilidad, elementos de diseño y otros detalles son mencionados en el
capítulo “Interfaces de Usuario”.
Buena Idea: Si el proyecto no es solamente una aplicación, sino una familia de aplicacio-
nes, el look’n feel de las mismas debe ser consistente entre todas ellas.
Ícono
50
Todos estamos familiarizados con esas pequeñas imágenes que sirven
para acceder e identificar aplicaciones, documentos y componentes de un
sistema computacional. Pero además de su función utilitaria, los iconos se
han convertido en una parte crucial dentro de la mercadotecnia de una
aplicación móvil, ya que junto con el nombre de la aplicación, son los pri-
meros elementos a los que los potenciales compradores están expuestos.
Hoy en día, un ícono podría jugar un papel similar al que tendría el empaque en cualquier otro
producto: una envoltura que además de proteger al producto que contiene, sirve para promo-
verlo y dar información acerca de él.
De la misma forma que al elegir el nombre de la aplicación, se deberá optar por un íco-
no que ayude a transmitir el mensaje general de la aplicación y que visualmente provea
una idea acerca de su función.
Si se tratara de un diccionario francés-español, sería lógico que el ícono apelara a banderas
francesas y españolas o libros semejantes a un diccionario. Este reto también puede ser en-
frentado usando el método de AGAI descrito en el capítulo sobre Interfaces de Usuario.
El icono deberá ser suficientemente simple para poder ser reconocible en un tamaño pequeño
(actualmente cerca de 60px de ancho) y suficientemente atractivo para emplearse en otros
medios en un tamaño mucho mayor.
Pantalla Splash
Esta pantalla es el inicio de la experiencia del usuario con la aplicación y es una
práctica estándar que sea utilizada para llevar el mensaje de la marca de la apli-
cación. Esta pantalla le confirma al usuario que ha iniciado la aplicación correcta
y, empleada con astucia, sirve para disimular un tiempo de arranque lento.
Si el tiempo de carga es muy lento, es una buena práctica que esta pantalla retroali-
mente al usuario con información sobre el porcentaje de los recursos que han sido cargados (Ej: 69%).
51
Actualizaciones
Dependiendo de la plataforma, la actualización del software en las platafor-
mas móviles puede no requerir de grandes esfuerzos de distribución o insta-
lación ni por parte de los usuarios, ni de los desarrolladores, ya que es la
tienda virtual la que se encarga de avisar a los usuarios sobre las nuevas ac-
tualizaciones y de gestionar su descarga e instalación; o bien, puede requerir
que la verificación de nuevas versiones de la aplicación se haga dentro de la aplicación.
En general, siendo un proceso simple, puede despertarse la tentación de liberar una nueva ver-
sión del software cada 72 horas, pero es preferible tener una agenda con espacios de al menos
dos semanas entre actualizaciones menores o un espacio aún mayor para actualizaciones que
involucren nuevas funcionalidades.
El propósito de estos intervalos es darle al usuario tiempo para reconocer la aplicación y
su interfaz y evitar confundirlo. La excepción a esta regla son las actualizaciones que co-
rrijan errores críticos de la aplicación que signifiquen pérdidas de información o termina-
ciones inesperadas. Actualizaciones de esta categoría deben ser realizadas de manera
inmediata sin considerar la frecuencia.
Ante cualquier actualización de software, todo el material de la tienda debe ser actualizado si
es necesario. Principalmente, el “copy” de la aplicación debe mencionar las nuevas funcionali-
dades que fueran añadidas y si la tienda permite la escritura de un texto específico para men-
cionar los cambios hechos en cada versión, éste debe aprovecharse.
Las actualizaciones son también otra forma de “mantenerse en contacto” con los usuarios re-
cordándoles el valor de su inversión.
52
3. Elementos de Marketing dentro de la Tienda Electrónica:
Para el comprador, la experiencia de la tienda electrónica es análoga a la
de entrar a un super-mercado gigante, recorrer sus pasillos categorizados y
encontrar miles de productos intentando llamar su atención. Para lograr esto,
el desarrollador debe hacer el mejor aprovechamiento y presentar de la mejor
forma cada uno de los elementos que la tienda pone a su disposición.
Screen-shots
Cualquier tienda brinda la oportunidad de poner algunas impresiones de pantalla de la aplicación para que los compradores obtengan una idea general de cómo
luce y cómo se comporta.
Las impresiones de pantalla dentro de una tienda digital están cerca de jugar el
papel de la fotografía de producto49: imágenes que muestran comida, automóviles, ropa o una infini-
dad de artículos con la intención de venderlos o promocionarlos y donde son presentados de forma en que son personal y estéticamente agradables.
La experiencia que mejor describe los fenómenos asociados a este tipo de fotografía es el visitante indeci-
so de una cadena de hamburguesas mientras está formado y observa las fotografías del menú que pre-
sentan suculentas hamburguesas en colores vibrantes. El cliente siente repentinamente una pulsión inapla-
cable por descubrir la última invención de la comida rápida. Esta urgencia no es una casualidad, sino que hay una larga trayectoria de técnicas de mercadeo y fotografía para despertar esta reacción.
Análogamente, las pantallas presentadas deben intentar despertar en el usuario la urgencia de com-
prarla, buscando las pantallas visualmente más atractivas y las más significativas en términos de fun-
cionalidad. Si el screen-shot muestra la operación de algunos datos o información, estos deberán po-
der relacionarse con la audiencia para lograr que reconozca inmediatamente el valor que significaría
53
49 Arntson, Amy E.. Graphic design basics. Estados Unidos: Cengage Learning. 2007. Página 173.
adquirir la aplicación. Por ejemplo: una aplicación para organizar las tareas dirigida a estudiantes uni-versitarios podría mostrar datos como “Calculo I”, “Algebra”, etc.
Copy (Descripción)
“Copy” es el nombre de un texto descriptivo acerca de un producto, servi-
cio o negocio que intenta alentar a posibles clientes adquirirlo. Este tipo de
textos se encuentran comúnmente en el reverso de libros y películas y, hoy en
día, en todas las tiendas electrónicas de software.
Si algún interés de compra fue despertado en el usuario de la tienda después de ver el
ícono de la aplicación, nombre y screen-shots, este puede tomarse la molestia de leer la des-
cripción del producto con el fin de saber más acerca de él, su funcionamiento y finalmente, to-
mar una decisión sobre si comprarlo o no.
Podría parecer un elemento secundario dentro del proceso de compra, pero este texto será
una referencia para reseñas en sitios de aplicaciones y prácticamente cualquier otro medio. Al-
gunos consejos básicos para la escritura efectiva de un “copy” son:
• Simplicidad y Claridad: El texto debe anticipar y resolver claramente y de forma concisa las preguntas esenciales que
cualquier comprador se haría antes de adquirir el producto.
• Describir Beneficios: Además de pensar en describir únicamente características del programa (que individualmente
no se traducen en nada para el usuario. Ej: “el algoritmo más rápido de su categoría” o sími-les), estas deben estar asociadas con los beneficios directos que le otorgan al usuario y que
le dan valor a la aplicación.
54
• Estructura de Pirámide Invertida:
Una técnica común en el periodismo50, consiste en colocar la información más relevante al principio del texto y continuar así, hasta terminar con la información de menor trascendencia.
• Dirigirlo a la audiencia:
El esfuerzo de reconocer la audiencia de la aplicación y alinear todo su material hacia ella no termina en el archivo ejecutable. Todos los recursos incluyendo el “copy” deberán ser dirigidos específica-
mente al segmento de la aplicación. El formato de escritura y los puntos descritos en él, deben ser relevantes para esta audiencia y ésta debe poder sentirse identificada con lo que el “copy” dice.
• Menos es más:
Los textos, párrafos y oraciones largas deben ser evitados51, estos hacen que la información sea difícil de consumir y exigen mucho trabajo por parte de un comprador que en principio tie-
ne poco interés por la lectura. Un párrafo largo puede ser descompuesto en párrafos más pe-queños y el texto en general tiene que ser revisado y reducido iterativamente hasta obtener la
versión más reducida posible sin comprometer su contenido.
• Ortografía: No hay forma más simple de perder credibilidad ante un lector que teniendo faltas de ortogra-
fía y mala puntuación. En la actualidad los procesadores de texto cuentan con correctores or-tográficos bastante efectivos y un googleo fugaz ofrece pronta respuesta a las dudas más os-
curas acerca del uso del idioma. Un error de esta categoría es inadmisible y vergonzoso.
• Incluir Reseñas o Logros Notables: Si la aplicación ha sido reseñada positivamente por algún medio notable o si ha alcanzado
alguna categoría sobresaliente (Top 100, etc), no está por demás mencionarlo.
55
50 Sloan, William David. American journalism: history, principles, practices. Estados Unidos: McFarland. 2002. Página 304.
51 Robert D. Reid. Hospitality Marketing Management. Estados Unidos: John Wiley and Sons. 2009. Página 457.
Categoría
Más de 400 mil 52 aplicaciones en el App Store de Apple, 150 mil53 en el Android Market y
cerca de 11 mil 50054 sobre Windows Phone. Aunque organizadas por categorías, encon-
trar la aplicación de uno, puede compararse sin exageración a buscar una aguja en un
pajar. Seleccionar la categoría (o categorías) adecuadas puede ser un factor crítico para
el éxito o fracaso de una aplicación.
Como una solución rápida pero efectiva puede realizarse una encuesta a unos cuantos
amigos para determinar en cuáles categorías esperaría un usuario encontrar cierta aplica-
ción y apostar por el consenso.
Si el consenso converge en dos o más categorías, aquella que tenga menos aplicaciones
ofrece menos competencia.
Reseñas y Calificaciones de Usuarios
Las reseñas de otros usuarios que se publican en las tiendas de distribución tam-
bién influyen en la decisión de compra de potenciales consumidores. Inclu-
56
52 Apple Special Event. 20 de Octubre de 2010
53 Weinberg, Stuart. RIM Tries to Push PlayBook Tablet. The Wall Street Journal - Technology. 15 de Abril de 2011. Con-sultado el 20 de Abril de 2011.<http://online.wsj.com/article/SB10001424052748704547604576263222185099548.html?mod=googlenews_wsj>
54 Chan, Sharon. MIX11: Microsoft hosts Windows Phone 7 developers in Vegas. The Seattle Times - Microsoft Pri0. 11 de Abril de 2011. Consultado el 20 de Abril de 2011.<http://seattletimes.nwsource.com/html/microsoftpri0/2014744451_mix11_microsoft_hosts_windows_phone_7_developers_i.html>
so la falta de reseñas está asociada con menores descargas55, por lo que la aplicación (me-
diante alertas o mensajes que no lleguen a ser invasivas) debe invitar al usuario a que éste
deje una calificación y reseña en la tienda.
Buena Idea: Para lograr algunas primeras reseñas puede regalarse la aplicación a algu-
nos colegas e invitarlos a que dejen una reseña honesta sobre la misma.
También es útil para el equipo de desarrollo que se mantenga al pendiente de estas re-
señas para escuchar a sus usuarios sobre bugs, nuevas ideas y pistas para priorizar
futuras actualizaciones y nuevas funcionalidades.
Palabras Clave (Keywords)
Las palabras clave son términos que introducen los usuarios en el motor de búsqueda de la tienda electrónica para encontrar dentro de toda ella alguna aplicación que les interese.
No es una característica que está disponible explícitamente en todas las tiendas. Si
este fuera el caso, las palabras claves podrían contenerse dentro del “copy” de la
aplicación o, como una buena práctica general, se pueden incluir algunas de estas
palabras claves junto al título de la aplicación.
Las palabras claves deberán ser términos relacionados con las funciones, funcionalidad y uso
de la aplicación. Aunque aparentemente una actividad trivial, puede ocurrir que después de
dedicar largas horas a la búsqueda de palabras claves se termine solo con un par de términos.
En estos casos la herramienta KeyWord Tool56 de Google Adwords, un motor que muestra tér-
minos relacionados a otro término, puede ser de utilidad.
Por ejemplo, para una aplicación médica que registra los niveles de glucosa de los pacientes,
el primer término obvio para la búsqueda es glucose. La búsqueda de este término en
57
55 Amblee, Naveen. Three empirical studies on the impact of electronic word-of-mouth on digital microproducts. Estados Unidos: ProQuest. 2007. Estudio número 3.
56 Disponible libremente en: https://adwords.google.com/select/KeywordToolExternal
KeyWord Tool arroja los siguientes términos relacionados los cuales pueden ser valiosos para búsquedas dentro de la tienda:
• high glucose• glucose meters• glucose monitoring• glucose level• blood glucose monitor• blood glucose chart
Precio
El objetivo al fijar el precio de una aplicación es único: maximizar las ga-
nancias. Obviamente esto no puede lograrse con el simple hecho de dar el
precio más alto posible, sino que deberá buscarse el precio máximo posi-
ble sin que reduzca importantemente el número de compradores. Al mismo
tiempo, un precio bajo (o incluso gratuito) no es por sí misma condición sufi-
ciente para despertar un frenesí de descargas. Este resultado es la combinación
de una aplicación útil y de calidad y esfuerzos efectivos de marketing.
Para la evaluación del precio, se toman en cuenta dos perspectivas: desde el punto de vista
del comprador se considera el valor que tiene la aplicación para él, mientras que desde el pun-
to de vista del programador, se consideran factores como:
1. Costos de producción
2. Valor del tiempo invertido
3. Dificultad técnica de su realización
4. Características y ventajas del producto
5. Precio de la competencia
Los factores 1 y 2 deben ser cotizados y evaluados junto con los puntos 3 a 5 para hacer una estimación del precio total del producto y el número de ventas necesarias para costear-lo. Del número de ventas debe descontarse el porcentaje de las ganancias que retiene la tienda (30% en la mayoría de los casos).
58
Definido el costo asociado con el desarrollo, un buen ejercicio es revisar precios y característi-
cas de aplicaciones similares, ver su rango de precios y comparar su funcionalidad con la apli-
cación en cuestión. A partir de esta comparativa, se tienen 3 estrategias posibles57:
• Dar el precio más alto entre los competidores y medir los resultados.Esta alternativa es posible si la aplicación ofrece un valor adicional sobre las
aplicaciones que ya existen.
• Dar un precio intermedio y medir los resultados.Lejos de ser caro, sin ser barato: el aristotélico “justo medio”.
• Dar el precio más bajo y apostar por el volumen de ventas.
Esta es la alternativa más simple de todas, pero deja poco espacio para otras estrate-gias como ofertas de temporada. Obviamente, exige un volumen de ventas mucho ma-
yor para poder recuperar los costos.
Si después de algunas semanas no se generan las ventas esperadas, puede disminuirse el
precio de la aplicación y volver a medir los resultados de sus ventas durante algunas semanas.
Como un ejercicio, supongamos que el rango de precios de aplicaciones similares está entre $10
y $30 pesos y que los costos de producción de nuestra aplicación son de $20,000. Con estos
datos, se puede calcular el número de ventas necesario para cubrir el costo del desarrollo:
Precio de Venta Ganancias (Menos 30%) No. de Ventas Necesario
MEX$10.00 MEX$7.00 2857
MEX$20.00 MEX$14.00 1429
MEX$30.00 MEX$21.00 952
59
57 Hughes, Jeffrey. iPhone and iPad Apps Marketing. Estados Unidos: Que Publishing. 2010. Página 155-156.
Buena Idea: Los usuarios esperan un alto estándar de calidad independientemente del
precio que hayan pagado. El hecho de haber pagado $10 pesos por una aplicación, no
significa en que sus evaluaciones y comentarios sean más considerados.
Otra opción para costear el desarrollo de un producto es recurrir a publicidad dentro de la aplicación.
4. Tener un sitio web para el producto
Un sitio web es útil por tres razones fundamentales: genera confianza en po-
sibles compradores, puede proveer más información y contenido más rico
sobre la aplicación como imágenes y video, tutoriales, etc y es un punto de
entrada y referencia para otros sitios y buscadores.
Todo el contenido del sitio debe ser consistente con el arte de la aplica-
ción y con su exhibición en la tienda: nombres, descripciones, logos, imágenes, screen-
shots, etc. Como mínimo la información contenida en este medio, deberá presentar la
misma información de la tienda virtual.
Un reto adicional radica en que además de visitar el sitio del producto, los compradores des-
pués tienen que dirigirse a la tienda electrónica para efectuar su compra.
Información indispensable del sitio
Además de una presentación atractiva y clara, el sitio deberá resolver todas las preguntas bá-
sicas que cualquier comprador se haría y vincularlo hacia todas las otras formas de contacto
que pueden tenerse con el:
• Precio
• Screen-shots
• Copy (mencionado en el punto no. 5 del capítulo)
• Mencionar la plataforma de la aplicación
• Vínculos a redes sociales
60
• Links hacia otros productos
• Información de contacto y soporte
• Reseñas notables
• Y no olvidar incluir un link a la tienda para que los interesados tengan acceso inmediato a su punto de venta.
Después de la tienda, el sitio web del producto es el punto de entrada más importante para
vender el producto. Para mejorar su visibilidad ante buscadores y obtener un mayor número de
visitas que podrían traducirse en ventas, deben aplicarse algunas técnicas para optimizar su
contenido ante los buscadores (Search Engine Optimization, SEO):
Algunas Estrategias de SEO
• <title> - Título de la Página
Las palabras claves dentro de la etiqueta de título son muy relevantes para los buscadores y, dentro de los resultados de una búsqueda, son la guía más importante para la navegación del
usuario. Además del nombre de la aplicación, es conveniente incluir el nombre de la platafor-ma.
• Meta-etiquetas:
Aunque estas etiquetas han dejado de ser ponderadas importantemente en los algoritmos de los motores de búsqueda, continúan siendo útiles para la mejor categorización de la informa-
ción y algunos sitios continúan utilizándolas. De todas estas etiquetas, <description> es la más importante, ya que en los resultados de una
búsqueda, se utiliza para dar una descripción breve de cada uno de los resultados.
• URLUna buena URL es aquella que es corta, estática, que contiene información legible y significa-
tiva de su contenido y que es fácil de recordar. La recomendación esencial es utilizar un dominio propio con un proveedor de hosting confia-
ble: los dominios de servicios gratuitos son más largos, pueden ser clasificados como menos
61
importantes por los buscadores y transmiten una imagen menos profesional hacia los usua-
rios.
• Palabras Clave:
Además de incluirse en el título y las meta-etiquetas, las palabras clave deberán estar presen-tes en todo el sitio. El “copy” del producto deberá incluir estas palabras clave y palabras rela-
cionadas con la semántica de la aplicación.
• Enviar el sitio a los buscadores importantes:Sin links apuntando al sitio del producto, enviar el sitio a los buscadores es la única forma de
que estos lo conozcan. Google, Bing y Yahoo son los más importantes58.
5. Mantenerse en Comunicación
La tecnología actual no solo ha facilitado la comunicación entre individuos, sino la comunica-
ción entre individuos, las marcas que usan y las compañías que las producen. En esta nueva
comunicación, los consumidores se acercan a las compañías en búsqueda de información so-
bre sus productos y ahora tienen la posibilidad de decirles qué les gusta o qué no les gusta y
hacer resonar esta opinión con el uso de tecnología. Esto es una nueva oportunidad que tienen
los vendedores para crear, atraer y mantener la atención de consumidores; conocer el merca-
do; y crear experiencias de marketing personalizadas.
Las últimas tendencias señalan que esta comunicación no debe tener un espíritu corporativo,
sino que debe ser una comunicación que se perciba como directa y constructiva hacia una
comunidad global, estableciendo vínculos significativos y de valor con ella. Esta tarea puede
realizarse utilizando algunos medios clave como:
62
58 Experian Hitwise reports Bing-powered share of searches reaches 30 percent in March 2011. Experian - Hitwise. 11 de Abril de 2011. Consultado el 21 de Abril de 2011.<http://www.hitwise.com/us/press-center/press-releases/experian-hitwise-reports-bing-powered-share-of-s/>
Blog
Un blog es una forma simple, personal e incluso gratuita de mantener co-
municación con una comunidad de usuarios.
Pueden mencionarse nuevos lanzamientos de aplicaciones, actualizaciones,
avances de una aplicación u ofrecer guías rápidas para llevar a cabo alguna
tarea dentro de la aplicación. Su efectividad se alcanza cuando su contenido es
más que un vendedor tratando de vender algo y se convierte en una fuente de información que la
gente está interesada en consumir: esto puede incluir un debate acerca de algún tema íntimamente
relacionado con el producto o una historia interesante acerca de la experiencia de desarrollo.
Buena Idea: Mantener los posts de aventuras personales y opiniones de política y reli-
gión en un blog personal separado del blog del producto o la marca.
Algunas buenas prácticas son:
• Utilizar Really Simple Syndication (RSS)RSS59 es un formato de re-difusión para compartir el contenido de un sitio con otras aplicacio-
nes utilizando un archivo estandarizado. De esta forma, un usuario puede utilizar un sitio en distintas aplicaciones y ser notificado
acerca de actualizaciones a través de varios servicios. Muchas personas no navegan por las decenas de blogs que leen y prefieren agrupar sus con-
tenidos con un lector de feeds RSS.
63
59 Hammersley, Ben. Developing feeds with RSS and Atom. Estados Unidos: O'Reilly Media, Inc. 2005. Capítulo 1.
• Anunciar las nuevas entradas en las redes socialesAlgunas otras personas no utilizan RSSs. Twitter y Facebook son otra forma de llegar a ellas.
• Habilitar Comentarios:
Una buena comunicación es bidireccional. Los comentarios son una forma de co-nocer y construir una comunidad.
Redes Sociales
Las redes sociales son un canal de comunicación reciente que maximiza las posibilidades de
marketing viral, es decir, marketing que tras su lanzamiento se propaga como un virus sin ne-
cesidad de tener que invertir ningún esfuerzo adicional en él. Más sencillamente60 el marketing
viral, es el rumor de boca boca. Para lograr propagar una campaña de esta forma, se requiere
que el producto represente beneficios reales para los usuarios y que sea un producto relevante
para muchas de personas.
Este tipo de canales son una forma más para despertar el interés de compradores potenciales
y obtener mayores ventas. Hay un sinnúmero de redes sociales, pero Twitter y Facebook son
redes de interés general y las más relevantes a nivel mundial por su número de usuarios y tráfi-
co. Por esto, son un paso obligatorio en la estrategia de marketing.
Por otra parte, si el producto va dirigido a un nicho de mercado muy específico, no deben dejarse a
un lado otras redes afines a este nicho, como por ejemplo, MySpace en el mercado de la música.
64
60 布卢姆斯伯里出版公司. Business. Japón: 中信出版社. 2003. Página 628.
Facebook es la red social más importante61 en la actualidad. Cuenta con más
de 500 millones62 de usuarios activos, de los cuales el 40% utiliza el servi-
cio desde su dispositivo móvil.
Los puntos de interés de Facebook dentro de estas estrategias de marke-
ting son el de establecer una relación con los compradores y tener una refe-
rencia acerca del tamaño de la comunidad construida.
Para este fin, Facebook ofrece la posibilidad de crear un perfil llamado “Page” donde los usua-
rios pueden afiliarse con el fin de ver notas, fotografías, vídeos y actualizaciones de un produc-
to, artista, personaje o marca.
Al crear una de estas páginas se deberá:
• Mantener actualizada toda la información acerca de la aplicación.
• Tener una liga a la tienda para incentivar cualquier posible venta.
• Asociarse al contenido del blog y el servicio de Twitter si es que lo hay.
• Estar en contacto moderado con los seguidores de la página informándoles sobre noticias e información relevante del producto.
Esto puede ayudar a iniciar una campaña de marketing viral de la siguiente forma: cuando un usua-
rio de Facebook se declara “fan” del producto o la marca promocionada, esta acción es publicada en su perfil y es visible para los usuarios vinculados a él como “amigos”; también ante cualquier actuali-
zación del perfil, nuevo estatus, fotos, etc. estas noticias son desplegadas ante los usuarios afiliados a la página, aumentando automáticamente el número de receptores del mensaje.
65
61 Acohido, Byron. Facebook, Twitter Can't Stop Poisoned Links. ABC News - Technology. 26 de Marzo de 2011. Con-sultado el 20 de Abril de 2011.<http://abcnews.go.com/Technology/facebook-twitter-stop-poisoned-links/story?id=13199119>
62 Facebook - Statistics. Consultado el 16 de Abril de 2011.<http://www.facebook.com/press/info.php?statistics>
Buena Idea: El marketing viral tiene que empezar con alguien: no hay nada de malo en
que los primeros “fans” de la página en Facebook sean algunos amigos.
Tener una página en Facebook es, además, un requisito para comprar publicidad dentro de este
medio, la cual puede dirigirse a una audiencia específica por edad o país.
Fuera de la publicidad pagada es una herramienta gratuita y de fácil mantenimiento.
Twitter es un poderoso vehículo social y político público. Parte importante63 de sus
usuarios hacen uso de él desde sus dispositivos móviles, lo que podría señalar
que la mayoría de los usuarios de dispositivos móviles son a su vez usuarios
de Twitter. Aunque no hay una cifra precisa de cuántas personas lo utilizan,
se estima que cuenta con más de 56 millones64 de usuarios activos y unos 200 millo-
nes65 de usuarios registrados, posicionándolo como la segunda red más importante en internet.
Es un canal de comunicación ideal para mantener una comunicación directa, personal y cerca-
na con la comunidad. Esta comunicación puede incluir un rápido y personal soporte técnico,
hacer preguntas a la audiencia para conocer mejor el mercado (por ejemplo, funcionalidades
que desearían o los puntos débiles de la aplicación) y así planear el futuro de la aplicación o
comunicar los adelantos y avances en el desarrollo del producto para generar expectativa.
Buenas prácticas en Twitter son:
66
63 Arthur, Charles. Mobile World Congress 2011 day 1: live coverage. Technology | guardian.co.uk . 14 de Febrero de 2011. Consultado el 15 de Abril de 2011.<http://www.guardian.co.uk/technology/blog/2011/feb/14/mobile-world-congress-2011-live-coverage>
64 McMillan, Graeme. “How Many People Are Really Tweeting?” TIME - Techland. 1ero. de Abril de 2011. Consultado el 7 de Abril de 2011.<http://techland.time.com/2011/04/01/how-many-people-are-really-tweeting/>
65 Baird, Susan. Twitter Celebrates 5 Years and 200 Million Users. Aol News. 21 de Marzo de 2011. Consultado el 15 de Abril de 2011.<http://www.aolnews.com/2011/03/21/twitter-celebrates-5-years-and-200-million-users/>
• Contenido de calidad:
Las personas “siguen” a alguien más por varias razones, puede ser entretenimiento, información o mera curiosidad, pero nunca para recibir spam: nadie seguiría una cuenta que no genera con-
tenido de ningún valor y que solo presenta anuncios al grado de parecer un bot de spam.
• Ser recíproco siguiendo a otros usuariosMarcas y usuarios personales por igual están intentando incrementar su presencia en internet.
“Seguir a algunos seguidores” representa un beneficio para ambas partes.
• Responder y convivir con la comunidadLas redes sociales se tratan, obviamente, acerca de socializar. Si algún otro usuario hace alguna pre-
gunta o comentario, ignorarlo es casi igual que ignorar a alguien dirigiéndote la palabra en una fiesta.
• El “tweet" correcto, en el momento correctoUn tweet hecho a las 2 de la mañana de un Miércoles cualquiera tiene mucha menor exposi-
ción que uno que se hace en horarios de oficina. Claro que hay distintos horarios en distintas partes del mundo, pero cualquier mensaje significativo debe ser hecho en un horario en donde
su exposición se maximice.
• Personalizar el perfilLa descripción de un perfil es indexada en los buscadores y otros usuarios de Twitter encuen-
tran mayor interés de seguir a algo o alguien que puedan ver. Poner una imagen y llenar una descripción del perfil toma 5 minutos y puede traducirse en un mayor número de seguidores.
5. Hacer una Marca
Si se tiene planeado publicar y distribuir varias aplicaciones, valdría la pena hacerlo amparán-
dose de una marca con la cual los compradores identificaran el tipo de experiencias que han
tenido con sus productos. De esta forma:
67
• Se alcanza una audiencia mucho mayor: siendo esta la sumatoria de los usuarios de cada
una de las varias aplicaciones.
• Una aplicación puede hacer promoción a otras.
• Toda la experiencia adquirida en desarrollo y marketing sirve como retroalimentación para me-jorar los siguientes productos (tanto nuevos lanzamientos como actualizaciones).
• Unificar los esfuerzos de marketing que de otra forma serían realizados indivi-dualmente por cada aplicación.
Todas las estrategias mencionadas anteriormente son aplicables tanto a un producto individual,
como a un conjunto de productos amparados bajo una marca.
¿Qué es una Marca?
Una marca66 es un nombre, signo, símbolo, diseño o combinación de estos
para identificar bienes y servicios de un vendedor o un grupo de vendedo-
res y diferenciarlos de la competencia. Aunque compuesta por estos ele-
mentos la definición de marca puede ser mucho más amplia67 que eso y apun-
tar a una relación entre estos símbolos y los usuarios: como una promesa hecha
ante un grupo de consumidores o una audiencia bien definida, combinada con la ex-
periencia que ellos tienen de la marca.
Así, una marca es establecida y gana posicionamiento y alcance cuando cumple esta promesa
hacia los clientes buscando ser una experiencia relevante con una personalidad única.
68
66 K.I. Keller. Strategic Brand Management. Estados Unidos: Prentice Hall. 2003. Capítulo 1.
67 Wilson, Jerry. Managing brand you. Estados Unidos: AMACOM Div American Mgmt Assn. 2008. Página 10.
Registro de una marca en México
El registro de una marca en México se lleva a cabo ante el Instituto Mexicano
de la Propiedad Industrial (IMPI), “… un Organismo público descentralizado
con personalidad jurídica y patrimonio propio y con la autoridad legal para
administrar el sistema de propiedad industrial en nuestro país.”68. Este trá-
mite comienza con la solicitud de “Registro de Marca”.
Este registro ampara el uso exclusivo de un nombre y/o signo distintivo dentro de toda la Re-
publica Mexicana y tiene una duración de 10 años, después de los cuales puede renovarse.
El IMPI categoriza las marcas de la siguiente manera:
• Nominativa: Ampara una o más palabras sin incluir ningún diseño.
• Innominada: Ampara exclusivamente un diseño y no considera palabras.
• Tridimensional: Incluye cajas, empaques y envases de 3 dimensiones.
• Mixta: Alguna combinación de las categorías anteriores.
Siendo un registro “Mixto” el que nos interesaría en caso de estar registrando una marca de Software.
Una parte importante y delicada del trámite consiste en identificar la categoría a la que pertenece la marca. Estas categorías son llamadas “clases” y consisten en un conjunto de productos o servicios afines o rela-cionados de alguna manera. Para categorizar las marcas registradas, el IMPI se basa en Clasificación In-ternacional de Productos y Servicios establecida en virtud del Arreglo de Niza Novena Edición69 (Clasifica-ción de Niza).
La Clasificación de Niza consta de 45 clases (34 clases referentes a Productos y 11 clases referentes a ser-vicios) y ubica a los desarrollos de Software en las siguientes70:
69
68 "¿Qué es el IMPI?" Instituto Mexicano de la Propiedad Industrial. 17 de Noviembre de 2010.<http://www.impi.gob.mx/wb/IMPI/que_es_el_impi_>
69 Noviembre de 2010.
70 Información obtenida de "Clasificación Internacional de Productos y Servicios establecida en virtud del Arreglo de Niza Novena Edición" World Intellectual Property Organization. 17 de Noviembre de 2010.<http://www.wipo.int/classifications/nivilo/nice/index.htm>
• Clase 9 (Productos):
“Aparatos e instrumentos científicos, náuticos, geodésicos, fotográficos, cinematográficos, ópti-
cos, de pesaje, de medición, de señalización, de control (inspección), de salvamento y de ense-ñanza; aparatos e instrumentos de conducción, distribución, transformación, acumulación, regu-
lación o control de la electricidad; aparatos de grabación, transmisión o reproducción de sonido o imágenes; soportes de registro magnéticos, discos acústicos; distribuidores automáticos y
mecanismos para aparatos de previo pago; cajas registradoras, máquinas de calcular, equipos de procesamiento de datos y ordenadores; extintores.”
• P1018 - programas informáticos [software descargable]
• S0306 - software [programas grabados]
• Clase 42 (Servicios):
“Servicios científicos y tecnológicos, así como servicios de investigación y diseño en es-
tos ámbitos; servicios de análisis e investigación industriales; diseño y desarrollo de equi-pos informáticos y de software.”
• A0016 - actualización de software
• A0139 - alquiler de software
• C0152 - consultoría en software• D0045 - diseño de software
• I0049 - instalación de software• M0006 - mantenimiento de software
• S0037 - software (actualización de —)
• S0038 - software (alquiler de —)• S0039 - software (consultoría en —)
• S0040 - software (diseño de —)• S0041- software (instalación de —)
• S0042 - software (mantenimiento de —)
70
Dado que la distribución del software en las plataformas móviles que se considera aquí se reali-za como una descarga y su licenciamiento se celebra como un producto, se sugiere la categori-
zación de la marca como “Clase 9”, por supuesto que, de tener la posibilidad, es mejor hacer dos registros diferentes para amparar tanto la Clase 9 como la Clase 42.
A partir de la entrega de toda la documentación solicitada por el IMPI y en caso de que los re-
sultados sean favorables y no presenten observaciones, la titulación de una marca se extende-ría en un plazo de 6 a 8 meses.
Ante la naturaleza incómoda de todo este tipo de trámites en México, es preferible recurrir a un des-
pacho o compañía especializada en el registro y protección de marcas para que ésta se encargue de gestionar los posibles inconvenientes que pueden ocurrir durante el tedioso trámite de registro.
71
/ Conclusiones“Applaud friends, the comedy is over.”
- Ludwig van Beethoven
Este trabajo ha presentado 4 prácticas clave (Invención, Planeación, Usabilidad y Marketing) que en
conjunto con el desarrollo técnico, es decir, la codificación misma y las artes aledañas, son indispen-
sables para desarrollar productos de software capaces de competir en los nuevos mercados.
Aunque estas prácticas son claras en la mayoría de los casos de éxito de cualquier tienda elec-
trónica de aplicaciones, en México aún son prácticas menospreciadas por los desarrolladores
de software y particularmente por los ingenieros.
Varias entrevistas a algunos desarrolladores en México, revelaron que aunque hay algunas apli-
caciones que muestran indicios de estas prácticas, muchas veces se ha dado con ellas de una
forma completamente intuitiva y circunstancial. Aunque ciertamente la intuición es un buen
primer paso y un componente indispensable en cualquier nivel de la práctica, la aplicación
consciente y el estudio metódico son aún mejores.
Es indispensable para el ingeniero de hoy reconocer que las grandes obras de ingeniería (como
automóviles deportivos icónicos o construcciones de trascendencia histórica) son el resultado
de la cooperación y colaboración de distintas disciplinas junto con la ingeniería.
Esto tampoco significa que el ingeniero en computación deba perseguir la genialidad renacentis-
ta: siendo un virtuoso del código al mismo tiempo que es un prodigio del marketing y los nego-
cios y un genio del humor, el arte contemporáneo y la prestidigitación. Lo que sí significa es que
debe extender el dominio de su visión más allá de las ciencias y la técnica y reconocer el valor
que todas estas disciplinas pueden significar para su propia práctica; de igual forma no debe ol-
73
vidar que la profesión de la ingeniería es una profesión con un compromiso ante la invención y la
creación para buscar mejorar la calidad de vida de las personas y extender sus capacidades.
Personalmente fue un trabajo apasionante. El primer reto fue delimitar y reconocer qué prácti-
cas han sido comunes en todos los productos exitosos del mercado. Después de esto, siguió
la compilación y discriminación de muchísima información disponible al respecto. Finalmente,
el reto último (y también el más difícil de todos) fue plasmar toda esta información en un desti-
lado altamente consumible, con un formato de escritura atractivo y divertido, omitiendo toda la
información de poco utilidad práctica y evitando las menciones históricas innecesarias.
Originalmente había contemplado la posibilidad de un capítulo de entrevistas a otros desarrolla-
dores con casos de éxito para conocer su punto de vista al respecto. Distintas dificultades logís-
ticas se opusieron a este resultado, el cual queda como un área de oportunidad para otro trabajo.
Posteriores trabajos sobre esta línea podrían continuar investigando el siguiente paso a la publica-
ción repetida y personal de productos: la empresa mexicana productora de software comercial.
Concluyo exhortando a la comunidad de ingeniería a ampliar y actualizar la visión de su
profesión más allá de la práctica técnica de los números o los algoritmos, a que reconoz-
can el valor de otras disciplinas y a que ejerzan la práctica de su profesión sabiendo que la
ingeniería es una intersección entre el arte y la ciencia y como tal, su ejercicio requiere de
intuición, creatividad, pasión y técnica.
74
/ Glosario““Fine words! I wonder where you stole them”
- Jonathan Swift
• benchmarking: Comparación de prácti-
cas, servicios y productos propios contra
los líderes de un cierto mercado.
• blog: Es un sitio (o parte de un sitio) con
actualizaciones regulares constituidas por
comentarios y/o material gráfico y de video.
• bug: Error de un sistema de cómputo que
produce un resultado o incorrecto o ines-
perado en él.
• gadget: Dispositivo.
• hacker: En este contexto, persona apa-
sionada por el conocimiento profundo
del funcionamiento de sistemas,
computadoras y redes.
• laptop71: Computadora personal de uso
móvil. Integra todos los componentes bá-
sicos en un sola unidad.
• l33t (leet): Alfabeto alternativo usado en Inter-
net que consiste en la sustitución de las letras
latinas por otros caracteres ASCII. Su uso ori-
ginal se remonta a la cultura del “hacking”.
• power-user: Usuario que tiene la habilidad de
utilizar funciones avanzadas de un programa, sistema o dispositivo, sin ser necesariamente
un programador o un administrador del sistema.
• post: Artículo publicado dentro de un blog que constituyen la mayor parte de su contenido.
• smartphone: Gadget que combina un te-
léfono móvil con capacidades de cómputo y datos más potentes que los de un teléfo-
no móvil convencional.
• screen-shot: Imagen digital que contie-
ne los elementos visibles a través del
monitor o pantalla.
76
71 Por más increíble que parezca, la palabra laptop no está incluída en el Diccionario de la RAE (vigésima segunda edi-ción). Beicon en cambio sí lo está.
• tablet: Computadora móvil y plana más
grande que un smartphone.
• usabilidad72: La usabilidad es una caracte-
rística del software que la norma ISO 9126-1
describe como: la capacidad de un producto
de software para ser entendido, aprendido,
usado y ser atractivo para el usuario cuando
es utilizado bajo condiciones específicas.
77
72 Del inglés “usability”.
Bibliografía
• Allen, Sarah. Pro Smartphone Cross-Platform Development: iPhone, Blackberry, Windows Mobile and Android Development and Distribution. Estados Unidos: Apress. 2010.
• Baecker, Ronald M. Readings in human-computer interaction: toward the year 2000. Estados Unidos: Morgan Kaufmann. 1995.
• Ballard, Barbara. User Interface Design Guidelines for J2me Midp 2.0. Estados Unidos: Lulu.com. 2005.
• Berkun, Scott. The Art of Project Management. Estados Unidos: OʼReilly. 2005.
• Desikan, Srinivasan. Software Testing: Principles and Practice. India: Pearson Education In-
dia. 2006.
• De Vries, Marc. Teaching about Technology. Países Bajos: Springer. 2005.
• Hughes, Jeffrey. iPhone and iPad Apps Marketing. Estados Unidos: Que Publishing, 2010.
• Lienhard, John. The Engines of our Ingenuity. Inglaterra: Oxford University Press. 2000.
• Mandel, Theo. The elements of user interface design. Estados Unidos: Wiley. 1997.
• Mark, Dave. IPhone User Interface Design Projects. Estados Unidos: Apress. 2009.
• Shneiderman, Ben. Designing the user interface: strategies for effective human-computer inte-raction. Estados Unidos: Addison-Wesley. 2009
• Spolsky, Joel. User Interface Design for Programmers. Estados Unidos: Apress, 2001.
• Spolsky, Joel. More Joel on Software. Estados Unidos: Apress, 2008.
• Stone, Deborah. User interface design and evaluation. Estados Unidos: Morgan Kaufmann. 2005.
• Vermas, Pieter. Philosophy and Design. Alemania: Springer Science + Business Media. 2008.
• Vermas, Pieter. A Philosophy of Technology. Australia: Morgan & Claypool Publishers. 2008
• Wheeler, Alina. Designing Brand Identity: an essential guide for the entire branding team. Es-tados Unidos: John Wiley & Sons, Inc., 2009.
• Wooldridge, Dave. The Business of iPhone App Development. Estados Unidos: Apress, 2010.
79