Histórias de Usuário
Introdução
A especificação dos itens do backlog foram feitas em termos de histórias de usuários, que são um registro de requisitos focados em o que são os requisitos e não em como serão implementados. As histórias possuem o seguinte formato: "Eu, como [papel], quero [o que], pelo [motivo]". As histórias de usuário devem ser curtas, detalhadas e específicas.
Especificação das histórias de usuário
US01
ID: US01
Descrição: Eu, como usuário, desejo configurar o tempo de partida e incremento ao iniciar uma partida para adequar ao meu estilo de jogo.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível selecionar a duração de cada movimento dentro do intervalo de 15 segundos a 180 minutos.
- Deve ser possível selecionar o incremento de cada movimento dentro do intervalo de 0 segundos a 180 segundos.
US02
ID: US02
Descrição: Eu, como usuário, desejo configurar a modalidade e dificuldade do jogo ao iniciar uma partida para não me frustrar com a partida.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível selecionar a modalidade de jogo entre as possibilidades abaixo, explicadas no glossário, para partidas contra outro oponente ou contra o computador.
- Crazyhouse
- Chess960
- King of the hill (Rei da colina)
- Three-check (Três xeques)
- Antichess (anti-xadrez)
- Atomic (Atômico)
- Horde
- Racing Kings (Corrida de reis)
- Deve ser possível selecionar a dificuldade para partidas contra o computador.
- O aplicativo deve oferecer opções padrão selecionadas: modalidade padrão e dificuldade de acordo com o nível em que o usuário se encontra.
- Deve ser possível selecionar o nível do oponente para partidas contra o computador.
US03
ID: US03
Descrição: Eu, como usuário, desejo escolher jogar contra o computador ou contra um jogador para refletir as minhas necessidades do momento.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível escolher o oponente por nome de usuário.
- Deve ser possível jogar contra um oponente aleatório.
US04
ID: US04
Descrição: Eu, como usuário, desejo poder pausar uma partida contra o computador para poder retomá-la depois.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível pausar a partida, parando os contadores de tempo e saindo da tela de jogo.
- Não deve ser possível visualizar a tela de jogo durante a pausa.
US05
ID: US05
Descrição: Eu, como usuário, desejo configurar um estilo de jogo para o robô, baseado em jogadores famosos, para me preparar para os campeonatos de xadrez.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível configurar um estilo de jogo em partidas contra o robô com base em estilos de um conjunto de jogadores famosos.
US06
ID: US06
Descrição: Eu, como usuário, desejo escolher o meu oponente podendo filtrar por por nome e nível, para não me frustrar com a partida.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível escolher o oponente a partir de uma lista de oponentes online dentro de um filtro de nível.
- Deve ser possível escolher o oponente a partir de uma lista de oponentes online dentro de um filtro de nome.
US07
ID: US07
Descrição: Eu, como usuário, desejo que meu oponente não possa pausar uma partida, para manter o jogo justo.
Tema: Partidas
Critérios de Aceitação:
- Não deve ser possível pausar partidas contra outros oponentes.
- O aplicativo deve sinalizar vencimento por WO caso um oponente feche o aplicativo ou bloqueie a tela do celular.
US08
ID: US08
Descrição: Eu, como usuário, desejo jogar partidas casuais sem interferir no meu ranqueamento, para não diminuir minha pontuação.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível jogar uma partida casual contra outro usuário sem interferência no ranqueamento.
- Deve ser possível jogar uma partida casual contra o computador sem interferência no ranqueamento.
US09
ID: US09
Descrição: Eu, como usuário, desejo jogar partidas online sem precisar criar uma conta, para me divertir.
Tema: Partidas
Critérios de Aceitação:
- Deve ser possível jogar contra o computador sem criar uma conta.
- Deve ser possível jogar contra outro usuário sem criar uma conta.
- Não deve ser possível jogar partidas ranqueadas sem criar uma conta.
US10
ID: US10
Descrição: Eu, como usuário, desejo que um tutorial do aplicativo seja exibido na primeira vez que eu utilizá-lo, para que eu não fique desorientado.
Tema: Tutoriais
Critérios de Aceitação:
- Deve ser exibido um tutorial na tela inicial do aplicativo ensinando o usuário a configurar uma partida.
- Deve ser apresentada a opção do usuário iniciar um tutorial de xadrez após o tutorial inicial.
- O tutorial exibido deve possuir a opção "pular", caso o usuário não queira vê-lo.
US11
ID: US11
Descrição: Eu, como usuário, desejo ter acesso à uma seção de tutorial do aplicativo, para me sentir seguro durante momentos de dúvida.
Tema: Tutoriais
Critérios de Aceitação:
- Deve existir na aplicação uma seção de ajuda.
- A seção de ajuda deve conter um manual de acesso para cada funcionalidade.
- A seção de ajuda deve conter um espaço destinado às perguntas frequentes (FAC).
US12
ID: US12
Descrição: Eu, como usuário, desejo aprender movimentos de xadrez por meio de tutoriais, para melhorar meu desempenho.
Tema: Tutoriais
Critérios de Aceitação:
- Deve existir na aplicação uma seção de tutoriais separados por nível: iniciante, fácil, médio, intermediário e avançado.
- Os tutoriais devem possuir explicações teóricas e atividades práticas para o usuário.
US13
ID: US13
Descrição: Eu, como usuário, desejo aprimorar movimentos de xadrez por meio de quebra cabeças, para me sentir desafiado.
Tema: Tutoriais
Critérios de Aceitação:
- Deve existir na aplicação uma seção de quebra cabeças separados por nível: iniciante, fácil, médio, intermediário e avançado.
- O usuário deve ter acesso à solução do quebra cabeça caso deseje, após tentar resolvê-lo pelo menos uma vez.
- O quebra cabeça deve conter uma seção de comentários.
US14
ID: US14
Descrição: Eu, como usuário, desejo ter acesso às regras utilizadas na modalidade de xadrez durante a partida, para não me sentir desorientado.
Tema: Tutoriais
Critérios de Aceitação:
- Deve ser possível acessar uma aba de ajuda durante a partida para consultar as regras da modalidade.
- O acesso à ajuda pode pausar o jogo contra o computador.
- O acesso à ajuda não pode pausar o jogo contra outro usuário.
US15
ID: US15
Descrição: Eu, como usuário, desejo cadastrar tutoriais para outros usuários, para auxiliar outras pessoas.
Tema: Tutoriais
Critérios de Aceitação:
- Deve ser possível criar um tutorial para outros usuários.
- O tutorial criado deve ser validado por um usuário de nível avançado antes de ser divulgado.
US16
ID: US16
Descrição: Eu, como usuário, desejo criar quebra cabeças para outros usuários resolverem, para desafiar outras pessoas.
Tema: Tutoriais
Critérios de Aceitação:
- Deve ser possível criar um quebra cabeça para outros usuários.
- O quebra cabeça criado deve ser validado por um usuário de nível avançado antes de ser divulgado.
US17
ID: US17
Descrição: Eu, como usuário, desejo participar de um sistema de ranqueamento, para me sentir motivado.
Tema: Ranqueamento
Critérios de Aceitação:
- As partidas ranqueadas devem adicionar pontos ao usuário, de acordo com a dificuldade e modalidade.
- Partidas mais difíceis devem valer mais pontos.
- A quantidade de pontos para avançar para o próximo nível deve aumentar proporcionalmente à medida que os níveis progridem.
US18
ID: US18
Descrição: Eu, como usuário, desejo consultar as estatísticas das minhas partidas, para me preparar melhor.
Tema: Ranqueamento
Critérios de Aceitação:
- Deve ser possível ver o tempo de duração dos quebra cabeças resolvidos.
- Deve ser possível ver o usuário do oponente nos quebra cabeças resolvidos.
- Deve ser possível ver a pontuação recebida pelos quebra cabeças resolvidos.
- Deve ser possível ver as modalidades dos quebra cabeças resolvidos.
- Deve ser possível visualizar o percentual de vitórias e derrotas nas últimas partidas.
- Deve ser possível filtrar a visualização por período de tempo.
- Deve ser possível filtrar a visualização por modalidade de jogo.
- Deve ser possível filtrar a visualização por tipo de oponente.
US19
ID: US19
Descrição: Eu, como usuário, desejo visualizar e filtrar o ranqueamento dos jogadores, para me manter motivado.
Tema: Ranqueamento
Critérios de Aceitação:
- Deve ser possível visualizar a pontuação geral dos usuários.
- Deve ser possível filtrar a exibição por nome de usuário.
- Deve ser possível filtrar a exibição por localização (cidade, estado, país) do usuário.
- Deve ser possível filtrar a exibição por modalidade de jogo.
US20
ID: US20
Descrição: Eu, como usuário, desejo consultar as estatísticas dos quebra cabeças resolvidos, para me preparar melhor.
Tema: Ranqueamento
Critérios de Aceitação:
- Deve ser possível ver o tempo de duração dos quebra cabeças resolvidos.
- Deve ser possível filtrar a visualização por período de tempo.
- Deve ser possível filtrar a visualização por nível de dificuldade.
US21
ID: US21
Descrição: Eu, como usuário, desejo adicionar outros jogadores como contatos, para fazer novos amigos.
Tema: Socialização
Critérios de Aceitação:
- Deve ser possível criar um nome de usuário personalizado.
- O nome de usuário deve ser único.
- Deve ser possível encontrar contatos por email ou nome de usuário.
- Deve ser possível adicionar usuários como amigo.
- Um usuário deve ter a possibilidade de negar que outro usuário o adicione como amigo.
US22
ID: US22
Descrição: Eu, como usuário, desejo trocar mensagens com outros jogadores, para fortalecer minhas amizades.
Tema: Socialização
Critérios de Aceitação:
- Deve ser possível enviar mensagens para usuários.
- Deve ser possível bloquear o recebimento de mensagens.
- Deve ser possível filtrar o recebimento de mensagens.
US23
ID: US23
Descrição: Eu, como usuário, desejo assistir partidas de outros jogadores, para observar as técnicas usadas.
Tema: Torneios
Critérios de Aceitação:
- Cada partida deve possuir um código único.
- Deve ser possível assistir uma partida a partir do código dela.
- Deve ser possível assistir uma partida aleatória.
- Deve ser possível visualizar as partidas em andamento.
- Deve ser possível filtrar a visualização das partidas em andamento por modalidade, nível dos jogadores e localização.
US24
ID: US24
Descrição: Eu, como usuário, desejo ser notificado quando partidas de outros jogadores iniciarem, para não perder partidas importantes para mim.
Tema: Torneios
Critérios de Aceitação:
- Deve ser possível habilitar notificações push e/ou por email para partidas de um usuário específico.
Bibliografia
[1] WIEGERS K., BEATTY J. Software Requirements, 3ª edição.
[2] VAZQUEZ C., SIMÕES G. Engenharia de Requisitos, 1ª edição.
Histórico de Versão
Versão | Data | Descrição | Autor(es) | Revisor(es) |
---|---|---|---|---|
1.0 |
03/01/2023 | Criação do documento. | Nicolas Souza | Lucas Macedo |