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.

168 CAPÍTULO 10. SISTEMA DE RECONCILIAÇÃO SQLICECUBE<br />

1 ------ REMOVE MARCAÇÃO: ’16-FEB-2002’ às 10:00, utilizador=’J.Smith’, id=3476554<br />

2 BEGIN<br />

3 SELECT count(*) INTO cnt FROM datebook<br />

4 WHERE id=3476554 AND day=’16-FEB-2002’ AND hour=10 AND user=’J.Smith’;<br />

5 -- cnt = read(datebook,id=3476554 AND day=’16-FEB-2002’ AND hour=10 AND user=’J.Smith’,count(*))<br />

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

7 -- precond(read(datebook,...,count(*))>0)<br />

8 DELETE FROM datebook WHERE id = 3476554 AND day=’16-FEB-2002’ AND hour=10 AND user=’John Smith’;<br />

9 -- <strong>de</strong>lete(datebook,id=3476554 AND day=’16-FEB-2002’ AND hour=10 AND user=’J.Smith’)<br />

10 COMMIT;<br />

11 END IF;<br />

12 ROLLBACK;<br />

13 END;<br />

Figura 10.8: Informação extraída da transacção <strong>móvel</strong> que cancela uma marcação numa agenda parti-<br />

lhada usando os <strong>de</strong>talhes da marcação (o bloco <strong>de</strong> <strong>de</strong>claração <strong>de</strong> variáveis é omitido).<br />

Duas operações relativas a marcações não sobrepostas são comutativas. A r<strong>em</strong>oção <strong>de</strong> uma marca-<br />

ção favorece a introdução <strong>de</strong> uma marcação sobreposta com a primeira, porque a r<strong>em</strong>oção do registo da<br />

marcação é favorável à inexistência <strong>de</strong> um registo que impossibilite a introdução da marcação. A intro-<br />

dução <strong>de</strong> uma marcação torna possível a r<strong>em</strong>oção da mesma marcação porque o registo inserido garante<br />

a veracida<strong>de</strong> da pré-condição <strong>de</strong> r<strong>em</strong>oção.<br />

As relações inferidas são as esperadas, levando à execução das operações <strong>de</strong> r<strong>em</strong>oção antes das<br />

operações <strong>de</strong> introdução <strong>de</strong> novas marcações. As operações relativas à mesma marcação são executadas<br />

pela or<strong>de</strong>m esperada, i.e., as r<strong>em</strong>oções após as inserções.<br />

Sist<strong>em</strong>a <strong>de</strong> reserva <strong>de</strong> bilhetes <strong>de</strong> comboio As relações inferidas relativamente às transacções <strong>de</strong>fi-<br />

nidas no sist<strong>em</strong>a <strong>de</strong> reserva <strong>de</strong> bilhetes <strong>de</strong> comboio são idênticas às obtidas na aplicação <strong>de</strong> suporte a<br />

uma força <strong>de</strong> vendas. Note-se que o facto <strong>de</strong> ser necessário obter o i<strong>de</strong>ntificador do bilhete vendido<br />

não influencia as relações inferidas porque esses el<strong>em</strong>entos <strong>de</strong> <strong>dados</strong> não influenciam as pré-condições<br />

<strong>de</strong>finidas.<br />

10.5.4 Extensões<br />

Até ao momento <strong>de</strong>screveu-se o funcionamento básico da inferência <strong>de</strong> relações s<strong>em</strong>ânticas a partir<br />

do código das transacções móveis. As funcionalida<strong>de</strong>s <strong>de</strong>scritas foram impl<strong>em</strong>entadas no protótipo do<br />

sist<strong>em</strong>a SqlIceCube. Nesta subsecção propõ<strong>em</strong>-se algumas extensões ao mo<strong>de</strong>lo básico <strong>de</strong>scrito. Estas<br />

extensões estão a ser impl<strong>em</strong>entadas no sist<strong>em</strong>a SqlIceCube.<br />

Os ex<strong>em</strong>plos apresentados na subsecção anterior mostram ex<strong>em</strong>plos <strong>em</strong> que é possível inferir as<br />

relações esperadas a partir do código das transacções móveis. No entanto, como se referiu anterior-<br />

mente, exist<strong>em</strong> situações <strong>em</strong> que não é possível obter imediatamente a informação s<strong>em</strong>ântica necessária<br />

para o processo <strong>de</strong> inferência <strong>de</strong> relações. Nesta subsecção discut<strong>em</strong>-se essas situações e apresentam-se

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

Saved successfully!

Ooh no, something went wrong!