4. Documento de Especificação de Requisitos - GiseliSiqueira/Analise-de-sistemas GitHub Wiki

Documento de Requisitos

Projeto: Nossa Distribuidora

Registro de Alterações:

Versão Responsável Data Alterações
1.0 Giseli Siqueira, Filipe Corassa 19/05/17 Descrição de casos de uso do subsistema atendimentoCliente
1.1 Giseli Siqueira, Filipe Corassa 26/05/17 Descrição de casos de uso do subsistema controleEstoque

1. Introdução

Este documento apresenta a especificação dos requisitos do sistema Nossa Distribuidora. A atividade de análise de requisitos foi conduzida aplicando-se técnicas de modelagem de casos de uso, modelagem de classes e modelagem de comportamento dinâmico do sistema. Os modelos apresentados foram elaborados usando a UML. Este documento está organizado da seguinte forma: a seção 2 apresenta os subsistemas identificados, mostrando suas dependências na forma de um diagrama de pacotes; a seção 3 apresenta o modelo de casos de uso, incluindo descrições de atores, os diagramas de casos de uso e descrições de casos de uso; a seção 4 apresenta o modelo conceitual estrutural do sistema, na forma de diagramas de classes; a seção 5 apresenta o modelo comportamental dinâmico do sistema, na forma de diagramas de estado e de atividades; finalmente, a seção 6 apresenta o dicionário de projeto, contendo as definições das classes, atributos e principais operações identificados.

2. Identificação de Subsistemas

A Figura 1 mostra os subsistemas identificados no contexto do presente projeto, os quais são descritos na Tabela 1.

alt tag

Figura 1 – Diagrama de Pacotes e os Subsistemas Identificados.

Tabela 1 – Subsistemas

Subsistema Descrição
atendimentoCliente Envolve as funcionalidades referentes ao atendimento dos clientes da distribuidora, incluindo vendas de produtos, pagamento e cadastro de clientes.
controleEstoque Envolve as funcionalidades do sistema referentes ao controle do estoque de produtos, abrangendo o controle de cada tipo de produto comercializado e os fornecedores.

3. Modelo de Casos de Uso

O modelo de casos de uso visa capturar e descrever as funcionalidades que um sistema deve prover para os atores que interagem com o mesmo. Os atores identificados no contexto deste projeto estão descritos na Tabela 2.

Tabela 2 – Atores

Ator Descrição
Atendente Representa funcionários da distribuidora responsável pelo atendimento aos clientes e realização das vendas.
Administrador Representa funcionários da distribuidora responsáveis pela manutenção do estoque e gerenciamento de clientes e distribuidoras, além de realizar atividades referentes ao Atendente.

A seguir, são apresentados os diagramas de casos de uso e as descrições associadas, organizados por subsistema.

3.1 Subsistema atendimentoCliente

A Figura 2 apresenta o diagrama de casos de uso do subsistema atendimentoCliente.

alt tag

Legenda:
Amarelo: Cadastros
Vermelho: Transações
Azul: Informações
Figura 2 – Diagrama de Casos de Uso do Subsistema atendimentoCliente.

A seguir, são apresentadas as descrições de cada um dos casos de uso identificados. Os casos de uso cadastrais de baixa complexidade, envolvendo inclusão, alteração, consulta e exclusão, são descritos na tabela abaixo, segundo o padrão da organização.

Tabela 3 – Casos de Uso Cadastrais

Subsistema atendimentoCliente
Caso de Uso Ações Possíveis Observações Requisitos Classes
Cadastrar Cliente I, A, C, E [I] Informar: Nome completo, endereço (cep, rua, número, bairro, cidade, estado) e telefone.
[A] Só é possível alterar o status de ativação do cliente caso ele não seja um cliente frequente da distribuidora e não possua pendências de pagamento.
[A] Não é possível alterar o código do cliente
[E] Não é permitido excluir clientes com pendências de pagamento.
[E] Sempre que um cliente for excluído uma confirmação é solicitada ao administrador.
RF01, RF08, RF09, RF10 Cliente, Endereco
Realizar Venda I, A, C, E [I] Informar: Nome do cliente, tipo do produto, quantidade, data de recebimento, e valor de desconto (se houver).
[A] Vendas concluídas não podem ser alteradas.
[A] Não é possível alterar o Código da venda.
[A] Não é possível alterar a data da venda.
[E] Não é possível excluir vendas com status de entrega concluído.
RF01, RF02, RF03 Cliente, Venda, ItemVenda, Produto

