Você está na página 1de 29

Anlise e Modelagem de Tarefas

Marco A. A. Winckler1, Marcelo Soares Pimenta2 IHC2004 (Tutorial)*


1

LIIHS-IRIT (Universit Paul Sabatier, Toulouse 3), 118 route de Narbonne, 31062 Toulouse CEDEX 4, France

Instituto de Informtica Universidade Federal do Rio Grande do Sul (UFRGS) Caixa Postal 15.064 91.501-970 Porto Alegre RS Brasil
winckler@irit.fr ,mpimenta@inf.ufrgs.br

Resumo. O objetivo geral deste tutorial apresentar aos participantes os conceitos fundamentais de Anlise e Modelagem de Tarefas. Em particular, pretende-se: i) apresentar fundamentos de Anlise de Tarefas e Modelagem de Tarefas; ii) apresentar alguns modelos de tarefas existentes; pretende-se em particular demonstrar o uso da notao CTT (Concurrent Task Tree) e do ambiente CTTE (CTT Environment), um dos ambientes mais difundidos e utilizados na atualidade para modelagem de tarefas; e iii) discutir os possveis usos de modelos de tarefa em algumas etapas do ciclo de desenvolvimento de uma aplicao interativa. Estudos de casos reais sero preferencialmente utilizados para exemplificar os conceitos apresentados. Mais do que ter a pretenso de ser um tutorial exaustivo, nossa inteno dar uma viso panormica sobre o assunto PALAVRAS-CHAVE: Interao Homem-Computador, Modelos de Tarefa, Anlise de tarefa, Modelo CTT e Ambiente CTTE, Usos de Modelos de tarefa.

1. Introduo
Hoje h um consenso entre os desenvolvedores de software de que a qualidade do desempenho do usurio no uso de um sistema interativo est ligada usabilidade, um critrio de qualidade associado ao componente conhecido como Interface com o Usurio (IU) deste sistema. Sistemas computadorizados so projetados para auxiliar as pessoas a executarem tarefas. Logo, tarefas deveriam ser de interesse central para os desenvolvedores de software [Johnson, 1992]. De fato, diversos autores da comunidade IHC (Interao Homem-Computador) convergem para a idia central de que para projetar sistemas com maior usabilidade devemos compreender melhor as tarefas executadas pelas pessoas de modo a aplicar nosso entendimento das tarefas no desenvolvimento de aplicaes [Preece 02, Bodart 94, Diaper 89, Johnson 92].
*

Este material de apoio foi confeccionado como complemento ao material (slides, software, etc) usado pelos ministrantes durante o tutorial.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

A principal meta dos enfoques de projeto de IHC aumentar a qualidade da interface com o usurio produzindo sistemas interativos no s funcionais e confiveis mas tambm usveis. Os enfoques de projeto baseados em modelos (model-based) permitem representar vrias informaes da interface e de seu design em um alto nvel de abstrao. Isto permite vrias vantagens como acoplamento a um enfoque metodolgico de concepo, rastreabilidade e reuso de modelos, gerao de (partes de ) interfaces a partir destes modelos, e melhor reflexo sobre as decises e explorao de alternativas do design. Entre os modelos comumente presentes nestes enfoques h modelos de usurio, dilogo, apresentao, domnio, contexto, plataforma tecnolgica e tarefas para citar apenas alguns. Em particular, o uso de Anlise de tarefas e Modelos de Tarefas visa um melhor entendimento de propriedades das tarefas realizadas pelos usurios em suas atividades e a aplicao deste entendimento no processo de construo da interface. O objetivo geral deste tutorial apresentar aos participantes os conceitos fundamentais de Anlise e Modelagem de Tarefas. Em particular, pretende-se: i) apresentar fundamentos de Anlise de Tarefas e Modelagem de Tarefas; ii) apresentar alguns modelos de tarefas existentes; pretende-se em particular demonstrar o uso da notao CTT (Concurrent Task Tree) e do ambiente CTTE (CTT Environment), um dos ambientes mais difundidos e utilizados na atualidade para modelagem de tarefas; e iii) discutir os possveis usos de modelos de tarefa em algumas etapas do ciclo de desenvolvimento de uma aplicao interativa. Estudos de casos reais sero preferencialmente utilizados para exemplificar os conceitos apresentados. Este tutorial est estruturado da seguinte forma. Aps esta introduo, a seo 2 estabelece algumas definies de tarefa, anlise de tarefa e modelos de tarefa. As sees 3 e 4 apresentam respectivamente uma introduo sobre anlise de tarefa e modelagem de tarefas. A seo 5 contm uma descrio mais detalhada da notao CTT (Concurrent Task Tree) e do ambiente CTTE (CTT Environment) . Na seo 6 discutem-se possveis usos de modelos de tarefas no ciclo de desenvolvimento de sistemas interativos.

2. Definies
Inicialmente, preciso considerar a significao do termo tarefa que pode assumir uma interpretao diferente segundo vrios autores [Draper 85] [Benyon 92] [Storrs 95] [Bodart 94], [Preece 2002]. A existncia de vrias definies de tarefa implica na existncia de diferentes mtodos para Anlise de tarefa e de diferentes modelos de tarefa para representar seus resultados segundo estas diferentes perspectivas. Neste tutorial adotamos a definio de [Storrs 95], primeiramente por que ela explicita a importante relao entre aes, objetivos e contextos, mas tambm por que ela foi formulada para unificar a terminologia sobre o assunto.
Uma tarefa um objetivo associado a um conjunto ordenados de aes que podem satisfazer tal objetivo nos contextos apropriados [Storrs 95]1

Assim, embora seja aparentemente similar a conceitos como funo ou processo, o termo tarefa incorpora uma nfase intencional (relacionada a inteno, objetivo) da perspectiva do usurio (o qu o usurio quer fazer). Um objetivo pode ser
Do original ingls: A task is a goal together with the ordered sets of tasks and actions that would satisfy it in the appropriate contexts.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.
1

Anlise e Modelagem de Tarefas

definido como um estado (de uma situao ou de um sistema) que o usurio deseja alcanar. Genericamente, ento, o conjunto de aes so os procedimentos que o usurio deve realizar para alcanar este estado. A Anlise de Tarefa (AT) emergiu da Ergonomia como um mtodo emprico que permite descrever e analisar como as pessoas realizam suas atividades.
Anlise de Tarefa (AT) o termo genrico para um conjunto de mtodos para descrever as tarefas das pessoas visando entender melhor os procedimentos para sua realizao.[UsabGlossary]

O enfoque bsico da AT descrever a tarefa como tendo um objetivo determinado e um conjunto de passos envolvidos na sua realizao. O nvel de detalhe desta descrio determinado pelas intenes da AT. A prtica usual da Ergonomia adota AT basicamente para entender as tarefas de um ambiente de trabalho de forma a ter informaes para discutir causas e solues dos problemas encontrados na sua realizao e possivelmente determinar quais so as necessidades de treinamento. Logo ficou evidente a possibilidade de us-la para prover informaes para a concepo de suporte computadorizado a estas tarefas. com esta inteno que a comunidade IHC se interessa primordialmente por AT. Uma melhor compreenso de tarefas pode auxiliar a delimitar um problema coletando informaes de modo sistemtico sobre um problema, organizar as informaes coletadas, fazer predies de tempo de execuo de tarefas, prevenir erros (identificando procedimentos difceis e/ou confusos), auxiliar a identificar as fontes de problemas e gerar hipteses para solucion-los. Esta diversidade de intenes tem motivado um grande nmero de mtodos e tcnicas de anlise de tarefa sendo o denominador comum entre elas a descrio de tarefas em termos de unidades de atividade identificveis. A anlise da tarefa em um domnio especfico pode produzir uma descrio explcita de tarefas chamada Modelo da Tarefa. Muitos modelos da tarefa so usados para representar os resultados da anlise de tarefa, cada modelo enfatizando uma perspectiva.
Modelo de Tarefa (MT) uma descrio lgica das atividades a serem executadas para alcanar os objetivos do usurio.[Patern 2001]

Aqui, estamos interessados com a descrio em que objetivos e as atividades para alcan-los so explicitamente definidos, para permitir um entendimento mais detalhado dos passos e dos relacionamentos entre eles. Esta definio explcita do objetivo permite refletir sobre os procedimentos para que ele possa ser mais eficientemente alcanado. Muitas vezes, isto permite analisar, criticar e re-elaborar estes procedimentos, aumentando sua simplicidade, eficcia e usabilidade. Uma boa referncia sobre o uso de modelo de tarefas (MT) no ciclo de desenvolvimento de sistemas interativos [Patern2001]. Geralmente, um MT descreve certos conceitos relacionados de forma a representar aspectos relevantes das tarefas e dos usurios. Alguns conceitos e relacionamentos so comuns e presentes em quase todos tipos de MT, enquanto outros so especificamente propostos e usados em um modelo em particular. Os conceitos e relacionamentos mais comuns de MT so: Decomposio da tarefa, onde uma tarefa tipicamente descrita de maneira hierrquica: o nvel mais alto contm a tarefa principal sucessivamente dividida em
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

subtarefas menores recursivamente at que, nos nveis mais baixos (chamado tambm de nvel articulatrio) so descritas aes fsicas que no podem mais ser decompostas (tais aes so tipicamente associadas com a interao sobre um dispositivo); Relacionamentos causais/temporais, que descrevem o fluxo da tarefa, indicando a ordem em que as subtarefas so executadas, geralmente atravs de construtores tpicos (seqncia , simultaneidade, entrelaamento, etc);

