Vous êtes sur la page 1sur 6

Elicitação de Requisitos e Design Participativo através de Protótipos de Baixa

Fidelidade – um Estudo de Caso


Carlos Rosemberg, Albert Schilling, Cristianne Bastos e Rodrigo Araripe

Instituto Atlântico

rosemberg@atlantico.com.br, albert@atlantico.com.br,
cris@atlantico.com.br, rodrigoararipe@atlantico.com.br

Resumo
O Atlântico é uma instituição de pesquisa e
Este trabalho relata a experiência do Atlântico com desenvolvimento localizada em Fortaleza, Ceará, fundada
prototipação em baixa fidelidade usada como base da em novembro de 2001 por iniciativa do Centro de
elicitação e validação de requisitos de software através Pesquisa e Desenvolvimento em Telecomunicações
de uma abordagem de design participativo. Sua utilização (CPqD).
em um projeto real é detalhada, a fim de mostrar as Com uma equipe de aproximadamente 150
peculiaridades de aplicação e os resultados para o colaboradores atuando em 22 projetos, o Atlântico
projeto. desenvolve soluções em diversas áreas, posicionando-se
como fonte inovadora de conhecimento e de geração de
1. Introdução resultados tecnológicos de alto valor agregado para seus
clientes. Faz parte do escopo de atuação do Atlântico o
A elicitação de requisitos é considerada uma das fases desenvolvimento de aplicações de software para sistemas
mais complexas da Engenharia de Software. Para a de suporte a negócios e operações, para engenharia,
obtenção de bons resultados nesta fase faz-se necessário o inteligência de negócios, para serviços voltados à Internet
uso de técnicas específicas de elicitação, a fim de e diversos outros setores de telecomunicações, de energia
minimizar as falhas na identificação e comunicação dos e do governo, abrangendo o mercado nacional e
requisitos e evitar divergências no entendimento da internacional.
solução a ser desenvolvida. Em fevereiro de 2006, o Atlântico obteve a
Uma das técnicas utilizadas é a prototipação, a qual certificação nível 3 de maturidade no modelo CMMi
consiste na criação de artefatos visuais que representam versão 1.1, abrangendo todos os processos da área de
ou simulam aspectos de um sistema antes deste ser desenvolvimento.
efetivamente desenvolvido. Apesar de ser uma técnica
antiga e bem difundida, não existem regras rígidas quanto 3. Elicitação de Requisitos
ao momento e forma ideais de aplicação, o que pode vir a
gerar dúvidas e torná-la subutilizada. A elicitação de requisitos é a fase, dentro do processo
Visando enriquecer o tema, o presente trabalho relata de Engenharia de Requisitos, que possui o desafio de
os resultados obtidos através do uso de prototipação em entender os desejos e necessidades do cliente, dentre
baixa fidelidade logo no início da fase de elicitação de outros itens (requisitos do domínio da aplicação e os
requisitos de um projeto em desenvolvimento no organizacionais, por exemplo). Segundo Kasse [12] a
Atlântico. elicitação vai além da coleta de requisitos, uma vez que
O estudo está subdividido em oito seções: na seção 2 é proativamente identifica requisitos adicionais não
feita uma breve descrição da instituição onde o explicitados pelos stakeholders.
experimento foi realizado, enquanto as seções 3, 4 e 5 A grande questão que envolve o processo de elicitação
apresentam as técnicas e conceitos abordados no de requisitos é a dificuldade de obtenção de uma visão
experimento. A sexta seção relata o estudo de caso, e na real do que deve ser o sistema. Sommerville [13] cita que
sétima seção são apresentados os principais resultados. a elicitação de requisitos é um processo difícil por várias
Por fim, a oitava seção descreve as considerações finais. razões, dentre elas:

