Faculdade de Ciências Sociais e Aplicadas de Petrolina – FACAPE Curso: Ciência da Computação INTERFACE HOMEM COMPUTADOR - IHC Interação Profa. Cynara Carvalho [email protected] Perspectivas de interação 4 perspectivas Perspectivas de interação A primeira perspectiva identificada é a do sistema. Nos primeiros sistemas computacionais desenvolvidos, o usuário precisava se comportar como uma máquina, aprendendo a interagir utilizando uma linguagem de comando ou programação de baixo nível. Nesta perspectiva, o usuário é visto como um módulo provedor de dados para o sistema computacional (o usuário é somente um data-entry). Esta perspectiva se mostrou inadequada, pois requeria muito esforço e tempo de treinamento, seu uso era difícil e tedioso, e os usuários freqüentemente cometiam erros. Perspectivas de interação Uma reação à visão do usuário como máquina foi uma perspectiva diametralmente oposta, que propunha transformar o computador em parceiro de discurso (computador como pessoa). Nesta perspectiva, a máquina deveria assumir o papel de um interlocutor à altura de um ser humano, capaz de raciocínio e comportamento semelhantes aos dos seus usuários. Esta visão, muito voltada para a Inteligência Artificial, também é equivocada, pois muitas vezes desconsidera a capacidade que o usuário tem de ter um comportamento inovador, criativo. Nas perspectivas 1 e 2, o foco estava no sistema. Perspectivas de interação A terceira perspectiva, computador como ferramenta, desloca o foco para os usuários. Estes agora utilizam o computador como um instrumento para realizar um trabalho ou criar um produto. Esta perspectiva é predominante nos sistemas atuais. A quarta perspectiva, computador como mídia (meio de comunicação), vem ganhando cada vez mais espaço com a disseminação da Internet. Nela, o foco está na comunicação entre os usuários, através do sistema. Cooperação – sistemas multi-usuarios Estilos de interação Padrão específico que determina algumas características que o modelo de interação de uma interface deve ter. Existem diversos estilos de interação que podem ser classificados de diversas maneiras. Uma mesma interface pode permitir ao usuário a interação em diversos estilos. Vamos apresentar a seguir os exemplos de estilos de interação mais comuns sem a preocupação de oferecer uma classificação exaustiva. linguagem de comando menus preenchimento de formulários WIMP (Windows, Icons, Menus, and Pointers) manipulação direta WWW realidade virtual Linguagens de comandos Interfaces baseadas em linguagens de comandos proporcionam ao usuário a possibilidade de enviar instruções diretamente ao sistema através de comandos específicos. Linguagem de comandos foi o primeiro estilo de interação a ser usado amplamente. Este estilo caracteriza-se por possibilitar ao usuário construir comandos através do teclado (hardware da interface) que devem poder ser interpretados pelo software da interface para que funções específicas da aplicação sejam ativadas. Os comandos podem ser produzidos pelo acionamento de teclas de funções especiais, ou pelo acionamento de uma tecla de caracter, ou pela estruturação delas. Um tipo de estruturação especial é aquele no qual teclas são acionadas para produzir palavras de comandos que podem ser combinadas em sentenças de acordo com a gramática que define a linguagem. Este estilo de interação visa possibilitar que a linguagem de comandos aproxime-se daquela falada pelos usuários. Linguagens de comando Poderosas em oferecer acesso direto à funcionalidade do sistema e em permitir maior iniciativa do usuário e uma maior flexibilidade na construção dos comandos através da variação de parâmetros e combinação de palavras e sentenças. Este poder e flexibilidade implicam em uma maior dificuldade dos iniciantes em aprender e utilizar o sistema. Os comandos e a sintaxe da linguagem precisam ser relembrados e erros de digitação são comuns mesmo nos mais experientes. A falta de padronização nos diversos sistemas é um fator importante na dificuldade de utilização deste estilo. Usuários especialistas conseguem maior controle do sistema e produtividade através de interfaces baseadas em linguagens de comandos. Menus Nas interfaces orientadas por menus o conjunto de funções oferecidas pela aplicação é mostrada ao usuário através da tela e cabe ao usuário selecionar uma delas através do mouse ou de teclas alfanuméricas ou especiais. Como as funções e a maneira de acioná-las estão visíveis na forma de opções para o usuário selecionar existe uma demanda maior pelo processo de reconhecimento ao invés de recordação com no caso das interfaces baseadas em comandos. Normalmente o número de opções de comandos é grande o suficiente para ser mostrado de uma única vez na tela da interface. Existem diversas técnicas para se agrupar e apresentar as opções de menus. A mais comum é a categorização hierárquica na qual as opções são agrupadas em categorias de maneira hierárquica. A escolha dos nomes dos grupos e de cada opção do menu é fundamental para que o usuário possa escolher aquelas que permite-o atingir as suas metas. Menus As interfaces orientadas por menus podem ser textuais ou gráficas. Nas interfaces textuais (ou baseadas em caracteres) as opções são descritas através de palavras na linguagem do usuário que representem as funções do sistema correspondentes ao comandos. O comando é acionado através de uma tecla ou número associado à opção do menu. Nas interfaces gráficas os menus podem ser compostos por palavras ou por signos gráficos específicos. Existem alguns tipos específicos de menus nas interfaces gráficas como menus de barra, pulldown, e pop-up. Linguagem Natural LN é a expressão utilizada para se referir de maneira genérica à língua que o usuário domina, podendo ser o português, o francês, o inglês ou qualquer das linguagens existentes. Através de interfaces em linguagem natural o usuário pode interagir com o sistema na sua própria linguagem. Ao contrário das linguagens por comandos quando o usuário tem que aprender uma linguagem artificial que seja mais facilmente processada por computadores, nas interfaces que processam linguagem natural o maior esforço fica a cargo do computador que deve interpretar e gerar sentenças na linguagem natural do usuário. Linguagem Natural A interação em LN é bastante atrativa para usuário com pouco ou nenhum conhecimento em computação. Entretanto ela não se aplica a todos os tipos de sistemas. Sistemas de consulta de informações e sistemas baseados em conhecimento são exemplos onde a utilização de interfaces em LN é bastante interessante. No primeiro caso por possibilitar que usuário não especialista possa fazer consultas em sua própria língua. No segundo caso para que o sistema gere explicações a partir da sua base de conhecimento, uma vez que a LN é expressiva o suficiente para a descrição do raciocínio artificial do programa, o que não seria possível com outros estilos de interação Linguagem Natural Um programa que processa linguagem natural é bastante complexo. Esta é justamente uma das maiores limitações deste tipo de interface. O exemplo apresenta um trecho de interação onde o usuário utiliza de elipses dificultando a interpretação e a geração das respostas. Preenchimento de formulário Interfaces no estilo de preenchimento de formulários são utilizadas principalmente para entrada de dados em sistemas de informação. Estas interfaces apresentam para o usuário uma tela que lembra um formulário em papel solicitando informações específicas do domínio da aplicação. Nestes casos o modelo de interação básico é o fornecimento de dados para os campos ou registros de uma base de dados. Os modelos de formulários muitas vezes estão baseados nos formulários em papel que os usuário estavam acostumados a utilizar antes da implantação do sistema, facilitando o aprendizado do modelo de interação. Preenchimento de formulário Estas interfaces são, em geral, fáceis de aprender, mas não possibilitam flexibilidade na funcionalidade. Os aspectos principais que vão influenciar a usabilidade do sistema são a produtividade do usuário, a sua satisfação e o esforço físico provocado pelo sistema, uma vez que estes sistemas são projetados para que os usuários forneçam um grande número de dados ao longo de um dia de trabalho. Estas interfaces devem facilitar a correção de erros de digitação e a verificação dos dados digitados através de técnicas como dígitos verificadores e totalização de valores. Manipulação Direta Interfaces de manipulação direta são aquelas que permitem ao usuário interagir diretamente com os objetos da aplicação (dados ou representações de objetos do domínio) sem a necessidade de comandos de uma linguagem específica. Na manipulação direta os comandos são ações que o usuário desempenha diretamente com objetos do sistema. Este estilo diferencia-se da interação por linguagens de comandos na qual o usuário interage indiretamente através de comandos lingüísticos e nomes que apresentem os objetos do sistema. As interfaces gráficas que se utilizam da metáfora do desktop proporcionam um estilo no qual os usuários podem interagir com o gerenciador de arquivos do sistema operacional através de manipulação de ícones que representam arquivos, diretórios, discos e outros componentes computacionais. Manipulação Direta O usuário comanda através de ações de arrastar e soltar (drag-and-drop) os ícones utilizando o mouse ou outro dispositivo equivalente. Existem duas formas básicas de manipulação direta. A primeira delas é a manipulação, através de dispositivos apontadores com o mouse, de representações de objetos computacionais dando a sensação de que se está manipulando o próprio objeto. A segunda forma é a manipulação direta dos dados quando o usuário pode alterar o estado do sistema através de ações explícitas sobre eles As interfaces gráficas que se utilizam da metáfora do desktop proporcionam um estilo no qual os usuários podem interagir com o gerenciador de arquivos do sistema operacional através de manipulação de ícones que representam arquivos, diretórios, discos e outros componentes computacionais. GUI/WIMP (Windows, Icons, Menus e Pointers ) O estilo de interação GUI/WIMP, um acrônimo em inglês para Interface de Usuário Gráfica com Janelas, Ícones, Menus e Apontadores, permite a interação através de componentes de interação virtuais denominado de Widgets. Este estilo é implementado com o auxílio da tecnologia de interfaces gráficas, que proporcionam o desenho de janelas e do controle de entrada através do teclado e do mouse em cada uma destas janelas. Os softwares de interfaces que implementam estes estilos permitem a construção de ícones que permitem a interação através do mouse, comportando-se como dispositivos virtuais de interação. widget é um termo sem tradução que designa componentes de interface gráfica com o usuário. Qualquer item de uma interface gráfica é chamada de widget, por exemplo: janelas, botões, menus e itens de menus, ícones, barras de rolagem, etc. Outro ponto que pode ser colocado como Widgets são pequenas janelas que ficam no desktop. Essas Janelas têm como intuito ajudar, informar e divertir o Usuário GUI/WIMP (Windows, Icons, Menus e Pointers ) GUI/WIMP (Windows, Icons, Menus e Pointers ) WIMP não deve ser considerado um único estilo, mas a junção de uma tecnologia de hardware e software, associado aos conceitos de janelas e de widgets que permite a implementação de vários estilos. Nas interfaces WIMP é possível ter os estilos de menus, manipulação direta, preenchimento de formulário e linguagem de comandos. WIMP pode ser considerado um modelo tecnologia de interfaces gráficas (GUI). ou um framework de interface apoiado pela É possível implementar o estilo WIMP usando tecnologia de telas não gráficas. Entretanto, têm-se a limitação de não se poder ter ícones gráficos e se ter um baixo nível de resolução que limita a quantidade de objetos de interface que pode ser mostrada para o usuário. Realidade virtual Realidade Virtual compreende um estilo caracterizado por oferecer ao usuário, através de tecnologias avançadas, a sensação de estar presente num ambiente que simule certas condições de trabalho de um domínio. Nesta situação um mundo virtual é oferecido ao usuário para que ele possa interagir manipulando elementos deste mundo. As tecnologias de RV são consideradas como imersivas quando o usuário utiliza todo um aparato que lhe dá a sensação de estar presente no ambiente virtual. Neste caso, ele usa óculos com visores especiais para que sua visão esteja concentrada apenas no mundo virtual. Suas ações são realizadas através de luvas especiais que permitam-lhe interagir com os elementos do mundo virtual detectando os seus movimentos. A RV não-imersiva é aquela na qual o usuário utiliza um computador comum, com uma tela gráfica e um dispositivo apontador, para interagir com o mundo virtual. Neste caso, as sensações de estar presente no mundo virtual ocorrem em proporções menores. A ilustração de um exemplo de uma interface no estilo RV não imersiva. Realidade virtual Interface WWW