Alm destes, h outros elementos que descrevem objetos (manipulados pelas tarefas), papis e atores (responsveis pelas tarefas), restries (p.ex. pr- e pscondies) e propriedades (freqncia de realizao, prioridade, etc.) associadas s tarefas. Mais detalhes sobre todos estes elementos esto presentes em [Welie98], [Balbo 2004] e [Limbourg 2001]. Outros trabalhos envolvem conceitos mais avanados de MT tais como padres de tarefas (task patterns) [Breedvelt 97] [Patern 2001], modelos de tarefa cooperativos [van der Veer 96] e templates de interao [Paquette 2004].

3. Anlise de tarefa
O uso da Anlise de tarefas (AT) comeou na Ergonomia num esforo de descrever os comportamentos elementares envolvidos na execuo de uma atividade de trabalho. Desta forma, AT era essencial para a Anlise do Trabalho (Work Analysis): a expresso conhecer o trabalho para modific-lo resume sua motivao. Uma excelente descrio sobre Anlise (Ergonmica) do Trabalho [Cybis 1996]. Logo surgiram diferentes mtodos de AT, muitos recebendo influncia da Psicologia Cognitiva, e que so distinguidos basicamente pela forma de coletar , classificar e interpretar os dados sobre a realizao de tarefas em situaes de trabalho. AT um processo interativo e iterativo, com perodos alternados de coleta, classificao e de interpretao de dados. Vrias famlias de mtodos de AT existem e entre as principais esto a Anlise Hierrquica de Tarefas abreviada AHT (Hierarchical Task Analysis HTA), e a Anlise Cognitiva de tarefas (Cognitive Task Analysis).

Figura 1 Exemplo de AHT aplicada tarefa preparar ch (make tea) AHT a mais comumente utilizada, decompondo uma tarefa de modo top-down para formar uma hierarquia de subtarefas que por sua vez podem tambm ser
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

decompostas sucessivamente. Em geral, sugere-se que a decomposio acabe quando for atingido um nvel baixo de descrio em termos de aes elementares nodecomponveis (em IHC, aes elementares so movimentos e cliques de mouse, pressionamento de teclas, etc). A figura 1 mostra um exemplo de uso de AHT. Claramente, a famlia de AHT est orientada a uma viso mais procedural da realizao de uma tarefa de modo que a estrutura hierrquica corresponde a um plano para realizao da tarefa. A Anlise Cognitiva de tarefas por sua vez interessa-se mais por princpios psicolgicos ou cognitivos relacionados tarefa. Assim, investiga o conhecimento ou habilidade necessrios para a realizao da tarefa e por isto se concentra mais na anlise (e possivelmente na predio) da performance do usurio e as razes de sua variabilidade. Os resultados da AT nem sempre so documentados, ou seja, nem sempre AT produz um MT ou uma representao explcita das tarefas analisadas. No entanto, em IHC a modelagem explcita de tarefas fundamental para o processo de concepo e avaliao de sistemas interativos. H vrios autores que defendem o uso de MT mas no informam como obtido. Talvez esta seja uma das razes para que a penetrao da AT no mercado seja relativamente reduzida, no s no mbito nacional mas tambm internacionalmente (Diaper 2001). Embora haja vrias formas de realizar Anlise de tarefa (AT), o processo pode de alguma forma ser resumido para fins didticos em um procedimento genrico. Basicamente, AT consiste das seguintes etapas (adaptado de [Greenberg 2004]: 1. Inventariar tarefas: descobrir as tarefas que o usurio faz; Use diferentes tcnicas de coleta: o ideal observar e/ou entrevistar o usurio real ou seus representantes. Tente identificar objetivos gerais e construir uma lista de tarefas relacionadas a estes objetivos. Lembre-se que devem ser identificados objetivos genricos e no especficos dependentes de uma tecnologia. Por exemplo, no contexto de um caixa eletrnico, Identificar usurio um objetivo genrico enquanto Digitar ID e senha um objetivo especfico descrito em termos da tecnologia. 2. Selecionar tarefas a serem analisadas e descritas com mais detalhes: tipicamente as tarefas selecionadas incluem as mais freqentemente realizadas ou as mais crticas. 3. Descrever as tarefas: decompor e ordenar as tarefas. Decompor significa detalhar as tarefas (descrevendo-as em termos de subtarefas e procedimentos, p.ex. se usarmos AHT) e ordenar significa definir o ordenamento causal e/ou temporal das tarefas (sequencia, entrelaamento, simultaneidade, etc). Aqui construdo o modelo de tarefas (MT). 4. Validar as tarefas descritas: uma alternativa simples apresentar o MT a algum no envolvido na AT mas que conhea bem as tarefas para verificar sua consistncia.

4. Modelos de tarefa
De fato, h vrios modelos de tarefa (e notaes associadas) na literatura, cada um chamando ateno a um subconjunto de aspectos associados maneira pela qual as pessoas fazem suas tarefas. Por exemplo, MAD [Scapin 89], TKS [Johnson 88] e ATOM [Walsh 89] focam respectivamente na decomposio hierrquica de tarefas, no
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

conhecimento necessrio para realizar uma tarefa e s relaes atores-objetos-aes associadas s tarefas. Em geral, uma notao est tipicamente direcionada a modelar/representar alguma perspectiva sobre a tarefa, entre as quais: Modelos de tarefas cognitivas do usurio (tambm denominados de modelos cognitivos cognitive models) representam o conhecimento que os usurios necessitam para a realizao de uma tarefa (por exemplo Task Knowledge Structures - TKS [Johnson 88]); Modelos de tarefas interativas (interactive task model tambm denominados modelos de interao ou modelos de dilogo) descrevem as aes que os usurio tem que realizar na operao de um sistema para atingir seus objetivos (por exemplo CLG [Moran 81], TAG [Payne 86], UAN [Siochi 91] [Hartson 90]); Modelos de tarefas de usurio (user tasks) descrevem como as aes dos usurios se organizam no decorrer de suas atividades (por exemplo, MAD [Scapin 89]). Segundo a classificao de [Brun 95] os modelos genuinamente concebidos para anlise de tarefa so MAD et CLG cuja origem a Psicologia Cognitiva. Alguns outros formalismos frequentemente utilizados para modelagem de tarefa podem ser classificados tambm como modelos de performance (incluindo GOMS e Keystroke [Card 83]) ou como modelos de dilogo (incluindo UAN e XUAN [Siochi 91] [Hartson 90]). Os modelos de performance direcionam-se sobretudo avaliao da performance do usurio incorporando tcnicas para predizer o tempo de execuo de tarefas e taxas de erros. GOMS [Card 83] e TAG [Payne 86] so exemplos de tcnicas avaliativas que modelam respectivamente a performance e a competncia de usuario. Os modelos de dilogo so uma maneira de representar o dilogo entre o usurio e o sistema a um nvel de abstrao baixo. Um exemplo UAN (User Action Notation). Os modelos de tarefa so uma maneira adequada de considerar o ponto de vista do usurio na concepo pois a) representam conceitos relacionados atividades (de trabalho ou lazer) que os usurios realizam; e por isto b) permitem que o usurio compreenda, valide e participa ativamente do processo de anlise. Certos trabalhos no diferenciam entre tarefas existentes e tarefas futuras, isto , entre tarefas que o usurio realiza atualmente e tarefas previstas e que podero ser realizadas como a interao com um (novo) sistema. Claramente, esto situadas em diferentes espaos do processo de concepo do sistema: as primeiras so parte do espao-problema e as segundas so parte do espao soluo. Alm dos j citados, h vrios outros modelos como TAKD [Diaper 89b] , ETAG [Tauber 90] , GTA [van der Veer 96] e mesmo trabalhos que estudam a interseo entre cenrios e modelos de tarefas [Diaper 2002]. Entretanto neste trabalho, apresentaremos um resumo dos modelos de tarefa MAD, UAN, ICO, GOMS e KLM que consideramos representantes dos diferentes tipos de modelos de tarefa.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

4.1 Mtodo Analtico de Descrio de tarefas2 (MAD) Mtodo Analtico de Descrio de tarefas (MAD) (Scapin 89, Sebillotte, 1995; Rodriguez and Scapin, 1997; Scapin and Bastien, 2001) uma notao e uma metodologia que visa a descrio de tarefas com o objetivo final de melhor inserir preocupaes ergonmicas na concepo de interfaces com usurios. MAD se baseia na descrio do objeto-tarefa e na decomposio hierrquica de tarefas em subtarefas com auxlio de construtores pr-definidos que descrevem relaes temporais e lgicas entre estas diferentes subtarefas. Uma tarefa ou subtarefa representada como uma rvore cujos nodos so tarefas, subtarefas ou aes elementares, e assim sucessivamente. A descrio do objeto-tarefa consiste de um conjunto de propriedades que caracterizam esta tarefa: um estado inicial, um estado final, pr-condies, pscondies e atributos p.ex. sua prioridade , se a tarefa iterativa ou no, se opcional ou obrigatria, se pode ser interrompida ou no. Construtores em MAD operam sobre os nodos filhos de uma mesma tarefa, o que s vezes leva criao de nodos abstratos artificiais para permitir usar algum construtor. Os principais construtores de MAD so : SEQ para encadeamento sequencial de tarefas, PAR para execuo paralela entrelaada de tarefas por um mesmo agente executor; SIM para execuo simultnea de tarefas por agentes executores distintos; ALT para expressar possibilidade de escolha entre tarefas alternativas; LOOP (ou @) para tarefas iterativas e OP para tarefas opcionais. 4.2 User Action Notation - UAN User Action Notation (UAN) [Hartson et al. 1990, Siochi 91, Shneiderman 98] consiste em uma notao orientada a tarefas e aes do usurio para descrever o projeto de interfaces assncronas de manipulao direta. UAN utilizado tipicamente para descrever como o usurio executa uma tarefa interativa mas no como o sistema implementado para interpretar o comportamento do usurio. UAN foi concebida para servir como uma forma de comunicar a lgica de operao da interface a um projetista de software visando sua implementao, e claramente no adequada a comunicao com usurios finais.
AES DO USURIO ~(Lista de aeroportos destino) M ~(Item da lista de aeroportos destino) M TAREFA: Selecionar aeroporto destino FEEDBACK DA INTERFACE ESTADO DA INTERFACE Lista de aeroportos destino aparece Nome de aeroporto !

