CAP ÍTULO 4
INTERFACES PARA ÁLGEBRA DE MAPAS
Segundo Oliveira (1996), "em Sistemas de Informações Geográficas (SIG), o modelo
conceitual não pode ser usado como modelo de representação para a interface (como
ocorre, por exemplo, com interfaces de bancos de dados relacionais). A modelagem de
dados em um SIG envolve conceitos espaciais usualmente expressos em estruturas de
baixo nível, que não são adequadas para a cognição espacial humana”. Mesmo assim, os
SIGs devem oferecer ao usuário as funcionalidades necessárias para que este possa
expressar seus modelos, fórmulas e procedimentos da maneira mais próxima possível da
sua percepção dos fenômenos espaciais.
O objetivo deste Capítulo é estabelecer os requisitos para o projeto de interface para
Álgebra de Mapas para o SPRING, serão revisados alguns conceitos de projetos de interface
usuário-computador, serão apresentados os paradigmas de interface e sua aplicação em álgebra
de mapas e serão revisadas algumas interfaces para álgebra de mapas existentes no mercado
ou propostas na literatura.
4.1
Projeto de Interfaces Usuário-Computador
No entender de Eberts(1994), “o projetista de interface deve conhecer a atividade cognitiva
do usuário a fim de projetar interfaces efetivas e fáceis de usar” Aspectos psicológicos da
teoria de cognição humana devem ser aplicados em Interfaces Usuário Computador (IUC)
para fazer com que o processamento das informações por parte do usuário seja rápido e
eficiente, reduzindo dúvidas e ambigüidades. O Projeto de Interface deve se basear no
Modelo Conceitual do sistema, concebido em uma fase anterior no processo de engenharia do
software, e no Modelo Mental do usuário, que é a forma como o usuário irá conceber o
funcionamento do sistema, como é ilustrado na Figura 4.1:
55
Modelo Conceitual
Modelo Metal
Projeto de Interface
Figura 4.1 - Processo de desenvolvimento de Projeto de Interfaces.
Fonte: Adaptado de Eberts (1994).
O modelo conceitual deve estar o mais próximo possível do modelo mental, cabe ao projeto de
interface ajudar o usuário a formar um modelo mental conciso e coerente com o sistema. Uma
forma de fazer com que o modelo mental do usuário seja conciso é utilizando-se de
analogias e metáforas. O uso eficiente deste recurso visa minimizar o processo de
familiarização com o sistema. Para isto são escolhidos comandos, figuras e relacionamentos
semelhantes a situações rotineiras da atividade do usuário, para representar dados,
operadores, opções e relacionamentos no sistema informatizado.
4.2
Paradigmas de Interfaces para Álgebra de Mapas
Nesta seção analisaremos paradigmas de interfaces aplicáveis a álgebra de mapas, os quais
são: interfaces por linha de comando ou linguagem de programação; interface por menus e formulários
e interfaces de manipulação direta. Foge ao escopo deste trabalho interfaces por linguagem
natural e comandos de voz e demais inovações que envolvem outra linha de pesquisa que
não a de interface gráficas com o usuário, ou Graphical User Interface (GUI).
4.2.1
Linhas de Comandos e Linguagens de Programação
Visão Geral
Neste categoria de interface, os sistemas oferecem uma ou mais linhas em branco onde o
usuário pode digitar uma expressão (no caso de linguagens de programação) ou comando
(no caso de interfaces por linha de comandos), informando ao sistema aquilo que pretende
que se faça. Para preencher estas linhas em branco, o usuário deve conhecer a sintaxe dos
comandos e expressões da linguagem.
Neste paradigma de interface, seu projetista tenta estabelecer metáforas através do uso de
expressões do jargão do usuário, com a finalidade de aproximar-se da sua linguagem
natural. "Na prática de SIGs este processo é prejudicado, muitas vezes, porque a estrutura
de dados acaba por influenciar na definição da linguagem, tornando necessário o uso de
termos como vector ou grid" (Lucena et al., 1997).
56
É necessário também que esta linguagem seja abrangente o suficiente para oferecer ao
usuário a facilidade de expressão de conceitos complexos na construção de modelos
espaciais com todos os operadores, parâmetros e tipos de dados necessários. Por este
motivo, a álgebra de mapas de Tomlin (1990) tem servido de referência para os projetistas
de SIG, no desenvolvimento de várias implementações.
Apesar da grande maioria do SIGs de mercado possuir interfaces gráficas baseadas em
ícones, menus e botões, o uso de linguagens de comando e linguagens de programação
continua sendo necessário para a realização de projetos complexos, que envolvem
procedimentos de modelagem. Entre as abordagens possíveis, podemos citar:
•
Macro-comandos interpretados que operam através de através de
procedimentos atômicos (como o AML do ARC/INFO e os arquivos
“batch” do IDRISI e do GRASS). Cada comando tem de ser auto-contido
e fornecer todos os parâmetros necessários para sua operação.
•
Linguagens de programação de propósito geral, às quais são acrescentados
operadores específicos de análise espacial e tipos de dados gráficos e
tabulares básicos (como o AVENUE do Arc/View ou o MapBasic do
Map/Info). Cabe ao usuário a responsabilidade de definir a semântica das
operações de análise espacial a partir dos tipos de dados básicos.
•
Linguagens de programação específicas para geoprocessamento, com tipos
de dados de alto conteúdo semântico, como LEGAL, MAP e GRID. Os
programas são menores e mais legíveis, mas o usuário tem de seguir uma
seqüência estabelecida de organização de programa (como foi mostrado no
Capítulo 3), incluindo necessidades típicas de programação, tais como
declaração e instanciação.
O formalismo inerente às linguagens de programação, aliado à expressividade da linguagem
são pontos fortes para a defesa deste tipo de interação. Programadores de computador
trabalham a décadas e com sucesso documentando e desenvolvendo procedimentos
complexos desta maneira. Adicionalmente, uma vez desenvolvido e testado um modelo de
análise, na forma de um programa, o procedimento fica estabelecido, podendo ser
analisado, disseminado e reaproveitado.
57
As dificuldades do usuário com interface baseadas em linha de comandos e linguagem de
programação são (Bruns e Egenhofer 1997) :
!
Memorizar um número grande de nomes de operadores;
!
Escrever a sintaxe dos comando corretamente;
!
Selecionar o operador apropriado para cada tarefa.
A prática mostra que aprender uma linguagem de comandos ou linguagem de programação
demanda uma certa quantidade de tempo, que irá depender de quão complexo são os
comandos e que experiência o usuário tem na aplicação em
outras linguagens de
programação. Adicionalmente, um programa que descreva um modelo de análise só é
compreendido por pessoas que conhecem a mesma linguagem, limitando assim, sua
capacidade de disseminar de informações.
Exemplo - Arc/ Info:
O sistema Arc/Info (ESRI, 1992) possui vários modos de operação, como será vistos nos
exemplos. Na sua forma básica a interação se baseia em chamada de programas e passagem
de parâmetros, onde os dados são arquivos de entrada e saída para os comandos,
caracterizado portanto como Interface por Linguagem de Comandos (Figura 4.2).
Objetivo: determinar as regiões que distam 5 km das estradas em uma área de
reflorestamento
1. Criar mapa de distância (arquivo roadbuffer) a partir
do mapa de estradas (arquivo roadlines), utilizar o módulo “arc”:
Arc: buffer roadline roadbuf # # 5000 # line
2. Visualizar o resultado utilizar o módulo
e informar os parâmetros:
Arcplot: mapex roadbuf
Arcplot: linecolor 2
Arcplot: arcs roadline
Arcplot: linecolor 5
Arcplot: arcs roadbuf
“arcplot”
Figura 4.2 - Exemplo de operação de análise no Arc/Info.
Fonte: Tutorial do Arc/Info (Murmion, 1997)
Alguns módulos podem ser acrescentados ao mesmo sistemas conferindo-lhe outras
formas de interação. O módulo GRID (ESRI, 1992), por exemplo, adiciona ao sistema
uma linguagem de programação para álgebra de mapas, baseada nos trabalho de Tomlin
(1990).
OUTGRID = INGRID1 + INGRID2
58
OUTGRID = INGRID1 XOR 5
OUTGRID = SIN(INGRID1)*4/LOG(INGRID2)
Exemplo - OSUMAP:
O sistema OSUMAP (OSU, 1997) baseado na linguagem MAP (Tomlin, 1990)é um
exemplo clássico de interface por linha de comando em álgebra de mapas. Toda interação
se dá pela digitação de comandos no sinal de prontidão do sistemas: “>”, o que pode ser
observado na linha de baixo da tela do computador representada pela Figura 4-3. O usuário
pode solicitar ajuda ao sistema (comando “help”) e obter uma lista dos comandos
disponíveis (Figura 4.3), pode ainda solicitar a instruções sobre cada comando, p. ex.: o
comando “help expose” trás a sintaxe completa do comando “expose”.
Figura 4.3 – Interface por Linha de Comandos do OSUMAP.
59
4.2.2
Menus e Formulários
Visão Geral
O princípio básico deste paradigma é a existência de um questionário eletrônico, baseado
em campos texto, listas de opções, botões de múltipla escolha e outros recursos de
interface gráfica (GUI), onde o sistema pode auxiliar o usuário no preenchimento correto
dos campos, ex.: Figura 4.4.
Figura 4.4 – Interface de operações aritméticas no SPRING.
Em interface por menus existe um conjunto hierarquizado de opções para facilitar ao usuário a
busca por um operador apropriado. Se o sistema puder determinar qual o tipo de resultado
que o usuário pretende obter então ele desabilitar ou deixa de apresentar as opções
inconsistentes, o que facilitaria a construção de comandos corretos. Este procedimento é
chamado “seleção baseada em contexto” onde o contexto pode ser determinado, p. ex.,
pelo último dado selecionado.
Menus e formulários é o paradigma de interface utilizado nos SIG atuais para a maioria das
tarefas. Como as operações de álgebra de mapas requerem um conjunto amplo de
60
informações, alguns sistemas utilizam janelas de diálogo baseadas em formulário para que o
usuário estabeleça os parâmetros para a execução da operação.
Interfaces por formulários auxiliam o usuário na construção de comandos corretos. Uma vez
que todas as opções são apresentadas sob a forma de listas e botões de escolha, o comando
construído através de formulários fica livre de erros de sintaxe.
Os principais inconvenientes do uso de menus e formulários para operações de Álgebra de
Mapas são:
•
Menus e janelas de diálogo com formulários costumam apresentar
sobreposições inconvenientes, escondendo partes da janela que deveriam
estar expostas no momento da definição dos parâmetros.
•
Este paradigma não permite uma visão global da seqüência dos comandos
e do modelo de Análise Espacial.
•
Normalmente, os formulários são preenchidos, executados e desaparecem
da tela, nem sempre
sendo armazenados nem organizados como
procedimentos para ser reutilizados, e não ficam documentados como em
uma linguagem de programação. A menos que o sistema mantenha um
registro do que esta sendo executado não é possível recuperar a história
dos comandos e opções executados, para recuperar o modelo de análise
desenvolvido.
Em resumo,
o uso de menus e formulários para álgebra de mapas só pode ser
recomendado para operações atômicas, que tenham grande significado independente e não
necessitem fazer parte de um procedimento mais elaborado. Os exemplos seriam
operações de declividade e fatiamento em modelos numéricos de terreno, mapas de
distância, geração de legendas.
Exemplo - IDRISI Windows:
O sistemas IDRISI Windows 1.0 (IDRISI, 1996), Figura 4-5, faz uso de janelas de diálogos
do MS_Windows com formulários para que o usuário especifique operações de análise
espacial. O usuário escolhe o operador adequado a sua tarefa em um sistema hierárquico de
61
menus, onde as opções estão agrupadas em subníveis, por tipo do operador, o que facilita
a localização do operador desejado.
Em alguns SIGs, cada operador de análise espacial tem um formulário próprio que solicita
ao usuários o preenchimentos dos campos referentes aos parâmetros que são necessário
para a sua execução.
Figura 4.5 - Formulário do operador “escalar” do IDRISIW.
Exemplo - MGE Intergraph
No sistema MGE Intergraph existe um único formulário para geração de comandos para
vários operadores. O usuários selecionar os operadores, operandos e opções através de
listas de opções. Conforme isto é feito o sistema responde ao usuário apresentando na
linha inferior do formulário o texto completo do comando, dá como está sendo
“montado”, o que pode ser observado na parte inferior da Figura 4.6:
62
Figura 4.6 - Formulário do MGE Intergraph.
Nota-se que neste tipo de interface o contexto é definido pelos valores preenchidos pelo
usuário, de forma que os campos que ainda não foram preenchidos listam somente opções
compatíveis com o contexto.
4.2.3
Interfaces por Manipulação Direta
Visão Geral
Interface gráfica baseadas em manipulação direta permitem a interação do usuário com o
sistema mediante o ato de apontar, mover ou conectar representações de objetos do
sistema na tela do computador. “A idéia central está em visualizar e identificar rapidamente
os objetos e operadores de interesse, substituindo os comandos de sintaxe complexas pela
manipulação direta de seus ícones.” (Adaptado de Shineidermann, 1992)
Alguns ensaios tem analisado a eficiência e a deficiência de interfaces por manipulação
direta. O trabalho de Eberts (1994) mostrou que, tomando-se uma interface baseada em
comandos e uma interface baseada em manipulação direta, o desempenho dos usuários
experientes tende a diminuir quando estes migram de sistemas baseados em comandos para
sistemas baseados em manipulação direta; usuários novatos tendem a apresentar melhor
desempenho se iniciam sua atividades em sistemas baseados em manipulação direta do que
em sistemas baseados em comandos, como indicado na Figura 4.7.
63
Figura 4.7 - Avaliação de Interfaces por Manipulação Direta.
Fonte: Eberts (1994).
Interface Baseada em Diagrama de Fluxo
Diagramas são bastante empregados em ambientes CASE (Computer Aided Software
Engineering) e sistemas industriais. Neste tipo de interface, ícones são dispostos sobre a
tela de forma que o usuário possa fazer conexões entre eles estabelecendo uma seqüência,
da mesma forma como faria se estive simplesmente editando um diagrama estático.
Este paradigma oferece uma visão global e gráfica do procedimento em desenvolvimento.
A linguagem metafórica se restringe ao ícones e suas conexões e não à manipulação
propriamente dita (como no ato de arrastar um arquivo para a lixeira). Mas, na vida real, o
usuário não arrasta um mapa para sua prancheta de desenho, a fim de construir um
diagrama de fluxo com este mapa.
A metáfora principal não tem relação com a tarefa física desenvolvida pelo usuário, mas
sim com a forma de expressão de um problema através do encadeamento de tarefas em um
diagrama, técnica que é largamente utilizada em várias áreas do conhecimento e utilizada
em muitas publicações sobre aplicações de análise espacial (MacGuire e GodChild, 1992)
(Figura 4.8).
64
Primary
maps
Engineering:
gentle slope
close to roads
Derived
maps
Interpreted
maps
Elevation
Elevation
S-Pref
Roads
Prox-R
R-Pref
Prox-C
C-Pref
Prescriptive
maps
Slope
Aesthetics:
gentle slope
good view
west aspect
Coast
Slope
Coast
Development
Views
V-Pref
Elevation
Aspect
A-Pref
Coast
Constraints
Elevation
Constraints:
100m sefback
<50% slope
Slope
Figura 4.8 – Diagrama de Fluxo em Análise Espacial.
Fonte Berry (1991).
Interfaces de Manipulação Direta em Álgebra de Mapas
No caso de SIG, as interfaces de manipulação direta estão, na maior parte dos casos, ligadas
às interfaces por linguagens de programação, pois geram programas que podem ser
posteriormente executados.
As interfaces de manipulação direta dão uma visão global e gráfica do procedimento em
desenvolvimento, os modelos de análise ficam documentados de forma gráfica e bastante
expressiva. Ao contrário de programas em linguagem de programação não é necessário ser
especialista no software para se ter um entendimento mínimo do que faz o modelo.
No entanto, administrar diagramas muito complexos pode se tornar uma atividade extra
para usuário e tomar mais tempo do que o necessário. Em alguns casos o sistema precisará
de janelas de diálogo com alguns formulários para que o usuário informe parâmetros de
operadores ou expressões complexas que não podem ser expressas graficamente de forma
simples, tais como expressões matemáticas.
A aplicabilidade deste paradigma de interface, manipulação direta, para Geoprocessamento é
funcionar como suporte ao desenvolvimento de modelos de análise espacial de forma mais
cognitiva do que na própria linguagem de manipulação do SIG. Sua principal vantagem é
65
dar ao usuários uma visão global do procedimento de análise. Entre os principais exemplos
de interfaces de manipulação direta para álgebra de mapas, podemos citar:
•
Geographer’s DeskTop ( citado por Bruns e Egenhofer, 1996);
•
Grassland (LAS, 1997);
•
Model Maker (ERDAS, 1993);
•
VFQL (Standing, 1995).
Exemplo – Geographer´s Desktop
No Geographer’s Desktop (citado por Bruns e Egenhofer, 1996) como pode ser observado
na Figura 4.9, os objetos são apresentados em projeção perspectiva, um armário de mapas e
uma mesa de luz. As gavetas são abertas através de um “clique” do “mouse”, quanto então
os mapas aparecem flutuando sob o armário, também em projeção perspectiva, com seus
nomes ao lado. O usuário pode arrasta os mapas para mesa de luz na ordem que lhe
convier e estabelecer operações na pilha de mapas que se forma sobre a mesa de luz. Os
operadores apresentam uma outra metáfora, a de operações matemáticas sobre colunas de
valores.
A expressividade desta interface é grande. É praticamente um ambiente virtual onde os
mapas podem ser arrastados e sobrepostos. No entando, devemos observar que, sendo
agora um tecnologia mais acessível, os sistemas informatizados para Geoprocessamento
acabaram por abolir o uso de mesas de luz e sistemas manuais, o que prejudica esta
metáfora como forma de aproximação à rotina do atual usuário de SIG.
66
Figura 4.9 - Interface Baseada em Pilhas.
Fonte: Bruns (1996)
.
Este paradigma de interface baseada em Manipulação Direta resgata a metáfora da
manipulação, ou seja, o ato de arrastar e dispor dos ícones semelhantemente ao que é feito
na prática. Tal qual a operação em um ambiente “DeskTop” os ícones dos documentos são
arrastados e empilhados sobre os operadores que irão processá-los.
Exemplo - Grassland
Desenvolvido a partir do GRASS, o Grassland 1.1 (LAS, 1997) implementa sua interface
para análise geográfica baseada em fluxograma como pode ser visto na Figura 4.10. Os
dados e operadores são selecionados em janelas auxiliares e arrastados para a janela do
“Procedure Workbench”.
No “Procedure Workbench” o usuário pode fazer conexão entre dados e operadores para a
montagar diagramas de fluxo de dados. Tanto os dados quanto os operadores tem
terminais para as conexão, como “plugs” de tomadas. O formato e a cor do “plug”
identificam o tipo do dado, se é vetorial ou matricial, por exemplo. Isto para impedir que as
conexões sejam feita erroneamente. Selecionando-se o ícone do operador, uma janela com
formulário pede os parâmetros necessários. Estabelecida uma conexão de entra ou saída de
dado, automaticamente o campo apropriado do formulário, “mapa de entrada” ou “mapa
de saída”, é preenchido.
67
Figura 4.10 - Ambiente de Análise Espacial do Grassland.
Fonte: Bruns e Egenhofer (1996).
Exemplo - Model Maker
Baseado na “Spatial Modeler Language” (SML) e fazendo parte do conjunto de módulos
do sistema IMAGINE (ERDAS, 1993), o Model Maker é um editor de diagramas de fluxo
aplicado a álgebra de mapas. Seu desenho é bastante simples é limpo, facilitando a leitura
do modelo. Existem ícones para cada tipo de dado, um único ícone para operador
(representado por um círculo) e as setas indicam a direção do fluxo de dados.
No procedimento de criação de um modelo o usuário seleciona em uma janela a parte, qual
o tipo de ícone ele deseja incluir no diagrama: grade, imagem, mapa temático ou um
operador. Neste ponto as conexões já podem ser feitas, mesmo sem terem sido definidos
que mapas e que operadores são aqueles representados pelos ícones. Portanto, o diagrama
é montado sem que o usuário tenha a certeza da disponibilidade do dado ou se o operador
é adequado para processá-lo, já que o sistema só pode checar a consistência das conexões
após obter do usuário estas informações.
68
Figura 4.11 – Diagrama de Fluxo do Model Maker.
Fonte: Bruns e Egenhofer (1996).
Exemplo – VFQL
Visual Funcition Query Language (Standing, 1995) é uma ferramenta de interface por
manipulação direta que permiti a construção de operações de consulta e análise espacial,
através da geração de macros em linguagem AML (Arc/Info). A metáfora deste modelo de
interface se restringe aos ícones dos dados que representam mapas em papel semi
desenrolados (somente a parte escura da Figura 4.12). A indicação de que tipo de dado é
representado pelo ícone se dá pelo desenho este que contém, como por exemplo o
polígono (vide Figura 4-12) indica um dado temático. Cada um deste ícones escuros, na
forma de mapas semi desenrolados, aparecem desordenadamente em uma janela onde o
usuário pode arrastá-los para um outra região da interface onde serão conectados dados e
operadores.
69
Figura 4.12 – Operador de Buffer atuando sobre mapa temático “Lakes” no
VFQL (Standing, 1995).
Um exemplo completo usando o VFQL (Figura 4.13) apresenta a sobreposição de
comandos, onde resultados intermediário são dados de entrada para o comando seguinte
construindo a expressão apresentada logo abaixo da figura:
Showattribs(Vegsite(Identify(Erase(Buffer(Roads,300),Buffer(Lakes,20))
,Vegcn),VEGCN-ID=14 and INSIDE=1 and AREA=>2000))
Figura 4.13 – Virtual Functional Query Language.
Fonte Standing (1995).
A proposta de VFQL se baseia em programação funcional, ou seja, seu objetivo é que o
usuário construa expressões de manipulação espacial, semelhante ao exemplo da Figura
4.13, e armazene-as no sistema como uma função. Então, cada função pode ser executada
independente de uma seqüência de operações. Isto difere de diagrama de fluxo de dados,
que se baseiam em programação procedural, caracterizada por registrar e seguir uma
seqüência ordenada de procedimentos.
4.2.4
Resumo
A revisão dos paradigmas de interface e sua implementação, feita na seção anterior, indica
que para álgebra de mapas em Geoprocessamento é interessante que o usuário possua, ao
mesmo tempo, uma linguagem de programação de grande poder expressivo, um sistema de
menus e formulários para executar operações atômicas e uma interface de manipulação direta
70
para expressar graficamente seqüência de procedimentos baseados em metodologias de
análise espacial. Neste sentido, o paradigma de diagrama de fluxos seria empregado com o
objetivo de auxiliar o usuário a compor seus modelo diretamente em um diagrama de fluxo
e gerar programas executáveis no SIG.
Um fator que determina de forma bastante decisiva o projeto de interface é o modelo de
dados do SIG sobre o qual a interface é desenvolvida. Se o modelo de dados é capaz de
representar a informação geográfica em níveis de abstração de mais alto nível, da mesma
forma a linguagem de programação e a interface de manipulação direta poderão representar
melhor o conhecimento do usuário em um nível mais elevado, ao construir o modelo de
análise espacial.
Por exemplo: na Figura 4.9, no Geographer’s Desktop, o operador "add" atua sobre o dado
solos (soil) e vegetação (veg), somando indistintamente os valores encontrados nos dois
mapas e criando como resultado o mapa "solos+vegetação" (veg+soil). Este comando não
explicita quais as classes de solos e vegetação serão combinadas no mapa resultante como
ocorre em uma expressão em LEGAL (vide Capítulo 3).
Outro problema nas interfaces analisadas: no Model Maker, baseado no sistema ERDAS,
os dados são armazenados diretamente pelo sistema de arquivo, não existe um modelo
conceitual que organize um banco de dados geográficos como no SPRING (vide Capítulo
2), já no Grassland, o modelo conceitual se restringe a separar os mapas de acordo com
suas estruturas de armazenamento de baixo nível, tais como raster, vector, line, point e
region. Além de impactar na qualidade da representação do conhecimento, a conseqüência
prática é que o usuário certamente terá dificuldade em encontrar o dado caso ele se
encontre em uma estrutura desordenada de arquivos e diretórios.
A partir da análise aqui apresentada, podemos concluir que:
•
Dada a complexidade das aplicações de Geoprocessamento e a diversidade
de capacitação dos usuários, um SIG de propósito geral não pode estar
limitado a um único paradigma de interface, devendo idealmente combinar
as três alternativas: linguagens de comando ou linguagens programação; menus e
formulários; e interfaces de manipulação direta.
71
•
Para usuários experiente, a metáfora de diagrama de fluxo traz a vantagem de
apresentar e documentar bem o modelo da análise espacial.
•
Considerando o problema de aprendizado, diagramas de fluxo se baseiam em
programação procedural o que corresponde ao apelo mais didático,
expressivo e intuitivos deste paradigma.
Neste contexto, optou-se por desenvolver uma interface de Álgebra de Mapas baseada no
paradigma de diagramas de fluxo, que tenha como saída um programa na linguagem LEGAL.
Deste modo, pode-se estabelecer uma combinação ótima para satisfazer tanto usuários
experientes (que preferem a expressão direta do programa em linguagem) como iniciantes
(que terão uma ferramenta de fácil compreensão).
4.3
Requisitos para o projeto de Interface para Álgebra de Mapas
Para o desenvolvimento de um projeto de interface para álgebra de mapas, é necessário em
primeiro lugar o conhecimento do domínio do problema análise espacial e
geoprocessamento, como visto no Capítulo 2, e o conhecimento de uma descrição formal
para operações sobre dados espaciais tal qual o apresentado pela linguagem LEGAL
(Capítulo 3). Feita estas duas revisão é importante também analisar as alternativas existentes
no mercado e na literatura verificando as soluções adotadas e suas justificativas. Como
resultado deste processo de analise é possível então, elaborar uma lista com os requisitos
para a interface a ser proposta.
A lista de requisitos a seguir está dividida em:
requisitos gerais de interface por
manipulação direta, requisitos específicos para álgebra de mapas e requisitos específicos
para o SPRING. As fontes bibliográficas das quais foram extraídos os requisitos são:
" dos critérios utilizados no trabalho de Bruns e Egenhofer (1996), que analisa
interfaces para álgebra de mapas em vários sistemas SIG comerciais: requisitos
1, 3, 4, 7, 8, 9;
" discussões sobre a tendência das interfaces (Halfhill, 1997): requisito 6;
" observações sobre personalização de interface para SIG,
Medeiros (1996) e Worboys (1996): requisitos 10 e 11;
72
em Câmara e
" tópicos de projetos de interfaces em Sheniderrman (1993) e Eberts (1994):
requisitos 2 e 5;
" dos Capítulos 2 e 3 deste trabalho: requisitos 12 e 13.
4.3.1
Requisitos Gerais
1. Utilizar metáforas adequadas com o domínio da aplicação;
A escolha de metáforas irá agilizar o processo mental do usuário de
relacionar o símbolo com o seu conteúdo semântico. Interfaces baseadas
em comandos costumam adotar como comandos termos do jargão do
usuário o que é preferível a se adorar termos computacionais ou
matemáticos. Semelhantemente, interfaces baseadas em manipulação direta
necessitam relacionar seus ícones e a maneira de trata-los dentro de um
ambiente gráfico, com os elementos do cotidiano das tarefas executadas
pelo usuário.
2. Não trazer uma metáfora estranha ao domínio da aplicação;
Evitar apresentar uma outra metáfora que não seja aquela relacionada
diretamente com o contexto da aplicação pois pode causar ambigüidade.
3. Facilitar a construção de comandos corretos;
Apresentar formas assistidas de edição dos comandos e impedir que se
estabeleçam conexões incorretas.
4. Auxiliar na escolha do operador certo para a tarefa;
O sistema deve basear-se no contexto para listar e sugerir operadores
apropriados, oferecendo recursos de busca e seleção tanto de dados como
de operadores;
5. Ambiente dinâmico e interativo;
Oferecer ao usuário a sensação de controle sobre os elementos do sistema
através de um ambiente de trabalho dinâmico e interativo, onde o sistema
poça responder imediatamente aos atos do usuário.
73
6. Evitar a sobreposição de janelas;
O excesso de janelas se sobrepondo dificultam o diálogo entre o usuário e o
sistema, escondendo parte da informação justamente no momento de tomar
a decisão sobre a ação a ser executada.
7. Reduzir complexidades
Reduzir complexidades, sejam elas sintáticas ou gráficais. Oferecer uma
interação com os elementos da interface com regras simples e intuitivas e
dar suporte a administração de diagramas muito extensos.
4.3.2
Requisitos Específicos sobre Álgebra de Mapas
8. Expressar bem o modelo de análise espacial;
Facilitar a
compreensão da lógica do modelo independentemente dos
rudimentos da linguagem e do sistema utilizado;
9. Documentar o modelo de análise;
Para seu uso posterior, difusão ou publicação dos resultados e da
metodologia.
10. Permitir a personalização de aplicações de SIG;
Segundo Câmara et. al. (1996), Sistemas de Informação Geográfica, de uma
maneira geral, têm aplicações tão diversificadas que seria necessário a
construção de uma interface para cada aplicação, e por este motivo é
importante que os SIGs permitam que o usuário configure e personalize a
interface da sua aplicação. Este não é um requisito específico de álgebra de
mapas mas de todo o conjunto de funcionalidade que o SIG pode oferecer
e que portanto influencia nas operações de álgebra de mapas. No entanto na
medida em que o usuário possa incluir seus modelos de análise no banco de
dados e possa reutiliza-lo, pode-se considerar que ele esteja personalizando
ama aplicação.
11. Extensiblidade
74
O sistema de interface deve ser extensível. Conforme os novos operadores
de são desenvolvidos, no decorrer da evolução do software, é necessário
incluí-los na interface, através de recursos que não impliquem em
reprogramar seu código mas sim reconfigurar o software, informando as
características de cada novo operador.
4.3.3
Requisitos Específicos para o SPRING
12. Gera programas em LEGAL
O sistema deve ser capaz de gerar código em LEGAL livre de erros.
13. Representar o modelo conceitual do SPRING
O sistema deverá se basear no modelo de dados do SPRING tanto no
acesso ao dados quanto na construção de expressões de análise.
14. Salvar e recuperar modelos no banco de dados do SPRING
O sistema deverá salvar os modelos de análise na mesma estrutura de
armazenamento do banco de dados do SPRING.
75
76
Download

capítulo 4 - interfaces para álgebra de mapas