Pular para conteúdo

Escopo de projeto

Backlog do produto

O Backlog do Produto (Product Backlog) é uma lista ordenada e emergente de tudo o que é necessário para melhorar o produto.

Um produto é um veículo para entregar valor. Ele possui um limite claro, partes interessadas conhecidas e usuários ou clientes bem definidos. Um produto pode ser um serviço, um produto físico ou algo mais abstrato. Itens do product backlog que podem ser concluídos em uma sprint (O coração do Scrum, onde as ideias são transformadas em valor) são considerados prontos para seleção no evento de planejamento da sprint. Eles geralmente adquirem esse grau de transparência após as atividades de refinamento. O ato de decompor e definir com mais detalhes os itens do Product Backlog em itens menores e mais precisos é conhecido como refinamento do product backlog. Essa é uma atividade contínua para adicionar detalhes, como descrição, ordem e tamanho.

O Product Goal descreve um estado futuro do produto. Ele está no Product Backlog. O restante do Product Backlog emerge para definir "o quê" irá cumprir o Product Goal. Product Goal é o objetivo de longo prazo, ele deve ser cumprido (ou abandonado) antes de assumir um próximo.

Os Desenvolvedores que realizarão o trabalho são responsáveis pelo dimensionamento (estimativa de tamanho). O Product Owner (Dono do Produto) pode influenciar os Developers ajudando-os a entender e selecionar as compensações

Um backlog do produto bem estruturado e atualizado permite um alinhamento da equipe às metas do produto; visibilidade ao progresso e às próximas entregas; facilidade de adaptação a mudanças de prioridade e a garantia de que o time esteja sempre focado em entregar valor ao usuário final.

Figma do Backlog:

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 issues/épicos no zenhub para organização do time e divisão das sprints -- --
Criação da estrutura Cliente - Servidor no monorepo -- --
Criação de estrutura base da API e do Expo -- --
Criação/modelagem de banco de dados relacional (talvez noSQL) -- --
Criação do protótipo de alta fidelidade das telas dos primeiros requisitos -- --

Épico 2: Autenticação e gerenciamento de conta

Funcionalidade História de Usuário Critérios de Aceitação
Autenticação e Criação de Conta
abrange todo o processo de entrada e registro na plataforma Aton. Ela garante que os usuários possam criar uma conta de maneira simples e segura, escolher seu tipo de interação principal com o aplicativo (jogador, torcedor ou atlética) e acessar a plataforma através de um sistema de login.
US1 F1 EP2: Como um aluno da UnB interessado em eventos esportivos, eu quero poder me cadastrar no aplicativo Aton usando meu e-mail e uma senha, para que eu possa ter acesso à plataforma e suas funcionalidades. - CA1: O campo de e-mail deve validar o formato (ex: usuario@exemplo.com).
- CA2: O campo de senha deve exigir um mínimo de 8 caracteres.
- CA3: Deve haver uma confirmação de senha para evitar erros de digitação.
- CA4: O aplicativo deve verificar se o e-mail já está em uso e informar o usuário.
- CA5: Após o preenchimento correto dos dados, o usuário deve ser direcionado para a próxima etapa (seleção de tipo de perfil).
- CA6: O sistema deve garantir a segurança da senha (armazenamento criptografado).
US2 F1 EP2: Como um novo usuário recém-cadastrado, eu quero poder escolher meu tipo de perfil principal (Jogador, Torcedor ou Atlética), para que o aplicativo personalize minha experiência inicial e as funcionalidades disponíveis. -CA1: A tela de seleção deve apresentar claramente as três opções: "Jogador", "Torcedor" e "Atlética".
- CA2: Deve haver uma breve descrição para cada tipo de perfil, explicando seu propósito no aplicativo.
-CA3: A seleção de um tipo de perfil deve ser obrigatória para continuar.
- CA4: O sistema deve adaptar o fluxo de onboarding com base na escolha, se "Atlética", pode pedir informações adicionais da organização e verificação através de um formulário enviando documentação comprobatória para o time Aton conceder um selo de verificado e permitir a criação do grupo, se “Jogador”, Levar para uma página de entrar ou criar um time, se “torcedor”, levar direto para o campo de pesquisa de perfis de atlética para seguir.
US3 F1 EP2: Como um usuário já cadastrado, eu quero poder fazer login na minha conta usando meu e-mail e senha, para que eu possa acessar meu perfil e as informações da plataforma de forma segura. - CA1: A tela de login deve ter campos para e-mail e senha.
- CA2: O sistema deve validar as credenciais e conceder acesso se estiverem corretas.
- CA3: Em caso de credenciais incorretas, uma mensagem de erro clara ("E-mail ou senha inválidos") deve ser exibida.
- CA4: Deve haver um link ou botão para "Esqueci minha senha" para iniciar o processo de recuperação.
Perfil de Usuário Personalizável e Informativo
Uma vez autenticado, o usuário precisa de um espaço para expressar sua identidade. Esta feature permite que todos os tipos de perfis (jogadores, torcedores e atléticas) configurem e personalizem suas informações, como foto, nome de usuário, biografia e um banner, tornando o perfil único e informativo para outros membros da comunidade.
US4 F2 EP2: Como um jogador ou torcedor, eu quero poder adicionar e editar informações básicas no meu perfil, como uma foto, nome de usuário, e uma pequena biografia, para que outros usuários possam me identificar e conhecer meus interesses esportivos. -CA1: O usuário deve poder fazer o upload de uma foto de perfil a partir da galeria do celular.
- CA2: A foto de perfil deve ser redimensionada e exibida em um formato circular padrão no aplicativo.
- CA3: O usuário deve poder definir um nome de usuário único (o sistema deve verificar a disponibilidade).
- CA4: O campo de biografia deve ter um limite de caracteres (ex: 150 caracteres) para manter a concisão.
- CA5: O usuário deve poder salvar as alterações, e elas devem ser refletidas imediatamente em seu perfil.
US5 F2 EP2: Como um usuário (jogador, torcedor ou atlética), eu quero poder adicionar uma imagem de banner (foto de capa) ao meu perfil, para que eu possa personalizar ainda mais minha página e expressar minha identidade ou a da minha equipe/atlética de forma mais visual. CA1: Deve haver uma área designada no topo do perfil para a imagem do banner.
- CA2: O usuário deve poder fazer o upload de uma imagem da galeria do celular.
- CA3: A imagem deve ser ajustada para as dimensões corretas do banner, permitindo um reposicionamento básico.
- CA4: As alterações no banner devem ser salvas e exibidas publicamente no perfil do usuário.
- CA5: O perfil deve ter uma aparência visualmente agradável tanto com quanto sem a imagem de banner.
Remover Conta US6 F3 EP2: Como um usuário eu quero ser capaz de deletar minha própria conta, para que eu não seja mais encontrado dentro do app -CA1: Dentro da área de configurações o usuário deverá ver um botão escrito “Deletar minha conta”
-CA2: Caso o usuário clique em deletar, ele deverá receber um aviso de confirmação para a exclusão de conta.
-CA3: No aviso de confirmação, o usuário, deverá confirmar a senha de sua conta.
- CA4: Com o processo de exclusão bem sucedido, TODOS os dados do usuário deverão ser apagados do banco de dados.
- CA5: Com o processo de exclusão bem sucedido, o usuário não será capaz de recuperar os dados de sua conta, uma vez que já excluída.

