Conceitos:
A Engenharia de Usabilidade (também denominada Design Centrado no Usuário) trata da construção de sistemas melhores
através da compreensão de quem são os usuários e do envolvimento de usuários nos requisitos, no design de interface com
o usuário e nos esforços de teste. Os conceitos básicos estão descritos em Conceito:
Design Voltado ao Usuário, e devem ser lidos antes deste conceito. Esta página de conceito explica como o RUP
(Rational Unified Process) trata atualmente as técnicas de engenharia de usabilidade.
Funções
Vários papéis do RUP são responsáveis pelas questões de usabilidade. Analista de
Sistema eEspecificador de Requisitos devem ser qualificados em reunir e
analisar informações sobre usuários, suas tarefas e seus ambientes, e em capturar essas informações nos requisitos.
Este material é revisado pelo Revisor
de Requisitos. As funções Testador e Analista de
Teste são responsáveis principalmente pelos testes de usabilidade. O Designer da interface com o usuário é responsável pelo design e
"visual shaping" da interface com o usuário. O Implementador seleciona e/ou desenvolve componentes da interface com
o usuário para construir a interface funcional com o usuário.
O Coordenador de Projeto também tem uma função importante. Ele permite
que os usuários se envolvam no processo de desenvolvimento e garante que a organização de desenvolvimento tenha a
qualificação necessária para criar sistemas com usabilidade. Outras funções, como Gerente
de Implementação, Desenvolvedor de Curso e Escritor
Técnico também têm as responsabilidade de assegurar que o sistema implementado seja utilizável.
Disciplinas
As seções a seguir descrevem as disciplinas do RUP relacionadas às atividades e aos artefatos mais importantes para a
usabilidade.
Da perspectiva de usabilidade, a disciplina Requisitos tem como foco:
-
compreensão de quem são os usuários e suas necessidades
-
identificação dos casos de uso que mais beneficiam os usuários.
As atividades e os artefatos específicos são:
Atividade
|
Artefato
|
Conteúdo Relacionado à Usabilidade
|
Identificar Pedidos dos Investidores
|
Pedidos do Investidores
|
Essa atividade envolve a realização de entrevistas de usuários, questionários e workshops para
compreender melhor o usuário e o seu ambiente. Isso inclui:
O gabarito do Artefato: Pedidos dos Investidores captura um perfil detalhado de usuário, incluindo
formação educacional, conhecimentos de informática, experiência, ambiente existente, expectativas,
metas, etc. Também captura uma descrição dos problemas e das prioridades da perspectiva do usuário.
Os Pedidos dos Investidores são a matéria-prima da a partir da qual a Visão é compilada.
|
Desenvolver Visão
|
Visão
|
A seção Ambiente de Usuário do gabarito Visão descreve o ambiente de trabalho dos usuários ou o que
a ISO denomina Contexto do Ambiente [ISO
13407].
A seção Perfil do Usuário do gabarito Visão descreve o conhecimento do usuário, a formação técnica,
as responsabilidades, os critérios de êxito, os produtos liberados, etc. Isso é o que a ISO
denomina Contexto do Usuário [ISO
13407].
|
Localizar Agentes e Casos de Uso, Estruturar o Modelo de Caso de Uso, Detalhar um Caso de Uso
|
Modelo de Caso de Uso
|
O Modelo de Casos de Uso descreve as tarefas (casos de uso) que os usuários (Agentes humanos)
realizam. Ele captura semelhanças e relacionamentos entre Agentes, utilizando relacionamentos de generalização. Os Agentes são relacionados aos casos de uso. Isso
é semelhante ao "Modelo de Função" de Constantine [CON99]. Os casos de uso são estruturados e relacionados um a
outro e aos agentes por meio de relacionamentos deAssociação de comunicação, incluir, generalização, e extensão.
Os workshops são uma excelente forma de envolver o usuário. Consulte: Workshop de Casos de Uso
|
|
Agentes
|
As características dos atores humanos são captadas como atributos de Agentes. Isso inclui:
-
O escopo de responsabilidade do agente.
-
O ambiente físico no qual o agente utilizará o sistema.
-
O número de usuários representados por esse agente.
-
A freqüência com que o agente utilizará o sistema.
-
O nível de conhecimento que o agente tem sobre o domínio.
-
O nível de experiência em computação que o agente tem.
-
As características gerais dos atores como, por exemplo, o nível de conhecimento (formação
educacional), implicações sociais (idioma) e idade.
|
|
Casos de Uso
|
Estes podem incluir casos de uso essenciais, conforme descrito por Constantine [CON99] (consulte Conceito: Design Voltado ao Usuário para obter uma discussão dos
casos de uso essenciais). Requisitos específicos de usabilidade para um determinado caso de uso podem
ser capturados como "Requisitos Especiais" na especificação de caso de uso.
|
Detalhar os Requisitos de Software
|
Especificações Suplementares
|
As Especificações Suplementares captam requisitos não especificados nos casos de uso. Isso inclui
requisitos de disponibilidade e desempenho que podem estar diretamente ligados a usabilidade. Os
requisitos gerais de usabilidade aplicáveis a vários casos de uso são capturados aqui, juntamente com a
legislação e os padrões de usabilidade aplicáveis (consulte Conceito: Design Centrado no Usuário para obter detalhes sobre
legislação e padrões de usabilidade).
|
Gerenciar Dependências
|
Atributos de Requisitos
|
À medida que os requisitos de usabilidade e de casos de uso são "descobertos", deve ser observada sua
importância ou benefício. Isso requer consulta aos usuários e outros envolvidos. Outros atributos, como
a freqüência de execução de um caso de uso, podem ser captados nesse artefato.
|
Revisar os Requisitos
|
Controle de Mudanças
|
Um esforço de desenvolvimento centrado no usuário busca maximizar o envolvimento dos usuários em todas
as revisões de requisitos possíveis.
|
Capturar um Vocabulário Comum
|
Glossário
|
Capta a terminologia comum específica do domínio dos usuários para facilitar a comunicação e o
entendimento entre usuários e o restante da equipe de desenvolvimento.
|
Existem algumas outras técnicas que podem ser úteis para as atividades Requisitos acima.
-
Diagramação de Afinidades [HOL96, BEY98] é uma técnica em que cada informação reunida sobre os usuários e suas
tarefas é anotada em um pedaço de papel. Os usuários e analistas trabalharam em conjunto para agrupar as notas
relacionadas ao cluster em grupos conceituais ou "afinidades". Essa atividade ajuda a promover um entendimento
comum dos problemas, a importância relativa deles e seus relacionamentos.
-
Classificação de Cartões [CON99] é uma
atividade semelhante em que as informações dos cartões de índice são organizadas em grupos. Os cartões também
podem ser classificados por importância, freqüência, etc.
-
Modelagem Hierárquica de Tarefas [MAY99, CON99] analisa as tarefas atualmente executadas por usuários e as organiza em
uma hierarquia. A hierarquia deve refletir como os usuários compreendem atualmente a organização de suas
tarefas.
Várias outras atividades nesta disciplina têm como foco a forma e o design da interface com o usuário. São elas:
Atividade
|
Artefato
|
Conteúdo Relacionado à Usabilidade
|
Design da interface com o usuário
|
Esboço Seqüencial
Mapa de Navegação
|
Esta atividade cria o que é geralmente conhecido como Design Conceitual [FER01]. Essa é a abstração inicial da interface do usuário,
captando as principais janelas e caminhos de navegação apresentados ao usuário. Essa atividade
enfatiza os casos de uso que orientam o design da interface do usuário.
Mapas de Navegação, consulte [CON99], fornecem uma visão geral dos caminhos de navegação entre
os espaços de interação (telas, janelas e caixas de diálogo).
|
Protótipo da interface com o usuário
|
Protótipo da Interface com o Usuário
|
É possível criar três tipos básicos de protótipos:
Desenhos (em papel)
Bitmaps (ferramenta de desenho)
Executáveis (interativo)
Na maioria dos projetos, você deve usar os três protótipos, na ordem listada acima.
A principal finalidade de criar um protótipo da interface do usuário é poder expor e testar a
funcionalidade e a usabilidade do sistema antes de iniciar realmente o design e o desenvolvimento.
Dessa forma, é possível garantir que o sistema correto esteja sendo criado antes de desperdiçar
tempo e recursos no desenvolvimento.
|
As técnicas a seguir também podem ser úteis como parte do projeto da interface com o usuário:
-
A Classificação de Cartões [CON99],
descrita anteriormente, também é útil para projetar a interface com o usuário. Cada item ou conteúdo de menu é
representado por um cartão. Em seguida, os usuários organizam os cartões, agrupando-os logicamente.
Além das atividades descritas acima, as atividades de Análise e Design a seguir são complementares ao projeto da
interface com o usuário:
A implementação da interface com o usuário segue o Fluxo de trabalho de implementação geral. Observe que a
implementação da interface com o usuário é geralmente feita como parte da atividade de design.
Teste de Usabilidade, incluindoTeste de
Desempenho relacionados à usabilidade, devem ser iniciados quando houver modelos ou protótipo executáveis da
interface com o usuário. O teste deve incluir verificação de usabilidade e requisitos de desempenho capturados nas Especificações Suplementares ou como "Requisitos Especiais" no Caso de Uso.
Os usuários devem estar seriamente envolvidos naAtividade: Produto de Teste Beta, assim como final Teste de Usabilidade durante a Atividade:
Gerenciar Teste de Aceitação.
Atividade: Desenvolver Material de Suporte inclui o desenvolvimento
de material de treinamento e material de suporte ao sistema para assegurar que os usuários possam usar com êxito o
produto de software fornecido.
Gerenciamento de Projeto é a arte de equilibrar objetivos que
competem entre si, gerenciar riscos e superar restrições para liberar com êxito um produto que atenda às necessidades
dos clientes (que pagaram por ele) e dos usuários. De uma perspectiva de engenharia de usabilidade, a atividade mais
crítica é Tarefa: Definir Organização e Formação de Equipe do Projeto. Essa
atividade define a estrutura da organização, as interfaces externas, os papéis e as responsabilidades. Isso inclui a
definição do grau de envolvimento dos usuários no processo de desenvolvimento e determina se os desenvolvedores devem
ter experiência em métodos de engenharia de usabilidade.
A disciplina Ambiente inclui a definição do processo de desenvolvimento
a ser seguido por um projeto ou organização. A Tarefa: Desenvolver Caso de Desenvolvimento (Produto de Trabalho: Caso de Desenvolvimento) define quais técnicas
de engenharia de usabilidade serão aplicadas e como os diversos artefatos e atividades do RUP serão adaptados à
incorporação dessas técnicas.
Uma outra atividade importante é Tarefa: Desenvolver Diretrizes Específicas do Projeto que cria o Produto de Trabalho: Diretrizes do Projeto que inclui diretrizes da
interface com o usuário. Essas diretrizes ajudam a manter a consistência da interface do usuário, que pode ser uma
ajuda significativa para a usabilidade. Elas também capturam os princípios de usabilidade a serem seguidos, como
diretrizes para atalhos, recursos de "desfazer", saídas reconhecidas, interação sem modelos e assim por diante.
O ciclo de vida de software do RUP é dividido ao longo do tempo em quatro fases seqüenciais, cada uma concluída por um
marco principal; cada fase é basicamente um intervalo de tempo entre dois marcos principais. A cada final de fase, uma
avaliação é executada (Tarefa: Revisão de Marcos de Ciclo de Vida) para determinar se
os objetivos da fase foram alcançados. Uma avaliação satisfatória permite que o projeto passe para a próxima fase.
Dentro de cada fase podem existir diversas iterações. Uma iteração é um loop completo de desenvolvimento que resulta em
um release (interno ou externo) de um produto executável, um subconjunto do produto final em desenvolvimento, que
cresce por incrementos, a cada iteração, para se tornar o sistema final. A usabilidade se beneficia bastante dessa
abordagem iterativa. Ela permite que os usuários forneçam feedback antecipado sobre a usabilidade e evita um trabalho
que não atenda às necessidades do usuário.
O usuário deve estar envolvido em cada iteração, a fim de refinar requisitos, avaliar conceitos de design e
testar/avaliar a usabilidade de cada protótipo de prova de conceito e o sistema em desenvolvimento.
As seções a seguir descrevem os critérios de conclusão da fase relacionada à usabilidade e as principais atividades de
cada fase.
Dois objetivos principais da Fase de Iniciação são
Iniciação :
-
Estabelecer o escopo do software do projeto e as condições limite, incluindo uma visão operacional, critérios de
aceitação e o que deve ou não estar no produto.
-
Discriminar os casos de uso críticos do sistema, os principais cenários de operação e o que direcionará as
principais trocas de design.
Da perspectiva da engenharia de usabilidade, isso significa destacar as atividades relacionadas aos Requisitos e
Modelagem de Negócios (se desempenhado):
-
compreensão de quem são os usuários e suas necessidades
-
identificação dos casos de uso que mais beneficiam os usuários.
A fase de iniciação muitàs vezes também é o momento para explorar o design conceitual
e a criação de protótipo de "prova de conceito". Isso é verdadeiro quando os principais riscos do projeto estão
relacionados às questões de usabilidade e interface do usuário. Teste de
Usabilidade, incluindoTeste de
Desempenho relacionados à usabilidade, devem ser iniciados quando houver modelos ou protótipo executáveis da
interface com o usuário.
Como o RUP é um processo iterativo, os artefatos criados na Iniciação são revisitados e revisados com usuários a fim de
gerenciar o escopo e garantir que o sistema em desenvolvimento atenda às necessidades do usuário.
Em Elaboração, o foco está na Arquitetura
de Software - incluindo a arquitetura da interface com o usuário. A interface conceitual do usuário é definida, e
os elementos críticos e/ou de risco do design da interface do usuário são implementados. As atividades relacionadas à
arquitetura de software geralmente aplicam-se à interface com o usuário - há produtos prontos para uso que devem ser
avaliados, incluindo considerações de reutilização, seleção de mecanismos e padrões, etc.
Esta fase destaca as atividades de design da interface com o usuário e as atividades de suporte da disciplina Análise e
Design. Implementação e Teste também estão envolvidos, desde que a conclusão da Elaboração precise que um sistema
executável seja construído para que possa ser avaliado.
Teste de Usabilidade, eTeste de
Desempenho relacionado à usabilidade, deve focalizar qualquer requisitos de risco capturado nas Especificações Suplementares ou como "Requisitos Especiais" no Caso de Uso.
Em Construção, o foco está na implementação de casos de uso adicionais. Isso envolve
incluir na interface com o usuário, ao mesmo que se mantém fiel ao modelo conceitual da interface com o usuário e das
diretrizes da interface com o usuário capturadas nas Diretrizes Específicas do Projeto. Os Testes de Usabilidade continuam sendo muito importantes à medida que novos recursos
são incluídos.
A seleção da funcionalidade a ser colocada em cada iteração é baseada no valor para os usuários.
O foco na Fase de transição inicia o deslocamento para a disciplina Implementação. Em um esforço de desenvolvimento centrado no usuário,
você não deve esperar até a fase de Transição para envolver o usuário. Ele deve permanecer envolvido, principalmente
para fornecer feedback. Quando o usuário fica envolvido durante todo o desenvolvimento, o teste beta e de aceitação
formal geralmente é reduzido ou não existe. Assim, o feedback detalhado do usuário e a aprovação ocorrem durante o
esforço de desenvolvimento.
O desenvolvimento do material de treinamento e do material de suporte do sistema são finalizados na Transição, mas
devem ser iniciados nas fases iniciais, se possível, a fim de permitir o feedback do usuário.
Na Transição, existe um sistema de Trabalho que pode ser usado pelos usuários. É recomendável planejar pelo menos
algumas iterações durante a transição, para que problemas com a liberação inicial sejam corrigidos e para que o
feedback dos principais usuários seja incorporado.
|