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.

30 CAPÍTULO 3. APRESENTAÇÃO DO SISTEMA DOORS<br />

3.2.2 Funcionamento global<br />

Nesta subsecção apresentam-se brev<strong>em</strong>ente os componentes que constitu<strong>em</strong> um coobjecto e <strong>de</strong>screve-se<br />

o funcionamento <strong>de</strong> um coobjecto, explicando as interacções que se estabelec<strong>em</strong> entre os vários compo-<br />

nentes e entre o núcleo do sist<strong>em</strong>a e um coobjecto.<br />

Além dos subobjectos, representantes dos subobjectos (proxies) e gestor <strong>de</strong> subobjectos, apresenta-<br />

dos na subsecção anterior, o framework <strong>de</strong> componentes DOORS inclui os seguintes componentes:<br />

Atributos do sist<strong>em</strong>a Mantém as proprieda<strong>de</strong>s fundamentais do coobjecto/subobjecto, as quais permi-<br />

t<strong>em</strong> ao sist<strong>em</strong>a manipulá-lo. A impl<strong>em</strong>entação <strong>de</strong>ste componente é comum a todos os coobjec-<br />

tos/subobjectos.<br />

Atributos Mantém um conjunto <strong>de</strong> proprieda<strong>de</strong>s adicionais do coobjecto, as quais po<strong>de</strong>m ser <strong>de</strong>finidas<br />

<strong>de</strong> forma específica para cada coobjecto.<br />

Registo Armazena as operações executadas (submetidas) pelos utilizadores.<br />

Reconciliação/controlo <strong>de</strong> concorrência Controla a execução das operações armazenadas no registo.<br />

No servidor, este componente é responsável por garantir que as várias réplicas <strong>de</strong> um mesmo<br />

coobjecto evolu<strong>em</strong> <strong>de</strong> acordo com as expectativas (não necessariamente para o mesmo estado).<br />

Awareness Controla o processamento da informação <strong>de</strong> awareness produzida durante a execução das<br />

operações — <strong>em</strong> algumas situações, este componente <strong>de</strong>fine a estratégia base utilizada, a qual<br />

po<strong>de</strong> ser adaptada para cada utilizador.<br />

Adaptação Controla o modo como são processadas as invocações executadas nos representantes dos<br />

subobjectos. Usando este componente é possível propagar uma invocação para execução imediata<br />

num servidor.<br />

Cápsula Define a composição <strong>de</strong> um coobjecto e controla o seu funcionamento. Adicionalmente, con-<br />

trola a interacção <strong>de</strong> um coobjecto com o núcleo do sist<strong>em</strong>a.<br />

O núcleo do sist<strong>em</strong>a interage com um coobjecto através da interface <strong>de</strong> sist<strong>em</strong>a do coobjecto (ou<br />

simplesmente interface do coobjecto). Esta interface, apresentada na figura 3.3, é impl<strong>em</strong>entada pelo<br />

componente cápsula. Para ser mais exacto, o interface do coobjecto consiste <strong>em</strong> duas interfaces distintas:<br />

uma a ser impl<strong>em</strong>entada no servidor e outra no cliente.<br />

3.2.2.1 Cópias <strong>de</strong> um coobjecto<br />

Um coobjecto é representado <strong>em</strong> m<strong>em</strong>ória através <strong>de</strong> um conjunto <strong>de</strong> (instâncias <strong>de</strong>) componentes. No<br />

protótipo do sist<strong>em</strong>a DOORS, os componentes são representados por objectos do sist<strong>em</strong>a Java.

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

Saved successfully!

Ooh no, something went wrong!