Os casos de uso de consulta mais abrangente que as consulta a um único objeto (já tratadas como parte dos casos de uso cadastrais), mas ainda de baixa complexidade, tais como consultas que combinam informações de vários objetos envolvendo filtros, estão descritos na tabela abaixo, segundo o padrão da organização.

Tabela 4 – Casos de Uso de Consulta

Subsistema atendimentoCliente
Caso de Uso Observações Requisitos Classes
Verificar Vencimentos de Prazos para Pagamento As consultas de prazos para pagamento podem ser realizadas informando (ou não) um ou uma combinação das seguintes informações: data, nome do cliente e código de venda.
Resultado: Serão listados o código da venda, o nome do cliente, telefone, o valor a ser pago e a data para pagamento.
RF02, RF03 Venda, Cliente
Controlar Entregas As consultas de entregas pendentes podem ser realizadas informando um ou uma combinação das seguintes informações: data da venda e código da venda.
Resultado: Serão listados o código da venda, o nome do cliente, o endereço do cliente, o valor a receber, e a sequência de entrega.
RF12 Venda, Cliente
Gerar Relatório Clientes As consultas de clientes podem ser realizadas informando um ou uma combinação das seguintes informações: Status de ativação (ativo ou desativo), status de pagamento (pendente ou não pendente) e data de início da operação da distribuidora (para se obter todos os clientes cadastrados).
Resultado: serão listados todos os dados dos clientes e os códigos das vendas feitas para cada um (se houverem).
RF14 Venda, Cliente
Gerar Relatório de Vendas As consultas de vendas podem ser realizadas informando (ou não) um ou uma combinação das seguintes informações: data e nome do cliente.
Resultado: Serão listados os dados das vendas realizadas na data informada ou pelo cliente informado.
RF11 Venda, Cliente

A seguir, são apresentados os casos de uso de maior complexidade que não puderam ser descritos segundo os formatos tabulares simplificados. Esses casos de uso são descritos segundo o padrão de descrição completa de casos de uso definido.

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: atendimentoCliente
Caso de Uso: Cadastrar Cliente