Nome do aeroporto permanece na no topo da lista

Aeroporto destino selecionado e o itinerrio do vo atualizado

Figura 2 - Exemplo de descrio em UAN, extrado de [Balbo et al. 2004] Em UAN, uma interface representada como uma estrutura quase hierrquica de tarefas assncronas. No seu mais baixo nvel de abstrao, UAN uma notao orientada a tarefas que descreve aes do usurio, os correspondentes feedbacks da interface e a informao de estado. Nveis de abstrao so usados para esconder estes

Do original em francs "Mthode Analytique de Description de tches".


IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

detalhes e representar a interface inteira. Em todos os nveis, aes do usurio e tarefas so combinadas com relaes temporais (como por exemplo, sequenciamento, paralelismo, intercalao, etc) para descrever o ordenamento entre elas. As descries em UAN so apresentadas na forma de tabelas, como mostrado na figura 2. O sentido da leitura de uma tabela de cima para baixo e da esquerda para a direita. Os smbolos de UAN foram escolhidos, em sua maior parte, com a dupla inteno de permitir o uso de editores de texto convencionais para escrever descries de tarefas e para serem visualmente onomatopicos. Visando esta segunda caracterstica, por exemplo, o sinal de til (~) sugere movimento e o sinal de exclamao (!) sugere atrair a ateno. A tabela 1 resume os smbolos de UAN e seus significados. Tabela 1 - Smbolos de UAN e seus significados.
Smbolo UAN (Ao)
~ [X] ~[X] ~[x,y] ~[x, y in A] ~[X in Y] [X]~ X X X Xabc X(xyz) () * {} AB OR & || ; ! -! !! !-! n (!-!) @x, y @X Exibe(X) Apaga(X) X>~ X>>~ Contorno(X)

Significado
Move o cursor Contextodo objeto X, no qual ele manipulado Move o cursor para o contexto do objeto X Move o cursor para uma posio arbitrria (x, y) Move o cursor para uma posio arbitrria (x, y) dentro do objeto A Move o objeto X para dentro do objeto Y. Move o cursor fora do contexto do objeto X. Pressionar Liberar Aperte o boto, chave ou interruptor X. Libere o boto, chave ou interruptor X. Clicar boto, chave ou interruptor X Entrada do literal abc, via teclado. Entrada de valores para as variveis xyz via o dispositivo X Mecanismo de agrupamento de tarefas. Tarefa executada zero ou mais vezes. A tarefa opcional (realizada zero ou mais vezes). Tarefas A e B devem ser executadas na ordem da esquerda para direita ou de cima para baixo (AB). Escolha de tarefa (til para mostrar tarefas alternativas). Tarefas so independentes quanto ordem de execuo Tarefas X e Y podem ser intercaladas no tempo. Tarefas podem ser executadas simultaneamente. A tarefa no precisa necessariamente ser executada Destaca o objeto No destaca o objeto Destaque especial para o objeto. Objeto piscando na tela Objeto piscando na tela n vzes. Numa posio especfica (x, y) Na posio onde se encontra o objeto X. Mostra o objeto X na tela Apaga o objeto x da tela. O objeto X arrastado pelo cursor. O objeto X muda de tamanho enquanto segue o cursor Apresenta o contorno do objeto X na tela.

Assim, a descrio da figura 2 pode ser interpretada da seguinte forma: Para o usurio realizar a tarefa (selecionar aeroporto destino) , ele deve mover o cursor para uma list-box ~(Lista de aeroportos destino) e pressionar o boto do mouse (Mv). Como resultado desta ao, o sistema faz a lista de opes aparecer (lista de aeroportos destino aparece). A medida que o usurio move o cursor na lista, cada item da lista destacado (Nome do aeroporto !), e aps a liberao do boto do mouse (M), o nome do aeroporto escolhido fica no topo da lista exibido como a opo escolhida (Nome do aeroporto permanece no topo da lista). Note que a descrio linha-por-linha
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

associa o feedback da interface a correspondente ao do usurio. Este nvel de preciso perdido em outros tipos de descrio, quando a ao do usurio e o feedback so misturados. 4.3 Interactive Cooperative Objects (ICO) Interactive Cooperative Objects (ICO) [Palanque 93] um formalismo baseado em Redes de Petri a Objetos para modelagem do comportamento de um sistema interativo e que pode servir tambm para modelar as tarefas interativas entre o usurio e o sistema [Palanque 1995, Bastide & Palanque 1999, Navarre et al. 2001] . O formalismo considera que um objeto ICO composto de: Estrutura de dados (atributos); Conjunto de operaes (servios internos ou servios disponveis como mensagens); Estrutura de controle do objeto (ObCS - Object Control Structure) para modelar seu comportamento definido atravs de uma rede de Petri de alto nvel; Apresentao para descrever sua aparncia externa e que est estruturada como um conjunto de widgets tais como botes, checkboxes, etc.; e Funo de ativao que, a cada par (widget, ao sobre o widget) associa um servio do ICO. Alm disto, o sistema interativo descrito atravs de um conjunto de ICOs e de uma rede de Petri para descrever o comportamento do sistema e as interaes entre os ICOs (WSCS- Whole System Control Structure). O princpio bsico de modelagem ICO utilizar um protocolo cliente-servidor para assegurar, para cada ICO, que o conjunto de servios solicitados aos outros objetos (a demanda) est inclusa no conjunto de servios oferecidos por eles (a oferta). Para avaliar a cooperao com os usurios, cada usurio considerado como um ICO. Assim, pode-se assegurar que a demanda do usurio est includa na oferta do sistema. Com ICO pode-se verificar se o modelo de concepo do sistema suporta o modelo de tarefa do usurio. Como os 2 modelos tm uma base (e uma notao) comum pode-se atravs de tcnicas formais associadas teoria das redes de Petri: Valid-los de maneira isolada, isto , mostrar que cada ICO capaz de fornecer seus servios; e Compar-los e validar sua cooperao. O uso de formalismos como ICO em IHC tem uma srie de vantagens ver uma discusso extensa em [Palanque & Paterno 1997] - mas a principal a possibilidade de especificar o modelo de tarefa com preciso e rigor, sem ambiguidade e com isto permitir anlise de caractersticas do modelo sem uma verso executvel do sistema e sem a participao do usurio, antecipando alguns aspectos da avaliao para as fases iniciais do ciclo de desenvolvimento de modo a predizer alguns dos aspectos de usabilidade do sistema. Evidentemente, estes modelos formais no substituem outras prticas, como testes com usurios. No entanto, usar modelos formais pode nos habilitar a responder mais cedo e com menos esforo a certas questes de desenvolvimento de IU.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

4.4 GOMS
O modelo GOMS (acrnimo de Goals, Operators, Methods and Selection rules) foi desenvolvido como um modelo preditivo do desempenho de um ser humano ao interagir com um sistema. O modelo GOMS original [Card 83] o ancestral de uma famlia de modelos que variam basicamente em relao granularidade dos aspectos de performance do usurio modelados e usados nas predies incluindo [Grasy et al. 1992, Kieras 1996, John & Kieras 1996, Baumeister et al 2000]. Basicamente, GOMS um modelo de conhecimento e dos processos cognitivos do usurio quando interage com sistemas e tem sido usado principalmente para predizer o desempenho de usurios ao comparar diferentes aplicaes e equipamentos e para ajudar a anlise da eficincia de novos sistemas sem a necessidade de envolver usurios. GOMS pode ser usado no design de (novas) tarefas e por isto a noo de mtodo (o M de GOMS) to importante. Um mtodo uma seqncia de operadores que descreve a performance de uma tarefa. Operadores (o O de GOMS) so aes fsicas (pressionar uma tecla, apontar um item com mouse, clicar o mouse, etc) e cognitivas (decidir qual comando usar, esperar, etc) que o usurio executa. Tarefas so realizadas para alcanar objetivos (o G de GOMS), estados que o usurio quer atingir, e podem ser decompostas em subtarefas, que correspondem a objetivos intermedirios. Quando vrios mtodos existem para o mesmo objetivo, uma regra de seleo (o S de GOMS), com base no contexto de uso, usada para escolher o mtodo apropriado. GOMS no freqentemente usado em avaliao por envolver um conjunto muito limitado de tarefas de entrada de dados, por no modelar erros adequadamente e no levar em conta informaes contextuais (interrupes nas tarefas, fadiga, etc) que podem mudar comportamentos e desempenhos previstos.

4.5 KLM
Keystroke Level Model (KLM) faz parte da famlia GOMS, mas concentra-se em predies quantitativas do desempenho do usurio [Card 83]. Tarefas podem ser comparadas em termos de tempo para execut-las ao usar diferentes estratgias (diferentes mtodos na nomenclatura GOMS). Cada mtodo uma seqncia de operadores fsicos e cognitivos e como cada operador tem um tempo de execuo associado - determinado com base em experimentos prvios e que pode ser consultado em uma tabela presente em [Preece 2002] -, pode-se predizer o tempo necessrio para realizar uma tarefa.

5. Modelagem de tarefas com ConcurTaskTrees (CTT)


