interfaces adaptables al usuario

21
TSI-020301-2008-2

Upload: piramidepse

Post on 04-Jul-2015

676 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Interfaces adaptables al usuario

TSI-020301-2008-2

Page 2: Interfaces adaptables al usuario

2

02 | Solución propuesta

04 | Fuzzy Knowledge-Eliciting Reasoner

03 | Directivas de preprocesado

00 |||| ÍÍÍÍndicendicendicendice

01 | Necesidad de interfaces adaptables

05 | Conclusiones

Page 3: Interfaces adaptables al usuario

3

01 |||| Necesidad de interfaces adaptablesNecesidad de interfaces adaptablesNecesidad de interfaces adaptablesNecesidad de interfaces adaptables

� Colectivos entre los que la adopción de nuevas tecnologías es más lenta

Fuente: Kaye, H.S., Computer and Internet Use among People with Disabilities, in Disability Statistics Report 2000

Page 4: Interfaces adaptables al usuario

4

01 |||| Necesidad de interfaces adaptablesNecesidad de interfaces adaptablesNecesidad de interfaces adaptablesNecesidad de interfaces adaptables

� El envejecimiento de la población es cada vez más pronunciado

� Precisamente es a estos dos colectivos (discapacitados y ancianos) a los que más puede ayudar la tecnología a aumentar su independencia:

� Compras on-line

� Socialización

� Guiado

� Acceso a publicaciones

� Ayudas en los dispositivos móviles

� Uno de los principales problemas radica en la falta de adaptación de los interfaces a las capacidades de los usuarios.

� Los desarrolladores nos centramos muchas veces más en la tecnología que en los usuarios.

Page 5: Interfaces adaptables al usuario

5

02 | Solución propuesta

04 | Fuzzy Knowledge-Eliciting Reasoner

03 | Directivas de preprocesado

01 | Necesidad de interfaces adaptables

05 | Conclusiones

Page 6: Interfaces adaptables al usuario

6

02 |Soluci|Soluci|Soluci|Solucióóóón propuestan propuestan propuestan propuesta

� Framework para la creación de interfaces basado en las capacidades de los usuarios.

� Existen diferentes enfoques a la hora de desarrollar frameworks para la creación de interfaces:

� Mark-up languages: Open Laszlo

� Uso de factorías: GWT, EMI2lets…

� Directivas de preprocesado: Antenna, J2ME Polish…

� Después de analizas las ventajas e inconvenientes de cada enfoque nos decidimos por el uso de las directivas de preprocesado:

� Las directivas no están ligadas a una única plataforma.

� El desarrollador puede utilizar su plataforma/lenguaje preferido para crear la aplicación

Ta

Page 7: Interfaces adaptables al usuario

7

02 |Soluci|Soluci|Soluci|Solucióóóón propuestan propuestan propuestan propuestaTa

Page 8: Interfaces adaptables al usuario

8

02 |Soluci|Soluci|Soluci|Solucióóóón propuestan propuestan propuestan propuesta

� Las capacidades se dividen en dos grupos: de dispositivo y de usuario.

� Las capacidades de dispositivo se basan en WURFL 2.9.5: Product_info, display, image_format…

� Las capacidades de usuario se dividen en 5 grupos

Ta

Page 9: Interfaces adaptables al usuario

9

02 | Solución propuesta

04 | Fuzzy Knowledge-Eliciting Reasoner

03 | Directivas de preprocesado

01 | Necesidad de interfaces adaptables

05 | Conclusiones

Page 10: Interfaces adaptables al usuario

10

03 |||| Directivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesado

� Existen tres tipos principales de directivas de preprocesado

� Condicionales

Page 11: Interfaces adaptables al usuario

11

03 |||| Directivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesado

� De gestión de errores

� De parametrización

Page 12: Interfaces adaptables al usuario

12

03 |||| Directivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesadoDirectivas de preprocesado

� Para interpretar las directivas se hace uso de Jython.