Descrição Sucinta: Parte desse caso de uso já foi descrito na tabela de casos de uso cadastrais. Ele é responsável por incluir um novo cliente, bem como alteração de dados, consulta e exclusão de clientes.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Incluir Novo Cliente 1. O atendente informa os dados do novo cliente, a saber: Nome completo, endereço (cep, rua, número, bairro, cidade, estado) e telefone.
2. O sistema gera um código para o cliente.
3. O novo cliente é registrado como sendo um cliente ativo.
Alterar Dados de Cliente 1. O atendente informa qual cliente terá os dados alterados.
2. O atendente informa os novos dados, sendo que o código do cliente e o status de ativação e pagamento não poderão ser alterados.
3. As alterações são registradas.
Desativar Cliente 1. O administrador informa o cliente ativo que deseja desativar, sendo que só podem ser desativados clientes que não possuam pendências de pagamento.
2. O cliente é desativado.
Reativar Cliente 1. O atendente informa o cliente desativo que deseja reativar.
2. O cliente é reativado.
Consultar Dados de Cliente 1. O atendente informa o cliente que deseja consultar.
2. Os dados do cliente são apresentados.
Excluir Cliente 1. O administrador informa o cliente que deseja excluir.
2. Os dados do cliente são apresentados e uma confirmação é solicitada.
3. O cliente é excluído.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Incluir Novo Cliente 1. Dados inválidos 1a. Uma mensagem de erro é exibida e retorna ao passo 1 para correção do(s) dado(s) inválido(s).
Alterar Dados de Cliente 1. Cliente inexistente
2. Dados inválidos
1a. Uma mensagem de erro é exibida e retorna ao passo 1 para informação de cliente existente.
2a. Uma mensagem de erro é exibida, retornando ao passo 2 para correção do(s) dado(s) inválido(s).
Desativar Cliente 1. Cliente inexistente ou desativado
1. O cliente possui pendências de pagamento
1a. Uma mensagem de erro é exibida informando que o cliente não existe ou é um cliente desativado. O fluxo de eventos é abortado.
1b. Uma mensagem de erro é exibida informando que o cliente possui pendência de pagamento, não podendo ser desativado. O fluxo de eventos é abortado.
Reativar Cliente 1. Cliente inexistente ou ativo. 1a. U1a. Uma mensagem de erro é exibida informando que o cliente não existe ou é um cliente ativo. O fluxo de eventos é abortado.
Consultar Dados de Cliente 1. Cliente inexistente 1a. Uma mensagem de erro é exibida sendo apresentada uma opção para Incluir Novo Cliente ou retornar ao passo 1 para informação de cliente existente.
Excluir Cliente 1. O cliente possui pendencias de pagamento
2. Confirmação de exclusão negada
1a. Uma mensagem de erro é exibida informando que o cliente possui pendência de pagamento, não podendo ser excluído.
2a. Abortar fluxo de eventos.

Requisitos Relacionados: RF01, RF08, RF09, RF10, RNF01, RNF03, RNF04, RNF06, RNF10
Classes Relacionadas: Cliente, Endereco

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: atendimentoCliente
Caso de Uso: Realizar Venda

Descrição Sucinta: Parte desse caso de uso já foi descrito na tabela de casos de uso cadastrais. Ele é responsável pela realização de uma nova venda, bem como de consulta alteração e cancelamento de uma venda.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Efetuar Nova Venda 1. O atendente informa o cliente que deseja realizar a compra.
2. Caso o cliente não esteja cadastrado ou esteja desativado:
2.1. Incluir Cadastrar Cliente.
3. Para o cliente informado, incluir Verificar Vencimentos de Prazos para Pagamento.
4. Para cada item a ser vendido:
4.1. O atendente seleciona o produto a ser vendido e o adiciona na lista.
4.2. O sistema carrega o código, a descrição e o valor do produto adicionado na lista.
4.3. O atendente informa a quantidade desejada para o produto selecionado.
4.4. O sistema calcula o valor total da venda.
4.5. O atendente adiciona a data de pagamento da venda.
4.6. O atendente informa o valor de desconto (se houver).
4.7. O sistema calcula o valor total da venda subtraindo os possíveis descontos.
5. A venda é registrada com a data corrente como data de venda e com status de entrega e de pagamento como falso.
Consultar Dados de Venda 1. O atendente seleciona a venda que deseja consultar.
2. Os dados da venda são apresentados.
Cancelar Venda 1. O atendente seleciona a venda que deseja cancelar, sendo que só podem ser canceladas vendas que não tenham status de entrega concluído.
2. Os dados da venda são apresentados e é solicitada uma confirmação de exclusão.
3. A venda selecionada é excluída.
Alterar Dados de Venda 1. O atendente seleciona a venda que deseja alterar.
2. O atendente informa os novos dados, sendo que o código da venda e data da venda não poderá ser alterado.
3. As alterações são registradas.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Efetuar Nova Venda 3. Cliente está em débito.
4.1. O produto selecionado não está disponível em estoque.
4.3. A quantidade informada é maior que a quantidade disponível em estoque.
4.5. A data de pagamento é menor que a data da venda.
4.6. O valor do desconto é maior que o valor total da venda.
3a. Uma mensagem de erro é exibida informando que o cliente possui débitos pendentes, não podendo efetuar nova compra até quitação do débito. O fluxo de eventos é abortado.
4.1a. Uma mensagem de erro é exibida informando que o produto selecionado não está disponível em estoque, retornando ao passo 4.1 para informação de um produto disponível.
4.3a. Uma mensagem de erro é exibida informando que não há quantidade suficiente do produto em estoque, retornando ao passo 4.3 para informação de nova quantidade.
4.5a. Uma mensagem de erro é exibida informando que a data de pagamento é menor que a data da venda, retornando ao passo 4.5 para informação de data válida.
4.6a. Uma mensagem de erro é exibida informando que o valor do desconto é maior que o valor total da venda, retornando ao passo 4.6 para informação de novo valor de desconto.
Consultar Dados de Venda 1. Cliente inexistente
2. Dados inválidos
1a. Uma mensagem de erro é exibida e retorna ao passo 1 para informação de cliente existente.
2a. Uma mensagem de erro é exibida, retornando ao passo 2 para correção do(s) dado(s) inválido(s).
Cancelar Venda 1. A venda está concluída.
2. Confirmação de exclusão negada.
1a. Uma mensagem de erro é exibida informando que a venda já foi fechada, não podendo ser excluída. O fluxo de eventos é abortado.
2a. O fluxo de eventos é abortado.
Alterar Dados de Venda 1. Venda Inexistente
2. Dados inválidos.
1a. Uma mensagem de erro é exibida e retorna ao passo 1 para informação de venda existente.
2a. Uma mensagem de erro é exibida, retornando ao passo 2 para correção do(s) dado(s) inválido(s).

