Projeto/Ourolux/Documentação/Normalizar Pedido
Necessidade
Cliente precisa copiar um determinado pedido. Se o pedido a ser copiado tiver alguma pendência que impeça sua criação (Ex: estoque impeditivo), este pedido precisa ser normalizado para que possa ser criado no GeoSales. A normalização do pedido garante que o pedido poderá ser copiado dentro do GeoSales.
Definição do que é um pedido normalizado
Um pedido normalizado A é a cópia de um pedido B sendo tratadas quaisquer pendências de criação, de maneira que o pedido A surja no GeoSales.
Solução declarativa
Todo pedido deve poder ser normalizado pelo GeoSales. A normalização de um pedido só não resultará na criação de um novo pedido se o pedido a ser normalizado não possuir nenhum item sem alguma pendência.
Solução imperativa
Cenários
Cenário Feliz
João cadastra um pedido com observação de nota fiscal
Dado
- Vendedor João
- Cliente: A
- UF Cliente: RJ
Operação
João cadastra no Pedido Y as informações do pedido normalmente e antes de finalizar o pedido ele clica no botão de observação aonde ele vê os campos de observação normal e observação de nota fiscal aonde ele insere a observação "Essa nota deverá ser emitida efetivamente se ocorrer devolução da mercadoria ao consignante".
Assertivas
Pedido Y foi salvo e tem em seu campo de observação de nota fiscal o valor: "Essa nota deverá ser emitida efetivamente se ocorrer devolução da mercadoria ao consignante"
Autor?
Caras, se liguem, façam login!
É de graça e fácil
Solução vs implementação
É sempre bom definir de modo separado a solução da implementação. Por exemplo, Validade de sincronismo de acordo com fuso horário do vendedor trata essa separação, onde a solução dita as regras que devem ser seguidas na criação da implementação, enquanto que a implementação trata de detalhes de como essas regras serão tratadas em um nível mais baixo, desde distribuição dos dados, explicação da estrutura das tabelas até mudanças necessárias em consultas no sistema.
Cenário confuso
Cara, esses cenários estão pessimamente testáveis... Assim, eles não ajudam na capacidade de escrita do teste.
Para ser facilmente testável, é melhor separar o cenário em Dados, Operação e Assertiva, como nos exemplos:
- Inserção Motivo de Cadastro de Pedidos#Cenários
- Bonificação com Saldo Fixo#Cenários
- Desconto negociado#Cenários
- Observação de Nota Fiscal#Cenários
- Funcionalidade/Limite de crédito#Cenários de fluxo
Nome da página
Gentes, o nome da página está Projeto/Ourolux/Documentação/NormalizarPedido
, quando eu creio que deveria ser Projeto/Ourolux/Documentação/Normalizar Pedido
, não?