Esta seo apresenta a notao para modelagem de tarefas Concurrent Task Trees ou resumidamente ConcurTaskTrees (CTT) [Paterno 1997]. Esta notao foi escolhida para ilustrar aqui o processo de modelagem de tarefas pela sua capacidade de expresso na modelagem de sistemas interativos e porque uma notao que vem sendo muito difundida e utilizada pela comunidade internacional de IHC. Alm disto, a existncia de uma ferramenta de edio e de suporte a anlise de modelos, chamada CTT Environment (CTTE) [Mori 2002] (ver seo 5), facilita a criao de modelos de tarefas. A seguir so apresentados os fundamentos do modelo CTT e os principais elementos da notao. 5.1 Introduo ao modelo CTT As principais caractersticas de CTT so:
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

Foco nas atividades: permite que o projetista se concentre nas atividades que os usurios precisam realizar com a interface sem se preocupar com detalhes de como a tarefa ser implementada pelo sistema; Estrutura hierrquica: suporta a representao de vrios nveis de abstrao pela decomposio de tarefas complexas em subtarefas menores; Representao grfica: modelos so descritos graficamente na forma de uma rvore de tarefas; Suporte a relacionamentos temporais: um vasto conjunto de operadores disponvel permitindo definir relacionamentos temporais entre tarefas; Alocao de tarefas: permite descrever os agentes que realizam a tarefa (ex. usurio e/ou aplicao); Objetos: permite indicar objetos do domnio do problema que so manipulados durante a execuo da tarefa. Os elementos da notao CTT so definidos em torno da idia de que o objetivo do usurio ao realizar uma tarefa pode ser traduzido como uma modificao do estado do sistema ou uma consulta a um recurso do sistema. Assim, os modelos criados em CTT podem ser interpretados como uma representao (de alto nvel de abstrao) dos estados possveis do sistema e do usurio durante a realizao de uma tarefa especfica. Segundo esta abordagem, a execuo de cada tarefa individual capaz de modificar a configurao de estados do sistema. O comportamento do modelo de tarefas definido em CTT pela adio de operadores temporais (tais como escolha, repetio, seqncia, etc.) entre as tarefas. A existncia de tais operadores temporais torna possvel a modelagem de tarefas em sistemas interativos. 5.2 Definio de tarefas e seus atributos Cada tarefa individual em CTT descrita atravs dos seguintes atributos: Nome: usado para identificar a tarefa; Subtarefa de: indica o nome da tarefa-pai, caso existir; Objetos: lista de possveis objetos do domnio da aplicao que podem estar associados a tarefa; objetos podem ser do domnio da interface ou do domnio da aplicao (objetos conceituais); Tipo: existem quatro tipos possveis para uma tarefa de acordo com o agente que a realiza (usurio, aplicao, interativa, abstrata); Os atributos nome e subtarefa de so atributos bsicos de modelos de tarefas que permitem respectivamente a identificao individual de cada tarefa e a construo de uma hierarquia de tarefas onde cada tarefa conhece o seu ancestral imediato. Os demais atributos so detalhados a seguir. 5.2.1 Objetos Os objetos so entidades manipuladas durante a realizao de tarefas. Sobre estes objetos so realizadas aes que podem ser cognitivas, lgicas ou fsicas. Objetos podem ser objetos perceptveis, ou objetos internos. Objetos perceptveis so aqueles com os quais o usurio pode interagir usando os sentidos (ex. menus,
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

botes, sinal sonoro, etc.). Objetos internos so entidades conceptuais representadas por objetos perceptveis (ex. estado de uma consulta em um banco de dados; o prprio banco de dados). Cada objeto pode pertencer a uma ou mais tarefas. Durante o processo de decomposio de tarefas em subtarefas, objetos definidos no nvel mais elevado da tarefa podem ser manipulados em subtarefas de duas maneiras: Por decomposio (um objeto no nvel da tarefa decomposto em 2 ou mais objetos no nvel das subtarefas); Por refinamento (o conjunto de aes associadas com um objeto detalhado no nvel das subtarefas). 5.2.2 Tipos de tarefas CTT identifica quatro tipos de tarefas de acordo com a alocao de tarefas, ou seja, quem a realiza como segue: Usurio: so tarefas cognitivas ou fsicas realizadas inteiramente pelo usurio; por exemplo: identificar o nome de um arquivo numa lista de arquivos de um diretrio; Aplicao: so tarefas completamente realizadas pelo sistema sem a interveno do usurio. Tais tarefas podem receber informaes do sistema e fornecer um resultado visvel ao usurio. Exemplo: compilar um programa e enviar uma mensagem ao usurios cada vez que um erro detectado. Interativa: so tarefas que o usurio realiza com o sistema; as interaes so ativadas pelo usurio e processadas pelo sistema; Exemplo: editar um diagrama ou formular uma consulta em um formulrio; Abstrata: so tarefas que requerem aes complexas e que devem ser decompostas em um subtarefas. Tarefas abstratas tambm so usadas para descrever tarefas que no cabem inteiramente em nenhum das categorias anteriores. O tipo das tarefas so representados graficamente na notao CTT. Dois tipos de representao de tipos de tarefas so possveis, atravs de cones ou de formas geomtrica simples, como mostra a Figura 3.

Figura 3 Representaes possveis para tipo de tarefas. Neste trabalho, os exemplos de modelos de tarefas utilizam a representao por cones.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

5.3 Relacionamentos temporais Operados temporais tais como seqncia, escolha e iterao, so fundamentais para modelar o comportamento de sistemas interativos. Tais operadores so utilizados para definir o relacionamento de tarefas em um mesmo nvel. Os operadores usados em CTT para descrever tais relacionamentos entre tarefas so definidos como extenses aos operadores LOTOS [Bolognesi 87]. A lista de operadores temporais disponveis em CTT apresentada na Tabela 2.
Tabela 2 Operadores temporais entre tarefas. Operador
escolha independncia de ordem concorrncia independente concorrncia com troca de informaes desativao

Smbolo
[] |=|

Forma3
T1 [ ] T2 T1 |=| T2

Descrio
possvel escolher uma tarefa, outras tarefas ficam indisponveis at a tarefa escolhida terminar; ambas as tarefas devem ser realizadas, em qualquer ordem, mas deve-se esperar a finalizao de uma delas para dar prosseguimento a tarefa seguinte tarefas podem ser executadas em qualquer ordem sem nenhuma restrio. Ex. Monitorar uma tela e falar em um microfone. as duas tarefas podem ser executadas em paralelo mas devem se sincronizar para trocar informaes a primeira tarefa definitivamente desativada quando a segunda tarefa inicia (ex. Seleo de botes) este operador da a possibilidade de interromper a primeira tarefa quando a segunda termina. Este operador pode ser usado para modelar um tipo de interrupo quando a T1 termina a T2 ativada quando a T1 termina ela envia valores para a T2 antes que essa seja ativada