Épico 3: Feed de Eventos/Partidas

Funcionalidade História de Usuário Critérios de Aceitação
Crud de Post, tipo Instagram(comentar, denunciar, curtir postagens). US7 F4 EP4: Eu como organizador de um evento, quero poder criar/editar/excluir postagens, para que eu possa compartilhar informações ou momentos do evento com os usuários. - CA1: Organizadores devem poder criar postagens com (talvez foto e vídeo) texto.
- CA2: O organizador criador do post deve poder excluir qualquer comentário em seu post.
- CA3: O usuário que postou deve poder editar os campos da postagem.
- CA4: Apenas o organizador criador do post deve ter permissão para excluir a própria postagem, mediante confirmação da ação.
- CA5: Após criar, editar ou excluir uma postagem, o sistema deve exibir uma notificação ou mensagem de confirmação de sucesso ou erro.
US8 F4 EP3: Eu, como usuário logado, quero curtir, comentar, compartilhar e interagir com postagens no feed de eventos e partidas, para expressar minhas opiniões, engajar com outros usuários e acompanhar o conteúdo de que gosto. - CA1: O campo de comentários deve ser vísivel para todos os usuários logados.
-CA2: O usuário deve conseguir curtir e descurtir postagens, com a contagem de curtidas sendo atualizada em tempo real.
- CA3: O usuário deve conseguir adicionar comentários e visualizar os comentários feitos por outros usuários em ordem cronológica.
- CA4: O usuário deve conseguir compartilhar postagens, podendo escolher entre copiar o link.
- CA5: O usuário deve poder denunciar postagens e comentários que infrinjam as regras da plataforma, informando o motivo da denúncia.
Contabilizar Presença com Botão "Eu vou" US9 F5 EP3: Como um usuário que quer ir ao evento, eu quero poder confirmar minha presença em eventos clicando em um botão “EU VOU”, para que os organizadores tenham uma contagem de pessoas que vão. -CA1: Dado que estou visualizando os detalhes de um evento, devo ver um botão claro com a opção “EU VOU”.
-CA2: Ao clicar no botão, minha presença deve ser registrada e o botão deve mudar de estado para indicar minha confirmação (ex: "Presença Confirmada") e depois redireciona para a descrição do evento.
-CA3: Devo poder cancelar minha confirmação de presença clicando novamente no botão ou em uma opção “Não vou” dentro da descrição do evento.
-CA4: A contagem de pessoas que confirmaram presença deve ser visível na página do evento.
CRUD partidas US10 F6 EP3: Eu como um organizador, quero poder criar, atualizar, visualizar e deletar partidas para que pessoas possam demonstrar interesse e se inscreverem. - CA1: Organizadores devem poder criar uma nova partida definindo informações necessárias como data, hora, local, esporte e times.
-CA2: As informações de partidas agendadas devem poder ser vistos pelos usuários.
-CA3: Organizadores devem poder atualizar as informações de uma partida já criada.
-CA4: Organizadores devem poder deletar/remover partida.
-CA5: Ao criar uma partida o usuário deve poder indicar quantas pessoas estarão em cada time.
-CA6: Ao final de cada partida o dono do post tem até 2 horas para cadastrar a pontuação
Placares de partidas US11 F7 EP3: eu como um jogador ou torcedor, quero saber o resultados de jogos passados que tenho interesse para que eu possa ter uma métrica do desempenho do time/jogador em questão. CA1: O usuário deve poder entrar na tela de partidas e procurar a partida de interesse, e ao clicar nela ver as informações como placar, equipes e jogadores que competiram. CA2: O placar deve estar disponível em até 2 horas após o jogo. CA3: O placar deve ser simples de fácil visualização e entendimento CA4: deve haver a possibilidade de clicar no nome ou foto da equipe e ir para sua página (BIO).

