Ir para o conteúdo

Foward-From

Neste documento busca-se construir a matriz de pós-rastreabilidade através da ótica Foward-From. Foram feitas duas tabelas, a primeira para requisitos funcionais e a segunda para os não funcionais.

Metodologia

Para o desenvolvimento do documento a seguir, a equipe decidiu separa-lo em duas tabelas, a primeira tabela com os requisitos funcionais e a segunda para os requisitos não-funcionais. Como vários membros da equipe iriam trabalhar no documento ao mesmo tempo, foram criadas duas tabelas no drive, para evitar a repetição de requisitos na tabela, que posteriormente seriam convertidas para formato markdown e colocadas na wikia. Link para as tabelas no drive: funcionais e não-funcionais.

Requisitos Funcionais

Código Descrição Tema Épico US Funcionalidade Código
RF1 Tradução instântanea para mensagens em línguas diferentes da padrão T04 EP11 US45 Tradução View
RF2 O aplicativo deve ser capaz de realizar videoconferências em grupo T04 EP11 US46 Videoconferência em grupo Código - Método "livevideo"
RF3 A aplicação deve oferecer ao usuário a possibilidade de entrar no app através de username e senha, previamente cadatrados no aplicativo T01 EP01 US01
US02
Login
View
Action
RF4 O app deve permitir o cadastro na aplicação por contas de serviços de terceiros ou a partir de dados do usuário, como email, username e senha T01 EP02 US03
US04
Cadastro
View
Utils
RF5 O usuário deve ter a disposição, a criação de canais, subgrupos de discussão e grupos, privados/publicos, ilimitados. T04 EP08 US18
US19
US21
Criar channel
View
Action
RF6 O usuário deve ser capaz de, dentro da plataforma, enviar mensagens dentro de grupos de conversa ou dentro de chats privados T04 EP08 US20 Enviar mensagem
Código - Método "sendMessage"
RF7 O usuário deve ser capaz de realizar uma busca de uma mensagem dentro de um determinado chat T04 EP11 US48 Procurar mensagem
Código - SearchMessages
RF8 O app deve oferecer a possibilidade do usuário instalar seu próprio servidor local. T05 EP16 US65 Servidor View
Action
Util
RF9 A plataforma deve permitir a integração de Bots T04 EP14 US62 Bots View
Action
Util
RF10 A plataforma deve permitir a alteração nas configurações do app T03 EP05 US09 Configurações do app
View
Action
Util
Util
RF11 Possibilidade de alteração do idioma no aplicativo T03 EP05 US09, US10 Alterar idioma View
Util
RF12 Permitir usuario iniciar conexão com uma instância do Rocket.chat T05 EP16 US65 Conectar com um servidor Código
RF13 Alteração de senha T03 EP05 US12 Alterar senha
Código - Método "newPassword"
RF14 Possibilidade de mencionar, um ou todos, os membros do grupo T04 EP11 US43 Mencionar Código - Método "Mention"
RF15 Sistema deve ser capaz de Adicionar autenticação de 2 Fatores T03 EP06 US13 Autenticação 2 Fatores View
Util
RF16 Sistema deve mostrar e permitir a edição das configurações da conta T03 EP05
EP06
US09
US14
Editar conta
View
Util
RF17 O sistema deve permitir o envio de arquivos e documentos em um chat T04 EP10 US28
US33
Envio de Arquivo Código - Método "Files"
RF18 Permitir a alteração do status do usuário T03 EP06 US15 Alterar status
Código - Método "renderStatusItem"
RF19 App deve possuir ferramenta para busca de Channels T03 EP07 US16 Buscar channel
Código - Método "search"
RF20 App deve possuir opções para listar Channels em categorias T03 EP07 US17 Ordenar por categoria
Código - Método "groupByType"
RF21 Possibilidade de favoritar um grupo T04 EP11 US42 Favoritar Channel Código - Método "renderRole"
RF22 Permitir a alteração de privacidade do Channel T04 EP09 US22 Privacidade do Channel Código - Método "renderType"
RF23 Definir Channel como Read Only T04 EP09 US23 Read Only Código - Método "renderReadOnly"
RF24 Definir Channel para BroadCast T04 EP09 US24 BroadCast Código - Método "renderBroadcast"
RF25 Permitir que o usuário possa adicionar ou visualizar as informações do Channel através de uma descrição, tópico do Channel T04 EP09
EP11
US25
US26
US47
Adicionar descrição
Código - Método "description"
RF26 App deve permitir o envio de desenhos, como mensagens T04 EP10 US30 Desenho Código - Método "drawing"
RF27 O sistema deve permitir o envio de arquivos de midia, como vídeo e áudio T04 EP10 US31 Midia Código - Método "Files"
RF28 O usuário deve poder editar suas mensagens enviadas T04 EP10 US34 Editar Mensagens Código - Método "editing"
RF29 O usuário deve poder copiar uma mensagem T04 EP10 US35 Copiar Mensagem Código - Método "copying"
RF30 O sistema deve oferecer uma maneira para o usuário possa compartilhar mensagens T04 EP10 US36 Compartilhar Mensagens Código - Método "sharing"
RF31 O usuário deve ter a possibilidade excluir uma mensagem a qualquer momento T04 EP10 US38 Excluir Mensagem Código - Método "deleteMessage"
RF32 Usuário deve poder adicionar reações a mensagens T04 EP10 US39 Adicionar reação a mensagens
Código - Método "onReactionPress"
Código
RF33 Usuário deve ser capaz de responder mensagens enviadas dentro de Channels que ele participa T04 EP10 US40 Responder Mensagem Código - Método "replying"
RF34 Usuário deve ter a possibilidade de reportar alguma mensagem em um Channel que não respeite as diretrizes do app T04 EP10 US41 Reportar Mensagem Código - Método "reporting"
RF35 O sistema deve ser capaz de exibir notificações para mensagens não lidas e para menções em chats e possibilitar ao usuário a configuração das mesmas T04 EP11 US44 Notificações Código - Método "toggleNotifications"
RF36 A aplicação deve fornecer suporte aos seus usuários via chat e e-mail. T02 EP03 US05
US06
Suporte Código - Método "sendEmail"
R37 O app deve oferecer a possibilidade do usuário procurar mensagens por texto T04 EP11 US48 Procurar mensagens Código - Método "searchText"
R38 O Sistema deve permitir que o usuário favorite uma mensagem T04 EP11 US49 Favoritar mensagem View
R39 O Sistema deve permitir que o usuário possa fixar uma mensagem no Channel T04 EP11 US50 Fixar mensagem View
R40 O Usuário deve conseguir convidar membros do Channel para o Video Chat T04 EP12 US53 Convidar membros para video chat View
R41 O Sistema deve permitir que o usuário possa compartilhar a tela de seu dispositivo T04 EP12 US57 Compartilhar tela View
R42 A aplicação deve permitir que o usuário possa visualizar a lista de membros do Channel T04 EP13 US58 Visualizar membros Código - Método "Members"
R43 A Aplicação deve permitir que o usuário possa visualizar informações básicas de outro usuário T04 EP13 US59 Visualizar informações de usuários View
R44 A Aplicação deve permitir que os usuários administradores do Channel possam adicionar novos usuários T04 EP13 US60 Adicionar membros Código - Método "canAddUser"
R45 A Aplicaçaõ deve permitir que os usuários administradores do Channel possam remover usuários T04 EP13 US61 Remover membros View
R46 A Aplicação deve permitir que os usuários possam esconder um Channel T04 EP15 US63 Esconder channel View
R47 A Aplicação deve permitir que os usuários possam deixar um Channel T04 EP15 US64
US63
Deixar channel Código - Método "leaveChannel"
Action - Método "leaveRoom"
R48 O Sistema deve permitir que um usuário possa visualizar todos os Channels visiveis do Servidor T04 EP15 US69 Visualizar channels View
Action
Util
R49 O Sistema deve permitir que um usuário possa visualizar a lista com todos os usuários do Servidor T04 EP15 US70 Visualizar usuários de um servidor View
Action
RF50 Sistema deve permitir que o usuário visualize as lista de arquivos enviados no channel T04 EP10 US51 Visualizar arquivos enviados Código - Método "Files"

