Ir para o conteúdo

PBB e BDD

PBB

Como parte das entregas da disciplina na Unidade 3, foi criado do zero um novo backlog a partir do PBB (Product Backlog Building), com escopo reduzido comparado ao Backlog utilizado no projeto.

Canvas PBB

Link do Mural para uma melhor visualização

A partir dos campos definidos pelo PBB, como Personas, Benefícios de funcionalidades e PBIs(Product Backlog Items), foram criadas User Stories e seus respectivos BDDs (Behavior Driven Development), que servem como critérios de aceitação.

As User Stories foram mapeadas assim:

  • Eu, como {persona} posso {PBI} para {benefício}.

Os BDDs foram construídos deste modo:

  • Dado que {contexto inicial}
  • Quando {evento ou ação}
  • Então, {resultado esperado}

User Stories e BDD


  • Eu, como organizador da viagem, posso criar instâncias de viagem para facilitar o acesso à informações.

    • Dado que o usuário tenha uma conta cadastrada
    • Quando ele preencher todos os campos corretamente, com 16/06/2023 (data de início), 20/06/2023 (data de término), Paris (local), 3 (quantidade de pessoas)
    • Então uma viagem deverá ser criada e enviada uma mensagem “Viagem criada com sucesso”

    • Eu, como organizador da viagem, posso editar as informações básicas da viagem para facilitar a organização.

    • Dado que o usuário tenha uma viagem criada

    • Quando ele tentar editar alguma informação desta viagem e preencher os campos que deseja editar, como 24/06/2023 (data de término), Barcelona (local)
    • Então o sistema deve atualizar as informações dos campos que o usuário editou (no caso, data de término e local)



  • Eu, como organizador da viagem, posso ver a lista de viagens para facilitar minha organização.

    • Dado que um usuário tenha pelo menos uma viagem criada
    • Quando ele tentar visualizar suas viagens
    • Então ele deverá ver uma lista de todas as suas viagens criadas, com cada viagem sendo identificadas pelo seu local, data de início e data de término



  • Eu, como organizador da viagem, posso excluir viagens da lista de viagens para facilitar minha organização.

    • Dado que um usuário tenha pelo menos uma viagem criada
    • Quando ele for visualizar a lista de suas viagens e clique no botão de excluir uma determinada viagem
    • Então a viagem excluída deverá desaparecer de sua lista e ter as informações relevantes apagadas



  • Eu, como organizador da viagem, posso armazenar as informações sobre meu transporte para facilitar o acesso à informações.

    • Dado que um usuário tenha pelo menos uma viagem criada
    • Quando ele tentar adicionar um transporte à uma viagem e preencher os campos corretamente, com Avião (tipo de transporte), 599,00 (preço), 11:00 (hora de saída), 15:30 (hora de chegada)
    • Então o transporte relacionado à esta viagem deve ser cadastrado e é exibida a mensagem “Transporte cadastrado com sucesso”



  • Eu, como organizador da viagem, posso armazenar as informações sobre minha estadia para facilitar o acesso à informações.

    • Dado que um usuário tenha pelo menos uma viagem criada
    • Quando ele tentar adicionar uma estadia à uma viagem e preencher os campos corretamente, com Hotel (tipo de estadia), 259,99 (preço), Rua São Pedro, lote 54 (localização), 21/06/2023 (data de entrada), 25/06/2023 (data de saída)
    • Então a estadia relacionada à esta viagem deve ser cadastrada e é exibida a mensagem “Estadia cadastrado com sucesso”



  • Eu, como organizador da viagem, posso gerenciar as informações sobre a viagem para facilitar minha organização.

    • Dado que um usuário tenha pelo menos uma viagem criada e pelo menos um transporte e/ou estadia associados a esta viagem
    • Quando o usuário for editar os dados deste transporte e/ou estadia e preencher os campos corretamente, como Ônibus (tipo de transporte) ou Airbnb (tipo de estadia)
    • Então o sistema deve atualizar as informações dos campos que o usuário editou (no caso, tipo de transporte ou tipo de estadia)



  • Eu, como organizador da viagem, posso adicionar participantes em minhas viagens para aumentar a sintonia entre os participantes.

    • Dado que um usuário tenha pelo menos uma viagem criada e exista um usuário com nome Pedro Menezes
    • Quando um usuário buscar por outro e preencher o campo com Pedro Menezes, e então adicionar este em sua viagem
    • Então as informações desta viagem devem ser compartilhadas com o usuário convidado (neste caso, Pedro Menezes)



  • Eu, como organizador da viagem, posso gerenciar os participantes das minhas viagens para manter a sintonia entre os participantes.

    • Dado que um usuário tenha compartilhado uma viagem com outro usuário de nome Mateus da Silva
    • Quando o usuário administrador da viagem excluir o participante Mateus da Silva
    • Então o participante excluído não deverá ter mais acesso às informações da viagem



  • Eu, como usuário, posso visualizar um cronograma das minhas viagens para facilitar a organização.

    • Dado que um usuário tenha pelo menos uma viagem criada
    • Quando ele tentar visualizar o cronograma de uma viagem
    • Então um calendário com o período de realização da viagem em destaque deve ser aberto



  • Eu, como organizador da viagem ou convidado, posso inserir atividades em um cronograma para facilitar a organização.

    • Dado que um usuário participe de uma viagem e esteja visualizando um cronograma
    • Quando o usuário tentar adicionar no cronograma uma atividade e preencher os campos corretamente, com 22/06/2023 (data), 15:45 (horário de início), 16:20 (horário de finalização), Restaurante Peixe do Mar (localização)
    • Então esta atividade deve ser adicionada ao cronograma para que todos os participantes da viagem possam visualizá-la



  • Eu, como organizador da viagem ou convidado, posso gerenciar as atividades de um cronograma para facilitar a organização.

    • Dado que um usuário participe de uma viagem que tenha, pelo menos, uma atividade no cronograma
    • Quando o usuário modificar um dado da atividade, como a mudança de horário de finalização de 16:20 para 17:00, ou excluir alguma atividade do cronograma
    • Então as mudanças no cronograma e na atividade devem ser visíveis para todos os participantes da viagem



  • Eu, como organizador da viagem ou convidado, posso demonstrar minha disponibilidade em atividades para aumentar a sintonia entre os participantes.

    • Dado que um usuário participe de uma viagem que tenha, pelo menos, uma atividade no cronograma
    • Quando o usuário clicar em uma atividade e responder se irá participar no botão “Estou disponível” ou não “Não estou disponível” nesta atividade
    • Então sua escolha deverá ser visível para todos os participantes da viagem