Guiões de Interacção



next up previous
Next: Implementação do MIU Up: O Sistema GAMA Previous: Arquitectura do Sistema

Guiões de Interacção

Os Guiões de Interacção (GI) são o formalismo desenvolvido para a especificação de Controladores de Diálogo no âmbito do sistema GAMA.

Um GI descreve um subdiálogo da interface. A título de exemplo apresenta-se um GI correspondente à síntese do comando REMPAL(pal), que remove uma palavra de um dicionário. Note-se que a operação só é válida se o dicionário não estiver vazio e dele constar a palavra que se pretende remover.

Como se pode ver pelo exemplo apresentado, um GI divide-se em duas componentes principais: Declaractions e Behaviour. Cada uma delas está dividida, por sua vez, em várias cláusulas.

A componente Declarations engloba a declaração do tipo de Guiãogif (TYPE), dos símbolos que o identificam (SYMBOL), de Guiões externos ou de sub-Guiões que ele utiliza (EXTERNAL e SUBGI), dos argumentos da operação a executar (ARGS) e de variáveis locais, da aplicação, ou da apresentação que manipula (STATE-CTRL, STATE-APL e STATE-UI respectivamente).

A componente Behaviour engloba a declaração de condições de contexto necessárias para que a utilização do GI seja válida (CONTEXT), de acções de inicialização (INIT), da sequência de eventos que o GI aceita (EVSEQ), de condições a verificar e acções a executar para cada evento (TRANS) e da expressão a enviar à Aplicação para execução (EXEC).

Para descrever, em EVSEQ, as sequências possíveis de eventos existem os operadores de sequência (), paralelismo (com e sem sincronização, | e ||), repetição (*) e escolha (+). Os eventos possíveis são, ou o evento especial input (input(v) corresponde à leitura da variável v), ou Guiões de Interacção (correspondendo ao processamento dos mesmos)gif.

Na cláusula TRANS é ainda possível declarar eventos especiais, correspondentes a comandos pré-definidos: cancelamento do GI (CANCEL), confirmação do diálogo (OK), reinicialização do GI (RESET) e repetição do GI (APPLY).



Jose Franscisco Creissac Campos
Wed Feb 7 14:27:41 MET 1996