Épico 4: (Atléticas / Times Amadores )

Funcionalidade História de Usuário Critérios de Aceitação
Criar grupos ( Times amadores / Atléticas ) US12 F8 EP4: Como um representante de atlética, eu quero poder criar um grupo/perfil de atlética verificado para que eu possa postar eventos treinos e campeonatos da minha atlética. CA1: O Usuário deve poder criar um grupo em uma tela onde peça as informações para aquele grupo CA2: Na tela de criação de um grupo o sistema deve mostrar um checkbox de “verificação de atlética” onde o usuário possa requisitar por meio de um formulário externo (google forms) a verificação por meio de documentação comprobatória a ser analisada e verificada pelo time Aton. CA3: Um grupo deve ter:
nome;
Descrição;
Esportes praticados;
Admins;
Demais usuários.
US13 F8 EP4: Como um estudante jogador, eu quero poder criar grupos (times amadores) para que eu possa criar partidas casuais onde outros usuários possam se inscrever. CA1: O Usuário deve poder criar um grupo em uma tela onde peça as informações para aquele grupo.CA2: O usuário deve preencher uma tela que pede as informações sobre o grupo a ser criado.CA3: Um grupo deve ter: nome; Descrição; Esportes praticados; Admins; Demais usuários.CA4: ao final da criação do grupo o usuário deve poder cadastrar pessoas em seu grupo recém criadoCA5: O usuário criador deve ter no grupo o status de “admin” (um admin pode adicionar e remover pessoas de seu grupo)
Encontrar grupos ( Times amadores ) para ingressar US14 F9 EP4: Como uma atlética, eu quero adicionar e gerenciar atletas oficiais no elenco para que eu possa ter um controle centralizado dos membros. CA1: A atlética deve poder adicionar novos atletas ao elenco, informando dados básicos como nome completo, posição, matrícula, e contato.CA2: A atlética deve poder editar as informações dos atletas já cadastrados.CA3: A atlética deve poder remover atletas do elenco oficial, com confirmação antes da exclusão.CA4: Apenas usuários com perfil de administrador da atlética devem ter permissão para adicionar, editar ou excluir atletas.
Seguir grupos US15 F10 EP4: Como um usuário eu quero poder seguir os grupos que eu quiser, para que eu consiga acompanhar as novidades mais recentes. CA1: Na aba de pesquisar, o usuário deverá colocar o nome do grupo que ele pretende seguir.CA2: Serão exibidos em formato de lista, todos os perfis com o nome “similar” ao da busca feita. CA3: Ao selecionar o grupo, o usuário será redirecionado a página do perfil.CA4: Na aba do perfil deverá conter um botão escrito “Seguir”.CA5: Ao clicar o usuário passará a seguir o grupo e o nome do botão deverá ser alterado para “Seguindo”.
US16 F10 EP4: Como um usuário eu quero parar de seguir grupos, para que eu deixe de receber suas novas atualizações (postagens) no meu feed. CA1: O usuário, seja pesquisando na aba “Pesquisar” ou indo nos perfis que ele segue, será redirecionado ao perfil do grupo.CA2: No perfil do grupo, o usuário estará como “Seguindo”, ao clicar no botão, o usuário receberá uma mensagem confirmando a ação, “Deseja realmente parar de seguir @perfil...” . CA3: Ao confirmar a ação, o botão deverá ser alterado para “Seguir”, e o grupo deverá ser removido da lista de “Seguindo” do usuário.
Solicitar a entrada em um grupo US17 F11 EP4: Como um usuário, eu quero poder participar de grupos que estão disponiveis no app para que eu possa interagir mais com a comunidade. CA1: O ususário deve visualizar um botão como “Pedir para entrar”, solicitando sua entrada ao grupo. CA2: O usuário só pode enviar pedidos para entrar caso o grupo ainda tenha vagas sobrando. CA3: O usuário deve receber uma mensagem após sua solicitação, como: “Solicitação enviada com sucesso” ou “Erro ao enviar solicitação: [ERRO]”. CA4: O usuário deve conseguir ver o status de sua solicitação. CA5: Usuário deve ser capaz de cancelar sua solicitação caso necessário CA6: O usuário deve ser capaz de visualizar quantas pessoas existem no grupo que deseja entrar.
Cadastro de pessoas em seu próprio time US18 F12 EP4: Como uma atlética, eu quero adicionar e gerenciar atletas oficiais no elenco para que eu possa ter um controle centralizado dos membros. CA1: O usuário (administrador da página da atlética), quando acessar a aba das equipes, deve ver um botão para “Adicionar Atleta”. CA2: Quando o usuário clicar no botão, deve informar o e-mail do estudante a ser convidado. Então, o sistema deve enviar um invite para ao estudante, que precisará aceitá-lo. CA3: O usuário deve conseguir visualizar o nome e perfil do estudante caso o mesmo tenha aceitado o convite na aba das equipes. CA4: O usuário, ao visualizar a lista de membros, deve ter a opção de adicionar cargos (tesouraria, marketing, etc...) e remover o estudante da equipe, revogando seu acesso como membro da atlética.
US19 F12 EP4: Como um grupo amador, eu quero uma forma rápida e simples de convidar pessoas para o meu time para que possamos nos organizar facilmente para marcar jogos casuais. CA1: O usuário, quando acessar a aba de time amador, deve ver um botão para “Convidar para o time”.CA2: Quando o usuário clicar no botão, deve informar o e-mail do estudante a ser convidado. Então, o sistema deve enviar um invite para ao estudante, que precisará aceitá-lo.CA3: Quando o usuário clicar no botão, deve haver a opção de buscar e convidar amigos já adicionados na plataforma diretamente. CA4: O usuário, ao visualizar a lista de membros, deve ter a opção de remover o estudante da equipe, e os outros membros não podem remover outros membros.

