Requisitos do Projeto - Desenho2018-1/pan-pan GitHub Wiki

Histórico de edição

Autor Data
Fabíola Fleury 19/03
Matheus Joranhezon 26/03
Roger Lenke 26/03
Álax Alves 26/03
Roger Lenke 28/03
Matheus Joranhezon 28/03
Pablo Diego 02/04
Fabíola Fleury 03/04

Visão geral do projeto

Pan Pan é uma aplicação web para gerenciamento de bandas musicais. Neste cenário é comum termos grupos formados por duas ou mais pessoas, com diversas músicas, cifras, arquivos e documentos para armazenar e compartilhar entre os membros. Além da organização de uma agenda em comum para shows e ensaios, que precisam de um setlist definido, porém nem sempre é fácil separar o repertório já ensaiado e preparado, das novas sugestões de músicas.

Com estes problemas em mente, o Pan Pan busca solucionar alguns problemas e facilitar a gerência de uma banda para os seus membros, mantendo tudo que é necessário em um só lugar onde todos da banda podem acessar e participar.

Épico 01 - Gerenciamento da banda

E01

Épico Habilitador 01 - Usabilidade do sistema

EH01

Épico Habilitador 02 - Segurança do sistema

EH02

Épico Habilitador 03 - Manutenibilidade do sistema

EH03

Feature 1.1 - Manter usuários

Critérios de aceitação

  • Criação de uma conta de usuário;
  • Alteração de uma conta de usuário;
  • Desativação de uma conta de usuário;
  • Visualizar uma conta de usuário;
  • Login de um usuário.

Feature 1.2 - Manter Banda

Critérios de aceitação:

  • Criação de banda;
  • Atualização de banda;
  • Exclusão de banda;
  • Visualização da lista de bandas;
  • Vinculação de usuários do sistema a bandas;

Feature 1.3 - Manter Setlist

Critérios de aceitação:

  • Criação de setlist;
  • Atualização de setlist;
  • Exclusão de setlist;
  • Visualização da lista de setlist;
  • Vinculação de setlist a uma banda.

Feature 1.4 - Manter Ensaio

Critérios de aceitação:

  • Criação de ensaio;
  • Atualização de ensaio;
  • Exclusão de ensaio;
  • Visualização da lista de ensaios;
  • Vinculação de ensaio a uma banda.

Feature 1.5 - Manter Documentos Relevantes Para Banda

Critérios de aceitação:

  • Criação de documento relevante para banda;
  • Atualização de documento relevante para banda;
  • Exclusão de documento relevante para banda;
  • Visualização de lista de documentos relevantes para banda.

Feature 1.6 - Notificar usuários

Critérios de aceitação:

  • Criação de notificação para o usuário;
  • Alerta de notificação para o usuário;
  • Exclusão de notificação pelo usuário.

Feature Habilitadora 1.1 - Identidade visual da plataforma

Critérios de aceitação:

  • Paleta de cores;
  • Logotipo da plataforma.

Feature Habilitadora 1.2 - Avaliar o cumprimento das Heurísticas de Nielsen

Critérios de aceitação:

  • Visibilidade do estado do sistema
  • Equivalência entre o sistema e o mundo real
  • Liberdade e controle do usuário
  • Consistência e padrões
  • Prevenção de erro
  • Reconhecer ao invés de relembrar
  • Flexibilidade e eficiência de uso
  • Estética e design minimalista
  • Auxiliar usuários a reconhecer, diagnosticar e recuperar ações erradas
  • Ajuda e documentação

Feature Habilitadora 2.1 - Privacidade do usuário

Critérios de aceitação:

  • Sistema de autenticação do usuário
  • Criptação dos dados do usuário

Feature Habilitadora 2.2 - Confidencialidade dos dados da banda

Critérios de aceitação:

  • Apenas membros da banda podem visualizar os dados dela

Feature Habilitadora 3.1 - Modularização do código

Critérios de aceitação:

  • Os pull requests devem ser avaliados em relação ao cumprimento do paradigma da linguagem
  • Os padrões de projeto definidos devem ser aplicados

Feature Habilitadora 3.2 - Rastreabilidade de requisitos

Critérios de aceitação:

  • Deve-se usar o zenhub para rastrear os épicos para features e histórias, e conectá-las a pull requests para rastrear diretamente em código
  • Os requisitos documentados na wiki devem ser facilmente rastreáveis para código

Feature Habilitadora 3.3 - Padronização de código

Critérios de aceitação:

  • Criação de folha de estilo
  • Cumprimento da folha de estilo

Feature Habilitadora 3.4 - Qualidade de código

Critérios de aceitação:

  • Criação do GQM
  • Cumprimento do GQM

2. MoSCoW

Para priorização das Features dentro do projeto utilizamos o Moscow. O funcionamento desta técnica pode ser encontrado no Documento de Engenharia de Requisitos

Prioridade Id Descrição Comentários Valor do Negócio
Alta 1 Manter Usuário Funcionalidade indispensável, pois os usuários precisam ser capazes de se registrar, alterar seus próprios dados e visualizar os dados de outros usuários, além de poder se autenticar para usufruir das outras funcionalidades do site. Must Have
Alta 2 Manter Banda Funcionalidade indispensável, pois os usuários precisam cadastrar suas próprias bandas para poder gerenciá-las. Must Have
Alta 3 Manter Documentos Relevantes Para Banda Funcionalidade indispensável. O ato de compartilhar e gerenciar cifras, letras e músicas da banda é essencial para o sistema e para o controle da banda. Must Have
Média 4 Manter Ensaio Funcionalidade importante. O gerenciamento de ensaios e eventos da banda no geral agrega um valor considerável ao sistema, sendo de extrema importância para o gerenciamento da banda. Should Have
Média 5 Manter Setlist Funcionalidade importante. O gerenciamento das setlists nos eventos que a banda irá participar agrega um valor considerável ao sistema, sendo extremamente importante para o gerenciamento da banda como um todo. Should Have
Baixa 6 Notificar usuários Funcionalidade não tão relevante, que seria interessante para os usuários do sistema, porém não é vital para o funcionamento deste. Want