Requisitos Não-Funcionais

Código Descrição NFR Operacionalizações Funcionalidade
RNF1 A aplicação deve ser capaz de ser executada em diversas plataformas NFR-Portabilidade "Acesso por aplicação mobile". "Acesso por aplicação web"; "Acesso por aplicação desktop"; Plataformas
RNF2 O Rocket.chat deve ofecer suporte tanto para a aplicação, em diversas arquiteturas, como para o usuário NFR-03 "Documentação" "Suporte online" Suporte
RNF3 Deve ser uma plataforma que ofereça segurança com dados dos usuários. NFR-03 "Criptografia ponta a ponta" "Backup de dados"
RNF4 O Rocket.chat deve estar disponível na maior quantidade possível de idiomas NFR-05 "Traduzir todos os menus do app para diferentes linguagens" "permitir a escolha de nova linguagem dentro do app" Idiomas
RNF5 O Rocket.chat deve ter uma boa interface visual, minimalista e intuitiva, facilitando a usabilidade do usuário. NFR-04 "Layout simples"; "Icones intuitivos"; "Descrições" Repositório aplicação desktop/web Repositório aplicação mobile
RNF6 A plataforma deve possuir uma documentação bem organizada. Que explique todas as funcionalidades e restrições aplicáveis. NFR-03 "Documentação"
RNF7 A aplicação, sendo do tipo openSource, deve possuir a liberdade da contribuição pela comunidade de software NFR-08 "Encorajar a evolução do código existente""Divulgar as vantagens da comunidade ser ativa"
RNF8 A aplicação deve oferecer uma performace fluida ajude na experiência positiva do usuário NFR-02 "Compressão de dados" "uso de cach para dados não modificados"
RNF9 Visando uma melhor experiência ao usuário e desempenho da plataforma, o app deve fazer integrações com diferentes plataformas NFR-09 "Integrável com redes sociais para autenticação"
RNF10 A plataforma deve identificar e tratar erros dentro do aplicativo