||| |[]| [>

T1 ||| T2 T1 |[]| T2 T1 [> T2

suspende/ continua habilitao habilitao com passagem de informao

|> >> [ ]>>

T1 |> T2 T1 >> T2 T1 [ ]>> T2

Alm de operadores relacionais entre tarefas, CTT inclui um conjunto de 3 operadores unrios (aplicveis a uma tarefa individualmente). A representao de um operador unrio exemplificado na figura 4 pelo operador iterao (*) que associado a tarefa Modificar grfico. A lista completa de operadores unrios disponveis em CTT apresentada na Tabela 3.
Tabela 2 - Lista de operadores unrios em CTT. Operador
iterao opcionalidade conexo entre modelos

Smbolo
* []

Forma
T* [T] T

Descrio
a tarefa iterativa, a tarefa termina apenas quando for desativada por outra tarefa uma tarefa representada entre colchetes ([ ]) indicada como opcional indica que a tarefa sublinhada com o smbolo pode ser usada em modelo cooperativo onde participam vrios usurios

5.4 O processo de construo de modelos Um modelo de tarefas CTT construdo em 3 etapas: 1. Decomposio hierrquica de tarefas e subtarefas; 2. Identificao de relaes temporais entre tarefas no mesmo nvel;
3

Os elementos T1 e T2 representam tarefas.


IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

3. Identificao de objetos associados a cada tarefa e aes que permitem que os objetos comuniquem entre si. 5.4.1 Decomposio hierrquica de tarefas e subtarefas O modelo de tarefas construdo como uma hierarquia de tarefas onde o primeiro elemento (chamado raiz) corresponde ao nvel mais elevado de abstrao. O elemento raiz ento decomposto em sub-tarefas que permitem refinar o modelo. A hierarquia representada na forma de uma rvore invertida como mostra a Figura 4. O exemplo apresentado pela Figura 4 mostra um modelo de tarefas CTT para um programa simples de edio de grficos. A tarefa Editar um grfico definida como um tarefa composta de trs subtarefas: Abrir arquivo, Modificar grfico e Salvar arquivo. As tarefas : Abrir arquivo e Modificar grfico so ainda decompostas em um outro nvel de subtarefas. Este processo de decomposio de tarefas termina quando o designer decide que o nvel de representao suficiente para compreender completamente a tarefa.

Figura 4 Modelo CTT para um programa simples de edio de grficos. 5.4.2 Identificao de relaes temporais As tarefas em CTT se relacionam entre si atravs de relacionamentos de filiao (hierarquia entre os diferentes nveis) ou atravs de relacionamentos temporais entre tarefas pertencendo a um mesmo nvel. Tais relacionamentos so necessrios para definir o comportamento do modelo de tarefas. Considerando o exemplo dado pela tarefa Editar um grfico (Figura 4), a ordem de precedncia entre estas tarefas representada pelo operador >>, como indicado entre as tarefas Mostrar lista de arquivos, escolher arquivo e Selecionar arquivo; isto significa que a tarefa Escolher arquivo somente ser realizada depois que a tarefa Mostrar lista de arquivos for concluda. Para indicar a alternativa entre tarefas CTT emprega o operador [ ] como no relacionamento entre as tarefas Adicionar nodo, Adicionar vrtice, Remover nodo, Remover vrtice e Mover nodo. Isto significa que a tarefa Modificar grfico pode ser completada pela realizao de qualquer uma destas subtarefas. O operador iterao (*) associado a tarefa Modificar grfico usado para indicar que essa tarefa pode ser repetida vrias vezes. De fato a tarefa Modificar grfico pode ser completada pela realizao de uma de suas subtarefas (Adicionar nodo, Adicionar vrtice, Remover nodo, Remover vrtice ou Mover nodo) ou por qualquer seqncia dessas; por exemplo, uma modificao de grfico poderia necessitar a adio de um novo nodo e conexo deste nodo a um outro nodo do grfico. Neste caso, o operador iterao (*) usado para indicar a repetio da tarefa Modificar grfico permitindo que diferentes seqncias de subtarefas sejam formadas para atender os diferentes cenrios possveis para a tarefa.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

5.4.3 Identificao de objetos associados a tarefas O processo de identificao de objetos e aes associados a tarefas realizado nvel por nvel. Para cada tarefa pode ser associada a lista de objetos manipulados assim como seus atributos e as aes utilizadas. Geralmente, aes e objetos no so representados diretamente nas tarefas para evitar que a poluio visual da representao grfica do modelo. A ferramenta CTTE, descrita na seo a seguir, auxilia a edio de objetos e aes associados a tarefas (ver detalhes na seo 5.2). 5.4.4 Soluo de problemas de ambigidade A simples utilizao de operadores temporais durante a construo de modelos de tarefas com CTT pode levar a algumas ambigidades. A Figura 5a poderia ser interpretada de duas maneiras: (T2 [] T3) ||| T4, ou T2 [] (T3 ||| T4). Para resolver esta ambigidade pode-se aplicar a prioridade de operadores definida no padro LOTOS (escolha > concorrncia independente > desativao > habilitao) ou introduzir uma tarefa que elimine a ambigidade da expresso. A figura 5b apresenta a segunda soluo optando pela introduo da subtarefa TD.

Figura 5 Possvel problema de ambigidade entre tarefas (figura a) e sua respectiva soluo grfica (figura b). 5.4.5 Relacionamento entre tarefas na hierarquia A utilizao de operadores relacionais dentro de um contexto de hierarquia de tarefas d uma grande flexibilidade para a especificao de diferentes comportamentos. Por exemplo, a figura 6 apresenta duas variantes de um tarefa T1 composta de duas subtarefas T2 e T3 que podem ser realizadas iterativamente em qualquer ordem. No primeiro caso (figura 6a) o smbolo de iterao est associado a tarefa-pai T1, o que significa que as subtarefas podem ser realizadas em qualquer ordem mas ambas devem ser realizadas antes de iniciar a iterao seguinte. No segundo caso (figura 6b), aps ter terminado T2 pode-se repetir vrias vezes a tarefa antes de passar a tarefa T3.

Figura 6 - Diferentes maneiras de especificar independncia de ordem.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

Um exemplo tpico de independncia de ordem a reserva de uma passagem area. O usurio deve informar a chegada e a sada, mas no necessariamente nesta ordem. Uma vez que uma reserva de vo foi concluda, possvel realizar uma nova reserva. A mesma aplicao poderia apresentar concorrncia contnua entre duas tarefas considerando a formulao de uma consulta no banco de dados e a introduo de novos vos na base; eles podem ser executadas vrias vezes sem nenhum limitao na ordem de execuo. 5.5 Exemplos de especificaes em CTT Esta seo apresenta alguns estudos de caso de modelagem de tarefas usando CTT. 5.5.1 Estudo de caso: terminal de auto atendimento bancrio Atualmente, terminais de auto atendimento so disponveis para quase todas a operaes bancrias tais como saques, depsitos, transferncias, retiradas de cheques, extratos, aplicaes, etc. Contudo, por questes de espao, nosso estudo de caso sobre terminais de auto atendimento resume-se tarefa de saque. A figura 7 apresenta a modelagem da tarefa saque (denominada no modelo como Retirar dinheiro) usando a notao CTT.

Figura 7 Modelagem da tarefa Retirar dinheiro em um terminal bancrio genrico. A modelagem de tarefas apresentada na figura 7 descreve uma tarefa de saque genrica. Esta tarefa, denominada Retirar dinheiro, composta de quatro subtarefas: Identificar-se, Indicar montante, Verificar transao, e Terminar. Cada uma dessas subtarefas ainda decomposta em um terceiro nvel de detalhe. Considera-se que no existe uma ordem predeterminada para a execuo das subtarefas Identificar-se e Indicar montante (note o operador |=|, independncia de ordem, entre elas). De fato, do ponto de vista do usurio da aplicao, no existe uma seqncia fixa de tarefas, tanto faz se ele se identifica primeiro e em seguida indica o montante desejado do saque, ou vice-versa. Com freqncia, a implementao de tais sistemas que impem uma determinada ordem para estas tarefas por questes de segurana e/ou de escolhas de implementao que no esto de forma alguma relacionados com a realizao do objetivo do usurio. A mesma anlise com relao a independncia de ordem de execuo de tarefas pode ser observada nas subtarefas Recuperar carto e Recuperar dinheiro que esto associadas a tarefa Terminar. 5.5.2 Estudo de caso: Anulao de comandos Modelos CTT so comumente usados para especificar a atividade de usurios com uma determinada aplicao. Uma situao bastante comum a necessidade do usurio de poder cancelar uma modificao. A Figura 8 mostra uma modelagem CTT genrica para o cancelamento de um comando em uma aplicao. Aps ter realizado a subtarefa modificar o usurio pode confirmar ou cancelar. Em ambos os casos a tarefa Editar iterativa, assim o usurio capaz de especificar uma nova modificao at que a tarefa Terminar aplicao seja realizada.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

As figuras 8a e 8b so equivalentes. Observa-se porm uma representao contrada ou simplificada da tarefa Modificar na figura 8a. A tarefa Modificar expandida na figura 8b mostrando toda a decomposio de suas subtarefas. Este recurso grfico pode ser usado para controlar o nvel de detalhe de um modelo.

Tarefa: modificar

Figura 8 Cancelamento de um comando.

5.6 Ambiente de suporte a edio e simulao de modelos CTT (CTTE)


A edio e anlise de modelos CTT grandemente facilitada pela ferramenta CTTE (CTT Environment) que publicamente disponvel em http://giove.cnuce.cnr.it/ctte.html. Uma descrio desta ferramenta pode ser encontrada em (Mori, Patern, e Santoro, 2002). Aqui nos contentamos em mostrar as principais facilidade oferecidas por essa ferramenta. 5.6.1 Edio de modelos Toda a edio de tarefas com CTTE realizada graficamente. Todo modelo iniciase com uma tarefa abstrata (denominada root) que identifica a base da tarefa. Para criar subtarefas necessrio selecionar a tarefa-pai. Uma vez que o ponto de insero na hierarquia foi selecionada (a tarefa-pai) pode-se selecionar um dos cones na barra de cones (a esquerda da janela); cada vez que o usurio clica em um cone de tarefa, uma nova subtarefa adicionada ao diagrama. A figura 9 apresenta uma viso da ferramenta ilustrando a edio de um modelo; observa-se que a tarefa principal Editar grfico representada com um retngulo que indica que ela esta atualmente selecionada.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

Figura 9 CTTE : viso geral da zona de edio de diagramas e barra de ferramentas. A edio de relacionamentos tambm feita da esquerda para direita. Seleciona-se a tarefa mais a esquerda no mesmo nvel hierrquico e, em seguida seleciona-se um cone de operador temporal a partir da paleta de operadores (situado logo abaixo dos cones de tarefas). O relacionamento aplicado entre a tarefa atualmente selecionada e a tarefa imediatamente a direita no mesmo nvel. A seleo de um novo cone de operador substitui o operador anterior no relacionamento. 5.6.2 Definio de objetos e aes associados a tarefas Objetos e aes podem ser especificados como associados a uma tarefa atravs da opo propriedades da tarefa selecionada. A figura 10 mostra o objeto File system associado a tarefa Abrir arquivo.

Figura 10 Definio de objetos e aes de uma tarefa usando CTTE.


IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

5.6.3 Simulao de modelos e extrao de cenrios A simulao de um modelo de tarefas pode ser til na anlise da dinmica dos modelos. Com freqncia, necessrio simular a execuo de um modelo de tarefas para determinar se o comportamento especificado representa a realidade modelada. CTTE inclui uma simulador que permite visualizar graficamente todas as etapas da execuo de um modelo de tarefas CTT. A idia bsica por traz deste simulador que, a qualquer momento da simulao, possvel visualizar a lista de tarefas habilitadas. Apenas tarefas bsicas (que no tem filhos) so consideradas. A figura 11 apresenta a janela do simulador de modelos; tarefas habilitadas so marcadas como selecionadas no grfico e elas tambm aparecem na lista de tarefas que, de acordo com a ordem e o tipo de operadores definidos esto disponveis para a execuo. A seleo (por duplo-clique) de uma tarefa habilitada indica o termino da mesma e transfere o controle para o simulador que atualiza a lista de tarefas e a representao grfica com a prxima configurao de tarefas.

Lista de tarefas a serem executadas

Figura 11 Simulador de modelos CTT, parte do ambiente CTTE. A simulao de modelos de tarefas que usam operadores temporais permite a extrao de inmeros cenrios de uso que descrevem a realizao de uma tarefa em um contexto especfico. A extrao de cenrios a partir de um modelo de tarefa uma ferramenta til para a verificao de aplicao e para registrar seqncias de tarefas que podero ser utilizadas na escolha de opes de implementao ou na avaliao. Embora a extrao de cenrio no seja especfica a CTT, o editor CTTE permite que tais cenrios possam ser efetivamente executados graas a uma ferramenta de simulao integrada ao ambiente. Cada execuo de um modelo de tarefas produz um cenrio. A execuo do mesmo modelo de tarefa Retirar dinheiro pode produzir cenrios diferentes tais como os apresentados pela figura 12.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

Figura 12 Cenrios extrados pela execuo do modelo de tarefas Retirar dinheiro. Com base nestes fundamentos vistos at agora, durante o tutorial sero realizados vrios exerccios de modelagem visando consolidar o conhecimento sobre CTT e o ambiente CTTE.

6. Usos de modelos de tarefa


Uma vez que conhecemos os fundamentos de Anlise e Modelagem de Tarefas, pode-se investigar como podemos usar os modelos criados para auxiliar o processo de desenvolvimento de sistemas interativos. Esta seo resumir alguns dos usos possveis. O leitor interessado pode obter mais detalhes nas referncias apontadas. 6.1 Modelos de tarefa para definio de requisitos A Engenharia de Software (ES) tem usualmente priorizado sua ateno para os requisitos funcionais dando pouca ou nenhuma ateno aos requisitos de usabilidade ou de interao. Assim, a Engenharia de Requisitos de sistema interativos exige, alm da compreenso e modelagem do domnio do problema (j existente nos enfoques tradicionais da Engenharia de Software) a compreenso do contexto de trabalho em que o sistema ser utilizado. neste ponto que importante a Anlise e a Modelagem de Tarefas para investigar e representar os procedimentos de trabalho, os automatismos desenvolvidos na realizao de tarefas, os disfuncionamentos observados, as regras tcitas (sociais, polticas, comerciais) internas ao contexto organisacional analisado para chegar a um conjunto de requisitos. Estes requisitos podem ser Requisitos solicitados explicitamente pelo usurio definidos a partir das necessidades identificadas pela Anlise da Tarefa. Com este conjunto inicial de requisitos definidos, o fio condutor do restante do processo pode ser o conceito de caso de uso [Jacobson 1992, Booch et al 1999]. Casos de uso so descries narrativas do fluxo de eventos no uso de um sistema (aes do usurio e respostas do sistema a estas aes) e so usualmente utilizados em ES para modelar requisitos funcionais. Modelos de tarefa podem ser usados como ponto de partida na construo e no refinamento de casos de uso, a partir dos objetivos presentes no modelo de tarefas. Acreditamos que pode-se combinar modelos de tarefas e casos de uso, utilizando casos de uso essenciais [Constantine & Lockwood 1999]. Casos de uso essenciais so narrativas estruturadas consistindo de 3 partes: um nome que expressa a inteno final do usurio, uma descrio passo a passo das intenes do usurio e a correspondente descrio da responsabilidade do sistema associada a esta ao. Nenhuma descrio (de usurio ou sistema) atrelada a uma tecnologia particular (da o nome essencial), o

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

que torna o conceito adequado para discutir requisitos. Um exemplo de caso de uso essencial para a transao de saque num caixa eletrnico ilustrado na figura 13 Realizar Saque
Inteno do usurio Identificar-se Acionar Operao de Saque Fornecer Valor para Sacar Responsabilidade do Sistema Verificar Identificao Fornecer Opes de Operao Verificar Opo Acionada Solicitar valor de saque Verificar se valor vlido Verificar se h saldo disponvel Processar saque da conta Disponibilizar cdulas e recibo Encerrar Operao

Retirar cdulas e recibo

Figura 13 Caso de Uso Essencial para Realizar Saque num caixa eletrnico. A coluna das intenes do usurio pode totalmente ser construda a partir de um modelo de tarefas. Note que estes seriam passos que poderamos sugerir a algum que precisasse realizar um saque e no soubesse como proceder. Neste nvel de descrio , no importam os detalhes operacionais que devero ser definidos durante o design (fornecer valor para sacar pode ser feita atravs de seleo em menus exibidos em uma tela, pressionando teclas especiais com quantias pr-determinadas, digitao em um campo, etc) mas sim que estas intenes do usurio implicam na definio de responsabilidades do sistema que deve dar suporte a estas tarefas. Logo, ajudam a definir requisitos funcionais. Os requisitos no funcionais (incluindo os de usabilidade e interao) exigem uma definio mais sutil e podem ser estabelecidos tambm a partir das informaes coletadas na Anlise de Tarefas, mas no sero discutidos aqui. Mais informao sobre o uso de modelos de tarefas para definio de requisitos para sistemas interativos pode ser encontrada em [Johnson 1992, Wilson & Johnson 1996, SIGCHI Bulletin 1997, Constantine & Lockwood 1999]. Mais informaes sobre requisitos no funcionais encontram-se em [Cysneiros et al. 2001 , Mylopoulos et al. 1992, Chung et al 2000]. 6.2 Modelos de tarefa para design de interfaces WIMP Uma interface com usurio composta por dois componentes principais: o componente de apresentao que indica como a interface exibe informaes ao usurio e o componente de dilogo que descreve como podem ser ordenadas as aes que o usurio e o sistema executam. Alm da informao importante sobre os objetivos dos usurios fundamental para a determinao dos requisitos do sistema modelos de tarefa podem ser usados tambm no auxlio ao design de interfaces de sistemas interativos, em particular de interfaces de WIMP, tpicas de plataformas desktop como PC e Mac. Neste caso, o objetivo usar informaes presentes explicitamente nos modelos de tarefa ou derivveis a partir deles para identificar, selecionar ou gerar os componentes de apresentao e de dilogo mais adequados ao suporte das tarefas. O design da apresentao geralmente inclui 2 atividades, mesmo que nem sempre sejam executadas separadamente: a) definir quais os elementos (widgets) sero exibidos numa unidade de apresentao (janela, caixa de dilogo, etc ) a um determinado momento; e b) definir como estes elementos sero exibidos, ou seja, determinar os detalhes de apresentao (cor, formato, tamanho, realismo etc).No curso da interao do
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

