“AÑO DEL DIÁLOGO Y LA RECONCILIACIÓN NACIONAL”
INGENIERÍA DE SISTEMAS Y TELEMÁTICA
ELECTIVO
APLICACIONES
AUTORES
MARCHENA HUANUIRE, Greinder Alexis
VASQUEZ VENTURA, Liz Evelin
DOCENTE
ING. PORRO CHULLI, Marco Aurelio
BAGUA GRANDE - AMAZONAS
2018
***********************************************************
DEFINICIÓN
Una
aplicación (también llamada app) es simplemente un programa informático creado
para llevar a cabo o facilitar una tarea en un dispositivo informático. Cabe
destacar que aunque todas las aplicaciones son programas, no todos los
programas son aplicaciones. Existe multitud de software en el mercado, pero
sólo se denomina así a aquel que ha sido creado con un fin determinado, para
realizar tareas concretas. No se consideraría una aplicación, por ejemplo, un
sistema operativo, ni una suite, pues su propósito es general.
Las
aplicaciones nacen de alguna necesidad concreta de los usuarios, y se usan para
facilitar o permitir la ejecución de ciertas tareas en las que un analista o un
programador ha detectado una cierta necesidad. Pero las aplicaciones también
pueden responder a necesidades lúdicas, además de laborales (todos los juegos,
por ejemplo, son considerados aplicaciones). Se suele decir que para cada
problema hay una solución, y en informática, para cada problema hay una
aplicación.
Naturalmente,
el campo de las aplicaciones es tan extenso, y las funciones tan dispares, que
se han creado numerosas clasificaciones, según varios criterios. Así, por ejemplo,
dependiendo del uso que se le vaya a dar, podemos tener aplicaciones
profesionales o personales. También podemos hablar de aplicaciones para
Windows, Linux, Android, Apple, PC, móvil, según el sistema operativo o la
plataforma que vayamos a usar. Según su finalidad, pueden ser de
entretenimiento, de negocios, empresariales, de sonido, gráficas, de edición,
web, didácticas... e incluso según la rama de las ciencias en el que se usen
podemos decir que hay aplicaciones de ingeniería, de telecomunicaciones,
matemáticas... y un largo etcétera.
En
general, una aplicación se diseña para ser usada con uno o varios sistemas
operativos, siendo hasta cierto punto dependiente de estos. Pero también
existen aplicaciones diseñadas en exclusiva para el uso con un programa o tipo
de programas (ej: barras de los navegadores web). Hablamos en este caso de
addons, pequeñas aplicaciones que añaden nuevas funcionalidades a ese programa
concreto. El primer paso siempre es detectar una necesidad en los usuarios que
pueda ser cubierta, para eso se suele hacer un estudio previo en el mercado. Si
se ve la oportunidad entran en juego los programadores, quienes realizan la
propia aplicación, diseñándola y codificándola... El siguiente y último paso
será la distribución de esa aplicación. Como veis el proceso no difiere de
cualquier otro producto: investigación de mercado, fabricación y distribución.
Las
aplicaciones pueden ser desde pequeñísimos programas de apenas unas líneas de
código, hasta grandes obras de ingeniería informática, con miles de horas de
trabajo detrás. El tamaño, sin embargo, no define el éxito de una aplicación, sino
justamente que cubra las necesidades del usuario. La historia de las
aplicaciones está llena de miles de grandes aplicaciones que han sido
substituidas por otras a priori mucho menos elaboradas, simplemente porque eran
más rápidas, más intuitivas, más estables o cumplían mejor su función.
CARACTERÍSTICAS
- Código abierto.
- Núcleo basado en el Kernel de Linux.
- Adaptable a muchas pantallas y resoluciones.
- Utiliza SQLite para el almacenamiento de datos.
- Ofrece diferentes formas de mensajería.
- Navegador web basado en WebKit incluido.
- Soporte de Java y muchos formatos multimedia.
- Soporte de HTML, HTML5, Adobe Flash Player, etc.
- Incluye un emulador de dispositivos, herramientas para depuración de memoria y análisis del rendimiento del software.
- Catálogo de aplicaciones gratuitas o pagas en el que pueden ser descargadas e instaladas (Google Play).
- Bluetooth.
- Google Talk desde su versión HoneyComb, para realizar videollamadas.
- Multitarea real de aplicaciones.
PROCESO DE DISEÑO Y DESARROLLO
1. Conceptualización
El
resultado de esta etapa es una idea de aplicación, que tiene en cuenta las
necesidades y problemas de los usuarios. La idea responde a una investigación
preliminar y a la posterior comprobación de la viabilidad del concepto.
Ideación
Investigación
Formalización
de la idea
2. Definición
En
este paso del proceso se describe con detalle a los usuarios para quienes se
diseñará la aplicación, usando metodologías como «Personas» y «Viaje del
usuario». También aquí se sientan las bases de la funcionalidad, lo cual
determinará el alcance del proyecto y la complejidad de diseño y programación
de la app.
Definición
de usuarios
Definición
funcional
3. Diseño
En
la etapa de diseño se llevan a un plano tangible los conceptos y definiciones
anteriores, primero en forma de wireframes, que permiten crear los primeros
prototipos para ser probados con usuarios, y posteriormente, en un diseño
visual acabado que será provisto al desarrollador, en forma de archivos separados
y pantallas modelo, para la programación del código.
Wireframes
Prototipos
Test
con usuarios
Diseño
visual
4. Desarrollo
El
programador se encarga de dar vida a los diseños y crear la estructura sobre la
cual se apoyará el funcionamiento de la aplicación. Una vez que existe la
versión inicial, dedica gran parte del tiempo a corregir errores funcionales
para asegurar el correcto desempeño de la app y la prepara para su aprobación
en las tiendas.
Programación
del código
Corrección
de bugs
5. Aplicación
La
aplicación es finalmente puesta a disposición de los usuarios en las tiendas.
Luego de este paso trascendental se realiza un seguimiento a través de
analíticas, estadísticas y comentarios de usuarios, para evaluar el
comportamiento y desempeño de la app, corregir errores, realizar mejoras y
actualizarla en futuras versiones.
Lanzamiento
Seguimiento
Actualización
TIPOS DE APLICACIONES
A
nivel de programación, existen varias formas de desarrollar una aplicación.
Cada una de ellas tiene diferentes características y limitaciones,
especialmente desde el punto de vista técnico.
Aunque
a primera vista esto no parezca incumbencia del diseñador, la realidad es que
el tipo de aplicación que se elija, condicionará el diseño visual y la
interacción.
1. Nativas
Las
aplicaciones nativas son aquellas que han sido desarrolladas con el software
que ofrece cada sistema operativo a los programadores, llamado genéricamente
Software Development Kit o SDK. Así, Android, iOS y Windows Phone tienen uno
diferente y las aplicaciones nativas se diseñan y programan específicamente
para cada plataforma, en el lenguaje utilizado por el SDK.
Este
tipo de apps se descarga e instala desde las tiendas de aplicaciones —con
ciertas excepciones en el caso de Android, que veremos en el capítulo «Lanzando
la app»— sacando buen partido de las diferentes herramientas de promoción y
marketing de cada una de ellas.
Las
aplicaciones nativas se actualizan frecuentemente y en esos casos, el usuario
debe volver a descargarlas para obtener la última versión, que a veces corrige
errores o añade mejoras.
Una
característica generalmente menospreciada de las apps nativas, es que pueden
hacer uso de las notificaciones del sistema operativo para mostrar avisos
importantes al usuario, aun cuando no se esté usando la aplicación, como los
mensajes de Whatsapp, por ejemplo.
Además,
no requieren Internet para funcionar, por lo que ofrecen una experiencia de uso
más fluida y están realmente integradas al teléfono, lo cual les permite
utilizar todas las características de hardware del terminal, como la cámara y
los sensores (GPS, acelerómetro, giróscopo, entre otros).
A
nivel de diseño, esta clase de aplicaciones tiene una interfaz basada en las
guías de cada sistema operativo, logrando mayor coherencia y consistencia con
el resto de aplicaciones y con el propio SO. Esto favorece la usabilidad y
beneficia directamente al usuario que encuentra interfaces familiares.
2. Web
La
base de programación de las aplicaciones web —también llamadas webapps— es el
HTML, conjuntamente con JavaScript y CSS, herramientas ya conocidas para los
programadores web.
En
este caso no se emplea un SDK, lo cual permite programar de forma independiente
al sistema operativo en el cual se usará la aplicación. Por eso, estas
aplicaciones pueden ser fácilmente utilizadas en diferentes plataformas sin
mayores inconvenientes y sin necesidad de desarrollar un código diferente para
cada caso particular.
Las
aplicaciones web no necesitan instalarse, ya que se visualizan usando el
navegador del teléfono como un sitio web normal. Por esta misma razón, no se
distribuyen en una tienda de aplicaciones, sino que se comercializan y promocionan
de forma independiente.
Al
tratarse de aplicaciones que funcionan sobre la web, no es necesario que el
usuario reciba actualizaciones, ya que siempre va a estar viendo la última
versión. Pero, a diferencia de las apps nativas, requieren de una conexión a
Internet para funcionar correctamente.
Adicionalmente,
tienen algunas restricciones e inconvenientes en factores importantes como
gestión de memoria y no permiten aprovechar al máximo la potencia de los
diferentes componentes de hardware del teléfono.
Las
aplicaciones web suelen tener una interfaz más genérica e independiente de la
apariencia del sistema operativo, por lo que la experiencia de identificación
del usuario con los elementos de navegación e interacción, suele ser menor que
en el caso de las nativas.
3. Híbridas
Este
tipo de aplicaciones es una especie de combinación entre las dos anteriores. La
forma de desarrollarlas es parecida a la de una aplicación web —usando HTML, CSS
y JavaScript—, y una vez que la aplicación está terminada, se compila o
empaqueta de forma tal, que el resultado final es como si se tratara de una
aplicación nativa.
Esto
permite casi con un mismo código obtener diferentes aplicaciones, por ejemplo,
para Android y iOS, y distribuirlas en cada una de sus tiendas.
A
diferencia de las aplicaciones web, estas permiten acceder, usando librerías, a
las capacidades del teléfono, tal como lo haría una app nativa.
Las
aplicaciones híbridas, también tienen un diseño visual que no se identifica en
gran medida con el del sistema operativo. Sin embargo, hay formas de usar
controles y botones nativos de cada plataforma para apegarse más a la estética
propia de cada una.
Existen
algunas herramientas para desarrollar este tipo de aplicaciones. Apache Córdova
es una de las más populares, pero hay otras, como Icenium, que tienen la misma
finalidad.
RESUMEN
Una
aplicación (también llamada app) es simplemente un programa informático creado
para llevar a cabo o facilitar una tarea en un dispositivo informático. Las
aplicaciones nacen de alguna necesidad concreta de los usuarios, y se usan para
facilitar o permitir la ejecución de ciertas tareas en las que un analista o un
programador han detectado una cierta necesidad. También podemos hablar de
aplicaciones para Windows, Linux, Android, Apple, PC, móvil, según el sistema
operativo o la plataforma que vayamos a usar. En general, una aplicación se
diseña para ser usada con uno o varios sistemas operativos, siendo hasta cierto
punto dependiente de estos. Pero también existen aplicaciones diseñadas en exclusiva
para el uso con un programa o tipo de programas (ej: barras de los navegadores
web). Hablamos en este caso de addons, pequeñas aplicaciones que añaden nuevas
funcionalidades a ese programa concreto. Las aplicaciones pueden ser desde
pequeñísimos programas de apenas unas líneas de código, hasta grandes obras de
ingeniería informática, con miles de horas de trabajo detrás. Aunque a primera
vista esto no parezca incumbencia del diseñador, la realidad es que el tipo de
aplicación que se elija, condicionará el diseño visual y la interacción.
SUMMARY
An
application (also called an app) is simply a computer program created to carry
out or facilitate a task on a computing device. The applications arise from
some concrete need of the users, and are used to facilitate or allow the
execution of certain tasks in which an analyst or a programmer have detected a
certain need. We can also talk about applications for Windows, Linux, Android,
Apple, PC, mobile, depending on the operating system or the platform that we
are going to use. In general, an application is designed to be used with one or
several operating systems, being to some extent dependent on them. But there
are also applications designed exclusively for use with a program or type of
programs (eg web browser bars). We speak in this case of addons, small applications
that add new features to that specific program. The applications can range from
very small programs of just a few lines of code, to large works of computer
engineering, with thousands of hours of work behind. Although at first sight
this does not seem to concern the designer, the reality is that the type of
application that is chosen, will condition the visual design and interaction.
RECOMENDACIONES
- Las aplicaciones nativas son las que ofrecen una mejor experiencia de uso y sobre todo, rendimiento. Algunas apps como Facebook o LinkedIn, que antes eran híbridas, han pasado a ser nativas por este motivo. Adicionalmente, ellas responden más a las guías de diseño de cada sistema operativo.
- Diseñar una aplicación web, si es que ya se dispone del conocimiento para ello, heredado del desarrollo de sitios web. En este caso, el costo de desarrollo es más bajo y la forma de trabajar un poco más ágil.
- Cuando la disponibilidad de la app sin Internet, la posibilidad de usar notificaciones y el acceso a los recursos de hardware del teléfono sean importantes, una aplicación nativa será la opción más indicada.
Ejemplo de aplicaciones en Android
Link de nuestras diapositivas




No hay comentarios:
Publicar un comentario