2. Perfil do Atlântico
1. Os stakeholders não sabem exatamente o que simulação em vídeo de uma tarefa, uma maquete
querem, ou não sabem articular as idéias a serem tridimensional, de papel ou cartolina, ou um simples
passadas aos analistas; conjunto de telas vinculadas por hyperlinks [7].
Segundo Sommerville e Sawyer [8], um protótipo pode
2. Os stakeholders expressam os requisitos de
ser usado como meio de comunicação entre os diversos
acordo com seus níveis de conhecimento do
membros da equipe de desenvolvimento ou mesmo como
domínio da aplicação, que os analistas podem
meio de testar idéias. A experiência permitiu concluir que
ainda não possuir;
o sistema final será tanto melhor quanto mais iterativo for
3. Diferentes stakeholders possuem diferentes o processo de desenvolvimento do protótipo [7].
requisitos que expressam de maneira diferente; Os protótipos podem ser desenvolvidos usando
tecnologias que em nada se assemelham com as do
4. Os requisitos do sistema podem ser influenciados
sistema final [9] e elaborados recorrendo a diversas
por fatores políticos internos;
técnicas e materiais. Conseqüentemente, apresentam
5. Devido à dinamicidade da economia e dos diversos custos [7].
negócios, a volatilidade dos requisitos pode ser
alta. 4.1. Prototipação em Baixa Fidelidade

Protótipos podem ser gerados de acordo com as


Desta forma, várias técnicas de elicitação são
seguintes categorias [3]: protótipos em baixa fidelidade
utilizadas visando minimizar estes problemas, como
que focam na interação, em componentes de interface e na
sugere Kasse [12]: Diálogos; Cenários; Demonstração de
estrutura geral do sistema; protótipos em alta fidelidade
tecnologias; Modelos; Simulações; Protótipos;
que produzem uma imagem real do sistema; protótipos
Brainstorming; Observação de sistemas existentes e
executáveis que produzem o código em uma linguagem
Extrações de documentos.
de programação, focando em navegação, mas sem ainda
Este estudo mostra como uma dessas técnicas, no caso
levar em consideração as regras de negócio.
a prototipação, ajudou a resolver ou minimizar alguns dos
Cada categoria serve para um propósito específico:
problemas acima citados.
protótipos em baixa fidelidade são úteis para demonstrar
aos usuários quais atividades o sistema atende e as
4. Prototipação possibilidades de navegação no sistema, assim como para
proporcionar uma visão geral do sistema. Protótipos em
A literatura de IHC (Interação Humano Computador) alta fidelidade são úteis para demonstrar padrões e guias
prevê diversas abordagens que propõem atividades a de estilo. Protótipos executáveis são úteis para demonstrar
serem implantadas com o fim de projetar sistemas para navegação e testar o uso da interface.
atender aos objetivos do usuário, tais como: O foco deste trabalho está no uso dos protótipos de
• Engenharia de usabilidade, que propõe um processo baixa fidelidade para a elicitação de requisitos com o
de projeto de Interfaces de Usuário objetivando a cliente. Segundo Yvonne Rogers e suas colegas [7], eles
facilidade de aprendizado e de uso, garantindo que são úteis para a exploração e testes na fase inicial de
sejam agradáveis para as pessoas [1]. desenvolvimento do sistema. São protótipos simples,
baratos e de fácil produção e alteração, facilitando, deste
• Projeto centrado no usuário [4], no qual há a modo, a exploração e teste de idéias.
mudança de foco em tecnologia para o foco em
usuários [5], onde o envolvimento dos usuários está 5. Design Participativo
baseado em estudos sobre os mesmos, participação
durante o projeto e testes realizados. O Design Participativo (ou Participatory Design) é
uma abordagem do projeto de interfaces onde os usuários
• Projeto centrado no uso, que foca no trabalho que os são ativamente envolvidos no processo de
usuários tentam realizar e no que o sistema precisa desenvolvimento, tornando-se parceiros dos demais
suprir, para ajudá-los a alcançar seus objetivos [2]. membros da equipe de design [7].
Em abordagens mais tradicionais, o projeto é realizado
Apesar das diversas abordagens existentes para por uma equipe unidisciplinar, que geralmente possui uma
projetar sistemas, todos possuem um ponto em comum: a ótica limitada a um escopo definido. Já no projeto
utilização de protótipos durante algum momento do participativo, o qual envolve uma equipe multidisciplinar,
processo de desenvolvimento. onde questionamentos sob diferentes pontos de vista são
Um protótipo é uma representação limitada de um efetuados e competências de diferentes áreas se
design, a qual pode ser um esboço em papel de uma tela complementam [6].
ou conjunto de telas, uma “fotografia” eletrônica, uma
Essa colaboração é um grande desafio, visto que o fato
de envolver usuários em decisões de design é algo • Representante do cliente final, localizado na
bastante complexo [7]. Para que isso ocorra de forma unidade de negócio estrangeira e responsável por
efetiva, é importante o uso de técnicas que permitam a fornecer requisitos do sistema e aprovar artefatos.
comunicação efetiva entre os participantes, fazendo com Também estava definindo o processo interno que
que seus conhecimentos e experiências sejam realmente iria ser automatizado pelo sistema. Será também
aproveitados. No caso, a prototipação é a técnica mais um dos usuários finais do sistema.
adequada a essa situação, dada sua característica de
comunicação visual. • Líder de requisitos do cliente direto, localizado na
unidade brasileira e responsável por todos os
6. Estudo de Caso contatos com o representante do cliente final
(discussões, coletas, aprovações, etc.);
Esta seção faz o detalhamento do estudo de caso
analisado. O projeto encontra-se ainda em andamento e as • Especialista do cliente direto, responsável por
informações a seguir são relativas somente à fase de assessorar o líder de requisitos em questões
elicitação de requisitos. técnicas e de negócio;