Épico 5: Sistema de Notificações

Funcionalidade História de Usuário Critérios de Aceitação
funcionalidade1 US1 F1 EP2: - CA1:
- CA2:
- CA3:
- CA4:
Funcionalidade2 US2 F2 EP2: - CA1:
- CA2:
- CA3:
- CA4:
- CA5:

Épico 6: Gerenciamento do app

Funcionalidade História de Usuário Critérios de Aceitação
funcionalidade1 US1 F1 EP2: - CA1:
- CA2:
- CA3:
- CA4:
Funcionalidade2 US2 F2 EP2: - CA1:
- CA2:
- CA3:
- CA4:
- CA5:

Perfis & Personas

Na idealização do projeto concebida por Lean inception todo usuário tem as mesmas permissões de acesso, exceto o usuário Administrador. Cada permissão é concedida a depender o fluxo de uso do usuário ao criar um grupo onde este usuário será terá permissões avançadas para aquele grupo. Após a tabela, mais especificações sobre a verificação e gestão de usuários.

Tabela : Perfis de acesso

Nome do Perfil Caracteristicas do perfil permissões
Usuário comum Cliente final a utilizar o aplicativo, sendo ativo em esportes ou apenas espectador de eventos promovidos por terceiros. Criar times/equipes, Acesso a publicações de usuários que ele segue.
Gerente de time Persona ativa em esportes que gerencia uma equipe amadora. Adicionar e remover pessoas à sua equipe + Permissões de Usuário comum
Representante de atlética Persona cujo objetivo é representar a atlética e suas ações, bem como publicar eventos e competições. Ter um selo de verificado ao ser submetido a uma verificação de comprovação + permissões de gerente de time

Na criação de um grupo/time/equipe, o usuário será submetido a uma classificação por exemplo para as atléticas, um representante da organização deverá criar uma equipe/grupo/time e ao preencher o formulário de criação deverá marcar uma opção como “é representante de uma atlética da UnB? Solicite sua verificação: [ ]” onde será enviado um link para um formulário externo para envio de documentação comprobatória que será analisada pela equipe de desenvolvimento.