SlideShare una empresa de Scribd logo
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
 Se encuentra 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
 En esta 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
 En primer 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.
 Fase de 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)
 Se centra 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
 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.
HYBRID METHODOLOGY
DESIGN
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.

Más contenido relacionado

La actualidad más candente

Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Joan Manuel Zabala
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
angel2365
 
Modelo iterativo
Modelo iterativoModelo iterativo
Modelo iterativo
tim100492
 
Prueba software orientado a objetos
Prueba software orientado a objetosPrueba software orientado a objetos
Prueba software orientado a objetos
Irene Quiñones Osorio
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
Yaskelly Yedra
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiraljuanksi28
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrolloitsarellano
 
Diapositivas xp
Diapositivas xpDiapositivas xp
Modelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiralModelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiral
Juan Pablo Bustos Thames
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de softwaremonik1002
 
Modelo de prototipo
Modelo de prototipoModelo de prototipo
Modelo de prototipo
yanezcabrera
 
UML
UMLUML
Antecedentes MSF
Antecedentes MSFAntecedentes MSF
Antecedentes MSF
Jonathan Serrano
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
Andrés Felipe Montoya Ríos
 
25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software
Camila Arbelaez
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
Coesi Consultoria
 
Metodologias xp
Metodologias xpMetodologias xp
Metodologias xp
ElvisAR
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)Erik Emanuel Amador Saldaña
 

La actualidad más candente (20)

Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
 
Modelo iterativo
Modelo iterativoModelo iterativo
Modelo iterativo
 
Prueba software orientado a objetos
Prueba software orientado a objetosPrueba software orientado a objetos
Prueba software orientado a objetos
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
Ieee 830
Ieee 830Ieee 830
Ieee 830
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrollo
 
Diapositivas xp
Diapositivas xpDiapositivas xp
Diapositivas xp
 
Modelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiralModelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiral
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de software
 
Modelo de prototipo
Modelo de prototipoModelo de prototipo
Modelo de prototipo
 
UML
UMLUML
UML
 
Antecedentes MSF
Antecedentes MSFAntecedentes MSF
Antecedentes MSF
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de software
 
Metodologias xp
Metodologias xpMetodologias xp
Metodologias xp
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)
 

Similar a Metodologías para el desarrollo de aplicaciones móviles

Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móviles
Iván Campaña Naranjo
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareDeisy Sapaico
 
1. ciclo de_vida_de_software
1. ciclo de_vida_de_software1. ciclo de_vida_de_software
1. ciclo de_vida_de_softwareMiguel Castro
 
Herramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicacionesHerramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicaciones
HctorJessPonceCastil
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
mireya2022
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
sairarcf
 
Metodología tradicional
Metodología tradicionalMetodología tradicional
Metodología tradicional
Jesenia Escobar
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de softwarejhonatanalex
 
García _Herrera_Victor_Eduardo_S9.pptx
García _Herrera_Victor_Eduardo_S9.pptxGarcía _Herrera_Victor_Eduardo_S9.pptx
García _Herrera_Victor_Eduardo_S9.pptx
VictorEduardoHerrera3
 
Resolucion de guia
Resolucion de guiaResolucion de guia
Resolucion de guiareina vigil
 
Resolucion de guia
Resolucion de guiaResolucion de guia
Resolucion de guiareina vigil
 
Metodologia RUP
Metodologia RUPMetodologia RUP
Metodologia RUP
Carlos Vargas
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de software
Abner Garcia
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
Diego Llusco
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
CarmineMaggio
 
Carrera de informatica_educativa
Carrera de informatica_educativaCarrera de informatica_educativa
Carrera de informatica_educativaDiego Sinche
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radHenry Cambal
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radHenry Cambal
 

Similar a Metodologías para el desarrollo de aplicaciones móviles (20)

Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móviles
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de software
 
Trabajo de desarrollo desoftware
Trabajo de desarrollo desoftwareTrabajo de desarrollo desoftware
Trabajo de desarrollo desoftware
 
1. ciclo de_vida_de_software
1. ciclo de_vida_de_software1. ciclo de_vida_de_software
1. ciclo de_vida_de_software
 
Herramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicacionesHerramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicaciones
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
 
Metodología tradicional
Metodología tradicionalMetodología tradicional
Metodología tradicional
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de software
 
García _Herrera_Victor_Eduardo_S9.pptx
García _Herrera_Victor_Eduardo_S9.pptxGarcía _Herrera_Victor_Eduardo_S9.pptx
García _Herrera_Victor_Eduardo_S9.pptx
 
Resolucion de guia
Resolucion de guiaResolucion de guia
Resolucion de guia
 
Resolucion de guia
Resolucion de guiaResolucion de guia
Resolucion de guia
 
1057571401
10575714011057571401
1057571401
 
Metodologia RUP
Metodologia RUPMetodologia RUP
Metodologia RUP
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de software
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Carrera de informatica_educativa
Carrera de informatica_educativaCarrera de informatica_educativa
Carrera de informatica_educativa
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion rad
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion rad
 

Último

Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
nicromante2000
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
juanorejuela499
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
Ecaresoft Inc.
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
AbbieDominguezGirond
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
juanjosebarreiro704
 

Último (6)

Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 

Metodologías para el desarrollo de aplicaciones móviles

  • 2. 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.
  • 3. 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".
  • 4. Estructura de una aplicación en Android
  • 5. DIRECTORIO SRC  Se encuentra 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
  • 6. 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.
  • 7. DIRECTORIO «RES»  Se encuentran todos los archivos con los recursos que usan la aplicación. Las imágenes, archivos de idiomas, estilos, etc.
  • 8.  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.
  • 9. 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.
  • 10. DIRECTORIO GEN  En esta carpeta esta el archivo R.class, éste contiene lo identificadores los recursos usados por tu proyecto: imágenes, layout, etc.
  • 11. 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
  • 12. 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.
  • 13. 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.
  • 14. METODOLOGÍAS PARA EL DESARROLLO DE APLICACINES MÓVILES
  • 15. ¿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.
  • 16. 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.
  • 17. 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.
  • 18. Desarrollo ágil  En primer 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.
  • 19.  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.
  • 20. 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.
  • 21.  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.
  • 22.  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.
  • 23.  Fase de 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.
  • 24. EXTREME PROGRAMING (XP)  Se centra 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
  • 25.  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. HYBRID METHODOLOGY DESIGN
  • 26. 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.