� Para evitar posibles problemas el sistema comprueba que sólo se puedan usar funciones de Python que se encuentran en una whitelist

� Aun así el preprocesador podría ser vulnerable a ataques mediante creación de variables grandes que generarán errores de heap overflow, aunque esto sólo generaría errores en compilación.

Page 13: Interfaces adaptables al usuario

13

02 | Solución propuesta

04 | Fuzzy Knowledge-Eliciting Reasoner

03 | Directivas de preprocesado

01 | Necesidad de interfaces adaptables

05 | Conclusiones

Page 14: Interfaces adaptables al usuario

14

04 |||| Fuzzy KnowledgeFuzzy KnowledgeFuzzy KnowledgeFuzzy Knowledge----Eliciting ReasonerEliciting ReasonerEliciting ReasonerEliciting Reasoner

� En algunos casos los valores de capacidades indicados en los perfiles de dispositivo y usuario no se podrán usar directamente:

� Ej: El desarrollador quiere que un control sólo se muestre si la pantalla es “grande”

� El uso de reglas difusas permite un lenguaje mucho más natural en la creación de las mismas:

IF screensize IS big AND resolution IS normal

THEN videoSuitability IS high;

� El problema es que el concepto “grande” no está directamente relacionado con unos valores, sino que depende del tamaño del resto de dispositivos existentes.

� Un dispositivo es “grande” comparado con otros

� También depende del momento.

� Un dispositivo que es “grande” hoy probablemente no lo sea dentro de 4 años.

Page 15: Interfaces adaptables al usuario

15

04 |||| Fuzzy KnowledgeFuzzy KnowledgeFuzzy KnowledgeFuzzy Knowledge----Eliciting ReasonerEliciting ReasonerEliciting ReasonerEliciting Reasoner

� ¿Cuáles son las características de un dispositivo medio?

� No todos los dispositivos pueden tener el mismo peso a la hora de hacer este cálculo.

� Algunos dispositivos tendrán muchas más unidades en el mercado.

No existen datos públicos de unidades vendidas.

¿Cómo podemos saber cual es la popularidad de un dispositivo?

Page 16: Interfaces adaptables al usuario

16

04 |||| Fuzzy KnowledgeFuzzy KnowledgeFuzzy KnowledgeFuzzy Knowledge----Eliciting ReasonerEliciting ReasonerEliciting ReasonerEliciting Reasoner

� Uso de Google Trends para realizar una estimación de la popularidad de cada dispositivo a lo largo del tiempo.

� Además los datos pueden ser geolocalizados para mayor precisión

Page 17: Interfaces adaptables al usuario

17

04 |||| Fuzzy KnowledgeFuzzy KnowledgeFuzzy KnowledgeFuzzy Knowledge----Eliciting ReasonerEliciting ReasonerEliciting ReasonerEliciting Reasoner

� Estos datos nos permiten calcular la importancia de cada valor de cada capacidad

Page 18: Interfaces adaptables al usuario

18

04 |||| Fuzzy KnowledgeFuzzy KnowledgeFuzzy KnowledgeFuzzy Knowledge----Eliciting ReasonerEliciting ReasonerEliciting ReasonerEliciting Reasoner

� Y la función de pertenencia

Page 19: Interfaces adaptables al usuario

19

02 | Solución propuesta

04 | Fuzzy Knowledge-Eliciting Reasoner

03 | Directivas de preprocesado

01 | Necesidad de interfaces adaptables

05 | Conclusiones

Page 20: Interfaces adaptables al usuario

20

05 |||| ConclusionesConclusionesConclusionesConclusiones

� Nunca debemos perder de vista que queremos que el mayor número de usuarios use nuestras aplicaciones.

� Con el envejecimiento de la población el grupo de usuarios representado por los ancianos y los discapacitados es cada vez más importante.

� Por eso es importante adaptar la aplicación a las capacidades de los diferentes usuarios.

Page 21: Interfaces adaptables al usuario

COORDINADOR