Gifs

RF1_GIF

RF2_GIF

RF3_GIF

Login

RF4_GIF

Cadastro

RF5_GIF

Criar Channel

RF6_GIF

Enviar Mensagem

RF7_GIF

Pesquisar Mensagem

RF8_GIF

RF9_GIF

RF10_GIF

RF11_GIF

RF12_GIF

RF13_GIF

RF14_GIF

RF15_GIF

RF16_GIF

RF17_GIF

RF18_GIF

RF19_GIF

RF20_GIF

RF21_GIF

RF22_GIF

RF23_GIF

RF24_GIF

RF25_GIF

RF26_GIF

RF27_GIF

RF28_GIF

RF29_GIF

RF30_GIF

RF31_GIF

RF32_GIF

RF33_GIF

RF34_GIF

RF35_GIF

RF36_GIF

RF37_GIF

RF38_GIF

RF39_GIF

RF40_GIF

RF41_GIF

RF42_GIF

RF43_GIF

RF44_GIF

RF45_GIF

RF46_GIF

RF47_GIF

RF48_GIF

RF49_GIF

RF50_GIF

RNF1

Mobile

Web navegador

Desktop

RNF2

Suporte

RNF4

Versionamento

Data Versão Modificação Autor
16/06/2019 1.0 Abertura do documento Marcos Nery
17/06/2019 1.1 Inclusão das tabelas inicias de requisitos Marcos Nery
18/06/2019 1.2 Inclusão dos elos Marcos Nery
19/06/2019 1.3 Inclusão dos GIFS André Lucas
24/06/2019 1.4 Inclusão dos Requisitos RF37-RF50 Heron Rodrigues