BackLog
Histórico de versão
Versão | Data | Descrição | Autor(s) |
---|---|---|---|
1.0 | 18/05 | Criação do documento de BakLog | Suzane Duarte |
Introdução
O Backlog do Produto é o resultado direto das decisões tomadas durante a Lean Inception do projeto Vai Pela Sombra. Ele organiza de forma hierárquica e visual os épicos, funcionalidades, histórias de usuário e critérios de aceitação que guiarão o desenvolvimento incremental da aplicação. Essa estrutura permite priorizar entregas, facilitar a comunicação entre os membros da equipe e garantir que o valor entregue ao usuário esteja sempre alinhado com os objetivos estratégicos do produto.
A decomposição foi feita em cinco grandes épicos, que representam blocos centrais de valor: cadastro de usuários, itinerários, promoções, recomendações e avaliação da experiência. Cada épico foi desdobrado em funcionalidades específicas, que por sua vez foram traduzidas em histórias de usuário com critérios claros de aceitação — respeitando os princípios de clareza, valor e testabilidade. A seguir, o backlog está organizado em tabelas em Markdown, separadas por épico, para facilitar a leitura e o acompanhamento.
Épico 1: Infraestrtura Técnica Inicial
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
Criação de estrutura base da API | -- | -- |
Criação de banco de dados relacional | -- | -- |
Autenticação e autorização de usuários | -- | -- |
Criação do prototipo de alta fidelidade | -- | -- |
Épico 2: Gestão de Usuários
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
Cadastro de usuário | US1 F1 EP2: Como novo usuário que está planejando uma viagem, quero poder me cadastrar na plataforma para que eu possa acessar todas as funcionalidades disponíveis no Vai Pela Sombra. | - CA1: Sistema deve apresentar uma tela de cadastro com os campos obrigatórios: Nome completo, E-mail, Senha e Confirmação de senha. A senha deve ser inserida duas vezes para confirmação, garantindo que ambos os campos coincidam. - CA2: O usuário deve ser redirecionado automaticamente para a tela de login após cadastro bem-sucedido. - CA3: O sistema deve validar e impedir o cadastro com e-mail já existente. - CA4: Campos obrigatórios devem estar claramente identificados e retornar mensagens de erro em caso de preenchimento incorreto. |
Preferências e Interesses de Usuários | US2 F2 EP2: Como usuário que está planejando uma viagem, quero adicionar meus interesses de viagem após criar meu perfil, para que o sistema possa me recomendar destinos e experiências personalizadas. | - CA1: O sistema deve exibir uma lista de interesses de viagem (ex: ecoturismo, aventura, gastronomia, cultura, relaxamento, etc.) imediatamente após o primeiro acesso do usuário. - CA2: O usuário deve ser capaz de selecionar múltiplos interesses e salvá-los. - CA3: Os interesses selecionados devem ser armazenados e exibidos corretamente ao retornar à tela de perfil. - CA4: O sistema deve permitir a edição posterior dos interesses a qualquer momento. - CA5: Caso o usuário tente salvar sem selecionar nenhum interesse, o sistema deve exibir uma mensagem de aviso. |
Preferências e Interesses de Usuários | US3 F2 EP2: Como usuário que está planejando uma viagem, quero editar e visualizar meu perfil com minhas informações e preferências salvas, para que eu possa manter meus dados atualizados e revisar minhas escolhas. | - CA1: O usuário deve acessar seu perfil por meio do menu ou área pessoal do sistema. - CA2: O sistema deve exibir as informações salvas do usuário, incluindo nome, e-mail e interesses de viagem. - CA3: O sistema deve oferecer a opção de editar cada um desses campos. - CA4: Ao clicar em "Salvar", as alterações devem ser registradas no banco de dados e refletidas na próxima visualização do perfil. - CA5: O sistema deve validar os dados inseridos, como formato de e-mail e preenchimento obrigatório de campos essenciais. - CA6: O usuário deve receber uma mensagem de confirmação após a atualização bem-sucedida dos dados. - CA7: Se houver erro na atualização (ex: e-mail já existente), o sistema deve exibir uma mensagem clara informando o motivo. |
Login e acesso com segurança | US4 F1 EP2: Como usuário do aplicativo de planejamento de viagens, quero fazer login com minhas credenciais cadastradas, para acessar meus roteiros e dados salvos com segurança | - CA1: O usuário deve conseguir acessar a tela de login a partir da tela inicial. - CA2: O sistema deve permitir o login com E-mail e Senha - CA3: O sistema deve validar o formato do e-mail antes de enviar os dados - CA4: O sistema deve exibir uma mensagem de erro se: O e-mail ou senha estiverem incorretos; O campo estiver vazio. - CA5: O usuário deve visualizar um botão de “Mostrar/Ocultar senha” no campo de senha - CA6: Ao realizar login com sucesso, o usuário deve ser redirecionado para sua área principal - CA7: O sistema deve manter a sessão ativa enquanto o usuário estiver logado, com opção de logout - CA8: O sistema deve exibir um feedback de carregamento (loading/spinner) enquanto o login está sendo processado |
Épico 3: Exploração de Destinos
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
F3 E3: Aba de busca de destinos com filtros | US5 F3 EP3: Como usuário que está planejando uma viagem, quero buscar destinos, para que eu possa conseguir filtrar as opções que se encaixem no meu orçamento e preferências. | - CA1: O sistema deve considerar os interesses selecionados no perfil do usuário para gerar destinos em destaque. - CA2: As recomendações devem ser exibidas de forma destacada na interface principal. - CA3: Cada destino recomendado deve conter informações básicas como nome e imagem. - CA4: O sistema deve disponibilizar uma barra de busca ou seleção específica para pesquisa de destinos. - CA5: O sistema deve permitir a aplicação de filtros como: Faixa de preço, Tipo de destino (praia, montanha, urbano, etc.), Benefícios (acessibilidade, atrações inclusas, transporte incluso, etc.) - CA6: O usuário deve conseguir aplicar múltiplos filtros combinados. - CA7: O sistema deve exibir os resultados atualizados em tempo real com base nos filtros aplicados. - CA8: Deve haver uma opção para remover os filtros e visualizar todos os destinos novamente. |
F4 E3: Galeria de destinos | US6 F4 EP3: Como usuário que está planejando uma viagem, quero ver mais informações sobre o destino como as fotos de hotéis e pontos turísticos desse lugar, para que eu possa tomar decisões de destinos. | - CA1: O sistema deve exibir uma galeria de imagens para cada ponto turístico e hospedagem listada. - CA2: As imagens devem ser exibidas em boa resolução, com carregamento otimizado. - CA3: O usuário deve poder expandir as imagens em um visualizador modal ao clicar em uma delas. - CA4: A galeria deve permitir a navegação entre múltiplas imagens com setas ou carrossel. |
F5 E3: Planos de viagem | US7 F5 EP3: Como usuário do site de planejamento de viagens, quero acessar a tela de planos de viagem através do menu superior, para visualizar meus planos de viagem atuais e o histórico de viagens anteriores. | - CA1: O usuário deve visualizar uma opção no menu superior (menu/hamburguer) identificada como "Planos de Viagem" ou equivalente. - CA2: Ao clicar na opção de "Planos de Viagem", o usuário deve ser redirecionado para uma tela contendo: uma seção com os planos de viagem ativos (em andamento ou planejados); Uma seção com o histórico de viagens anteriores (já finalizadas). - CA3: O sistema deve distinguir claramente as seções “Atuais” e “Finalizadas”, seja por título, layout ou separador visual. - CA4: Cada plano de viagem exibido deve conter ao menos: Nome do plano, Imagem (pode ser do destino), Data de início e fim, Destinos principais, Status (planejado, em andamento, finalizado). - CA5: O usuário deve conseguir clicar em cada plano para ter acesso aos detalhes completos do roteiro. - CA6: O sistema deve ordenar os planos por data de início, exibindo os mais recentes no topo. - CA7: Caso não haja planos de viagem cadastrados, o sistema deve exibir uma mensagem com um botão para “Criar novo plano de viagem” ou um link. - CA8: O acesso à tela de planos de viagem deve estar disponível apenas para usuários autenticados. |
Épico 4: Planejamento de Viagem
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
F6 E4: Criação de grupos de viagem | US8 F6 EP4: Como usuário que está planejando uma viagem, quero criar um grupo de viagem com amigos, para que possamos planejar e organizar tudo juntos. | - CA1: O sistema deve permitir a criação de grupos de viagem com nome e descrição. - CA2: O criador do grupo deve poder convidar outros usuários por link compartilhável. - CA3: Os membros do grupo devem poder visualizar o roteiro e contribuir com sugestões. - CA4: O grupo deve ter uma área de discussão ou comentários. - CA5: O criador deve poder remover membros ou encerrar o grupo. - CA6: Todos os membros devem ser notificados quando houver alterações no grupo. |
F7 E4: Notificações de promoções | US9 F6 EP4: Como usuário que está planejando uma viagem, quero receber notificações de promoções relacionadas aos meus interesses, para que eu possa otimizar meus gastos. | - CA1: O sistema deve permitir que o usuário ative ou desative o recebimento de notificações de promoções. - CA2: As promoções exibidas devem estar relacionadas aos interesses definidos no perfil do usuário. - CA3: O sistema deve notificar o usuário por meio de push notifications. - CA4: As promoções devem conter título, descrição, data de validade e botão para mais informações. - CA5: O sistema deve evitar envio repetido ou excessivo das mesmas promoções. |
F10 E4: Definição do cronograma | US10 F7 EP4: Como usuário que está planejando uma viagem, quero criar um cronograma de eventos para inserir no meu itinerário, para que eu tenha um planejamento organizado e fácil de acompanhar. | - CA1: O sistema deve permitir adicionar eventos no cronograma com data, hora, local e descrição. - CA2: O usuário deve poder visualizar o cronograma em formato intuitivo. - CA3: Os eventos devem ser editáveis e removíveis. - CA4: O sistema deve organizar os eventos por data automaticamente. - CA5: O sistema deve notificar o usuário com lembretes das atividades, se essa opção for ativada. |
F8 E4: Checklist de documentos | US11 F8 EP4: Como usuário que está planejando uma viagem, quero acessar um checklist com os documentos necessários para o meu destino, para que eu não tenha problemas com burocracias. | - CA1: O sistema deve exibir um checklist automático com itens básicos para todas as viagens (ex: documento com foto, passaporte, cartão de vacina...). - CA2: O usuário deve poder marcar cada item como concluído. - CA3: O checklist deve ser editável para incluir ou remover os itens. - CA4: O sistema deve alertar o usuário caso documentos obrigatórios não tenham sido marcados até uma data próxima da viagem. |
F9 E4: Aba de atividades da viagem | US12 F9 EP4: Como usuário que está planejando uma viagem, quero visualizar informações sobre as atividades e montar meu itinerário. | - CA1: O usuário deve conseguir adicionar uma nova atividade com: - Nome da atividade/local - Data e hora - Orçamento (opcional) com opção do prefixo de moeda - Duração (opcional) - Observações (opcional) - CA2: O usuário deve visualizar as atividades organizadas por data no formato de lista ou calendário diário. - CA3: O sistema deve permitir editar e excluir uma atividade previamente adicionada. - CA4: As alterações devem ser salvas automaticamente ou via botão "Salvar". - CA5: O itinerário deve ser persistente (as informações continuam após sair e voltar ao app). - CA6: O sistema deve exibir uma timeline de atividades com nome ou data. - CA7: Se houver conflito de horários, o sistema deve notificar ou destacar as atividades com sobreposição. - CA8: O sistema deve permitir que o usuário possa escolher o prefixo de moeda (ex: R\$, US\$, €...) do orçamento de cada atividade inserida. - CA9: O usuário deve poder editar o valor do orçamento de uma atividade a qualquer momento, com impacto imediato no total. - CA10: O usuário deve poder editar o valor do orçamento de uma atividade a qualquer momento, com impacto imediato no total. |
F11 E4: Orçamento da Viagem | US13 F10 EP4: Como usuário que está planejando uma viagem, quero visualizar o orçamento total e monitorar os gastos da viagem. | - CA1: O sistema deve somar automaticamente os valores preenchidos no campo "Orçamento" de todas as atividades cadastradas no itinerário. - CA2: O valor total do orçamento deve ser exibido em local visível na interface de planejamento de viagem, apresentando: - O valor total já gasto convertido para o Real - Uma indicação das taxas de câmbio utilizadas - CA3: Caso nenhuma atividade tenha o campo de orçamento preenchido, o total exibido deve ser 0,00 - CA4: O valor total deve ser atualizado automaticamente sempre que uma atividade for adicionada, editada ou excluída. |
F12 E4: Transportes da Viagem | US14 F11 EP4: Como usuário que está planejando uma viagem, quero inserir e visualizar transportes no meu itinerário para planejar meus gastos. | - CA1: O usuário deve conseguir adicionar um transporte à viagem com as seguintes informações: - Tipo de transporte (avião, ônibus, trem, carro, etc.) - (obrigatório) - Origem e destino - (opcional) - Data e hora - (obrigatório) - Orçamento (com suporte a múltiplas moedas) - (opcional) - Observações - (opcional) - CA2: Os transportes devem ser exibidos de forma organizada no itinerário, associados à data correspondente. - CA3: O sistema deve incluir o valor dos transportes no orçamento total da viagem automaticamente, com a moeda inserida e realizada a conversão, se necessário. - CA4: O usuário deve poder editar ou excluir informações de transporte a qualquer momento. - CA5: O sistema deve impedir o cadastro de um transporte se os campos obrigatórios não forem preenchidos. - CA6: O sistema deve exibir os transportes em uma seção específica ou destacados no itinerário (ex: com um ícone de transporte). |
Épico 5: Recomendações e Avaliações
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
F10 E5: Sistema de recomendação com base no destino | US15 F10 EP5: Como usuário que está planejando uma viagem, quero ver recomendações baseadas no meu histórico de viagens, para que eu descubra destinos similares aos que já viajei. | - CA1: O sistema deve registrar os destinos, hospedagens e atividades visitadas pelo usuário em viagens anteriores. - CA2: As recomendações devem considerar destinos semelhantes, categorias de interesse e avaliações anteriores. - CA3: As recomendações devem ser exibidas em uma seção específica, como “Baseado nas suas viagens anteriores”. - CA4: O usuário deve poder visualizar o motivo de cada recomendação (ex: “Você visitou X, talvez goste de Y”). - CA5: O sistema deve atualizar as recomendações sempre que uma nova viagem for registrada. |
F11 E5: Avaliações e comentários de experiências | US16 F11 EP5: Como usuário que está planejando uma viagem, quero visualizar e avaliar hotéis e serviços utilizados na viagem, para que outros viajantes tenham referências sobre o destino escolhido. | - CA1: O sistema deve permitir avaliar hotéis, lugares e destinos somente após o término da viagem associada. - CA2: O usuário deve poder atribuir um comentário e nota de 0 a 5. - CA3: As avaliações devem ser públicas e exibidas junto às informações do hotel ou serviço avaliado. - CA4: O sistema deve permitir editar ou excluir uma avaliação após ela ser submetida. - CA5: As avaliações devem ter data e identificação (nome ou anônimo, com preferência do usuário). - CA6: O sistema deve exibir avaliações públicas importadas via API de outros serviços (ex: Google Reviews) e combinar avaliações de usuários do aplicativo, desde que disponíveis. - CA7: As avaliações de destaque devem estar claramente sinalizadas com ícone, indicação do critério (ex: “Fonte: Google Reviews”). - CA8: O sistema deve exibir o número total de avaliações e média geral por estabelecimento. - CA9: O sistema deve priorizar exibição de avaliações de usuários verificados. - CA10: O sistema deve permitir ordenação por data (mais recentes) ou nota (maior avaliação primeiro). |
Épico 6: Informações do Destino
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
F12 E6: Monitoramento climático | US17 F12 EP6: Como usuário que está planejando uma viagem, quero saber a previsão do tempo do destino antes da viagem, para que eu possa me preparar com as roupas e acessórios adequados. | - CA1: O sistema deve exibir a previsão do tempo para os próximos 7 dias no destino selecionado. - CA2: A previsão deve incluir temperatura mínima/máxima, condições climáticas e chance de chuva. - CA3: A previsão deve ser atualizada automaticamente a cada acesso com base em uma API confiável de clima. - CA4: O usuário deve visualizar a previsão do tempo no resumo da viagem ou em uma aba específica. - CA5: Caso não haja dados disponíveis para o destino, o sistema deve exibir uma mensagem informativa. |
F13 E6: Dicas de saúde e segurança | US18 F13 EP6: Como usuário que está planejando uma viagem, quero receber dicas de saúde, segurança e costumes culturais, para ter mais previsibilidade e evitar intercorrências. | - CA1: O sistema deve exibir uma seção de recomendações para o destino selecionado, contendo pelo menos três categorias: • Saúde (ex: vacinas obrigatórias, cuidados com água/comida) • Segurança (ex: áreas a evitar, orientações de comportamento) • Costumes culturais (ex: vestimenta, etiqueta, normas sociais) - CA2: As recomendações devem ser exibidas automaticamente após a seleção do destino no plano de viagem, ou acessíveis por botões/link “Ver recomendações” - CA3: As informações exibidas devem ser específicas para o país ou cidade do destino (se dado disponível) - CA4: O sistema deve indicar a data de atualização das recomendações (ex: “última atualização em março/2025”) - CA5: O sistema deve permitir ao usuário expandir/ocultar detalhes de cada recomendação (ex: via dropdown ou accordion) - CA6: Caso não haja dados disponíveis para o destino, o sistema deve informar de forma clara (ex: “sem recomendações disponíveis para este local no momento”) |
F14 E6: Eventos locais | US19 F14 EP6: Como usuário que está planejando uma viagem, quero conhecer eventos que acontecerão no meu destino durante a viagem, para que eu possa aproveitar ao máximo minha estadia. | - CA1: O sistema deve consultar e exibir eventos que acontecerão durante o período da viagem no destino. - CA2: Cada evento deve conter nome, data, local, descrição e se há necessidade de ingresso. - CA3: O usuário deve poder adicionar o evento ao seu cronograma com um clique. - CA4: O sistema deve indicar se o evento é gratuito, pago ou requer reserva. - CA5: Caso não haja eventos disponíveis no período selecionado, o sistema deve exibir uma mensagem apropriada. |
Durante as fases iniciais de planejamento, diversos épicos foram considerados para compor o escopo do MVP do Vai Pela Sombra, com o objetivo de entregar uma solução robusta e alinhada às necessidades dos usuários. No entanto, ao longo do desenvolvimento, identificamos que alguns desses épicos ultrapassariam o tempo e a complexidade viável para a entrega. Assim, para garantir um MVP funcional e dentro do cronograma, optamos por retirar tais funcionalidades, priorizando entregas com maior impacto e menor risco de execução. A seguir, são apresentados os épicos que foram retirados do backlog:
Épico 7: Hospedagem e Acomodações
Funcionalidade | História de Usuário | Critérios de Aceitação |
---|---|---|
F15 E7: Listagem de hotéis, pousadas e hostels por cidade | US20 F15 EP7: Como usuário que está planejando uma viagem, quero visualizar hospedagens recomendadas com base no meu perfil, para fazer escolhas mais assertivas. | - CA1: O sistema deve considerar os interesses e histórico do usuário para sugerir hospedagens. - CA2: As hospedagens recomendadas devem ser destacadas em uma seção do menu superior chamada “Hospedagens sugeridas”. - CA3: Cada hospedagem deve apresentar nome, imagem, nota, localização e preço. - CA4: O usuário deve poder salvar hospedagens recomendadas como favoritas. - CA5: As recomendações devem ser atualizadas automaticamente após alterações no perfil/interesses. |
F16 E7: Filtros por preço e avaliação | US21 F16 EP7: Como usuário que está planejando uma viagem, quero aplicar filtros como preço e avaliação para encontrar as melhores opções para que eu possa escolher a hospedagem ideal de forma rápida. | - CA1: O sistema deve oferecer filtros de preço, nota de avaliação, tipo de hospedagem, distância do centro e comodidades. - CA2: O usuário deve poder aplicar múltiplos filtros combinados. - CA3: O sistema deve exibir os resultados atualizados conforme os filtros aplicados. - CA4: Os filtros aplicados devem ser exibidos no topo da lista com opção de remoção individual. - CA5: O sistema deve permitir limpar todos os filtros com um clique. - CA6: Caso nenhum resultado seja encontrado, uma mensagem amigável deve ser exibida. |
F17 E7: Integração com plataformas de hospedagem (ex: Booking, Airbnb) | US22 F17 EP7: Como usuário, quero visualizar e acessar opções de hospedagem vindas de plataformas como Booking e Airbnb, para que eu possa comparar e escolher acomodações sem sair do aplicativo. | - CA1: O sistema deve integrar com pelo menos uma API externa de hospedagem (ex: Booking, Airbnb). - CA2: As hospedagens devem ser exibidas com nome, imagem, preço por diária, avaliação e link para detalhes. - CA3: O usuário deve poder aplicar os mesmos filtros utilizados para hospedagens internas. - CA4: O sistema deve abrir os detalhes de hospedagem em uma aba externa ou modal seguro. - CA5: O sistema deve diferenciar visualmente hospedagens de parceiros (Booking, Airbnb) das hospedagens cadastradas manualmente. - CA6: Caso a API externa esteja fora do ar, o sistema deve exibir mensagem de erro amigável. |
2. Referências
WAKE, Bill. INVEST in Good Stories, and SMART Tasks. 2003. Disponível em: https://xp123.com/articles/invest-in-good-stories-and-smart-tasks/
SCHWABER, Ken; SUTHERLAND, Jeff. The Scrum Guide™ – The Definitive Guide to Scrum: The Rules of the Game. Scrum.org, 2020. Disponível em: https://scrumguides.org