6.1. Descrição do projeto • Analistas de Requisitos, responsáveis pela


elicitação de requisitos do lado do Atlântico,
O projeto em questão é um sistema de workflow de criação dos principais artefatos (documentação
pequeno porte, porém com alta complexidade, e que está dos requisitos, casos de uso, etc.) e por manter
sendo desenvolvido para uma empresa multinacional do contato com o líder de requisitos do cliente direto;
ramo de tecnologia. O usuário final do sistema pertence a
uma unidade de negócio estrangeira, que contratou a • Designer de interação, responsável pelo estudo da
unidade brasileira de pesquisa e desenvolvimento para experiência do usuário, prototipação, definição do
prover a solução. A unidade brasileira é o cliente direto padrão de interação do sistema e sua interface
do Atlântico. gráfica.

6.2. Desafios 6.4. Técnicas utilizadas

• O cliente direto (instalado no Brasil) não era o A seguir é descrito o que foi utilizado, em termos de
cliente final (matriz no exterior), o que gerava uma técnicas e ferramentas, para a elicitação dos requisitos do
maior complexidade na comunicação e nos projeto.
processos de coleta de informações e aprovações
de artefatos; Análise da experiência do usuário
Para este estudo foi utilizado o MEX (Modelo
• O modelo de processo de negócio estava sendo Genérico de Experiência do Usuário) [10]. Durante o
definido junto com os requisitos do sistema, o que processo, foram especificadas diretrizes que geraram
gerava um alto nível de retrabalho; requisitos de natureza funcional e não funcional.

• Devido a fatores de negócio, o prazo de entrega de Workshop de requisitos


