Pular para conteúdo

1. Product Backlog Building (PBB) - TechFix

1.1. Sobre o Product Backlog Building:

O Product Backlog Building (PBB) é uma técnica colaborativa amplamente utilizada para estruturar e priorizar requisitos em projetos ágeis. Desenvolvido para facilitar a criação do backlog do produto, o PBB ajuda equipes a entenderem melhor as necessidades do cliente e a traduzi-las em funcionalidades claras e organizadas. Ele combina práticas de Design Thinking com os princípios do Agile, garantindo que todos os stakeholders, desde desenvolvedores até clientes, estejam alinhados em relação ao escopo do projeto. Essa técnica incentiva a colaboração e promove uma visão compartilhada, o que é essencial para evitar desperdícios e para garantir que os esforços da equipe sejam direcionados ao que realmente importa. Durante o processo de construção do backlog, o PBB visa responder perguntas-chave, como "o que precisamos construir?", "quem serão os usuários?" e "como eles se beneficiarão do produto?", tornando-o uma abordagem prática e centrada no valor entregue.

O PBB Canvas é uma ferramenta visual que organiza o processo do Product Backlog Building, facilitando o entendimento e a execução das etapas necessárias. Ele é dividido em seções que orientam a equipe no levantamento de informações essenciais para o produto. Geralmente, o canvas inclui blocos para mapear os objetivos de negócio, identificar as personas (os principais tipos de usuários do produto) e descrever as atividades que esses usuários realizarão. Essas atividades são detalhadas em tarefas que, por sua vez, formam a base do backlog do produto. A estrutura visual do PBB Canvas ajuda as equipes a priorizarem requisitos, identificarem dependências e a conectarem as metas de negócios diretamente às entregas do produto. Isso não apenas melhora a comunicação entre os membros da equipe, mas também proporciona maior transparência para todos os envolvidos no projeto, tornando o desenvolvimento mais eficiente e orientado a resultados.

1.2. PBB realizado para a TechFix:

O Canvas de Product Backlog Building da empresa "TechFix" foi realizada em equipe com o auxílio da plataforma Miro, por meio do template oficial projetado por Fábio Aguiar, criador do método PBB para desenvolvimento de soluções de software e definição do backlog de produtos.

O Canvas PBB pode ser acessado pelo link embutido abaixo:

1.3. Histórias de Usuários:

1.3.1. Persona Carlos (Técnico de Campo):

> FUNCIONALIDADE: Gerenciar Serviços Realizados

Código US Título do PBI História de Usuário
US01 Realizar a criação de um serviço Eu, como técnico de campo, posso realizar a criação de um serviço para que os serviços estejam documentados.
US02 Realizar a edição de um serviço Eu, como técnico de campo, posso realizar a edição de um serviço para que os serviços estejam documentados.
US03 Atualizar o status de um serviço Eu, como técnico de campo, posso atualizar o status de um serviço para que os serviços estejam documentados.
US04 Realizar a exclusão de um serviço Eu, como técnico de campo, posso realizar a exclusão de um serviço para que haja correções de serviços mal documentados.
US05 Realizar pesquisa no histórico de equipamentos Eu, como técnico de campo, posso realizar pesquisa no histórico de equipamentos para maior facilidade no diagnóstico de problemas.
US06 Adicionar guias técnicos dos equipamentos Eu, como técnico de campo, posso adicionar guias técnicos dos equipamentos para maior facilidade no diagnóstico de problemas.


1.3.2. Persona Ana (Diretora de Operações):

> FUNCIONALIDADE: Monitorar atividades das operações da TechFix

