Está en la página 1de 26

Metodologías

para el
desarrollo de
aplicaciones
móviles
Presenta:
VALDIVIA LUNA JOELY
JAQUELINE
INTRODUCCIÓN
 El desarrollo de aplicaciones móviles sufre
prácticamente los mismos problemas que la gran
mayoría de desarrollos de software. Aunque hay que
tener en cuenta sus principales peculiaridades como la
corta duración de sus desarrollos, la gran competencia
del sector que obliga a una constante innovación, los
cambios frecuentes en la plataforma de desarrollo y en
el hardware o la simplicidad de algunas aplicaciones.
Todo ello influye a la hora de elegir una metodología
concreta de desarrollo.
API
 Interfaz de programación de
aplicaciones o API es el conjunto de
funciones y procedimientos que ofrece cierta
biblioteca para ser utilizado por otro software
como una capa de abstracción. Son usadas
generalmente en las "librerías".
Estructura de una aplicación en
Android
DIRECTORIO SRC
 Seencuentra toda la lógica de aplicación,
todas las clases programadas en JAVA.
Dentro de ella puedes definir distintos
paquetes, donde puedes dividir en capas tus
reglas de negocio
ANDROID LIBRARY
 Aquíse encuentran todas las librerías propias del
SDK de android, dependiendo la versión elegida al
crear el proyecto tendrá una versión u otra.
DIRECTORIO «RES»
 Se encuentran todos los archivos con los recursos
que usan la aplicación. Las imágenes, archivos de
idiomas, estilos, etc.
 Drawable: Carpeta con todas las imágenes de la app. Se
subdivide en múltiples carpetas desde la versión 1.6, que
contienen las imágenes en distintas resoluciones y tamaños que
se usarán dependiendo el dispositivo usado.

 Directorio layout: Aquí se encuentran las distintas “pantallas”


de la aplicación, es decir, los archivos xml con las interfaces
visual asociadas a las activities.

 Values: Carpeta con los xml de contenido de la app. En ella


puede haber definidas las constantes de la aplicación, dando la
posibilidad del multidioma. También puedes definir estilos para
tus componentes. Y todo tipo de configuraciones.
DIRECTORIO BIN
 Aquí se encuentran todos los archivos generados por
la propia app. Android usa la máquina virtual dalvik,
primero se traduce a los típicos archivos .class de
java y posteriormente es traducido a los archivo .dex
propios de Android.
 También esta el ejecutable de la aplicación "apk",
sería el equivalente a los "exe" de windows. Es el
archivo que deberías instalar en cualquier teléfono
android para probar la aplicación.
DIRECTORIO GEN
 Enesta carpeta esta el archivo R.class, éste
contiene lo identificadores los recursos
usados por tu proyecto: imágenes, layout, etc.
DIRECTORIO ASSESTS
 Carpeta donde se encuentran los archivos
auxiliares de tu aplicación: imágenes, audios,
vídeos... la diferencia con los que se encuentran
con la carpeta "RES", es que los archivos
incluidos aquí no generarán un identificador
dentro del archivo R.class anteriormente descrito.
 Para usar estos archivos, en vez de referenciarlos
por un ID, habría que usar la ruta física como
cualquier otro archivo
DIRECTORIO LIB
 Aquíirán las librerías externas importados
que necesites. Por ejemplo, si deseas meter
publicidad en tu app, aquí ira la librería
necesaria para ello.
ANDROID MANIFEST
 Situado en la raíz de nuestras aplicaciones
como AndroidManifest.xml, es un archivo de
configuración donde podemos aplicar las
configuraciones básicas de nuestra app. Su
configuración puede realizarse a través de una
interfaz gráfica, pero es recomendable conocer la
sintaxis ya que en muchas ocasiones será más
fácil y rápido hacerlo desde el propio xml.
METODOLOGÍAS PARA EL
DESARROLLO DE
APLICACINES MÓVILES
¿QUÉ ES UNA METODOLOGÍA
DE DESARROLLO?
 Una metodología es una colección de procedimientos,
técnicas, herramientas y documentos auxiliares que
ayudan a los desarrolladores de software en sus
esfuerzos por implementar nuevos sistemas de
información. Una metodología está formada por
fases, cada una de las cuales se puede dividir en sub-
fases, que guiarán a los desarrolladores de sistemas
a elegir las técnicas más apropiadas en cada
momento del proyecto y también a planificarlo,
gestionarlo, controlarlo y evaluarlo.
MODELO WATERFALL
(CASCADA)
 Clásico. Sólo aplicable cuando están totalmente
cerrados los requisitos y no van a cambiar.
 No hay retroalimentación entre las fases en que se divide
el proyecto. Por lo que cada fase se va cerrando de forma
secuencial. Todo el proceso está fijado por fechas límites y
presupuestos.
 Este modelo sólo es aconsejable para proyectos móviles