uma versão inicial era muito curto, o que levou à Reunião presencial com o cliente direto (o cliente final
necessidade de adoção de métodos mais ágeis. não participou), com o objetivo de detalhar os requisitos
do núcleo do sistema. O desenvolvimento dos protótipos
• O sistema deveria substituir um conjunto de de baixa fidelidade teve início durante as sessões do
planilhas, cujo conteúdo a equipe de workshop.
desenvolvimento não tinha acesso devido ao alto
grau de segredo industrial. Isso foi um Prototipação em baixa fidelidade
complicador para o entendimento do sistema, uma Técnica de projeto de telas que, neste caso, foi
vez que os insumos não usavam dados reais. executada em conjunto entre o designer de interação, os
analistas de requisitos e líder de requisitos do cliente
6.3. Perfil da Equipe direto, com a finalidade de ilustrar o conteúdo discutido
no workshop.
A equipe de elicitação de requisitos do projeto foi
composta por:
Criação de Cenários de uso 6.5. Processo
Os cenários de uso foram escritos paralelamente ao
desenvolvimento dos protótipos, com o objetivo de Divisão de tarefas e dinâmica do processo
descrever os detalhes da interação e procedimentos Durante o workshop, enquanto o designer elaborava as
internos do sistema, sendo, portanto, insumos diretos para telas em tempo real no Microsoft Visio, o analista de
a posterior elaboração dos casos de uso. Para cada requisitos fazia os principais questionamentos, tomava
protótipo de tela desenvolvido foi criado um cenário de notas à parte e montava o cenário de uso da tela em
uso correspondente. questão. O líder de requisitos e o especialista do cliente
direto discutiam entre si algumas questões, tomavam
6.5. Ferramentas notas e forneciam insumos (documentos, informações
verbais, etc). As discussões englobavam questões que
Os protótipos foram elaborados utilizando o software variavam desde regras de negócio e funcionalidades
Microsoft Visio, juntamente com um conjunto de centrais do sistema a pontos ligados à usabilidade e
componentes visuais para prototipação de aplicações web disposição de elementos na tela.
(caixas de texto, botões, barras de rolagem, caixas de
seleção, rótulos, etc) desenvolvidos por Henrik Olsen [11] Prototipação feita pelos analistas e clientes
e disponibilizados gratuitamente em seu blog. O trabalho de elicitação continuou a acontecer mesmo
após o workshop realizado. Neste momento, os meios de
6.6. Infraestrutura comunicação utilizados no processo foram telefone e
email. Desta forma, os próprios analistas de requisitos
Durante o workshop realizado nas dependências do passaram a não mais depender do designer e a utilizar eles
cliente, foi utilizado um projetor ligado ao notebook próprios o Microsoft Visio para atualizar os protótipos
utilizado pelo designer, de modo que todos pudessem durante as discussões com o líder de requisitos do cliente
acompanhar e participar da elaboração das telas à medida direto. A partir de certo momento, tanto o líder de
que as discussões aconteciam. Eventualmente, o projetor requisitos do cliente direto quanto o representante do
era acoplado em notebooks de outros membros da equipe cliente final passaram também a modificar esses
quando se fazia necessário visualizar outros insumos protótipos (no formato Visio) para esclarecer dúvidas dos
(Figura 1). analistas e fazer sugestões e solicitações. Ou seja,
praticamente todos os membros da equipe, incluindo o
representante do cliente final, alteraram os protótipos.

6.7. Artefatos gerados

Os principais artefatos gerados na fase de prototipação


foram arquivos do Visio (.vsd), como mostrado na Figura
2, e os cenários de uso correspondentes (já abordados no
item 6.4).

A fim de se obter maior produtividade, alguns


princípios foram adotados para a confecção dos
protótipos:
FIGURA 1: Esquematização do ambiente do
workshop 1. Elaborar o protótipo de forma mais simples
possível, despriorizando o acabamento visual;
1. Projeção das telas em prototipação
2. Projetor 2. Prototipar apenas os elementos do fluxo em
3. Cliente (Líder de requisitos) discussão. Navegação global, cabeçalhos, rodapés,
4. Cliente (especialista no domínio da aplicação) etc, foram deixados para um protótipo específico
5. Designer de interação (Atlântico) para esse fim. Isso ajudou a manter o foco apenas
6. Analista de requisitos (Atlântico) na funcionalidade propriamente dita e eliminou
um custo a mais na manutenção dos arquivos (por
exemplo, caso um elemento global do cabeçalho
ou rodapé mudasse, seria necessário alterar vários
arquivos).
3. Criar um arquivo Visio para cada passo do fluxo construídos a partir destes. Além de ser um
(equivalente a um caso de uso) visando manter os protótipo mais caro, necessitaria passar por um
arquivos menores e mais fáceis de navegar, além ciclo de aprovação interno (analista - designer de
de permitir o trabalho em paralelo da equipe. interação). Com protótipos de baixa fidelidade na
elicitação de requisitos, as telas já saíram do
processo semi-aprovadas, uma vez que toda a
equipe (cliente, analistas, designer) participou de
sua elaboração;

4. Melhor integração IHC-Requisitos: A


participação do designer de interação na elicitação
de requisitos gerou uma grande sinergia entre as
disciplinas de Interação Homem Computador e
Análise de Requisitos, impactando positivamente
na qualidade da solução e na produtividade da
equipe.

5. Envolvimento da equipe: O nível de


envolvimento do cliente e demais membros da
equipe na elaboração dos protótipos (design
participativo) gerou um alto sentimento de
propriedade e comprometimento com a solução
que estava sendo planejada;

6. Resultados concretos já no início do processo:


O cliente dispôs de uma representação visual que
materializava a solução logo no início do
processo. Este fato aumentou sua confiança no
projeto e ajudou no gerenciamento de
expectativas.

7. Independência dos Analistas de Requisitos:


