Escrevendo Estórias do Usuário Eficazes

30,142 views
29,919 views

Published on

Este tutorial demonstra como "escrever as estórias do usuário de forma eficaz."
É também apresentado as principais técnicas, boas práticas e ferramentas para escrita de estória do usuário.

Published in: Technology
11 Comments
73 Likes
Statistics
Notes
No Downloads
Views
Total views
30,142
On SlideShare
0
From Embeds
0
Number of Embeds
173
Actions
Shares
0
Downloads
657
Comments
11
Likes
73
Embeds 0
No embeds

No notes for slide

Escrevendo Estórias do Usuário Eficazes

  1. 1. Escrevendo Estórias doEscrevendo Estórias do Usuário Eficazes Usuário Eficazes www.etcnologia.com.br Rildo F Santos rildo.santos@etecnologia.com.br (11) 99123-5358 @rildosan (11) 99962-4260 http://rildosan.com/Versão 5 Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010
  2. 2. Escrevendo Estórias do Usuário Eficazes Programa: “Menos Papel, Mais Árvores ®” Qual é o mundo que queremos ? O primeiro passo para criar um mundo melhor, é saber qual tipo de mundo que queremos ter e qual tipo que deixaremos de herança para as próximas gerações. Nossa missão: É buscar pelo equilibro: do homem, tecnologia e meio ambiente, isto é o que queremos. Para cumprir esta missão é necessário; conscientizar, comprometer e AGIR. O programa Menos Papel, Mais Árvores®, é uma ação, com objetivo de estimular o consumo sustentável de papel dentro das organizações. Quer participar ? - Reduza o uso de papel (e de madeira) o máximo possível. - Só imprima se for extremamente necessário. - Evite comprar produtos com excesso de embalagem. - Ao imprimir ou escrever, utilize os dois lados do papel. - Use papel reciclado. Este material não deve ser impresso.. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 2
  3. 3. Facilitador: Rildo F. Santos (@rildosan) Coach, Consultor, Instrutor e Palestrante de Negócio, Processos, Inovação, Sustentabilidade e Tecnologia. Minha Experiência:Escrevendo Estórias do Usuário Eficazes Tenho mais de 10.000 horas de experiência em Gestão de Negócios, Gestão de Inovação, Governança e Engenharia de Software. Formado em Administração de Empresas, Pós-Graduado em Didática do Ensino Superior e Mestre em Engenharia de Software pela Universidade Macaense. Fui instrutor de Tecnologia de Orientação a Objetos, IML e Linguagem Java na Sun Necrosastes e na IBM. Conheço Métodos Ágeis (SCRUM, Lean, FDD e XP), Arquitetura de Software, SOA (Arquitetura Orientado a Serviço), OpenUP, Processo Unificado, Business Intelligence, Gestão de Risco de TI entre outras tecnologias. Sou professor de curso de MBA da Fiap e fui professor de pós-graduação da Fasp e IBTA. Possuo conhecimento de Gestão de Negócio (Inteligência de Negócio, Gestão por Processo, Inovação, Gestão de Projetos e GRC - Governance, Risk ando Compliance), SOX, Basel II e PCI; E experiência na implementação de Governança de TI e Gerenciamento de Serviços de TI. Conhecimento dos principais frameworks e padrões: ITIL, Cobit, ISO 27001 e ISO 15999; Desempenhei diversos papéis como: Estrategista de Negócio, Gerente de Negócio, Gerente de Projeto, Arquiteto de Software, Projetista de Software e Analista de Sistema em diversos segmentos: Financeiro, Telecomunicações, Seguro, Saúde, Comunicação, Segurança Pública, Fazenda, Tecnologia, Varejo, Distribuição, Energia e Petróleo e Gás. Possuo as certificações: CSM - Certified SCRUM Master, CSPO - Certified SCRUM Product Owner , SUN Java Certified Instrutor, ITIL Foundation e sou Instrutor Oficial de Cobit Foundation e Cobit Games; Sou membro do IIBA-International Institute of Business Analysis (Canada) Onde me encontrar: Twitter: @rildosan Blog: http://rildosan.blogspot.com/ Comunidade: http://etecnologia.ning.com Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 3
  4. 4. Escrevendo Estórias do Usuário Eficazes O Conteúdo: 1 – Problemas de Comunicação 2 – Estória do Usuário 3 – Boas Práticas 4 – Ferramentas e técnicas Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 4
  5. 5. Escrevendo Estórias do Usuário Eficazes Comentário inicial: Objetivo: Esta apresentação tem como objetivo discutir sobre a Estória do Usuário e suas técnicas para que elas se tornem eficazes. A estória do usuário é forma de facilitar a comunicação e entendimento entre o cliente de negócio (PO) e a equipe Scrum (Desenvolvedores). Uma estória do usuário eficaz é aquela que ajuda no entendimento daquilo que deve ser feito. Pré-requisito: A ênfase deste curso é para SCRUM e XP. Logo , conhecer Scrum é um pre-requisito. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 5
  6. 6. Escrevendo Estórias do Usuário Eficazes Objetivo desta parte: 1 Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 6
  7. 7. Escrevendo Estórias do Usuário Eficazes Problemas de Comunicação Uma questão essencial nos projetos de desenvolvimento de software é a maneira pela qual os clientes dizem para os desenvolvedores o que eles esperam que seja feito. Cenas comuns: 1ª. Cena: O cliente não sabe exatamente o que ele quer. 2ª. Cena: Os desenvolvedores apresentam para o cliente o que fizeram e o cliente diz que não era bem aquilo o que ele queria. 3ª. Cena: Depois que o software é entregue, é comum que o cliente tenha novas ideias de coisas a serem feitas ou alteradas. Se você já participou em uma destas cenas...com certeza, isto é decorrente de problemas de comunicação e falta de entendimento... Para evitar essas situações, muitas pessoas fazem especificações de requisitos de software antes de se começar o desenvolvimento. Nesses casos, a especificação deve ter todos os detalhes que os desenvolvedores precisam saber antes de começarem a trabalhar. Contudo, a especificação de requisitos de software, não é garantia de sucesso, pois, geralmente os requisitos especificados sofrem mudanças e é muito difícil e dispendioso colocar todas as características de um software no papel com clareza e exatidão. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 7
  8. 8. Problemas de Comunicação Falhas na comunicação são uma eterna fonte de problemasEscrevendo Estórias do Usuário Eficazes Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 8
  9. 9. Problemas de Comunicação Requisitos são responsáveis por 37% das falhas dos projetos de desenvolvimento de software:Escrevendo Estórias do Usuário Eficazes Informação errada 13% Requisitos incompletos 12% Outros 50% Mudança de Requisitos 12% Falta de conhecimento técnico Falta de 7% 37% das falhas estão competência relacionadas com requisitos Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 9
  10. 10. Introdução: Problemas de Comunicação Cliente: Tem dificuldade para externar suas necessidadesEscrevendo Estórias do Usuário Eficazes Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 10
  11. 11. Cliente x Desenvolvedores: Clientes: - Alguns clientes têm dificuldades em externarEscrevendo Estórias do Usuário Eficazes suas necessidades ou desejos de forma clara e objetiva (Não sabem o que querem) - Geralmente fazem mudanças de requisitos durante o desenvolvimento ou quando o software é entregue. - Sempre precisam do software funcionando para ontem - Não têm tempo e nem paciência para falar com os desenvolvedores. Desenvolvedores: - Não sabem ou não querem conversar com o cliente - Dificilmente conseguem atender o negócio e todas suas demandas - Têm dificuldade em se comunicar e entender os clientes Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 11
  12. 12. Como melhorar a comunicação ? Se levarmos em consideração somente o lado técnico, a linguagem será técnica, o que dificultará o entendimento de quem não é técnico.Escrevendo Estórias do Usuário Eficazes Se a linguagem é de negócio, na maioria das vezes o desenvolvedor tem dificuldades em entender o negócio e suas demandas. Qual é a solução ? O ideal é chegar em ponto de equilíbrio, definir uma linguagem comum, que facilite o entendimento e a comunicação entre o pessoal de negócio e os desenvolvedores. Boas Práticas de Comunicação: - Ter uma linguagem comum - Ter simplicidade - Ser objetiva - Usar diversas técnicas para melhorar a comunicação e o entendimento - Dar preferência a comunicação face-a-face (exemplos: XP exploram bastante isto) Objetivo da boa comunicação: Facilitar o entendimento Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 12
  13. 13. O que fazer ? Manifesto Ágil dá algumas dicas:Escrevendo Estórias do Usuário Eficazes Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 13
  14. 14. O que fazer ? Manifesto Ágil dá algumas dicas: Princípios por trás do Manifesto Ágil:Escrevendo Estórias do Usuário Eficazes A prioridade é satisfazer o cliente, entregando o mais rápido possível e de forma contínua, software que tenha valor; Requisitos mutantes são bem vindos, mesmo no final do desenvolvimento. Os processos ágeis podem ser usados a favor de mudanças que tragam vantagem competitiva para o cliente; É importante entregar software funcionando freqüentemente, mensalmente, quinzenalmente ou, se possível, toda semana; Clientes e desenvolvedores devem trabalhar juntos diariamente num projeto; Projetos devem ser feitos por indivíduos motivados. Os indivíduos precisam da confiança de que seu trabalho será realizado. Eles devem ter suas necessidades atendidas e trabalhar num ambiente adequado; Conversa face-a-face é SEMPRE a melhor forma de comunicação; Software funcionando é a primeira medida de progresso; O processo ágil torna o desenvolvimento sustentável. Patrocinadores, desenvolvedores e usuários devem manter a paz indefinidamente; Atenção constante à excelência técnica e bom design aumenta a agilidade; A chave é SIMPLICIDADE: a arte de minimizar a quantidade de trabalho desnecessário; As melhores arquiteturas, requisitos e design surgem de equipes auto-organizadas; Em intervalos regulares, a equipe reflete como se tornar mais eficiente. Então ajusta seu comportamento para atingir esse objetivo. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 14
  15. 15. Se trabalhamos com desenvolvimento Ágil: Logo temos:Escrevendo Estórias do Usuário Eficazes Colaboração com cliente: A estória do Usuário é escrita em colaboração entre os desenvolvedores e o cliente (PO). A prioridade é satisfazer o cliente, entregando o mais rápido possível e de forma contínua software que tenha valor: Para satisfazer o cliente é preciso entendê-lo. A estória ajuda a melhorar o entendimento da necessidade do cliente para que ocorra a entrega de valor. - Conversa face-a-face é SEMPRE a melhor forma de comunicação: A estória do usuário geralmente é feita na Reunião de Planejamento (Planning Meeting). Aqui entra a Estória do Usuário: Titulo: Pagamento com Cartão de Crédito Prioridade: Alta Como cliente de negócio eu gostaria de fazer pagamento com Cartão de Crédito para minha comodidade. Pontos: 5 A Estória de Usuário é uma “ferramenta” simples que pode ajudar. Uma Estória de Usuário nada mais é que um cartão com algumas frases, escrita pelo cliente e desenvolveres em linguagem comum, sobre algo que o software deve fazer. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 15
  16. 16. Escrevendo Estórias do Usuário Eficazes Objetivo desta parte: 2 Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 16
  17. 17. O que é Estória do Usuário ? É uma pequena descrição, que detalha um item do Product Backlog. Para que serve a Estória do Usuário ?Escrevendo Estórias do Usuário Eficazes Uma estória ajuda no entendimento do que deve ser feito, ela permite fazer a estimativa de velocidade da equipe e também é, utilizada como lembrete e para as atividades de planejamento. Geralmente a estimativa é feita em pontos (pontos de estória) ou dias ideais. (dias ideais). Como escrever uma Estória do Usuário ? Conversações sobre a estória, entre os usuários e desenvolvedores, de modo a detalhar o item do Product Backlog e esclarecer todas as dúvidas sobre do que deve ser feito. Boa Prática: - A Estória do Usuário deve prover o entendimento do que deve ser feito. - Deve facilitar a estimativa de velocidade da equipe. Diferenças entre a Estória do Usuários e Especificações de Requisitos Tradicionais: Um dos maiores mal-entendidos com as Estórias do Usuário é como elas diferem das especificações de requisitos tradicionais. A maior diferença está no nível de detalhe. Estória do Usuários só devem fornecer detalhes suficientes para “chegar” no entendimento do que deve ser feito e facilitar a estimativa de velocidade da equipe. Outra diferença fundamental entre as estórias e as especificações de requisitos é o foco. Quando escrevemos uma Estória o foco é nas necessidades do usuário, devemos evitar os detalhes técnicos, tais como descrição de tecnologia, desenho das interfaces do usuário, wireframes, modelo de dados, algoritmos e etc. Boa Prática: - Mantenha a Estória focada nas necessidades do usuário e nos benefícios. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 17
  18. 18. Diferença entre a do Estória do Usuário e Casos de Uso: Uma Estória do Usuário descreve um detalhamentoEscrevendo Estórias do Usuário Eficazes de alto nível de uma funcionalidade e/ou de um item do Product Backlog. E facilita na estimava da velocidade da esquie Fazer Reserva O Caso de Uso especificam a interação entre o Usuário e o Sistema. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 18
  19. 19. Um “modelo” para a escrita de Estórias do Usuário: Como <papel/função> eu quero <objetivo/meta> para que <alguma razão/benefício>Escrevendo Estórias do Usuário Eficazes Como cliente de negócio, eu quero sacar dinheiro em qualquer caixa eletrônico para que não tenha que ir na agência bancária. Como paciente, eu quero fazer agendar minha consulta médica pela web para que não tenha que usar o telefone. Boa Prática: - Cada Estória do Usuário deve ser um texto escrito com aproximadamente 3 sentenças Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 19
  20. 20. Framework SCRUM: O Framework SCRUM é composto por Regras, Equipe SCRUM e os Eventos de duração fixa (time- box), Artefatos e a Definição de Pronto.Escrevendo Estórias do Usuário Eficazes Na reunião de Planejamento da Sprint as Estórias do Usuário Planejamento Reunião Revisão diária Retrospectiva podem ser escritas e da Sprint da Sprint estimadas da Sprint 24 horas Visão Product Sprint Backlog Backlog Produto Sprint (2-4 Semanas) Legenda: Reuniões Artefatos Eventos (Reuniões) Papéis Artefatos  Planejamento da Release • Product Owner (PO)  Planejamento da Sprint • Product Backlog • ScrumMaster (SM)  Diária • Sprint Backlog • Equipe Scrum  Revisão da Sprint • Sprint Burndown  Retrospectiva da Sprint • Release Burndown Sprint Burndown Release Burndown Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 20
  21. 21. Escrevendo Estórias do Usuário Eficazes Os 3 “C”s de uma Estória do Usuário: Estória do Usuário são tradicionalmente escritas em um cartão. Cartão Cartão podem ter notas, estimativas, observações, comentários e etc Detalhes que podem surgir durante as conversas com PO (Product Conversa Owner) e/ou cliente. Testes de aceitação “confirmam” se a Estória do Usuário foi codificada Confirmação da forma correta. Testes de aceitação são tipo Caixa Preta. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 21
  22. 22. Cartão: As Estórias do Usuário devem ser escrita em cartão: CartãoEscrevendo Estórias do Usuário Eficazes Exemplos de Estórias do Usuário para site de um Hotel: Um modelo: Como <papel/função> eu quero <objetivo/meta> para que <alguma razão/benefício> Como cliente de negócio, eu quero fazer reserva de um apartamento Exemplo: de Cartão Como cliente de negócio, eu quero cancelar a reserva de um apartamento Como cliente de negócio, eu quero ver fotos dos apartamentos do hotel. Para escrever as Estórias do Usuário podemos comprar os cartões de papel ou utilizar um software. (O software somente recomendado quando parte da equipe está fisicamente em outro local). Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 22
  23. 23. Exemplos de Estórias do Usuário: Exemplos de Estórias do Usuário para site de uma empresa AéreaEscrevendo Estórias do Usuário Eficazes Como cliente de negócio, eu quero ver as promoções de passagens áreas Como cliente de negócio, eu quero comprar uma passagem área (TKT) Como cliente de negócio, eu quero pagar com meu cartão de crédito corporativo o valor das passagens áreas Como cliente de negócio, eu quero escolher o assento que melhor me convier. Como cliente de negócio, eu posso realizar pelo meu smartphone o check-in para otimizar meu embarque. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 23
  24. 24. Cartão: Exemplos de Estórias do Usuário para Portal de Educação: CartãoEscrevendo Estórias do Usuário Eficazes Boa Prática: - Use cartão padrão (9 x 15 cm) para escrever as Estórias do Usuário. Esta tamanho de cartão ajuda a manter a Estória pequena e objetiva. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 24
  25. 25. Conversa: No SCRUM as conversas geralmente acontecem na Reunião de Planejamento da Conversa Sprint (Planning Meeting) e também durante o desenvolvimento da Sprint.Escrevendo Estórias do Usuário Eficazes Mas, também elas durante os Workshop de Requisitos e de Escrita de Estória que são realizados antes das Reuniões de Planejamento. A conversa: O que você Como cliente, quer (necessita)? eu quero fazer o acompanhamento dos meus pedidos... PO (Product Owner) Equipe Cartão: Como cliente, eu quero fazer acompanhamento dos meus pedidos para que possa planejar o recebimento dos pedidos. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 25
  26. 26. Estilos para escrita das Estórias do Usuário: Estilo 1 Titulo: Pagamento com Cartão de Crédito Prioridade: 1-AltaEscrevendo Estórias do Usuário Eficazes Quem ? como um cliente O que ? preciso de uma interface de pagamento por cartão de crédito que seja intuitiva e fácil de usar. Por que ? Com objetivo de facilitar os pagamentos. Pontos: 8 Estilo 2 Titulo: Pagamento com Cartão de Crédito Prioridade: 1-Alta Por que ? Com objetivo de facilitar os pagamentos Quem ? Como um cliente O que ? Preciso de uma interface de pagamento por cartão de crédito que seja intuitiva e fácil de usar. Pontos: 8 Boa Prática: Definir um estilo ajuda na escrita das Estórias do Usuário Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 26
  27. 27. Confirmação Para confirmar se a Estória do Usuário foi bem implementa podemos definir Teste de Confirmação Aceitação.Escrevendo Estórias do Usuário Eficazes Testes de Aceitação: Toda estória deve ser associada a pelo menos um Teste de Aceitação, o ideal é ter um conjunto de testes. Estes testes definem as respostas que a funcionalidade deve fornecer de acordo com a utilização por parte do usuário. Estes testes se materializam na forma de “scripts” que indicam os resultados desejados (esperados) bem como os resultados indesejados e que não devem ser providos pelo sistema. Os Testes de Aceitação devem ser mais detalhados do que as estórias. Isto, por duas razões: A primeira e mais importante: Para validar se a Estória do Usuário foi corretamente implementada (codificada). E a segunda: Para prover o máximo de informações sobre a Estória. Boa Prática: Automatizar os Testes de Aceitação (sempre que possível). Na frente do cartão escreva a Estória do Usuário e no verso escreva os Testes de Aceitação. Frente Como cliente de negócio, eu quero fazer reserva de um apartamento Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 27
  28. 28. Confirmação Exemplo de Testes de Aceitação: ConfirmaçãoEscrevendo Estórias do Usuário Eficazes Verso Verificar se o status do apartamento, para o período da reserva, foi alterado para “R” (reservado). E verifique se o cliente foi notificado por e-mail da confirmação da reserva. Verificar se possível fazer reserva para um apartamento que esteja com o status de reservado. Boa Prática: - Escreva os Teste de Aceitação no verso do cartão. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 28
  29. 29. Um “template” (modelo) para Estória do Usuário: Frente Titulo: <escrever o titulo da estória> ou <ID da estória> Prioridade: <___>Escrevendo Estórias do Usuário Eficazes <Por que ?> <Quem ?> <O que ?> Obs: <escrever observações> Pontos: <__> Verso Testes de Aceitação <teste 1> <teste 2> <teste n> Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 29
  30. 30. Tema O que é Tema ? Um tema é um agrupamento de Estórias do Usuários relacionadas. Por exemplo, em Portal de umaEscrevendo Estórias do Usuário Eficazes Operadora de Plano de Saúde, pode haver temas em torno de Cliente, Rede Credenciada, Especialidade Médica, Agendamento de Consulta e Pagamentos e etc. Exemplo de Tema: Agrupamento de Estórias sobre o tema “Pagamento” Como cliente, eu quero consultar os pagamentos realizados no Portal da Operadora para que possa controlar as minhas contas. Como cliente de eu quero euimprimir a segunda via do boleto de me Como cliente, negócio, o quero escolher o assento que melhor pagamento pelo Portal da Operadora para que não tenha que ir a convier. Operadora. Como cliente, eu quero imprimir o relatório de comprovante de pagamentos pelo Portal da Operadora para que possa controlar as minhas contas. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 30
  31. 31. Épico: O que é Épico ? São Estórias do Usuários de grande porte, normalmente aquelas que são demasiado grandes paraEscrevendo Estórias do Usuário Eficazes implementar em uma única iteração e, portanto, elas precisam ser decompostas em Estórias do Usuário menores. Os épicos são difíceis de planejar e estimar. Exemplo de Épico: Esta Estória do Usuário é de grande demais, para ser Como tradutor eu quero fazer traduções utilizando uma ferramenta implementada em uma Sprint de que permita traduzir para 40 idiomas diferentes para facilitar o meu 30 dias. Neste caso ela deverá ser “quebrada” ou decomposta em trabalho. Estórias do Usuário menores. Depois da quebra ou da decomposição, as Estórias Como tradutor eu quero fazer traduções utilizando uma ferramenta ficaram menores e agora elas que permita traduzir para o espanhol para facilitar o meu trabalho. podem ser implementadas em uma Sprint. Como tradutor eu quero fazer traduções utilizando uma ferramenta que permita traduzir para o inglês para facilitar o meu trabalho. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 31
  32. 32. Estimar as “Estórias do Usuário”: Estimar é Difícil ? - Estimativa (mundo real) representa um valor aproximado.Escrevendo Estórias do Usuário Eficazes - Estimativa (em desenvolvimento de software) algumas pessoas acham que representa um valor exato. Contudo, devemos estimar as Estórias do Usuário para saber se elas “cabem” dentro de uma Sprint. Uma vez que os pontos são estimados eles ajudam a definir a velocidade da equipe, a partir deste parâmetro, podemos chegar a conclusão se estória cabe ou não dentro da Sprint. Se ela não couber a opção é quebrar esta estória em estórias menores. Exemplo de Estórias do Usuário: Titulo: Pagamento com Cartão de Crédito Prioridade: ? Quem ? como um cliente O que ? preciso de uma interface de pagamento por cartão de Pessoal, qual estimativa para crédito que seja intuitiva e fácil de usar. essa estória... Por que ? Com objetivo de facilitar os pagamentos. Pontos: ? Product Owner Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 32
  33. 33. Estimar as “Estórias do Usuário”: Quando trabalhamos com métodos ágeis temos pelo menos duas formas para estimar a velocidade da equipe: Ideal Days e Pontos de Estória. Recomendamos utilizar os Pontos de Estória.Escrevendo Estórias do Usuário Eficazes Ideal Days: Dias Ideais (Ideal Days) ◦ Mais fácil para iniciantes Baseado na duração de tarefas. ◦ Fácil de explicar - Dias ou horas é unidade bem definida, contudo o “tempo ideal” quase nunca é igual ao “tempo real”... - É mais fácil de estimar, mas pode ser tornar difícil de estimar se consideramos todas as interrupções e variações Pontos de Estória: Pontos de Estória (Story Points) ◦ Valores relativos Baseia-se no tamanho da estória influenciado pela: ◦ Mais abstrato - Nível de dificuldade, complexidade e experiência (é empírico); Foco nas funcionalidades; O importante são os valores relativos; Pontos são medidas sem unidade; Equipe diferentes podem ter pontos diferentes para a mesma estórias. Principais técnicas: ◦ Opinião de especialista; ◦ Analogia; ◦ Decomposição (Dividir para conquistar). Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 33
  34. 34. Estimar “Estórias do Usuário”: Estimativa* e o Planning Poker: Para fazer estimativa de velocidade da equipe ou de duração da Sprint, antes é preciso o escrever asEscrevendo Estórias do Usuário Eficazes estórias do usuário. O Planning Poker é uma “prática” que ajuda na estimativa de uma estória ou de uma tarefa e é baseada no consenso de toda a equipe. Geralmente o Planning Poker usa um conjunto de cartas com valores específicos que podem representar pontos relativos e é praticado como se fosse um jogo de cartas. Os pontos devem estar em uma escala não linear, por e exemplo a Fibonacci: (1,2,3,5,8,13,...) + 20, 40, 100 ou em outra escala Jogando o Planning Poker: Antes de começar o jogo é necessário definir um valor de referência. Por exemplo: Identificar a estória que pode ser atribuído a menor quantidade pontos, esta estória será utilizada como referência para pontuação das demais estórias. O PO apresenta uma estória e pede para os membros da equipe fazer a estimativa de velocidade... 1ª. Rodada Quando todas as cartas Nª. Rodada 8 5 8 8 estiverem lançadas, elas são viradas e caso não Pessoal, qual haja consenso nos estimativa para essa estória... pontos, as diferenças são discutidas de forma breve, e uma nova 8 8 8 rodada acontece até que 8 haja a convergência. Product Owner Equipe Equipe Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 34
  35. 35. Estimar as “Estórias do Usuário”: Exemplo: Se a Estória do Usuário tem 8 pontos e a equipe tem a velocidade de 2 pontos por dia, isto significa queEscrevendo Estórias do Usuário Eficazes a equipe precisará de 4 dias para implementar a estória. Exemplo de Estórias do Usuário: Prioridade: ? Titulo: Pagamento com Cartão de Crédito Quem ? como um cliente O que ? preciso de uma interface de pagamento por cartão de crédito que seja intuitiva e fácil de usar. Por que ? Com objetivo de facilitar os pagamentos. Pontos: 8 Importante: Para fazer a estimativa, você deve levar em consideração outros aspectos além da codificação da estória, como por exemplo: realização do teste unitários, preparação do ambiente de teste e outras coisas que são necessário e importantes (mesmo que de baixo valor para o negócio) para que você entregue o software funcionando. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 35
  36. 36. Escrevendo Estórias do Usuário Eficazes Objetivo desta parte 3 Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 36
  37. 37. Detalhando uma Estória do Usuário Onde estão os detalhes da Estória do Usuário ? Como já dizemos boa parte dos detalhes de uma Estória do Usuário estão presentes nos testes deEscrevendo Estórias do Usuário Eficazes aceitação. Mas, se não for suficiente para ter entendimento e fazer a estimativa ? Caso seja necessário, podemos decompor a estória do usuário principal em sub-estórias. Exemplo: Como um cliente especial, poderei fazer saques, mesmo que o saldo da conta esteja negativo Título: Cliente faz saque de dinheiro Como um cliente, eu gostaria de sacar dinheiro em um caixa eletrônico, para que eu não tenha que esperar numa fila de banco. Como um cliente comum, não poderei fazer saques se o saldo da conta estiver negativo. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 37
  38. 38. Priorização de Estórias do Usuário: As Estórias do Usuário devem herdar o nível de prioridade do Product Backlog (O PO é responsável por priorizar os itens do Product Backlog).Escrevendo Estórias do Usuário Eficazes Contudo, se uma Sprint tem duas estórias, qual estória será feita primeiro e qual será feita depois, eis a questão...??? Cabe ao PO e a equipe devem chegar a um acordo de qual estória será feito primeiro, algumas dicas são importantes: 1 - Identificar a estória de maior valor para o cliente (maior ROI). 2 - Identificar a estória com maior impacto no negócio (se ela não for feita na prioridade correta). 3 - Identificar a estória com maior o risco de não ser implementada Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 38
  39. 39. Papéis do Usuário: Fazer a boa definição dos papéis dos usuário, ajudam a melhorar a escrita da Estória do Usuário:Escrevendo Estórias do Usuário Eficazes Exemplo: Em um site de um hotel, temos pelo menos dois papéis distintos: - Visitante - Cliente Definição: Visitante : São pessoas que navegam pelo site mas não fazem nenhum reserva, não possuem um login e nem senha de acesso. Cliente: São pessoas que navegam pelo website e fazem reserva e possuem login de acesso. papel Como usuário, eu quero Como visitante , eu quero navegar pelo site para que navegar pelo site para que possa possa encontrar as promoções encontrar as promoções Evitar Usar (boa prática) Passos para criação da lista de usuários e papéis: identifique os principais identifique os papéis Organize, revise e usuários. 1 Técnica: Faça uma sessão de Brainstorming 2 desempenhados pelos principais usuários. 3 consolide a lista de usuários e de papéis Modelo: Como <papel/função>, eu quero <objetivo/meta> para que <alguma razão/benefício> Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 39
  40. 40. Personas Uma outra forma de trabalhar os usuário e os papéis, é o conceito de persona (personagem).Escrevendo Estórias do Usuário Eficazes Identificar os papéis e as funções de usuário é um grande passo, mas para algumas funções de usuário é mais importante, ir um passo além e criar um personagem para o papel. O personagem é uma representação imaginária de uma função de usuário. Criação de um personagem exige mais do que apenas adicionar um nome a uma função de usuário. O personagem exigirá uma descrição detalhada e que seja suficiente para que todos os membros equipe conheçam e entendam o personagem. Exemplos: João João é executivo que trabalho em empresa de consultoria tributária, ele viaja a trabalho. E se hospeda em hotel de padrão 5 estrelas. Geralmente ele faz seus pagamentos utilizando cartão corporativo. Neste exemplo João é um persona. Este é perfil do João. Maria é uma cliente preferencial. Ela visita o site pelo menos duas vezes por semana. Ela compra livros, DVDs e CDs. Ela faz o pagamento dos pedidos com cartão de débito. Neste exemplo Maria é uma persona. Este é perfil da Maria. Quando utilizamos o conceito de personagem as estórias do usuário se tornam muito mais expressivas. Depois de ter identificado as funções de usuário e, possivelmente, um personagem ou dois, podemos começar a “falar” em termos de papéis e personagens, em vez do genérico “cliente". Modelo: Como <perfil>, eu quero <objetivo/meta> para que <alguma razão/benefício> Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 40
  41. 41. Técnicas para coleta de informações Existem diversas técnicas que podem ser utilizadas para coletar informações para escrita das Estórias do Usuário.Escrevendo Estórias do Usuário Eficazes Principais técnicas: - Entrevistas com usuários. - Preenchimento de questionários. - Observação de campo. - Workshop de Escrita de Estórias do Usuário*. Entrevistas com usuários: Preenchimento de Questionários: Observação de Campo: Entrevista com os usuários Preenchimento de questionário é uma Observação permite capturar “como” geralmente é a técnica mais utilizada técnica eficiente para coleta de os usuários fazem suas atividades e para coleta de informações. informações, principalmente quando o tarefas. Dicas: número de usuários é muito grande. - Informe qual é objetivo da Dicas: entrevista e como a pessoa poderá Dicas: - Informe qual é objetivo da contribuir. - Faça um workshop para explicar o observação. - Escolher os entrevistados certos, qual é objetivo do questionário. - Escolher os observados certos, ou ou seja, aqueles que podem e - O questionário deve ser objetivo e de seja, aqueles que podem e querem querem dar informação. fácil preenchimento. dar informação. - Fazer mais que uma entrevista - Não faça um questionário muito - Observar pessoas diferentes para para o mesmo tema. A diversidade longo, pois, responde-lo pode ser obter a diversidade de visões. de visões podem ajudar no cansativo e desinteressante. - Respeitar a privacidade dos entendimento . - Estabeleça prazos para entrega do observados. - Respeitar horários. questionário. - Respeitar horários. - Escutar o entrevistado. - Ajude as pessoas com dúvidas sobre - Não fazer inferências. - Manter “o foco” da entrevista. as questões. - Seja discreto. Boa Prática: - Combine mais que uma técnica para obter as informações necessárias para escrever as Estórias do Usuário. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 41
  42. 42. Workshop de Escrita de Estória do Usuário Além de ser uma técnica para coleta de informação, o Workshop é uma ferramenta de prototipação. • Participantes: desenvolvedores, usuários, cliente (PO) e etcEscrevendo Estórias do Usuário Eficazes • Fazer uma sessão de “brainstorming” para geração de ideias e estórias. • Algumas estórias do usuário estarão prontas para implementar. • Outras serão “Épicos”. No futuro elas deveram ser decompostas. • Não existe a necessidade de priorização. O workshop dever seguir algumas regras: - O objetivo é a quantidade, ao invés de qualidade. Ou seja, aqui a ideia é identificar e escrever o máximo de Estórias do Usuário possíveis. -Foco no “alto nível de abstração”, ou seja, não perder tempo detalhando ou discutindo demais alguns assuntos. - Não julgar as ideias. A menos que seja algo fora do propósito, algumas Estórias do Usuário que pareçam inúteis, podem dar vazão a outras ideias. No final do workshop devemos ter uma visão mais clara do produto suas funcionalidades e será mais fácil identificar, escrever e refinar as estórias do usuário. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 42
  43. 43. INVEST, uma boa prática para escrita de Estórias do Usuário: Kelly Waters tem escrito há muito tempo sobre Estória do Usuário, introduzindo o conceito de INVEST como uma definição clara sobre como trabalhar com esta ferramenta.Escrevendo Estórias do Usuário Eficazes Segundo ele uma boa Estória do Usuário deve ter seis atributos: INVEST Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 43
  44. 44. Quebrando Estória do Usuário em Tarefas Devemos buscar meios para facilitar a estimativa de velocidade da equipe, quebrar a estória em tarefas pode fazer que todos os membros da equipe visualizem todas as tarefas que devem ser feitas paraEscrevendo Estórias do Usuário Eficazes implementar a Estória do Usuário. Estória do Usuário As estórias Titulo: “Consulta de Apartamentos” tem alto valor agregado ao negócio Como cliente de negócio, eu quero consultar os apartamentos pela web para facilitar a reserva Pontos: 8 Prioridade: Alta As tarefas Tarefas: tem baixo Fazer Executar Sprint Backlog interface testes valor agregado unitários do usuário ao negócio Fazer Consulta Criar Executar Componentes testes de Apartamentos de validação aceitação pela Web Integrar com Sistema de Reserva Boa Prática: - Quebre a estória do usuário em tarefas para facilitar a estimativa. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 44
  45. 45. Use INVEST para a Estórias e SMART para as Tarefas Use "INVEST" para escrever as Estórias do Usuário e "SMART" para escrever as Tarefas. As boas práticas recomendam que para escrever as estórias do usuário usar o "INVEST", isto éEscrevendo Estórias do Usuário Eficazes bastante difundido e praticado. Mas, qual é a boa prática para escrever as tarefas ? Recomendo usar o "SMART" para escrever as tarefas como uma boa prática. O que significa SMART* ? S - (Specific) Específico M - (Measurable) Mensurável A - (Achievable ) Realizáveis R - (Relevant) Relevante T - (Duração fixa) Time-boxed Vejamos como aplicar o SMART para escreve as tarefas: Específico: A tarefa deve ser específica o suficiente para que todos possam entende-la. Ela deve ser simples, objetiva e concisa. Isso ajuda as pessoas a compreender quais as tarefas devem ser adicionadas para completar estória do usuário. Mensurável: Saber medir as tarefas é fundamental, pois, precisamos saber quantas tarefas será possível fazer dentro da Sprint. Lembre-se de incluir também as tarefas técnicas, tais como teste de aceitação. Para mensurar as tarefas o ideal é conhecer a velocidade do time. Realizável: As tarefas podem ser feitas ? Existem algum débito técnico ou algo que cause algum impedimento na realização das tarefas ? A equipe deve identificar tudo aquilo que é necessário para realização da tarefa na reunião de planejamento da Sprint. * Existe uma grande quantidade de variações sobre o SMART., geralmente este acrônimo é usada para a definição de metas, ele também tem boas características para tarefas Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 45
  46. 46. Use INVEST para a Estórias e SMART para as Tarefas Recomendo usar o "SMART" para escrever as tarefas como uma boa prática.Escrevendo Estórias do Usuário Eficazes O que significa SMART* ? S - (Specific) Específico M - (Measurable) Mensurável A - (Achievable ) Realizáveis R - (Relevant) Relevante T - (Duração fixa) Time-boxed Relevante: Cada tarefa deve ser relevante contribuindo para a estória do usuário. Todas tarefas consideradas irrelevantes para entrega da estória deve ser eliminada ou guardadas para uma próxima iteração. Somente as tarefas relevantes devem fazer parte da Sprint. Time-Boxed: O Time-box (duração fixa) é um conceito aplicado a Sprint e não as tarefas. Contudo, as tarefas devem caber dentro da Sprint.O time deve fazer todas as tarefas do Sprint Backlog para que a meta da Sprint seja atingida, quando isto não acontece será necessário negociar com o PO ou as tarefas voltaram para Backlog. Boas Práticas: Ao trabalhar com as estórias de usuário (escreve-las e estima-las), o INVEST pode ajudar a lembrar das boas práticas para estória. Ao criar as tarefas (que são derivadas das estórias) , aplicando-se o SMART, que pode auxiliar na aplicação das boas práticas para definição das tarefas. * Existe uma grande quantdade de variações sobre o SMART., geralmente este acrônimo é usada para a definição de metas, ele também tem boas características para tarefas Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 46
  47. 47. Lista de Boas Práticas: Parte das boas práticas estão espalhadas na Lição 3. Apresentamos mais alguma dicas e boas práticas que devem ser utilizadas na escrita e a na estimativa das estórias:Escrevendo Estórias do Usuário Eficazes 1 - Escreva em Voz Ativa: Estória do usuário são mais fáceis de ler e compreender, quando escrita na voz ativa. Por exemplo, ao invés de dizer "Um currículo pode ser enviado por um candidato a emprego", diga: "Um candidato pode enviar um currículo.“ 2 - Responsabilidade da escrita das estórias: O ideal seria o cliente escrever as estórias. Mas, na maioria das vezes os membros da equipe (os desenvolvedores) acabam ajudando os clientes na escrita das estórias. Mas, a responsabilidade de escrever as estórias do usuário é do cliente e isto não pode ser delegado para os membros da equipe. 3 - Ao escrever as estórias do usuário use e abuse do INVEST. 4 - Lembre-se dos três Cs (Cartão, Conversa e Confirmação) 5 - Use o “Planning Poker” para ajudar na estimativa das estórias. 6 - Utilize diversas técnicas combinada para coletar informações. 7 - Sempre que possível utilize o conceito de persona (personagem). 8 - Nunca utilize linguagem ou jargões técnicos na escrita das estórias do usuário. 9 – Use de software: Somente opte por utilizar o software para “escrita” e a “estimativa” das estórias do usuário quando a equipe, parte da dela ou cliente estão à distância. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 47
  48. 48. Escrevendo Estórias do Usuário Eficazes Objetivo desta parte 4 Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 48
  49. 49. Ferramenta: Cartão A ferramenta indispensável: O Cartão para escrita das estórias do usuárioEscrevendo Estórias do Usuário Eficazes Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 49
  50. 50. Ferramenta: Planningpoker.com Planning Poker http://www.planningpoker.com/ é uma ferramentaEscrevendo Estórias do Usuário Eficazes que permite escrever e estimar as Estórias do Usuário para equipe distribuídas ou quando o cliente (PO) esteja a distância. É uma ferramenta web, de colaboração, que permite que as Estórias do Usuário sejam escritas e estimadas, por uma equipe distribuída ou quando o cliente estiver à distância. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 50
  51. 51. Ferramenta: Planningpoker.com O moderador http://www.planningpoker.com/ (pessoa que conduzirá o jogo –Escrevendo Estórias do Usuário Eficazes neste caso o PO). deverá fazer o login (informar nome do usuário e senha). Quem não tem usuário e senha, basta fazer o cadastro. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 51
  52. 52. Ferramenta: Planningpoker.com Após o login, se for http://www.planningpoker.com/ sua primeira vezEscrevendo Estórias do Usuário Eficazes será informado que o moderador não tem nenhum jogo criado. Para criar um novo jogo Clique no link “Create a new game” Caso contrário será exibido todos os jogos. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 52
  53. 53. Ferramenta: Planningpoker.com Para criar um novo http://www.planningpoker.com/ jogo, você deveráEscrevendo Estórias do Usuário Eficazes informar os dados. E depois clique no botão “Create Game” Você pode optar por fazer a importação das estórias Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 53
  54. 54. Ferramenta: Planningpoker.com Após a criação do http://www.planningpoker.com/ jogo, você deveráEscrevendo Estórias do Usuário Eficazes adicionar as estórias do usuário que fazem parte do jogo. Para adicionar as estórias do usuário basta preencher os campos e clicar no botão “Add story” Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 54
  55. 55. Ferramenta: Planningpoker.com Para adicionar http://www.planningpoker.com/ novos participantes (estamos “falando”Escrevendo Estórias do Usuário Eficazes de um jogo de Planning Poker – novos participantes devem ser os membros da equipe). Basta informar a URL aos demais participantes. Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 55
  56. 56. Ferramenta: Planningpoker.com Cada participante http://www.planningpoker.com/ deverá escolherEscrevendo Estórias do Usuário Eficazes uma carta e jogar. Importante: todos os participantes vão visualizar as cartas jogadas. Para que não haja influência entre os participantes é preciso sincronizar as jogadas, assim todos os participantes selecionaram a carta e jogarão simultaneamente Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 56
  57. 57. Ferramenta: Planningpoker.com Quando todos os http://www.planningpoker.com/ jogadoresEscrevendo Estórias do Usuário Eficazes apresentaram as cartas, o moderador (PO), poderá optar por aceitar os pontos para a estória (clicando no botão “Accept”) ou fazer um nova rodada (clicando no botão “again”). Para finalizar (após aceitar os pontos para a estória) clique no botão “Complete game” Versão 2 Dez 2012 | RFS rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos © 2006 e 2010 57

×