5. URFA ŞEHİR İÇİ HANLARI
5.4. Hacı Kâmil Hanı
O dicion´ario Merrian-Webster2 define o ambiente como sendo as circunstˆancias, objetos
ou condi¸c˜oes na qual uma entidade (e.g., uma pessoa e/ou objeto) est´a presente. O
2
ambiente representa o local onde o usu´ario se encontra, podendo ser interno (i.e., um quarto, casa, pr´edio e aeroporto) ou externo (i.e., rua, bairro, distrito, cidade ou pa´ıs). Nestes ambientes, dispositivos m´oveis podem usufruir de uma diversa quantidade de informa¸c˜oes de contexto para o provimento de servi¸cos, possibilitando assim a computa¸c˜ao ciente de contexto e a adapta¸c˜ao em aplica¸c˜oes m´oveis residentes.
Na computa¸c˜ao ub´ıqua, os ambientes possuem elementos computacionais vis´ıveis ou n˜ao a fim de prover informa¸c˜oes e servi¸cos aos usu´arios presentes. Estes elementos possuem uma capacidade de processamento de dados e informa¸c˜oes com dimens˜oes de bolso, como por exemplo, os sensores e dispositivos m´oveis. Estes dispositivos podem possuir ou n˜ao uma tela e capacidade de entrada de dados atrav´es, por exemplo, de um teclado em miniatura. Alguns dispositivos m´oveis mais potentes fornecem a assistˆencia e conveniˆencia de um computador port´atil em ambientes onde a utiliza¸c˜ao de computadores pessoais n˜ao ´e poss´ıvel ou limitada. Dispositivos m´oveis, em geral, possuem a capacidade de se conectar a redes sem fio, obtendo desta forma acesso `a Internet e a outros sistemas computacionais no escrit´orio, na residˆencia e em ambientes externos.
2.3.2
Evento
O evento representa o resultado de um acontecimento onde ocorre uma mudan¸ca de estado de um determinado elemento computacional. Semelhantemente, M¨uhl et al. [37] define o evento como sendo um acontecimento de interesse observ´avel por um elemento computacional, podendo este ser um computador, um sensor, ou um dispositivo qualquer. Chandy [11] define um evento de uma forma mais ampla como sendo uma mudan¸ca de estado detect´avel por uma entidade no sistema (e.g., consumidores e/ou produtores). Eles s˜ao respons´aveis por duas opera¸c˜oes: (a) criar instˆancias de eventos representando as mudan¸cas nos quais outros elementos podem responder e (b) reagir ou adaptar a mudan¸cas atrav´es de regras impostas no n´ıvel de aplica¸c˜ao. Estas regras definem intervalos de valores aceit´aveis (e.g., threshold ) para um determinado comportamento observado.
Consideramos neste trabalho dois tipos de eventos: a) os internos que ocorrem no ˆambito do dispositivo m´ovel e b) os externos que ocorrem tanto no ˆambito do ambiente em que o dispositivo se encontra quanto em servi¸cos dispon´ıveis na Web. Componentes de hardware e software que coletam informa¸c˜oes de contexto do usu´ario, do dispositivo e/ou aplica¸c˜ao ou de servi¸cos remotos produzem eventos em fun¸c˜ao de mudan¸cas nestas informa¸c˜oes. Isto permite que o software localizado no dispositivo m´ovel execute a¸c˜oes ou comandos de adapta¸c˜ao em decorrˆencia de mudan¸cas no meio. Desta forma, o
2.3. Defini¸c˜ao de Termos Relacionados 19
sistema determina seu fluxo de execu¸c˜ao a partir de informa¸c˜oes coletadas apartir de sensores, a¸c˜oes do usu´ario ou mensagens de outras aplica¸c˜oes e servi¸cos. O evento permite que informa¸c˜oes de contexto sejam correlacionadas `as atividades e servi¸cos locais e externos, permitindo assim a chamada e consumo de servi¸cos por aplica¸c˜oes presentes no dispositivo m´ovel em fun¸c˜ao do contexto apresentado.
Sistemas baseados em eventos em geral processam eventos em forma de notifica¸c˜oes atrav´es de uma filtragem ou correla¸c˜ao. A notifica¸c˜ao tem como objetivo descrever os atributos associados a um evento, de tal forma que um determinado componente consumidor possa acess´a-los e executar atividades para o usu´ario. O processo de filtragem permite que o sistema forne¸ca determinados tipos de eventos para consumidores a partir de uma lista ou fila ou baseada em t´opicos ou canais, permitindo o provimento de eventos de acordo com interesses de consumidores. Esta filtragem depende diretamente da correla¸c˜ao entre eventos e seus filtros, onde cada filtro determina os valores v´alidos de filtragem para os eventos existentes. O sistema seleciona e entrega aqueles que atendem `as restri¸c˜oes de atributos definidas no filtro aos consumidores interessados. Em geral, a subscri¸c˜ao em eventos utiliza a sele¸c˜ao e entrega das notifica¸c˜oes associadas atrav´es das diversas formas de filtragem, tais como a subscri¸c˜ao por t´opicos ou temas, por tipos ou classifica¸c˜oes, dentre outras.
2.3.3
Contexto
Dey et al. [21] formalizam a defini¸c˜ao de contexto como sendo qualquer informa¸c˜ao que possa ser utilizada para caracterizar uma situa¸c˜ao de entidades (e.g., pessoa, lugar ou objeto) consideradas relevantes para intera¸c˜ao entre um usu´ario e uma aplica¸c˜ao. O Dicion´ario Merrian-Webster define contexto de uma forma ainda mais gen´erica sendo as condi¸c˜oes correlacionadas na qual algo existe ou acontece. Na computa¸c˜ao, o contexto correlaciona as situa¸c˜oes e mudan¸cas no ambiente com aplica¸c˜oes e servi¸cos em execu¸c˜ao sobre este ambiente. Todo processo de gest˜ao de contexto apresenta uma sensibilidade que procura lidar com estas mudan¸cas atrav´es da coleta de informa¸c˜oes a partir de sistemas computacionais acess´ıveis tais como sensores, atuadores, aplicativos e servi¸cos. A partir da coleta de informa¸c˜oes de contexto, dispositivos m´oveis podem reagir em fun¸c˜ao das mudan¸cas detectadas, notificando assim o usu´ario m´ovel das mudan¸cas.
O termo ”ciente de contexto”apresentado por Schilit et al. [48] define as formas de representa¸c˜ao das mudan¸cas e a¸c˜oes em fun¸c˜ao do contexto para aplica¸c˜oes m´oveis. Isto demonstra a importˆancia do conhecimento do contexto e monitoramento de sua mudan¸ca para que aplica¸c˜oes possam tanto usufruir de servi¸cos sens´ıveis ao tal quanto adaptarem a estas mudan¸cas. Chen et al. [13] acrescenta duas classifica¸c˜oes de
aplica¸c˜oees cientes de contexto: ativa e passiva. Na computa¸c˜ao ciente de contexto ativa, aplica¸c˜oes s˜ao capazes de se adaptar automaticamente `a informa¸c˜oes de contexto descobertas pelo seu comportamento. Diferentemente da ativa, as aplica¸c˜oes na passiva apresentam a informa¸c˜ao recente de contexto coletada ao usu´ario para este possa acess´a- la em um momento futuro e oportuno.
Chen et al. [13] apresenta o contexto como sendo uma divis˜ao em quatro categorias: (a) o contexto computacional, (b) contexto do usu´ario, (c) contexto f´ısico e (d) contexto do tempo. O contexto computacional apresenta informa¸c˜oes de conectividade de rede, custo de transmiss˜ao, largura de banda e recursos pr´oximos dispon´ıveis tais como impressoras, telas e computadores. O contexto do usu´ario define o perfil, localiza¸c˜ao e pessoas pr´oximas e em alguns casos a situa¸c˜ao atual do usu´ario no ˆambito psicol´ogico e social. O contexto f´ısico apresenta informa¸c˜oes do ambiente em volta do usu´ario, tais como a ilumina¸c˜ao, n´ıveis de ru´ıdo, temperatura, informa¸c˜oes de tr´afego, objetos pr´oximos e orienta¸c˜ao. O contexto do tempo apresenta detalhes temporais do usu´ario tais como a hora do dia, semana, mˆes e esta¸c˜oes do ano. Todas estas categorias unificadas definem o escopo de informa¸c˜oes de contexto que sistemas m´oveis podem armazenar do usu´ario.