Desarrollo de Aplicaciones Móviles Sensibles al...
Transcript of Desarrollo de Aplicaciones Móviles Sensibles al...
Desarrollo de Aplicaciones Móviles
Sensibles al Contexto
Lic. en Cs. de la Comp. e Ingeniería en Computación
1 - Presentación
Depto. de Ciencias e Ingeniería de la Computación
Universidad Nacional del Sur
1er. Cuatrimestre de 2016
Computación: Evolución
2
Una computadorapara muchas
personas
Muchascomputadoras
para cadapersona
Una computadora
para cadapersona
Computación: Evolución
3
Una computadorapara muchas
personas
Muchascomputadoras
para cadapersona
Una computadora
para cadapersona
NúmeroTamaño
Computación: Evolución
4
Polvo que puedecomputar y comunicarse!!!
Tamaño
Número
“Smart” Dust
Cuando todo es inteligente….
5
historyandcultures.com www.pcadvisor.co.uk www.thedenverchannel.comwww.coffee-mate.com
www.antenaslatinas.com www.123rf.comFuente de las fotos: www.theguardian.com
Mensaje de
Mamá
Se vence la
devolución
del libro!
Breaking
News!!!!!
Poca
bacteria…
conectame!
Hora de
comer…te
están
esperando!Necesito
agua!!
Se enfría el
café!
Y se
comunica….
Cuando todo es inteligente….
6
historyandcultures.com www.pcadvisor.co.uk www.thedenverchannel.comwww.coffee-mate.com
www.antenaslatinas.com www.123rf.comFuente de las fotos: www.theguardian.com
Mensaje de
Mamá
Se vence la
devolución
del libro!
Breaking
News!!!!!
Poca
bacteria…
conectame!
Hora de
comer…te
están
esperando!Necesito
agua!!
Se enfría el
café!
Y se
comunica….
La computación se vuelveUbícua!
La computación se vuelveUbícua!
Computación Ubícua
• “[Queremos] Entornos saturados con habilidades de
computación y comunicación, pero integrados de manera
elegante con usuarios humanos.”
- M. Satyanarayanan
• “La gente y los entornos mejoran con recursos
computacionales que proveen información y servicios
cuando y cómo se los desea”.
- Mark Weiser
• En realidad queremos….Computación y Comunicación en
todos lados…y siempre disponible…
7
Computación Ubícua
• ¿Qué pasaría si las cosas se conectan entre sí? ¿Y si se
conectan a la internet?
• ¿ Qué necesitamos para eso?
• Las cosas tienen que ser inteligentes…
– Procesadores pequeños, baratos, con sensors, actuadores, y
capacidades de conexión
– Incluidos (formando parte) en todos los objetos con los que
interactuamos diariamente, incluyendo nuestro cuerpo
(“wearable computing”)
– Los objetos del mundo real se enriquecen con información y
capacidades de procesamiento y comunicación.
8
Fuente foto:plus.google.com
Computación Ubícua
• ¿Qué pasaría si las cosas se conectan entre sí? ¿Y si se
conectan a la internet?
• ¿ Qué necesitamos para eso?
• Las cosas tienen que ser inteligentes…
– Procesadores pequeños, baratos, con sensors, actuadores, y
capacidades de conexión
– Incluidos (formando parte) en todos los objetos con los que
interactuamos diariamente, incluyendo nuestro cuerpo
(“wearable computing”)
– Los objetos del mundo real se enriquecen con información y
capacidades de procesamiento y comunicación.
9
Fuente foto:plus.google.com
Computación Ubícua… y algo mas
10
Foto Fuente: Future-Proof Your Streaming Analytics Architecture-
StreamAnalytix Webinar
Imagen Fuente: www.androidheadlines.com
resources.intenseschool.com
Computación Sensible al Contexto
Computación Tradicional
12
Input Output
Aplicación/Programa
Computación Sensible al Contexto
13
Input Output
Context Input
Context Output
Aplicaciones Sensibles
al Contexto
Imagen Fuente: www.interaction-design.org
¿Computación Sensible al Contexto?
Organización Materias de Grado• Desarrollo de Aplicaciones Móviles Sensibles al Contexto (Lic. en Cs.
de la Comp. 7626)
• Desarrollo de Aplicaciones Android Sensibles al Contexto (Ing. en
Sistemas de Comp. 7625)
• La materia se descompone en 2 partes:
15
Primera
Parte
Segunda
Parte Aplicaciones Sensibes al Contexto
Desarrollo Aplicaciones Móviles
Desarrollo de Aplicaciones Móviles
• Empezando el 23/3 hasta el 13/4 (inclusive)
• Dictado por el Lic. Emmanuel Lagarrigue Lazarte
• Horario:
– Martes: 18 a 22 hrs - Aula 38 B
• Temas:
– Introducción al desarrollo de Aplicaciones Móviles (Android).
– Componentes de hardware de un smartphone o tablet Android.
– Entorno de desarrollo y Arquitectura de las aplicaciones Android.
– Componentes básicos de las aplicaciones Android: Actividades,
recursos, controles.
16
Desarrollo de Aplicaciones Móviles
• Introducción al desarrollo de Aplicaciones Móviles (Android).
– Android: Plataformas actuales: Android, iOS. Diferencias. Mercado,
tendencias, desafíos.
– Sistema Operativo y marco de desarrollo (sdk,ndk). Generalidades.
– Desarrollo de aplicaciones Android: desarrollo nativo vrs webapps.
• Componentes de hardware de un smartphone o tablet Android.
– Sistema. CPU. Display. Red. Batería. Dispositivos (cámaras,
conexiones USB, etc.).
– Sensores (sensor temperatura, acelerómetro, brújula, sensor de
proximidad, sensor de luz, giroscopio, barómetro, sensor de
gravedad).
• Entorno de desarrollo y Arquitectura de las aplicaciones Android:
– Arquitectura típica de aplicaciones Android. Estructura de
proyectos Android.
17
Desarrollo de Aplicaciones Móviles
• Componentes básicos de las aplicaciones Android: Actividades,
recursos, controles:
– Android Manifest/Permissions. Actividades, Intents e Intent Filters.
– Recursos: distintos tipos, Acceder programáticamente.
– Layouts: soportando distintos tipos de resoluciones.
– Controles comunes, eventos y listeners. Dialogs, Notificactions,
Toasts. Procesos y threads.
– Services. Lists y Adapters. Fragments. Google Maps. Localizaion
Frameworks.
18
Aplicaciones Sensibles al Contexto
• Empezando el 20/4 hasta el fin de cuatrimestre
• Dictado por Vanina Martinez
• Horario:
– Martes: 18 a 21 hrs – Aula 38B
• Temas:
– Aplicaciones Sensibles al Contexto.
– Desarrollo de Aplicaciones Sensibles al Contexto.
– Aplicaciones Inteligentes Sensibles al Contexto.
– Frameworks de desarrollo contextual.
19
Aplicaciones Sensibles al Contexto
• Aplicaciones Sensibles al Contexto:
– Introducción. Conceptos básicos. Sensibilidad al contexto.
– Wearable Technologies.
– Relaciones con HCI y Mobile HCI.
• Desarrollo de Aplicaciones Sensibles al Contexto:
– Enfoques para modelar la sensibilidad al contexto.
– Elementos de un sistema sensible al contexto.
– Aspectos de contexto.
– Contexto centrado en el usuario o en los sensores.
– Sensado de contextos.
– Complejidad de las aplicaciones sensibles a contexto. Seguridad y
privacidad.
20
Aplicaciones Sensibles al Contexto
• Aplicaciones Inteligentes Sensibles al Contexto.
– Inteligencia Artificial: definiciones y conceptos básicos.
– Representación de Conocimiento.
– Aplicaciones móviles inteligentes: sensibilidad al contexto como
primer paso hacia la inteligencia.
– Manejo de inconsistencia, incertidumbre y vaguedad.
– Métodos y formalismos para la inteligencia en aplicaciones
sensibles al contexto: clasificación, aprendizaje, otros métodos.
• Frameworks de desarrollo contextual:
– Framework comerciales.
– Framework Académicos.
– Casos de estudio.
21
Modalidad de Cursado Optativa
• Proyecto (comisiones de a lo sumo 2 alumnos):
– Objetivo: demostrar conceptos básicos de programación en Android
en una aplicación que se pueda considerar Sensible al Contexto.
– Propuesta de Proyecto: entrega hasta el miércoles 4 de mayo
(OBLIGATORIO). Informe detallando la propuesta de la aplicación
que se realizará como proyecto final de la materia.
– Fecha entrega final del Proyecto: 22 de junio.
• Promoción: examen escrito conceptual sobre los temas
dados en la segunda parte de la materia. Fecha: 15 de
junio.
• Condiciones para cursar y aprobar la materia:
– Entrega de propuesta (condición de cursado).
– Aprobar Proyecto (incluye las dos etapas).
– Aprobar examen de promoción.
22
Modalidad de Cursado Posgrado
• A partir de la semana del 10 de mayo: reuniones
semanales grupales.
– Objetivo: estudiar y discutir trabajos de investigación relevantes al
área de inteligencia artificial y aplicaciones sensibles al contexto
para entender el estado del arte en esta área relativamente nueva.
– Lectura de los artículos asignados + entrega de breves informes
acerca de ellos (a entregar por correo electrónico antes de la clase
en la que se discuten los artículos).
• Proyecto (individual) teórico o práctico:
– Proyecto practico: implementando alguna técnica de Inteligencia
Artificial en una aplicación móvil
– Proyecto teórico: discutiendo y/o extendiendo algún trabajo de
investigación presentando en el grupo o desarrollo de alguna
técnica/idea novedosa.
23
Molde de informe para alumnos de posgradoApellido y nombre del alumno: Título del artículo:
Fecha del informe: Autores:
Datos de publicación:
1. ¿Qué mensaje le dejó el artículo?
2. ¿Cuál es la motivación del trabajo (tanto problema popular como técnico)?
Incluya su destilado en forma de pregunta de investigación. ¿Por qué el problema
popular no tiene una solución trivial? ¿Qué soluciones existían previamente y por
qué son inadecuadas?
3. ¿Cuál es la solución propuesta (hipótesis, idea, diseño)? ¿Por qué se cree que
funcionará? ¿Qué mejoras representa? ¿Cómo se alcanza la solución?
4. ¿Qué evaluación realizan los autores de la solución propuesta? ¿Qué
argumentos, lógica, evidencia, artefactos (tales como un sistema prototipo) o
experimentos se presentan en apoyo a la idea?
24
Molde de informe para alumnos de posgradoApellido y nombre del alumno: Título del artículo:
Fecha del informe: Autores:
Datos de publicación:
5. ¿Cuál es su análisis del problema identificado, ideas propuestas y evaluación?
¿Es una buena idea? ¿Qué fallas percibe en el trabajo? ¿Cuáles son las ideas
más interesantes o controversiales? Para trabajos con efectos en la práctica,
pregúntese si las soluciones propuestas funcionarán, quiénes la querrían utilizar y
cuándo podrían ser realidad.
6. ¿Cuáles son las contribuciones del artículo? incluya tanto las declaradas por los
autores como las que ve usted. Pueden ser ideas, métodos, teorías formales,
software, resultados experimentales, técnicas experimentales, etc.
7. ¿En qué direcciones se podría continuar este trabajo? incluya tanto las
declaradas por los autores como las que ve usted; estas últimas pueden estar
motivadas por sus críticas al trabajo.
8. ¿Qué preguntas le quedan? ¿Qué le pareció difícil de comprender? Liste tantos
puntos como pueda.
25
Imagen Fuente:www.richmedia.com