Código US Título do PBI História de Usuário
US07 Responder feedbacks dos clientes Eu, como Diretora de Operações, posso responder feedbacks dos clientes, para desenvolver soluções aos problemas operacionais.
US08 Criar cruzamento de dados em forma de gráfico de barras no dashboard Eu, como Diretoria de Operações, posso criar cruzamento de dados em forma de gráfico de barras no dashboard para visualização dos resultados operacionais em diversas formas.
US09 Criar cruzamento de dados em forma de gráfico de linhas no dashboard Eu, como Diretoria de Operações, posso criar cruzamento de dados em forma de gráfico de linhas no dashboard para visualização dos resultados operacionais em diversas formas.
US10 Criar cruzamento de dados em forma textual no dashboard Eu, como Diretoria de Operações, posso criar cruzamento de dados em forma textual no dashboard para visualização dos resultados operacionais em diversas formas.
US11 Baixar todos os dados sintetizados em um relatório PDF no dashboard Eu, como Diretora de Operações, posso baixar todos os dados sintetizados em um relatório PDF no dashboard para obter dados confiáveis.


1.3.3. Persona Mariana (Atendente):

> FUNCIONALIDADE: Gerenciar os Agendamentos

Código US Título do PBI História de Usuário
US12 Realizar a confirmação de um agendamento Eu, como Atendente, posso realizar a confirmação de um agendamento para ter informações sempre atualizada.
US13 Receber notificações de novas solicitações de agendamento Eu, como Atendente, posso receber notificações de novas solicitações de agendamento para obter os agendamentos com mais facilidade.
US14 Inserir disponibilidades dos técnicos de campo no agendamento Eu, como Atendente, posso inserir a disponibilidade dos técnicos de campo no agendamento para minimização de conflitos de agendas e atrasos.
US15 Atualizar status do agendamento Eu, como Atendente, posso atualizar os status dos agendamentos para ter informações sempre atualizada.
US16 Realizar a edição de detalhes do agendamento Eu, como Atendente, posso realizar a edição de detalhes do agendamento para ter informações sempre atualizada.
US17 Realizar pesquisa de agendamento Eu, como Atendente, posso realizar a pesquisa de agendamentos para obter os agendamentos com mais facilidade.
US18 Realizar o cancelamento de um agendamento Eu, como Atendente, posso realizar o cancelamento de um agendamento para ter informações sempre atualizada.


> FUNCIONALIDADE: Gerenciar Clientes

Código US Título do PBI História de Usuário
US19 Realizar o cadastro de um cliente Eu, como Atendente, posso realizar o cadastro de um cliente para manter o banco de clientes ativos sempre atualizado.
US20 Realizar a edição de informações de um cliente Eu, como Atendente, posso realizar a edição de informações de um cliente para armazenamento das preferências do cliente.
US21 Atualizar o registro de equipamentos do cliente Eu, como Atendente, posso atualizar o registro de equipamentos do cliente para manter as informações dos clientes disponíveis para outros setores.
US22 Pesquisar por histórico de serviços do cliente Eu, como Atendente, posso pesquisar por histórico de serviços do cliente para achar dados de clientes com mais agilidade.
US23 Realizar o desligamento de um cliente Eu, como Atendente, posso realizar o desligamento de um cliente para manter o banco de clientes ativos sempre atualizado.


1.3.4. Persona Rafael (Cliente):

> FUNCIONALIDADE: Acompanhar serviço

Código US Título do PBI História de Usuário
US24 Realizar a criação de um feedback Eu, como cliente, posso realizar a criação de um feedback para melhoria nos serviços prestados pela empresa.
US25 Realizar a criação de uma solicitação de serviço Eu, como cliente, posso realizar a criação de uma solicitação de serviço para melhora no fluxo das solicitações.
US26 Receber notificação de atualizações das solicitações de serviço Eu, como cliente, posso receber notificação de atualizações das solicitações de serviço para melhora no fluxo das solicitações.
US27 Realizar a edição de um feedback Eu, como cliente, posso realizar a edição de um feedback para melhora no fluxo das solicitações