muy controlados y previsibles, no existe incertidumbre
por lo que se quiere hacer ni influyen los cambios en la
industria.
Desarrollo rápido de
aplicaciones
 Se da énfasis a la obtención de un prototipo funcional de
una aplicación para posteriormente ir mejorándolo incluyendo
más funcionalidades y complejidad. Es recomendable el uso de
patrones de diseño bien conocidos para adaptarse a los
cambios de requisitos.

 Se suele usar cuando los plazos de entrega son muy


cortos y se precisa tener un entregable de forma inmediata. No
se descarta utilizar otras metodologías de forma posterior, ya
que este tipo de desarrollo puede ser usado para mostrar un
esbozo de la aplicación a un cliente, generalmente en un par
de días.
Desarrollo ágil

 Enprimer lugar, la alta volatilidad del


entorno hace que constantemente el equipo
de desarrollo se deba adaptar a nuevos
terminales, cambios en la plataforma o en el
entorno de desarrollo. Un ritmo cambiante
que requiere una alta respuesta al cambio
más que al seguimiento de un plan concreto.
 Los equipos de desarrollo móvil suelen se
integrados por pocas personas. No más de
ocho o diez desarrolladores entorno a un
misma aplicación o, incluso, un único
desarrollador. Las interacciones en el proceso
y las herramientas son más controlables y es
posible una fluida comunicación entre los
miembros del equipo.
Mobile-D
 El objetivo de este método es conseguir ciclos de
desarrollo muy rápidos en equipos muy pequeños. Fue
creado en un proyecto finlandés en 2005, pero sigue
estando vigente. Basado en metodologías conocidas
pero aplicadas de forma estricta como: extreme
programming, Crystal Methodologies y Rational Unified
Process.
 Se compone de distintas fases: exploración,
inicialización, fase de producto, fase de estabilización y la
fase de pruebas. Cada una tiene un día de planificación y
otro de entrega.
 En la fase de exploración se centra la atención en
la planificación y a los conceptos básicos del
proyecto. Aquí es donde hacemos una definición del
alcance del proyecto y su establecimiento con las
funcionalidades donde queremos llegar.

 En la iniciación configuramos el proyecto


identificando y preparando todos los recursos
necesarios como hemos comentado anteriormente
en esta fase la dedicaremos un día a la planificación
y el resto al trabajo y publicación.
 En la fase de producto se repiten iterativamente las
subfases. Se usa el desarrollo dirigido por pruebas
(TDD), antes de iniciar el desarrollo de una
funcionalidad debe existir una prueba que verifique su
funcionamiento. En esta fase podemos decir que se
lleva a acabo toda la implementación.

 Después de la fase de producto llega la fase


de estabilización en la que se realizan las acciones de
integración para enganchar los posibles módulos
separados en una única aplicación.
 Fasede pruebas. Una vez parado totalmente el
desarrollo se pasa una fase de testeo hasta llegar
a una versión estable según lo establecido en las
primeras fases por el cliente. Si es necesario se
reparan los errores, pero no se desarrolla nada
nuevo.

 Una vez acabada todas las fases deberíamos


tener una aplicación publicable y entregable al
cliente.
EXTREME PROGRAMING (XP)

 Secentra en las mejores prácticas para el


desarrollo de software. Consta de doce
prácticas: el juego de planificación, pequeñas
emisiones, la metáfora, el diseño sencillo, las
pruebas, la refactorización, la programación
en parejas, la propiedad colectiva, integración
continua, semana 40-h, los clientes en el
lugar, y los estándares de codificación
HYBRID METHODOLOGY
DESIGN
 Esta metodología utiliza el modelo iterativo incremental para el proceso
de desarrollo y así lograr la rápida entrega de software y mejorar las
capacidades de gestión de riesgos. Algunas de las características ágiles
que se destacan y que también se alinean con las necesidades de
desarrollo de aplicaciones móviles son según:

 Desarrollo basado en pruebas.


 Participación continúa del cliente.
 Establecimiento de prioridades en los requisitos.
 Comunicación efectiva.
 Calidad garantizada.
 Desarrolladores expertos.
 Revisión de todo el proceso y sesiones de aprendizaje.
MOBILE DEVELOPMENT
PROCESS SPIRAL

 Esta propuesta metodológica utiliza el modelo de


desarrollo en espiral como base, e incorpora
procesos de evaluación de la usabilidad, priorizando
la participación del usuario en todos los procesos del
ciclo de vida de diseño, con el fin de garantizar un
diseño centrado en el usuario, aun cuando se trata
de un modelo de proceso orientado a proyectos
grandes y costosos, ya que está destinado a ser un
modelo de reducción de riesgos.

También podría gustarte