Requisitos Relacionados: RF01, RF03, RN02, RN03, RN06, RN07, RN08, RN09, RNF01, RNF03, RNF04, RNF05, RNF06, RNF10

Classes Relacionadas: Cliente, Venda, ItemVenda, Produto

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: atendimentoCliente
Caso de Uso: Registrar Pagamento

Descrição Sucinta: Este caso de uso é responsável pela realização de um pagamento.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Efetuar Pagamento 1. O atendente seleciona a venda para registrar o pagamento.
2. O atendente informa o valor pago pelo cliente.
3. O sistema registra o pagamento alterando o status de pagamento da venda para “pago”.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Efetuar Pagamento 2. O valor informado é menor do que o valor a ser pago. 2a. Uma mensagem de erro é exibida informando que o valor a ser pago deve ser igual ao valor a ser pago e retorna ao passo 2 para informação de um valor válido.

Requisitos Relacionados: RF02, RN03, RN04, RNF03, RNF06, RNF10

Classes Relacionadas: Cliente, Venda

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: atendimentoCliente
Caso de Uso: Verificar Pagamentos

Descrição Sucinta: Este caso de uso é responsável por listar as vendas que possuem prazos de pagamento vencidos.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Verificar Pagamentos 1. O atendente seleciona uma data anterior a atual para verificar os prazos vencidos no período.
2. Se há prazos vencidos no período informado:
2.1. O sistema exibe as vendas mostrando o código da venda, o nome do cliente, o telefone de contato do cliente, a data de pagamento da venda e o valor a ser pago.
2.2. Caso o atendente deseje registrar o pagamento de uma venda:
2.2.1. O atendente seleciona a venda para registrar o pagamento.
2.2.2. Incluir Registrar Pagamento

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Verificar Pagamentos 1. A data informada é maior ou igual a data atual.
2. Não há prazos vencidos no período informado.
1a. Uma mensagem de erro é exibida informando que a data deve ser menor que a data atual e retorna ao passo 1 para a informação de data válida.
2a. Uma mensagem é exibida informando que não existem prazos vencidos no período informado. O fluxo de eventos é abortado.

Requisitos Relacionados: RF02, RF03, RN03, RNF03, RNF06, RNF10

Classes Relacionadas: Venda, Cliente

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: atendimentoCliente
Caso de Uso: Verificar Entregas

