11.04.2013 Views

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

120 CAPÍTULO 8. RESERVAS<br />

vc vl s vu e shvc shs<br />

value-change (vc) não não não sim não não não<br />

value-lock (vl) não sim não sim não não não<br />

slot (s) não não não sim não não não<br />

value-use (vu) sim sim sim sim sim sim sim<br />

escrow (e) não não não sim sim ∗ não não<br />

shared value-change (shvc) não não não sim não sim sim<br />

shared slot (shs) não não não sim não sim sim<br />

∗ Sim, enquanto as reservas agregadas não violar<strong>em</strong> a restrição global.<br />

Tabela 8.1: Tabela <strong>de</strong> compatibilida<strong>de</strong> das reservas.<br />

Um cliente <strong>móvel</strong> requisita uma conjunto <strong>de</strong> reservas do servidor antes <strong>de</strong> se <strong>de</strong>sconectar. Este<br />

conjunto <strong>de</strong>ve ser <strong>de</strong>finido com base nas operações que se espera ser<strong>em</strong> efectuadas pelo utilizador até à<br />

próxima interacção com o servidor. A <strong>de</strong>dução <strong>de</strong> bons valores para este probl<strong>em</strong>a po<strong>de</strong> ser vista como<br />

uma extensão do probl<strong>em</strong>a da replicação antecipada [91, 87] (on<strong>de</strong> os clientes <strong>de</strong>v<strong>em</strong> obter cópias dos<br />

<strong>dados</strong> que os utilizadores vão ace<strong>de</strong>r). Como se referiu anteriormente, este probl<strong>em</strong>a está fora do âmbito<br />

<strong>de</strong>sta dissertação e po<strong>de</strong> ser atacado usando técnicas <strong>de</strong> previsão [53].<br />

Nas experiências apresentadas na secção 9.2 usou-se uma estratégia simples que adapta a previsão<br />

do comportamento futuro do cliente com base no comportamento verificado. Esta estratégia permite<br />

obter bons resultado numa aplicação <strong>de</strong> suporte a uma força <strong>de</strong> vendas <strong>móvel</strong>. A interface gráfica da<br />

aplicação <strong>de</strong>senvolvida permite, adicionalmente, especificar as reservas que <strong>de</strong>v<strong>em</strong> ser obtidas <strong>de</strong> forma<br />

simples. Internamente as reservas são obtidas através <strong>de</strong> variantes da instrução select. Por ex<strong>em</strong>plo,<br />

para requisitar uma reserva escrow <strong>de</strong> três unida<strong>de</strong>s relativa ao produto com o i<strong>de</strong>ntificador 3, o cliente<br />

submete a instrução get escrow reservation stock instances 3 from products where id=’5’.<br />

Quando um cliente solicita uma reserva, o servidor verifica se é possível conce<strong>de</strong>r a reserva. Primeiro,<br />

o servidor verifica se existe alguma reserva concedida que impossibilite a concessão da nova reserva. Para<br />

tal, usa-se a tabela <strong>de</strong> compatibilida<strong>de</strong> apresentada na tabela 8.1, <strong>em</strong> que sim significa que é possível<br />

conce<strong>de</strong>r uma reserva <strong>de</strong> um dado tipo mesmo que já tenha sido concedida um reserva do outro tipo que<br />

actue sobre o mesmo el<strong>em</strong>ento <strong>de</strong> <strong>dados</strong>. Se os conjuntos <strong>de</strong> el<strong>em</strong>entos <strong>de</strong> <strong>dados</strong> afectados por duas<br />

reservas não se intersectar<strong>em</strong>, ambas po<strong>de</strong>m ser concedidas.<br />

Segundo, o servidor verifica se o utilizador do cliente <strong>móvel</strong> po<strong>de</strong> obter a reserva requisitada. Esta<br />

verificação é efectuada com base <strong>em</strong> regras <strong>de</strong> autorização especificadas pelo administrador do sist<strong>em</strong>a.<br />

Estas regras especificam que reservas cada utilizador po<strong>de</strong> obter e por quanto t<strong>em</strong>po po<strong>de</strong>m ser conce-<br />

didas. A composição <strong>de</strong>stas regras [33] po<strong>de</strong> ser simples e estática ou complexa recorrendo a funções<br />

PL/SQL.<br />

Quando uma reserva é concedida, o sist<strong>em</strong>a Mobisnap t<strong>em</strong> <strong>de</strong> garantir que a promessa que lhe está

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!