El contexto del usuario
Diversos autores han propuesto definiciones de contexto en el ámbito computacional, entre ellos tenemos a Dey (2001) quién define contexto como cualquier información que puede ser usada para caracterizar la situación de una entidad (persona, lugar, u objeto) que es considerada relevante para la interacción entre un usuario y una aplicación. Salber et al.
(1999) afirman que el contexto típicamente incluye la localización, identidad, actividad y estado de las entidades o sus grupos. Una aplicación consciente del contexto percibe la información contextual y modifica su comportamiento sin la intervención explícita del usuario. Perkop y Burnett (2003) afirman que el contexto incluye muchos más elementos que las propiedades físicas del ambiente, del usuario o de los dispositivos, incluye también elementos cognitivos del usuario. El contexto debe tener un enfoque centrado en la actividad; las aplicaciones que integran un ambiente consciente del contexto deben ser capaces de adaptar su comportamiento dependiendo de la actividad que se realice. Hofer et al. (2002) separan el contexto en físico y lógico, el primero puede ser medido por hardware de sensores e incluye entre otros: la localización, la luz, el sonido, el movimiento, la temperatura y la presión del aire; el segundo se refiere al monitoreo de las interacciones del usuario, por ejemplo: el objetivo, la tarea, el contexto del trabajo, los procesos de negocios,
el estado emocional, entre otros. En este sentido, el contexto puede ser utilizado por las aplicaciones para adaptarse y mejorar su desempeño. Abowd y Mynatt (2000) escribieron que es difícil establecer una definición completa del contexto, pero es posible determinar un conjunto mínimo necesario de lo que es el contexto respondiendo a las cinco W’s (“five W’s”), quién (“Who”) enfocándose en la identidad del usuario, qué (“What”) refiriéndose a
lo que el usuario está haciendo, dónde (“Where”) que es la localización del usuario, cuándo
(“When”) referente al tiempo, por qué (“Why”) relacionado con el “What” incluye
elementos del estado emocional de la persona como pueden ser temperatura corporal, ritmo cardiaco y reacciones de la piel. Schilit et al. (1994) afirman que tres aspectos importantes del contexto son, ¿dónde está el usuario?, ¿con quién está? y ¿qué recursos están cerca de él?, el contexto abarca mucho más que la localización del usuario, incluye iluminación, niveles de ruido, conectividad en la red, costo de comunicación, ancho de banda en la comunicación y situaciones de aspecto social.
Como se puede observar, es difícil encontrar una definición única del contexto, ya que depende en gran medida de la situación en que se quiera aplicar. Pero de manera general, el contexto del usuario puede definirse como el entorno físico, situacional, emocional, y social en el que se encuentra inmerso el usuario y que le dan significado, sentido y valor a las acciones o actividades que se realizan en torno a él.
Los humanos tenemos habilidades innatas en el manejo del contexto en el cual nos desenvolvemos, esto es, cuando nos comunicamos o interactuamos con otras personas usamos información del ambiente para el manejo de diferentes situaciones. Por ejemplo, si queremos hablar con alguna persona y observamos que en ese momento se encuentra ocupada atendiendo una llamada, asumimos de manera muy sencilla que no es el momento adecuado para iniciar una comunicación, o bien, si nos encontramos en una plática cotidiana en un ambiente público y por alguna razón se incrementa el nivel de ruido en el ambiente, nosotros de manera automática adaptamos nuestro nivel de voz para continuar o bien decidimos detener la conversación y esperar a que desaparezca la fuente del ruido. En estos dos sencillos ejemplos vemos la utilización del contexto de una manera natural, en el
primero reconocemos el contexto de nuestra persona objetivo y en el segundo utilizamos el contexto personal.
Sin embargo, las computadoras no cuentan con estas capacidades de percepción del entorno, por lo que no pueden aprovechar la gran cantidad de información que se encuentra en el ambiente del usuario y que puede ser utilizada para su beneficio. Proporcionarle a las computadoras estas capacidades de percepción y procesamiento del ambiente que rodea al usuario, es uno de los principales objetivos del cómputo consciente del contexto (Abowd et al., 2002; Abowd y Mynatt, 2000).
Aplicaciones conscientes del contexto
Ahora bien, tenemos que las aplicaciones de cómputo pueden hacer uso del contexto y convertirse así en una aplicación consciente del contexto.
Una de las primeras definiciones de software consciente del contexto fue propuesta por Schilit et al. (1994), donde afirman que un sistema consciente del contexto se adapta de acuerdo a la localización del usuario, a las personas que se encuentran cerca y a los dispositivos accesibles, puede examinar el ambiente computacional y reaccionar a los cambios del mismo para proveer servicios al usuario que le sean de utilidad para la realización de sus actividades cotidianas. Salber et al. (1999) describen que una aplicación consciente del contexto percibe la información contextual y modifica su comportamiento sin la intervención explícita del usuario. Abowd y Mynatt (2000) escribieron que la consciencia del contexto es la capacidad de las aplicaciones para adaptar el comportamiento basándose en información percibida del ambiente físico y del computacional. Prekop y Burnett (2003) afirman que las aplicaciones que integran un ambiente consciente del contexto deben ser capaces de adaptar su comportamiento dependiendo de la actividad que se realice.
Una de las definiciones clásicas y más ampliamente utilizadas es la formulada por Dey (2001) donde describe que un sistema es consciente del contexto si lo utiliza para proveer
información y/o servicios relevantes para el usuario, donde la relevancia depende de la tarea que se encuentra realizando el usuario.
Tenemos entonces que una aplicación es considerada consciente del contexto cuando cuenta con mecanismos que le permitan percibir, procesar y utilizar el contexto del usuario con la finalidad de adaptar su comportamiento para brindarle un mejor servicio al usuario. Por ejemplo, pensemos en un teléfono celular; una situación muy común es recibir una llamada y que el teléfono suene en un momento en el cual estamos en una reunión o en una actividad donde el sonido llega a ser molesto o inoportuno. Pues bien, una aplicación consciente del contexto podría utilizar información de nuestro contexto, como puede ser la localización, nuestra agenda de trabajo, la hora del día, el ruido ambiental, el número de personas alrededor, entre otros, para cambiar de manera automática a modo vibración cuando considere que nos encontramos en una situación en donde el sonido del teléfono puede ser un problema, o en caso contrario si se encuentra en modo vibración y la aplicación determina que nos encontramos en un ambiente extremadamente ruidoso, como por ejemplo conduciendo el auto, entonces que ajuste el volumen del teléfono con la finalidad de llamar nuestra atención y que sea atendida la llamada entrante.