Essa abordagem possibilitou uma menor
FIGURA 2: Exemplo de protótipo dependência da equipe em relação ao designer
para elaboração de protótipos, uma vez que não
7. Resultados obtidos era necessária fidelidade visual e o software
utilizado era bem conhecido e de fácil utilização,
Ao ser comparada com outras abordagens comuns no voltado, inclusive, para quem não é designer. No
mercado, a utilização de protótipos de baixa fidelidade na entanto, o designer sempre se fez necessário nos
elicitação de requisitos trouxe vários benefícios ao momentos de soluções mais complexas e
projeto: definições iniciais de padrões de interação com o
usuário.
1. Potencialização de idéias: O uso de artefatos
visuais estimulou uma melhora substancial na 8. Considerações Finais
geração, comunicação e absorção de idéias entre o
cliente e a equipe. Existia pouca dissonância entre O estudo de caso realizado mostrou, através dos
o entendimento de cada um; resultados acima, o quanto a prototipação em baixa
fidelidade auxilia a elicitação de requisitos de forma
2. Antecipação de problemas: Houve antecipação simples e eficaz, gerando otimização de recursos e
de detalhes e problemas que só seriam percebidos aumentando a satisfação do cliente.
em fases vindouras, quando seria bem mais No entanto, para que isso ocorra, é necessário trazer a
custoso executar uma mudança; prototipação para o início do processo, no momento
inicial de coleta de informações e geração de idéias, e não
3. Maior agilidade no processo: Em outras apenas aplicá-la após a construção dos casos de uso
abordagens, protótipos de alta fidelidade eram (como acontece na maior parte dos casos).
usados para validar casos de uso, sendo
Também foi visto como essa técnica viabiliza o
envolvimento da equipe e do cliente em um processo de
design participativo, onde a criatividade das pessoas é
desafiada e o usuário final contribui mais ativamente para
a criação de uma solução efetiva, que não apenas atenda
às suas necessidades, mas proporcione uma experiência
de uso de maior qualidade.

9. Referências

[1] B. Maria Cecília, R., Heloisa Vieira da. Design e Avaliação


de Interfaces Humano-Computador, NIED – Núcleo de
Informática Aplicada à Educação, UNICAMP – Universidade
Estadual de Campinas, 2003.
[2] L. Constantine, L., Lockwood, Software for Use: A Practical
Guide to Models and Methods of Usage-Centered Design.
Addison-Wesley, Reading, 1999.
[3] A. Coyette, S. Faulkner, M. Kolp, Q. Limbourg, J.
Vanderdonckt, Sket-chiXML: Towards a Multi-Agent Design
Tool for Sketching User Interfaces Based on UsiXML, Proc. of
3rd Int. Workshop on Task Models and Diagrams for user
interface design TAMO-DIA’2004, ACM Press, New York,
2004.
[4] N. Clare-Marie, J. B. Karat, e K. John, Introduction and
Overview: A Guide to the Reader. In Designing Personalized
User Experiences in eCommerce, Publishers, 2004.
[5] D.A. Norman, S.W. Draper, User-Centered Design.
Hillsdale, N.J.: Lawrence Erlbaum, 1986.
[6] E. Furtado, F. Carvalho, A. Schilling, F. Fava, K. Sousa,
Projeto de Interfaces de Usuário para a Televisão Digital
Brasileira In: Simpósio Brasileiro de Computação Gráfica e
Processamento de Imagens, Natal, 2005.
[7] Y. Rogers, H. Sharp, J. Preece, Interaction Design - Beyond
human-computer interaction Wiley , 2002.
[8] I. Sommerville, e P. Sawyer,Requirements Engineering - A
good practice guide - Wiley 1997.
[9] K. Gerald e I. Somerville, Requirements Engineering:
Processes and Techniques, Wiley, 1998.
[10] C. Rosemberg, MEX - Um Modelo Genérico para o
Estudo das Experiências dos Usuários com Produtos
Interativos. Science of Computing, v. 1, p. 21-28, 2007.
[11] H. Olsen, Visio - the interaction designer’s nail gun
(How to use Visio for rapid prototyping)
http://www.guuui.com/issues/02_03_02.php.
[12] T. Kasse, Practical insight into CMMI, Artech House
computing library, 2004.
[13] I. Sommerville, Engenharia de Software, Pearson
Addison Wesley, 2003

Vous aimerez peut-être aussi