usurio com o sistema, a apresentao muda para refletir as alteraes decorrentes das aes do usurio e/ou do sistema. A partir do modelo de tarefa , podemos decidir sobre quais elementos e informaes devem estar exibidos ao mesmo tempo. Como esta deciso depende do contexto de uso e dos usurios alvo, prefervel evitar o estabelecimento de regras ou mapeamentos rgidos entre o modelo de tarefa e o modelo de apresentao mas obviamente com base no modelo de tarefa pode-se restringir o nmero de alternativas adequadas. Ver mais detalhes sobre design de apresentao com base em modelos de tarefa em [Eisenstein & Rich 2002], [Bodart 1994], [Johnson et al. 1995] , [Paterno et al. 1998] e [Paterno 1999]. O modelo de dilogo depende diretamente da ordenao descrita no modelo de tarefa e das restries causais/temporais entre as subtarefas. Analisando o modelo de tarefa, pode-se decidir quais aes so possveis de serem realizadas num determinado instante e quais no so (o que implica talvez em habilitar/desabilitar seu acionamento), e em qual ordem o sistema permitir o encadeamento (sequencial, entrelaado, etc) da realizao de aes. Ver mais detalhes sobre design de dilogo com base em modelos de tarefa em [Paterno 1999], [Birnbaum et al 1998] ,[Vanderdonckt & Bodart 1993], [Wilson & Johnson 1996] e [Paterno 2001]. 6.3 Modelos de tarefa para design de interfaces Web Embora o uso de MT para desenvolvimentode sistemas interativos no seja uma idia recente, o uso de MT para design de aplicaes web ainda uma questo aberta. De fato, tanto a prtica de design quanto os enfoques de Web Engineering no prevem a integrao de MT ao processo de design. J h alguma preocupao com a usabilidade ou com a concepo da interao dos websites mas raros so os trabalhos que afirmam explicitamente usar MTs para isto e mais raros os que indicam como o fazem. O obstculo principal provavelmente o grande nmero de usurios potenciais e a consequente grande diversidade de modos de usar e interagir com a aplicao web. Isto torna muito complexo determinar o conjunto de tarefas a considerar para o design. De maneira simplificada, as tarefas dos usurios de aplicaes web pertencem a 2 categorias principais: tarefas de alto nvel e tarefas primitivas. Tarefas de alto nvel geralmente so muito prximas aos objetivos do usurio e podem ser realizadas de vrias formas. Este tipo de tarefa habilita os designers a entender os aspectos fundamentais da atividade do usurio (como os objetivos, seus subobjetivos e o ordenamento dos procedimentos para alcan-los) e so usualmente independentes da forma de realizao. Tarefas primitivas correspondem a uma atividade do usurio com o sistema. Estas tarefas so genricas e podem ser encontradas na maior parte das aplicaes web. Um conjunto inicial de tarefas primitivas a taxonomia (taskonomy4) proposta por [Byrne et al. 1999], que inclui as seguintes categorias: usar informao de uma pgina, localizar algo na pgina, ir para um pgina, fornecer informao, configurar navegador e reagir ao ambiente. Vrios enfoques baseados em modelos (model-based) para sistemas interativos tm sido propostos nos ltimos anos mas o uso de modelos de tarefa para aplicaes web ainda incipiente [Szwillus & Bomsdorf 2002, Bomsdorf & Szwillus 2003, Szwillus & Bomsdorf 2003]. Grande parte dos modelos para descrever interfaces web investigados e propostos na rea de Web Engineering concentram-se basicamente na perspectiva
4

O trocadilho do ttulo do artigo timo: taskonomy = taxonomy of tasks, uma taxonomia de tarefas.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