1.4. Critérios de Aceitação das Histórias de Usuários (50% / 14 US's):

> US01: Eu, como técnico de campo, posso realizar a criação de um serviço para que os serviços estejam documentados.

  1. O técnico deve conseguir acessar uma interface para registrar os detalhes do serviço.
  2. O sistema deve validar que todos os campos obrigatórios foram preenchidos antes de concluir a criação do serviço.
  3. O serviço deve ser automaticamente associado ao cliente e ao técnico responsável após a criação.
  4. O sistema deve exibir a mensagem de confirmação "Serviço registrado com sucesso".

> US05: Eu, como técnico de campo, posso realizar pesquisa no histórico de equipamentos para maior facilidade no diagnóstico de problemas.

  1. O técnico deve conseguir buscar pelo histórico de equipamentos por número de série, tipo de equipamento ou cliente.
  2. O histórico deve incluir informações sobre serviços anteriores, como data, técnico responsável e descrição do problema.
  3. O sistema deve exibir a mensagem "Nenhum histórico encontrado" caso não existam registros para o equipamento.

> US06: Eu, como técnico de campo, posso adicionar guias técnicos dos equipamentos para maior facilidade no diagnóstico de problemas.

  1. O técnico deve conseguir fazer upload de guias técnicos em formato PDF.
  2. O sistema deve validar o formato e o tamanho do arquivo antes do upload.
  3. Após o upload, o guia deve ser associado ao equipamento correspondente.
  4. O técnico deve conseguir baixar o guia técnico em formato PDF para visualização offline.

> US08: Eu, como Diretoria de Operações, posso criar cruzamento de dados em forma de gráfico de barras no dashboard para visualização dos resultados operacionais em diversas formas.

  1. O dashboard deve permitir a seleção de diferentes indicadores operacionais para criação do gráfico.
  2. O gráfico de barras deve ser atualizado dinamicamente conforme os dados selecionados.
  3. O sistema deve permitir o download do gráfico gerado em formato de imagem ou PDF.

> US11: Eu, como Diretora de Operações, posso baixar todos os dados sintetizados em um relatório PDF no dashboard para obter dados confiáveis.

  1. O sistema deve permitir a geração do relatório com um resumo das métricas operacionais.
  2. O relatório deve ser baixado em formato PDF, contendo data de geração e o nome da empresa.
  3. O sistema deve exibir a mensagem "Relatório gerado com sucesso" após o download.

> US14: Eu, como Atendente, posso inserir a disponibilidade dos técnicos de campo no agendamento para minimização de conflitos de agendas e atrasos.

  1. Os técnicos mais adequados devem ser priorizados com base na disponibilidade, localização e especialização.
  2. O sistema deve impedir a confirmação de disponibilidade se um técnico estiver ocupado no horário solicitado.
  3. A disponibilidade deve ser confirmada se o atendente e o técnico estiverem disponíveis no horário agendado.

> US15: Eu, como Atendente, posso atualizar os status dos agendamentos para ter informações sempre atualizada.

  1. O status do agendamento deve mudar para “Esperando Confirmação” se não houver técnico alocado.
  2. O status do agendamento deve mudar para “Confirmado” ao alocar um técnico.
  3. O status do agendamento deve mudar para “Atendido” quando o técnico encerrar o serviço.

> US16: Eu, como Atendente, posso realizar a edição de detalhes do agendamento para ter informações sempre atualizada.

  1. Alterações de datas devem notificar o técnico e o cliente afetados.
  2. Alterações de técnico devem notificar o cliente.
  3. Datas alteradas não podem ser anteriores ao dia atual.

> US19: Eu, como Atendente, posso realizar o cadastro de um cliente para manter o banco de clientes ativos sempre atualizado.

  1. Todos os campos obrigatórios devem ser preenchidos para concluir o cadastro.
  2. Após o cadastro, o cliente deve ser listado como ativo no sistema.
  3. O sistema deve exibir "Cliente cadastrado com sucesso" após o cadastro.

> US22: Eu, como Atendente, posso pesquisar por histórico de serviços do cliente para achar dados de clientes com mais agilidade.

  1. O atendente deve acessar o histórico por nome, número de cliente ou CPF.
  2. O sistema deve exibir "Nenhum serviço registrado" caso o histórico esteja vazio.
  3. O histórico deve incluir data, tipo de serviço e status (finalizado/em andamento).

> US24: Eu, como cliente, posso realizar a criação de um feedback para melhoria nos serviços prestados pela empresa.

  1. O feedback deve ser cadastrado apenas se todos os campos obrigatórios forem preenchidos.
  2. Após o envio, o cliente deve receber confirmação visual de sucesso ou erro.
  3. O sistema deve permitir a revisão dos feedbacks enviados pelo cliente.

> US25: Eu, como cliente, posso realizar a criação de uma solicitação de serviço para melhora no fluxo das solicitações.

  1. O cliente deve preencher todos os campos obrigatórios no formulário de solicitação.
  2. O formulário deve conter: Nome, telefone, email, descrição do problema técnico e endereço.
  3. Após o envio, o cliente deve receber uma mensagem de sucesso ou erro.

> US26: Eu, como cliente, posso receber notificação de atualizações das solicitações de serviço para melhora no fluxo das solicitações.

  1. O cliente deve receber notificações automáticas ao mudar o status da solicitação.
  2. O cliente deve poder visualizar as atualizações no sistema.

> US27: Eu, como cliente, posso realizar a edição de um feedback para melhora no fluxo das solicitações

  1. Apenas feedbacks não analisados ou não encerrados devem estar disponíveis para edição.
  2. O cliente deve receber uma confirmação visual ao concluir a edição.



1.5. Behavior Driven Development (BDD) das Histórias de Usuários (5 US's):

> US01: Eu, como técnico de campo, posso realizar a criação de um serviço para que os serviços estejam documentados.

CENÁRIO 1: Erro ao preencher informações de contato inválidas

DADO QUE o técnico de campo preencheu as informações de contato de telefone com:

  • Número: (61) 0000-0000
  • Email: tecnico@gamil.com

QUANDO for submetido o formulário
ENTÃO o registro não é realizado
E há mensagem de erro com telefone inválido
E há mensagem de erro de email com terminação inexistente


CENÁRIO 2: Sucesso ao preencher todas as informações corretamente

DADO QUE o técnico preencheu todas as informações obrigatórias corretamente, incluindo:

  • Número: (61) 99233-4398
  • Email: tecnico@techfix.com

QUANDO o formulário for submetido
ENTÃO o sistema deve criar o registro do serviço com sucesso
E deve exibir a mensagem "Serviço criado com sucesso".

> US11: Eu, como Diretora de Operações, posso baixar todos os dados sintetizados em um relatório PDF no dashboard para obter dados confiáveis.

CENÁRIO 1: Download de relatório PDF com sucesso

DADO QUE estou autenticada como Diretora de Operações no sistema
QUANDO eu clicar no botão “Gerar Relatório PDF” no dashboard
ENTÃO o sistema deve gerar o relatório PDF com os dados cruzado em gráficos de linhas, barras e campos textuais, mais recentes
E o download deve ser iniciado automaticamente
E deve ser exibida a mensagem “Relatório gerado com sucesso.”


CENÁRIO 2: Erro ao gerar relatório por falta de dados

DADO QUE não há dados operacionais disponíveis no sistema
QUANDO eu tentar gerar o relatório PDF
ENTÃO o sistema deve exibir a mensagem “Nenhum dado disponível para geração de relatório.”

> US16: Eu, como Atendente, posso realizar a edição de detalhes do agendamento para ter informações sempre atualizada.

Cenário 1: Atendente atualiza os detalhes do agendamento

DADO QUE sou um Atendente autenticado no sistema
E existe um agendamento previamente cadastrado com id "123"
QUANDO eu atualizo os detalhes do agendamento com:

  • Descrição: “Manutenção Urgente”
  • Endereço: “Rua A, 45”

ENTÃO o agendamento com id "123" deve ser atualizado com os novos detalhes
E eu devo ver uma mensagem de sucesso "Detalhes do agendamento atualizados com sucesso"


CENÁRIO 2: Erro ao alterar data do agendamento para o passado

DADO QUE sou um Atendente autenticado no sistema
E existe um agendamento previamente cadastrado com id "124"
QUANDO eu tento alterar a data do agendamento para 1 dia antes em relação à data de hoje
ENTÃO o sistema deve exibir a mensagem de erro “A data do agendamento não pode ser anterior ao dia atual.”


CENÁRIO 3: Notificações enviadas após alterações

DADO QUE sou um Atendente autenticado no sistema E alterei a data agendada para o atendimento e o técnico alocado para o atendimento de um agendamento previamente cadastrado com id "125"
QUANDO eu salvar as alterações
ENTÃO o sistema deve notificar o novo técnico alocado e o técnico desalocado para o atendimento sobre a mudança na data agendada e técnico alocado alterado
E deve notificar o cliente sobre a mudança na data de atendimento e no técnico alocado para o atendimento.

> US22: Eu, como Atendente, posso pesquisar por histórico de serviços do cliente para achar dados de clientes com mais agilidade.

CENÁRIO 1: Pesquisa retorna histórico vazio

DADO QUE estou na página de perfil do cliente
E o cliente selecionado não possui histórico de serviços registrados
QUANDO eu clicar no botão “Ver histórico de serviços”
ENTÃO o sistema deve exibir a mensagem “Nenhum serviço registrado.”


CENÁRIO 2: Pesquisa retorna histórico completo

DADO QUE estou na página de perfil do cliente
E o cliente selecionado possui serviços registrados no histórico
QUANDO eu clicar no botão “Ver histórico de serviços”
ENTÃO o sistema deve exibir a lista de serviços com informações detalhadas, como: Data do serviço, Tipo de serviço, Status do serviço (Finalizado/Em andamento).

> US25: Eu, como cliente, posso realizar a criação de uma solicitação de serviço para melhora no fluxo das solicitações.

Cenário 1: Sucesso ao criar solicitação de serviço

DADO QUE o cliente tenha preenchido todos os campos do formulário com os seguintes dados:

  • Nome: Rafael Ribonucleico da Silva
  • Telefone: (61) 99233-4398
  • E-mail: rafaRibo@gamil.com
  • Descrição do problema técnico: “Perdi minhas credenciais de acesso e preciso de ajuda para recuperá-las.”
  • Endereço: Não Aplicável

QUANDO o cliente clicar no botão “Enviar solicitação de serviço”
ENTÃO o sistema deve mostrar uma mensagem no centro da tela escrito: “Solicitação de serviço realizada com sucesso.”


CENÁRIO 2: Erro ao enviar solicitação sem preencher campos obrigatórios

DADO QUE o cliente deixou campos obrigatórios do formulário em branco
QUANDO ele clicar no botão “Enviar solicitação de serviço”
ENTÃO o sistema deve exibir a mensagem “Preencha todos os campos obrigatórios para enviar a solicitação.”


CENÁRIO 3: Sucesso ao criar solicitação com endereço aplicável

DADO QUE o cliente preencheu todos os campos do formulário, incluindo endereço, com os seguintes dados:

  • Nome: Rafael Ribonucleico da Silva
  • Telefone: (61) 99233-4398
  • E-mail: rafaRibo@gamil.com
  • Descrição do problema técnico: “Falha no servidor principal.”
  • Endereço: “Av. Central, 123, Sala 45.”

QUANDO o cliente clicar no botão “Enviar solicitação de serviço”
ENTÃO o sistema deve exibir a mensagem “Solicitação de serviço realizada com sucesso”
E a solicitação deve ser registrada com o endereço informado.



Bibliografia:

SANTOS, Fábio Aguiar. Product Backlog Building: A prática ágil para criar e gerenciar seu backlog de produto. São Paulo: Editora Casa do Código, 2018.

SCHWABER, Ken; SUTHERLAND, Jeff. Guia do Scrum: O Guia Definitivo para o Scrum: As Regras do Jogo. 2020. Disponível em: https://scrumguides.org.


Histórico de Versão

Data Versão Descrição Autor Revisores
20/01/24 1.0 Criação do Documento e Desenvolvimento do conteúdo do PBB Daniel Rodrigues Manuella Magalhães