Descrição Sucinta: Este caso de uso é responsável por listar as vendas que possuem prazos de pagamento vencidos.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Controlar Entregas Pendentes 1. O sistema verifica as vendas com status de entrega “pendente” e as exibe mostrando o código da venda, o nome do cliente, o endereço do cliente, a data de pagamento da venda e o valor a ser pago.
2. Caso uma venda saia para entrega:
2.1. O atendente seleciona a venda que sairá para entrega.
2.2. O sistema altera o status de entrega da venda para “em andamento”.
Controlar Entregas em Andamento 1. O sistema verifica as vendas com status de entrega “em andamento” e as exibe mostrando o código da venda, o nome do cliente, o endereço do cliente, a data de pagamento da venda e o valor a ser pago.
2. O atendente seleciona a venda que foi entregue.
3. O sistema altera o status de entrega da venda para “concluído”.
4. Caso o atendente deseje registrar o pagamento de uma venda:
4.1. O atendente seleciona a venda para registrar o pagamento.
4.2. Incluir Registrar Pagamento

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Controlar Entregas Pendentes 1. Não há vendas com status de entrega “pendente”. 1a. Uma mensagem de erro é exibida informando que não existem vendas com entrega pendente. O fluxo de eventos é abortado.
2a. Uma mensagem é exibida informando que não existem prazos vencidos no período informado. O fluxo de eventos é abortado.
Controlar Entregas em Andamento 1. Não há vendas com status de entrega “em andamento”. 1a. Uma mensagem de erro é exibida informando que não existem vendas com entrega em andamento. O fluxo de eventos é abortado.

Requisitos Relacionados: RF12, RN05, RNF03, RNF06, RNF10

Classes Relacionadas: Venda, Cliente, Endereco

3.1 Subsistema controleEstoque

A Figura 3 apresenta o diagrama de casos de uso do subsistema controleEstoque.

alt tag

Legenda:
Amarelo: Cadastros
Vermelho: Transações
Azul: Informações
Figura 3 – Diagrama de Casos de Uso do Subsistema controleEstoque.

A seguir, são apresentadas as descrições de cada um dos casos de uso identificados. Os casos de uso cadastrais de baixa complexidade, envolvendo inclusão, alteração, consulta e exclusão, são descritos na tabela abaixo.

Tabela 5 – Casos de Uso Cadastrais

Subsistema controleEstoque
Caso de Uso Ações Possíveis Observações Requisitos Classes
Cadastrar Fornecedor I, A, C, E [I] Informar: CNPJ, a razão social, o endereço (cep, rua, número, bairro, cidade, estado) e o telefone de contato.
[A] Não é possível alterar o número de registro de um fornecedor.
[E] Sempre que um fornecedor for excluído uma confirmação é solicitada ao administrador.
RF05, RF06, RF07, RF15 Fornecedor, Endereco
Cadastrar Produto I, A, C, E [I] Informar: Marca, valor, nome, quantidade em estoque, característica, peso (para gás) e capacidade (para água).
[E] Sempre que um produto for excluído uma confirmação é solicitada ao administrador.
RF16 Produto, Gas, Agua
Registrar Compra I, A, C, E [I] Informar: Data da compra, Valor, Tipo de produto, fornecedor e quantidade.
[A] As informações de compra não poderão ser alteradas.
[E] Sempre que uma compra for excluída uma confirmação é solicitada ao administrador.
RF04, RF13 Compra, Produto, Fornecedor

Os casos de uso de consulta mais abrangente que as consulta a um único objeto (já tratadas como parte dos casos de uso cadastrais), mas ainda de baixa complexidade, tais como consultas que combinam informações de vários objetos envolvendo filtros, estão descritos na tabela abaixo, segundo o padrão da organização.

Tabela 6 – Casos de Uso de Consulta