orientada a sistema da aplicao e no contemplam o uso de modelos de tarefa. De fato, atividades do usurio (user activities) so mais exploradas que modelos de tarefas [Newman & Landay 2000] e design centrado no usurio (UCD User Centered Design) ainda uma noo pouco usada para Web design, embora haja excees [De Troyer & Leune 1998]. 6.4 Modelos de tarefa para avaliao de interfaces Um MT pode ser usado de vrias formas em avaliao de interfaces, entre as quais [Paterno 2001]: predizer (ou medir) o desempenho do usurio na realizao de tarefas (como em KLM); O leitor interessado pode achar um bom exemplo de como realizar esta avaliao preditiva quantitativa no captulo 14 de [Preece 2002]. fornecer um modelo de referncia para avaliao atravs de cognitive walkthrough ou da anlise do log de interaes do usurio; No primeiro, os avaliadores devem identificar uma seqncia de tarefas a executar e para cada uma delas devem tentar responder algumas questes - ver excelente descrio do cognitive walkthrough no captulo 13 de [Preece 2002]. No segundo, pode-se analisar desvios na realizao da tarefa com respeito ao inicialmente planejado pelos designers; montar cenrios ou conjuntos de amostras representativas de tarefas para realizao de avaliaes realizadas por usurios (testes com usurios como os ensaios de interao p.ex.) ou por especialistas (avaliao heurstica); H alguns trabalhos tambm relatando o uso de MT para avaliao de interfaces Web [Winckler et al 2002] e para avaliao automtica de interfaces, tais como no projeto TRIDENT [Bodart et al 1995] e em [Lecerof & Paterno 1998]. No entanto, um consenso que h limites sobre o que pode de fato ser avaliado automaticamente [Farenc et al 1996].

7. Consideraes Finais
Neste tutorial destacamos alguns tpicos de AT e MT que consideramos merecer ateno. Modelos de tarefa devem a nosso ver fazer parte da teoria e da prtica de design de sistemas interativos. Apresentamos alguns conceitos introdutrios, e fundamentos de tcnicas para realizar AT e de alguns modelos existentes para representar tarefas. Os possveis usos de MT foram tambm preliminarmente discutidos. Nossa nfase aqui nos fundamentos de CTT e no CTTE permite sua adoo imediata. Evidentemente h muito material disponvel na literatura e na Internet. A lista de bibliografia aponta apenas alguns que julgamos importantes. Nossa inteno era dar uma viso panormica sobre o assunto mais do que ter a pretenso de ser exaustivo. Mesmo assim, os autores esperam que este tutorial desperte a curiosidade e estimule mais e mais pessoas a conhecerem e colocarem em prtica estas idias.

