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.

9.1. APLICAÇÕES 133<br />

1 ------ REMOVE MARCAÇÃO: id=3476554<br />

2 BEGIN<br />

3 SELECT count(*) INTO cnt FROM datebook WHERE id = 3476554;<br />

4 IF (cnt > 0) THEN<br />

5 DELETE FROM datebook WHERE id = 3476554;<br />

6 COMMIT;<br />

7 END IF;<br />

8 ROLLBACK;<br />

9 END;<br />

Figura 9.2: Transacção <strong>móvel</strong> que r<strong>em</strong>ove uma marcação numa agenda partilhada (o bloco <strong>de</strong> <strong>de</strong>claração<br />

<strong>de</strong> variáveis é omitido).<br />

O resultado da submissão <strong>de</strong> uma nova encomenda po<strong>de</strong> ser garantida usando reservas escrow, valu-<br />

e-use e value-change como se <strong>de</strong>screveu na secção 8.5. Assim, os ven<strong>de</strong>dores po<strong>de</strong>m obter as reservas<br />

necessárias para garantir as encomendas que esperam receber antes <strong>de</strong> se <strong>de</strong>sconectar<strong>em</strong> (uma avaliação<br />

da eficiência <strong>de</strong>sta aproximação é apresentada na secção 9.2). As reservas obtidas permit<strong>em</strong> garantir que<br />

a encomenda po<strong>de</strong> ser satisfeita com a existência do produto (stock) disponível.<br />

Na aplicação <strong>de</strong>senvolvida, o resultado do cancelamento <strong>de</strong> uma encomenda nunca é garantida <strong>de</strong><br />

forma in<strong>de</strong>pen<strong>de</strong>nte. Este facto resulta da <strong>de</strong>cisão <strong>de</strong> permitir que o processamento das encomendas<br />

possa ser iniciado <strong>em</strong> qualquer momento. S<strong>em</strong> esta <strong>de</strong>cisão, seria possível garantir o cancelamento<br />

<strong>de</strong> uma encomenda obtendo uma reserva value-change sobre o registo que <strong>de</strong>screve a encomenda. No<br />

entanto, esta reserva impe<strong>de</strong> o início do processamento da encomenda no servidor porque não permite<br />

que se actualize o seu estado.<br />

A aplicação <strong>de</strong>senvolvida é <strong>de</strong>talhada <strong>em</strong> [32]. A interface da aplicação foi <strong>de</strong>senvolvida usando<br />

Java servlets [157]. A aplicação executa nos clientes móveis usando o servidor <strong>de</strong> servlets Jetty [106],<br />

cuja reduzida dimensão se a<strong>de</strong>qua às características dos dispositivos móveis.<br />

9.1.2 Agenda partilhada<br />

No âmbito da aplicação <strong>de</strong> suporte a uma força <strong>de</strong> vendas <strong>de</strong>senvolveu-se igualmente uma aplicação <strong>de</strong><br />

agenda partilhada. Esta aplicação permite gerir as <strong>de</strong>monstrações <strong>de</strong> produtos executadas pelos ven<strong>de</strong>do-<br />

res. Assim, existe uma operação que introduz uma nova <strong>de</strong>monstração (figura 8.4) e uma operações que<br />

r<strong>em</strong>ove uma <strong>de</strong>monstração anteriormente marcada (figura 9.2). Estas operações po<strong>de</strong>m ser executadas<br />

pelo ven<strong>de</strong>dor ou pela secretaria da <strong>em</strong>presa.<br />

É possível confirmar in<strong>de</strong>pen<strong>de</strong>nt<strong>em</strong>ente o resultado da introdução <strong>de</strong> novas marcações usando re-<br />

servas, como se explica na secção 8.5. Um ven<strong>de</strong>dor po<strong>de</strong> também garantir o cancelamento das suas<br />

marcações obtendo reservas slot sobre os registos das suas marcações.

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

Saved successfully!

Ooh no, something went wrong!