Subsistema controleEstoque
Caso de Uso Observações Requisitos Classes
Gerar Relatório de Compras As consultas de compras feitas pela distribuidora podem ser realizadas informando um ou uma combinação das seguintes informações: data da compra, fornecedor e produto.
Resultado: Serão listados o número, a data, os produtos, a quantidade de produtos e o valor total de cada compra.
RF13 Compra, Produto, Gas, Agua, Fornecedor
Gerar Relatório Fornecedores As consultas de fornecedores podem ser realizadas informando um ou uma combinação das seguintes informações: Status de ativação (ativo ou desativo), tipo de produto fornecido e data de início da operação da distribuidora (para se obter todos os fornecedores cadastrados).
Resultado: serão listados todos os dados dos fornecedores, o produto fornecido, e os números das compras feitas pela distribuidora a cada fornecedor (se houverem).
RF15 Fornecedor, Produto, Compra

A seguir, são apresentados os casos de uso de maior complexidade que não puderam ser descritos segundo os formatos tabulares simplificados. Esses casos de uso são descritos segundo o padrão de descrição completa de casos de uso definido.

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: controleEstoque
Caso de Uso: Cadastrar Fornecedor

Descrição Sucinta: Parte desse caso de uso já foi descrito na tabela de casos de uso cadastrais. Ele é responsável por incluir um novo fornecedor, bem como alteração de dados, consulta e exclusão de fornecedores.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Incluir Novo Fornecedor 1. O administrador informa os dados do novo fornecedor, a saber: CNPJ, Razão Social, endereço (cep, rua, número, bairro, cidade, estado) e telefone.
2. O sistema gera um número de registro para o fornecedor.
3. O novo fornecedor é registrado como sendo um fornecedor ativo.
Alterar Dados de Fornecedor 1. O administrador informa qual fornecedor terá os dados alterados.
2. O fornecedor informa os novos dados, sendo que o status de ativação e o número de registro do fornecedor não poderão ser alterados.
3. As alterações são registradas.
Desativar Fornecedor 1. O administrador informa o fornecedor ativo que deseja desativar.
2. O fornecedor é desativado.
Reativar Fornecedor 1. O administrador informa o fornecedor desativo que deseja reativar.
2. O fornecedor é reativado.
Consultar Dados de Fornecedor 1. O administrador informa o fornecedor que deseja consultar.
2. Os dados do fornecedor são apresentados.
Excluir Fornecedor 1. O administrador informa o fornecedor que deseja excluir.
2. Os dados do fornecedor são apresentados e uma confirmação é solicitada.
3. O fornecedor é excluído.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Incluir Novo Fornecedor 1. Dados inválidos 1a. Uma mensagem de erro é exibida e retorna ao passo 1 para correção do(s) dado(s) inválido(s).
Alterar Dados de Fornecedor 1. Fornecedor inexistente
2. Dados inválidos
1a. Uma mensagem de erro é exibida e retorna ao passo 1 para informação de fornecedor existente ou cadastro de novo fornecedor.
2a. Uma mensagem de erro é exibida, retornando ao passo 2 para correção do(s) dado(s) inválido(s).
Desativar Fornecedor 1. Fornecedor inexistente ou desativado. 1a. Uma mensagem de erro é exibida informando que o fornecedor não existe ou é um fornecedor desativado. O fluxo de eventos é abortado.
Reativar Fornecedor 1. Fornecedor inexistente ou ativo. 1a. Uma mensagem de erro é exibida informando que o fornecedor não existe ou é um fornecedor ativo. O fluxo de eventos é abortado.
Consultar Dados de Fornecedor 1. Fornecedor inexistente 1a. Uma mensagem de erro é exibida sendo apresentada uma opção para Incluir Novo Fornecedor ou retornar ao passo 1 para informação de fornecedor existente.
Excluir Fornecedor 1. Confirmação de exclusão negada 1a. Abortar fluxo de eventos.

Requisitos Relacionados: RF05, RF06, RF07, RF15, RN11, RN12, RNF01, RNF03, RNF04, RNF06, RNF10
Classes Relacionadas: Fornecedor, Endereco

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: controleEstoque
Caso de Uso: Cadastrar Produto