Bibliografia
[Balbo et al. 2004 ] Sandrine Balbo, Nadine Ozkan & Cecile Paris. Choosing the right task modelling notation: A Taxonomy. In: Diaper, D. and Stanton, N. (Eds.), The Handbook of Task Analysis for Human-Computer Interaction, Lawrence Erlbaum Associates, Mahwah, 2004.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Bastide & Palanque 1999] Bastide, R., Palanque, P., A Visual and Formal Glue between Application and Interaction, International Journal of Visual Language and Computing, Academic Press, V.10, N. 6, 1999. [Baumeister et al. 2000] Baumeister L., John B., Byrne M., A Comparison of Tools for Building GOMS Models, Proceedings CHI2000, pp.502-509, ACM Press, 2000. [Benyon 92] Benyon, D. Task Analysis and System Design: the Discipline of Data. Interacting with Computers, 4(2), 246-59, 1992. [Benyon 96] Benyon, D.; Palanque, P. Critical Issues in User Interface System Engineering.(s,l):springer Verlag, 1996. 294p. [Birnbaum et al. 1998] Birnbaum, L., Bareiss, R., Hinrichs, T., Johnson, C.: Interface Design Based on Standardized Task Models. In: Proc. of ACM Int. Conf. on Intelligent User Interfaces IUI98 (San Francisco, January 1998). ACM Press, New York (1998) 6572 [Bodart 94] Bodart, F. et alli. A Model-Based Approach to Presentation: A Continuum from task Analysis to Prototype. Proc. of International Eurographics Workshop on Design, Specification and Verification of Interactive Systems, Bocca di Magra (La Spezia), 8-10 juin 1994. (Bodart et al 1995) F. Bodart, A.-M. Hennebert, J.-M. Leheureux, I. Provot, B. Sacr, J. Vanderdonckt, Towards a Systematic Building of Software Architectures: the TRIDENT methodological guide, in Proc. of 2nd Eurographics Workshop on Design, Specification, Verification of Interactive Systems DSV-IS'95 (Toulouse, 7-9 juin 1995), Ph. Palanque & R. Bastide (eds.), Springer-Verlag, Vienne, 1995, pp. 262278. [Bolognesi 87] Bolognesi, T. and Brinksma, E. Introduction to the ISO Especification Language LOTOS. Computer Networks ISDN Systems 14: 25-59. 1987. [Bomsdorf & Szwillus 2003] vBomsdorf, Birgit; Szwillus, Gerd: User-Centered Modeling of Interactive Web Sites, Poster: In: CD-ROM Proceedings of WWW 2003, Budapest, May 2003, 2003 [Booch et al 1999] Booch, G., Rumbaugh, J., Jacobson, I., Unified Modeling Language Reference Manual, Addison Wesley, 1999. [Breedvelt 97] Breedvelt, I., Patern, F. & Severiins, C., Reusable Structures in Task Models, Proceedings Design, Specification, Verification of Interactive Systems '97, Granada, June 1997, Springer Verlag, pp.251-265. the Navigational Structure of a User Interface, In Proceedings of INTERACT 2003, Sept. 2003, Zurich, IOS Press, pp.455-462. [Brun 95] Brun, P.; Beaudouin-Lafon, M. A taxonomy and evaluation of formalisms for the specification of interactive systems. HCI'95, 1995, Huddersfield (UK). People And Computers X Proc, Huddersfield (UK): Cambridge University Press, Aug. p.197-212. [Byrne et al 1999] Byrne, M.; John, B. E.; Wehrle, N. S.; Crow, D. C. The Tangled Web We Wove: A Taskonomy of WWW Use. Proc. of CHI99 15-20 May, 1999. P. 544- 551.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Card 83] Card, S.; Moran, T.; Newell, A. The Psychology of Human Computer Interaction, Lawrence Erlbaum Associates, 1983. [Chase 94] Chase, J.D. et al. Development and Evaluation of Taxonomical Model of Behavioral Representation Techniques. In: Human Factor in Computing Systems, (CHI94), 1994, Boston, Massachusetts USA. Anais... Boston, Massachusetts USA: Apr. P. 159-165. [Diaper 89] Diaper, D. (ed) Task Analysis for HCI, Ellis Worwood, Chichester, 1989. [Chung et al 2000] Chung L,Nixon B,Yu E,Mylopoulos J. Non-functional requirements in software engineering.Kluwer,Dordrecht,2000 [Constantine & Lockwood 1999] Constantine, L. L., and Lockwood, L. A. D. Software for Use: A Practical Guide to the Essential Models and Methods of Usage-Centered Design. Reading, MA: Addison-Wesley, 1999. [Cybis 1996] Ergonomia de Interfaces Homem-Computador , Apostila do Curso de Ps-Graduao em Engenharia de Produo da UFSC, 1996. Disponvel em http://www.labiutil.inf.ufsc.br/apostila.htm. [Cysneiros et al. 2001] Cysneiros, L.M., Leite, J.C.S.P., ., Neto, J.M.S. A Framework for Integrating Non-Functional Requirements into Conceptual Models. IN: Requirements Engineering Journal: Vol. 6, N. 2, Pags. 97 -115, (2001), SpringerVerlag London Limited . [De Troyer & Leune 1998] O.M.F. De Troyer, C.J. Leune WSDM: A User Centered Design Method for Web Sites. Proceedings of the 7th International World Wide Web Conference, Elsevier, pp. 85 - 94, 1998. [Diaper 89a] Diaper, D. Task analysis for human-computer interaction. Chichester, England: Ellis Horwood, 1989. [Diaper 89b] Diaper, D. Task Analysis for Knowledge Descriptions (TAKD): The method and examples. In D. Diaper (Ed.), Task analysis for human-computer interaction (pp. 108159). Chichester, England: Ellis Horwood. [Diaper 2001] Diaper, D. Task Analysis for Knowledge Descriptions (TAKD): a Requiem for a method. Behaviour and Information Technology 20(3), 199-212, 2001. [Diaper 2002] Diaper, D. Scenarios and Task Analysis, Interacting with Computers, 14 (2002) 379-395. [Draper 85] Draper, S.W.; Norman, D. Software Engineering for User Interfaces IEEE Transactions on Software Engineering, SE-11, 252-58, 1985. [Eisenstein & Rich 2002] Eisenstein, J. & Rich, C. Agents and GUIS from Task Models, Proc. of Inteligent User Interfaces IUI 2002, San Francisco, USA. [Farenc et al. 1996] Christelle FARENC, Vronique LIBERATI, Marie France BARTHET Automatic Ergonomic Evaluation : What are the Limits ? Proc. of CADUI'96 2nd International Workshop on Computer-Aided Design of User Interfaces - Namur, Belgique, 5-7 June 1996.

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Gray et al. 1992] Gray, W., John, B., Atwood, M., Project Ernestine: A Validation of GOMS for Prediction and Explanation of Real-World Task Performance, HumanComputer Interaction, 8, 3, pp. 207-209, 1992. [Greenberg 2004]. Working Through Task-Centered System Design. In: . In: Diaper, D. and Stanton, N. (Eds.), The Handbook of Task Analysis for Human-Computer Interaction, Lawrence Erlbaum Associates, Mahwah, 2004. [Hartson et al 90] Hartson, R. et alli The User Action Notation: A User-Oriented Representation for Direct Manipulation Interfaces, ACM Transactions on Information Systems, V. 8, N. 3, 1990, 181-203. [Jacobson et al 1992] Jacobson, I. et al. Object Oriented Software Engineering A UseCase Driven Approach, ACM Press, 1992. [John & Kieras 1996] John, B., Kieras, D., The GOMS Family of Analysis Techniques: Comparison and Contrast. ACM Transactions on Computer-Human Interaction, Vol.3, N.4, pp.320-351, 1996. [Johnson 88] Johnson, P.; Johnson, H.; Waddington, R. and Shouls,A. Task-Related Knowledge Structures: Analysis, Modelling and Application. In: D.M.Jones; R. Winder (eds.). People and Computers: From Research to Implementation, HCI88, Cambridge University Press, pp 137-55. [Johnson 91] Johnson, H.; Johnson, P. Task Knowledge Structure: Psychological basis and Integration into System Design. Acta Psychologica, 78, 1991, pp 3-26. [Johnson 92] Johnson, P. Human-Computer Interaction: Psychology, Task Analysis and Software Engineering, Mc-Graw Hill, Maidenhead, UK, 1992. [Johnson et al. 1995] Johnson, P., Johnson, H., Wilson, S.: Rapid Prototyping of User Interfaces Driven by Task Models. In: Carroll, J.M. (ed.). Scenario-based Design: Envisioning Work and Technology in System Development. John Wiley, New York (1995) 209246 [Kieras 1996] Kieras D.E., Guide to GOMS model usability evaluation using NGOMSL, in The Handbook of Human-Computer Interaction, 2nd edition, North Holland 1996. [Lecerof & Paterno 1998] Lecerof, A., Patern, F., Automatic Support for Usability Evaluation, IEEE Transactions on Software Engineering, October, pp. 863-888, IEEE Press, 1998. [Limbourg 2001] Limbourg, Q.; Pribeanu, C.; Vanderdonckt, J. Towards Uniformised Task Models in a Model Based Approach, in Proc. of 8th International Workshop on Design, Specification, Verification of Interactive Systems DSV-IS'2001 (Glasgow, 13-15 juin 2001), Ch. Johnson (eds.), Lecture Notes in Computer Science, Vol. 2220, Springer-Verlag, Berlin, 2001, pp. 164-182. [Moran 81] Moran, T. The Command Language Grammar : A Representation for the User Interface of Interactive Computer Systems, International Journal of ManMachine Studies, v. 15, pp. 3-50, 1981. [Mori 02] Mori, G., Patern, F. and Santoro, C. CTTE: Support for Developing and Analyzing Task Models for Interactive System Design. IEEE Transactions on Software Engineering: 797-813. 2002.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Mylopoulos et al 1992] Mylopoulos J,Chung L,Yu E,Nixon B. Representing and using non-functional requirements:a process-oriented approach. IEEE Trans Software Eng 1992;18(6):483 497 [Navarre et al. 2001] Navarre, D.; Palanque, P.; Bastide, R.; Patern, F.; Santoro, C. A tool suite for integrating task and system models through scenarios. IN: Proc. of 8th Eurographics workshop on Design, Specification and Verification of Interactive Systems, DSV-IS'2001, June 13-15, 2001, Glasgow, Scotland. [Newman & Landay 2000] Newman, M. W.; Landay, J. A. Sitemaps, storyboards, and specifications: a sketch of Web site design practice. Proceedings of DIS 2000, ACM Press New York, NY, USA. Pages: 263 274. [Palanque 95] Palanque, P.; Bastide, R.; SENGES, V. Task model system model: towards an unifying formalism. In: International CONFERENCE ON HUMANCOMPUTER INTERACTION, (HCI international 95). Japan. 1995. [Palanque & Paterno 1997] Philippe Palanque & Fabio Paterno(Eds.) Formal Methods in Human-Computer Interaction Springer Verlag 1997. ISBN 3-540-76158-6. 376 pages. [Paquette 2004] Paquette, D.; Schneider, K. A. Interaction templates for construct-ing user interfaces from task models. In Fourth International Conference on ComputerAided Design of User Interfaces (2004), pp. 223235. [Paterno 97] Paterno, Mancini, Meniconi. ConcurTaskTrees: a Diagrammatic Notations for Specifying Task Models, Proc. of INTERACT 97, pp 362-69, July 97, Sydney, Chapman&Hall. [Paterno et al. 1998] Patern, F., Breedvelt-Shouten, I.M., de Koning, N.M.: Deriving Presentations from Task Models. In: Proc. of IFIP Workshop on Engineering the Human-Computer Interaction EHCI98 (Creete, September 1998). Kluwer Academics Publisher, Dordrecht (1998) [Paterno 1999] Model-Based Design and Evaluation of Interactive Application. Springer Verlag, Berlin, 1999. [Patern 2001] Patern, F. Task models in interactive software systems. In Handbook of Software Engineering and Knowledge Engineering, S. K. Chang, Ed. World Scientific Publishing Co., 2001. [Payne 86] Payne, S.J.; Green, T.R. Task Action Grammar: a Model of the Mental Representation of Task Languages, Human-Computer Interaction, 2, pp 93-133, 1986. [Preece 02] Preece, J., Rogers, Y. & Sharp, H. (2002) Interaction Design: Beyond Human-Computer Interaction. New York, NY: John Wiley & Sons. (519 pages). [Rodriguez & Scapin 1997] Rodriguez, F. G. and Scapin, D. L. Editing MAD* task descriptions for specifying user interfaces, at both semantic and presentation levels. In Proceedings of theEurographics Workshop (DSV-IS'97): Design, Specification, and Verification of Interactive Systems '97. Granada, Spain. M. D. Harrison, J. C. Torres (Ed). Springer-Verlag/Wien. 193:208. [Scapin 89] Scapin, D.; Pierret-Golbreich, C. Towards a Method for Task Description: MAD. In: Work With Display Units'89, Amsterdam, Elseiver, 1989.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Scapin & Bastien 2001] Scapin, D. and Bastien, C. (2001) Analyse des tches et aide ergonomique laconception: l'approche MAD*. In Interactions Homme-Machine pour les Systmesd'Information, Tome 1: Analyse et conception de l'IHM. C. Kolski (ed.). Herms. [Sebillote 95] Sebillotte, S. Methodology guide to task analysis with the goal of extractingrelevant characteristics for interfaces. Technical report for Esprit project P6593. INRIA,Rocquencourt (France), 1995. [Shneiderman 98] Shneiderman, B. Designing the User Interface:Strategies for Effective Human-Computer Interaction. ed.3. USA:ADDISON-WESLEY, 1998. 639p. [SIGCHI Bulletin 1997] Human Computer Interaction and Requirements Engineering: Papers from an Interdisciplinary Workshop, ACM SIGCHI Bulletin, V. 29, N. 1, January 1997. [Siochi 91] Siochi, A. ; Hix, D. ; Hartson, H. R. The UAN: a Notation to Support UserCentered Design of direct Manipulation Interface. In: John Karat (Ed). Taking Software Design Seriously. New York: ACADEMIC PRESS, 1991. Cap. 9, p. 157194. [Storrs 95] Storrs, G. The Notion of Task un Human-Computer Interaction. In: Proc. of HCI 95- 10th Annual conference of the British Human-Computer interaction Group, University of Huddersfield, UK, August-september 1995. [Szwillus & Bomsdorf 2002] Szwillus, Gerd; Bomsdorf, Birgit: Models for TaskObject-Based Web Site Management, Paper. In: Proceedings of DSV-IS 2002, Rostock, Juni 2002, 2002 [Szwillus & Bomsdorf 2003] Szwillus, Gerd; Bomsdorf, Birgit: Task-Object Models for the Development of Interactive Web Sites, Proceedings of HCI International, June 2003, 2003 [Tauber 90] Tauber, M., ETAG: Extended Task Action GrammarA language for the Description of the Users Task Language, Proceedings INTERACT90, pp.163-174, Elsevier, 1990. [van der Veer 96] van der Veer, G., Lenting, B., Bergevoet, B., GTA: Groupware Task AnalysisModelling Complexity, Acta Psychologica, 91, pp. 297-322, 1996. [Vanderdonckt & Bodart 1993] Vanderdonckt, J., Bodart, F.: Encapsulating Knowledge for Intelligent Interaction Objects Selection. In: Proc. of ACM Conf. on Human Aspects in Computing Systems InterCHI93 (Amsterdam, 24-29 April 1993). ACM Press, New York (1993) 424429. [Walsh 89] Walsh, P. Analysis for Task Object Modelling (ATOM). .In: Diaper, D. (ed.) Task-Analysis for Human-Computer Interaction, Ellis Horwood, 1989. [Welie 98] van Welie M., van der Veer G.C., Elins A., An Ontology for Task World Models, Proceedings DSV-IS98, pp.57-70, Springer Verlag, 1998. [Wilson & Johnson 1996] Wilson, S., & Johnson, P. (1996). Bridging the generation gap: From work tasks to user interface designs. In: J. Vanderdonckt (Ed.), Computeraided design of user interfaces (pp. 7794). Namur, Belgium: Presses Universitaires de Namur.
IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.

Anlise e Modelagem de Tarefas

[Winckler et al. 2002] Winckler Marco, Palanque Philippe, Farenc Christelle, Pimenta Marcelo. Task-Based Assessment of Web Navigation Design. Proc. of TAMODIA'02 Task Models and Diagrams for User Interface Design 2002, Bucharest, Romania [UsabGlossary] Usability First: Usability Glossary http://www.usabilityfirst.com/glossary/index_terms.txl (Acesso 06/08/2004) .

IHC2004 Tutorial, Curitiba, PR. 17-20 Outubro de 2004.