Especificação de Casos de Uso - alanmlatisuma/HomeBroker GitHub Wiki

- UC-01: Cadastro
Função Permitir cadastro de novos usuários
Atores Usuário
Pré-condição -
Pós-condição Usuário terá seu cadastro no sistema e estará apto para login
Fluxo Principal 1. O usuário entra na página de cadastro.2. O usuário preenche o formulário de cadastro, informando nome, e-mail, senha e outros dados.3. Os dados são validados pelo sistema e o cadastro é efetuado.4. Sistema envia e-mail para o email informado pelo usuário para confirmação de cadastro.5. O usuário, por meio do e-mail recebido, confirma sua identidade.
Fluxo Alternativo 2a. Se já houver um cadastro com o e-mail informado pelo usuário, o sistema notifica o usuário que já existe cadastro com esse e-mail.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-02: Login
Função Permitir login dos usuários
Atores Usuário
Pré-condição Usuário possuir um cadastro
Pós-condição Usuário acessará a parte do sistema que exige autenticação
Fluxo Principal 1. O usuário entra na página de login.2. O usuário preenche o formulário de login, informando e-mail e senha.3. Os dados são validados pelo sistema e o login é efetuado.4. Sistema redireciona usuário para a página inicial.
Fluxo Alternativo 2a. Se não houver um cadastro com o e-mail informado pelo usuário, o sistema notifica o usuário que não existe cadastro com esse e-mail.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-03: Recuperação de senha via email
Função Permitir que o usuário recupere sua senha por meio do e-mail
Atores Usuário
Pré-condição Usuário deve estar cadastrado no sistema
Pós-condição Usuário será redirecionado para página de alteração de senha
Fluxo Principal 1. O usuário clica em "Esqueci minha senha" na página de login.2. O usuário informa o e-mail cadastrado.3. O sistema envia um e-mail com um link de recuperação de senha.4. O usuário acessa o link e é redirecionado para página de alteração.
Fluxo Alternativo 2a. Se o e-mail informado não estiver cadastrado, o sistema notifica o usuário.
Fluxo Exceção 3a. Se o servidor estiver fora do ar, o email não é enviado e o sistema informa o usuário.
- UC-04: Alteração de senha
Função Permitir que o usuário altere sua senha
Atores Usuário
Pré-condição Usuário deve estar autenticado ou ter acessado via link do email
Pós-condição Usuário terá a senha alterada e poderá usá-la no próximo login
Fluxo Principal 1. O usuário acessa a página de alteração de senha.2. O usuário insere a senha atual e a nova senha.3. O sistema valida a senha atual e altera para a nova.
Fluxo Alternativo 2a. Se o usuário tiver acessado via link de recuperação de senha, a senha atual não é exigida. 3a. O sistema altera para a nova senha.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-05: Modificação de cadastro
Função Permitir que o usuário modifique os dados do seu cadastro
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário terá seu cadastro atualizado
Fluxo Principal 1. O usuário acessa a página de modificação de cadastro.2. O usuário altera os dados desejados (ex: nome, e-mail).3. O sistema valida e salva as modificações.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-06: Guia do iniciante
Função Fornecer um guia para novos usuários entenderem o funcionamento do sistema
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário terá acesso a um guia explicativo
Fluxo Principal 1. O usuário acessa a página do guia do iniciante.2. O sistema exibe um tutorial explicando as principais funcionalidades.
- UC-07: Notificação por bloqueio
Função Notificar o usuário quando sua conta for bloqueada
Atores Usuário
Pré-condição Usuário ter tido sua conta bloqueada
Pós-condição Usuário estará ciente do bloqueio
Fluxo Principal 1. O sistema identifica o bloqueio da conta.2. O sistema envia uma notificação por e-mail ou mensagem informando o bloqueio.
- UC-08: Envio de OV/OC
Função Permitir que o usuário envie uma ordem de venda ou compra
Atores Usuário
Pré-condição Usuário estar autenticado e possuir saldo ou ações
Pós-condição Ordem será enviada ao mercado
Fluxo Principal 1. O usuário acessa a página de envio de ordens.2. O usuário insere os parâmetros da ordem (ex: quantidade, preço).3. O sistema valida os dados e envia a ordem ao mercado.
Fluxo Alternativo 2a. Se o usuário tiver informado parâmetros inválidos, o sistema o informa.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-09: Cancelamento de OV/OC
Função Permitir que o usuário cancele uma ordem de venda ou compra
Atores Usuário
Pré-condição Usuário deve ter uma ordem em andamento
Pós-condição Ordem será cancelada
Fluxo Principal 1. O usuário acessa a página de ordens em andamento.2. O usuário seleciona a ordem que deseja cancelar.3. O sistema cancela a ordem e notifica o usuário.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-10: Modificação de OV/OC
Função Permitir que o usuário modifique uma ordem de venda ou compra já enviada
Atores Usuário
Pré-condição Usuário deve ter uma ordem em andamento
Pós-condição Ordem será modificada e reenviada ao mercado
Fluxo Principal 1. O usuário acessa a página de ordens em andamento.2. O usuário seleciona a ordem que deseja modificar.3. O sistema permite que o usuário modifique os parâmetros e reenvia a ordem ao mercado.
Fluxo Alternativo 3a. Se o usuário tiver informado parâmetros inválidos, o sistema o informa.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-11: Consulta de status
Função Permitir que o usuário consulte o status de suas ordens enviadas
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará o status atual das suas ordens
Fluxo Principal 1. O usuário acessa a página de consulta de status.2. O sistema exibe o status atual das ordens do usuário.
Fluxo Alternativo 2a. Se o usuário não possuir ordens, o sistema o informa.
Fluxo Exceção 2a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-12: Consulta de histórico
Função Permitir que o usuário consulte o histórico de ordens enviadas
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará o histórico de todas as ordens enviadas
Fluxo Principal 1. O usuário acessa a página de histórico de ordens.2. O sistema exibe o histórico completo de ordens do usuário.
Fluxo Alternativo 2a. Se o usuário não possuir ordens, o sistema o informa.
Fluxo Exceção 2a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-13: Permitir OV/OC a mercado
Função Permitir que o usuário envie ordens a mercado (sem especificar preço)
Atores Usuário
Pré-condição Usuário deve estar autenticado e possuir saldo ou ações
Pós-condição A ordem será enviada a mercado
Fluxo Principal 1. O usuário seleciona a opção de ordem a mercado.2. O usuário define a quantidade e envia a ordem.3. O sistema envia a ordem ao mercado com o preço atual.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-14: Visualização de OVs/OCs por ação
Função Permitir que o usuário visualize todas as ordens de venda ou compra de uma ação específica
Atores Usuário
Pré-condição Usuário deve ter enviado ordens de uma ação específica
Pós-condição Usuário visualizará todas as ordens da ação selecionada
Fluxo Principal 1. O usuário acessa a página de ordens.2. O usuário seleciona uma ação específica.3. O sistema exibe todas as ordens de venda ou compra da ação selecionada.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-15: Envio de OV/OC com gatilho
Função Permitir que o usuário envie ordens com gatilhos automáticos (ex: preço-alvo)
Atores Usuário
Pré-condição Usuário deve estar autenticado e possuir ações
Pós-condição Ordem será enviada automaticamente ao atingir o gatilho
Fluxo Principal 1. O usuário acessa a página de envio de ordens.2. O usuário define o gatilho (ex: preço-alvo).3. O sistema envia automaticamente a ordem quando o gatilho for atingido.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-16: Simulação de venda/compra
Função Permitir que o usuário simule ordens de venda ou compra sem executá-las
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará os resultados esperados da simulação, sem execução real
Fluxo Principal 1. O usuário acessa a página de simulação de compra/venda.2. O usuário insere os parâmetros da ordem (ex: quantidade, preço).3. O sistema processa a simulação e exibe os resultados (ex: lucro ou perda estimados).
- UC-17: Visualização da carteira
Função Permitir que o usuário visualize suas ações e outros ativos em carteira
Atores Usuário
Pré-condição Usuário deve possuir ativos na carteira
Pós-condição Usuário visualizará os detalhes de seus ativos
Fluxo Principal 1. O usuário acessa a página de visualização da carteira.2. O sistema exibe a lista de ativos do usuário, incluindo quantidade e valor atual.
Fluxo Exceção 2a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-18: Envio de OC/OV pela carteira
Função Permitir que o usuário envie ordens de compra ou venda diretamente pela visualização da sua carteira
Atores Usuário
Pré-condição Usuário deve estar autenticado e possuir ativos na carteira
Pós-condição Ordem será enviada ao mercado
Fluxo Principal 1. O usuário acessa sua carteira.2. O usuário seleciona um ativo e escolhe a opção de enviar uma ordem de compra ou venda.3. O sistema envia a ordem ao mercado.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-19: Agrupamento de ações
Função Permitir que o usuário agrupe ações por critérios como setor, desempenho, etc.
Atores Usuário
Pré-condição Usuário deve possuir ativos na carteira
Pós-condição Usuário visualizará suas ações agrupadas de acordo com o critério escolhido
Fluxo Principal 1. O usuário acessa a página de agrupamento de ações.2. O usuário escolhe o critério de agrupamento.3. O sistema agrupa as ações conforme solicitado e exibe a visualização agrupada.
- UC-20: Visualização de extrato por período
Função Permitir que o usuário visualize o extrato da sua carteira em um determinado período
Atores Usuário
Pré-condição Usuário deve possuir um histórico de transações
Pós-condição Usuário visualizará o extrato das transações no período especificado
Fluxo Principal 1. O usuário acessa a página de extrato.2. O usuário seleciona o período desejado.3. O sistema exibe o extrato com as transações realizadas no período escolhido.
- UC-21: Cotação das ações
Função Permitir que o usuário visualize as cotações das ações em tempo real
Atores Usuário
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará a cotação atualizada das ações
Fluxo Principal 1. O usuário acessa a página de cotações.2. O sistema exibe as cotações atualizadas das ações desejadas.
- UC-22: Personalização da visualização
Função Permitir que o usuário personalize a visualização da sua carteira (ex: ordem das colunas, filtros)
Atores Usuário
Pré-condição Usuário deve possuir uma carteira de ativos
Pós-condição Usuário terá visualização personalizada
Fluxo Principal 1. O usuário acessa a página de visualização da carteira.2. O usuário escolhe as preferências de visualização (ex: ordenar por preço ou setor).3. O sistema salva e exibe a carteira conforme as preferências definidas.
Fluxo Exceção 3a. Se o banco de dados ou o servidor estiverem fora do ar, o sistema informa o usuário e pede que tente novamente depois.
- UC-23: Exibição de altas e baixas
Função Permitir que o usuário visualize as maiores altas e baixas do mercado
Atores Usuário, API Bolsa
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará as ações com maiores variações no mercado
Fluxo Principal 1. O usuário acessa a página de exibição de altas e baixas.2. O sistema faz uma requisição para a API da bolsa.3. API da bolsa retorna as altas e baixas do mercado.4. Sistema exibe as informações recebidas para o usuário
Fluxo Exceção 3a. Caso a API da bolsa esteja com problemas internos, o sistema deve informar tal fato ao usuário
- UC-24: Apresentação de gráficos
Função Permitir que o usuário visualize gráficos das ações e do mercado
Atores Usuário, API Bolsa
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará gráficos de desempenho de ações e índices de mercado
Fluxo Principal 1. O usuário acessa a página de gráficos.2. O sistema faz uma requisição para a API da bolsa.3. API da bolsa retorna os dados relevantes para os gráficos.4. Sistema exibe as informações recebidas para o usuário
Fluxo Exceção 3a. Caso a API da bolsa esteja com problemas internos, o sistema deve informar tal fato ao usuário
- UC-25: Exibição de dados das ações
Função Permitir que o usuário visualize detalhes das ações, como volume, preço e outros dados financeiros
Atores Usuário, API Bolsa
Pré-condição Usuário deve estar autenticado
Pós-condição Usuário visualizará dados detalhados das ações de interesse
Fluxo Principal 1. O usuário acessa a página de dados de ações.2. O sistema faz uma requisição para a API da bolsa.3. API da bolsa retorna os dados relevantes das ações selecionadas.4. Sistema exibe as informações recebidas para o usuário
Fluxo Exceção 3a. Caso a API da bolsa esteja com problemas internos, o sistema deve informar tal fato ao usuário
- UC-26: Notificação sobre ações
Função Notificar o usuário sobre eventos relacionados às ações de sua carteira (ex: altas/baixas significativas)
Atores Usuário
Pré-condição Usuário deve possuir ações na carteira
Pós-condição Usuário receberá notificações de eventos relacionados às suas ações
Fluxo Principal 1. O sistema monitora as ações da carteira do usuário.2. Quando ocorre um evento relevante (ex: alta significativa), o sistema envia uma notificação ao usuário.