Descrição Sucinta: Parte desse caso de uso já foi descrito na tabela de casos de uso cadastrais. Ele é responsável por incluir um novo Produto, bem como alteração de dados, consulta e exclusão de produtos.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Incluir Novo Produto 1. O administrador informa os dados do novo produto, a saber: Marca, valor, nome, quantidade em estoque, característica.
2. O sistema Solicita que seja informada a característica específica do produto (caso haja).
3. O novo produto é registrado.
Alterar Dados de Produto 1. O administrador informa qual produto terá os dados alterados.
2. O administrador informa os novos dados, sendo que a disponibilidade em estoque não poderá ser alterada.
3. As alterações são registradas.
Consultar Dados de Produto 1. O administrador informa o produto que deseja consultar.
2. Os dados do produto são apresentados.
Excluir Produto 1. O administrador informa o nome do produto que deseja excluir.
2. Os dados do produto são apresentados e uma confirmação é solicitada.
3. O produto é excluído.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Incluir Novo Produto 1. Dados inválidos 1a. Uma mensagem de erro é exibida e retorna ao passo 1 para correção do(s) dado(s) inválido(s).
Alterar Dados de Produto 1. Produto inexistente
2. Dados inválidos
1a. Uma mensagem de erro é exibida e retorna ao passo 1 para informação de produto existente.
2a. Uma mensagem de erro é exibida, retornando ao passo 2 para correção do(s) dado(s) inválido(s).
Consultar Dados de Produto 1. Produto inexistente 1a. Uma mensagem de erro é exibida sendo apresentada uma opção para Incluir Novo Produto ou retornar ao passo 1 para informação de produto existente.
Excluir Produto 1. Confirmação de exclusão negada 1a. Abortar fluxo de eventos.

Requisitos Relacionados: RF16, RN06, RNF01, RNF03, RNF06, RNF10
Classes Relacionadas: Produto, Gas, Agua

Descrição de Caso de Uso

Projeto: Nossa Distribuidora
Subsistema: controleEstoque
Caso de Uso: Registrar Compras

Descrição Sucinta: Parte desse caso de uso já foi descrito na tabela de casos de uso cadastrais. Ele é responsável por registrar as compras realizadas pela distribuidora, incluindo uma nova Compra, bem como consulta e exclusão de compras.

Fluxos de Eventos Normais

Nome do Fluxo de Eventos Normal Precondição Descrição
Incluir Nova Compra 1. O administrador informa os dados da nova compra, a saber: Data da compra, valor, quantidade de produto, tipo de produto e fornecedor.
2. O novo produto é registrado e sua quantidade em estoque atualizada de acordo com a quantidade adquirida do produto.
Consultar Dados de Compra 1. O administrador informa a compra que deseja consultar.
2. Os dados da compra são apresentados.
Excluir Compra 1. O administrador informa a compra que deseja excluir.
2. Os dados da compra são apresentados e uma confirmação é solicitada.
3. A compra é excluída.

Fluxos de Eventos de Exceção

Nome do Fluxo de Eventos Normal Relacionado Condição de Exceção Descrição
Incluir Nova Compra 1. Dados inválidos 1a. Uma mensagem de erro é exibida e retorna ao passo 1 para correção do(s) dado(s) inválido(s).
Consultar Dados de Compra 1. 1. Compra inexistente 1a. Uma mensagem de erro é exibida sendo apresentada uma opção para Incluir Nova Compra ou retornar ao passo 1 para informação de compra existente.
Excluir Compra 1. Compra inexistente
2. Confirmação de exclusão negada
1a. Uma mensagem de erro é exibida sendo apresentada uma opção para Incluir Nova Compra ou retornar ao passo 1 para informação de compra existente.
2a. Abortar fluxo de eventos.

Requisitos Relacionados: RF04, RN14, RNF03, RNF06, RNF10
Classes Relacionadas: Compra, Fornecedor, Produto, Gas, Agua

⚠️ **GitHub.com Fallback** ⚠️