abastecimento d´agua


Exemplo de problema resolvido e solução entre cliente com empreendedor.Cliente e empreendedor definem e auxiliam desenvolvimento do protótipo da aplicação. Especialistas usam TDD para desenvolver aplicativo.
1.Problema Resolvido Esquema para abastecer uma casa que tem uma caixa externa (cx1) para coletar agua da rua ou agua do poço. Uma caixa (cx2) para distribuir agua na casa

2.Solução do sistema1. Não deixar faltar água
2.Não deixar bomba funcionando sem água
2.Não deixar caixa transbordar

Ações:
  • bomba1 não ligua sem agua na caixa 1
  • bomba2 não liga com entupimento no cano do poço
  • bomba1 ligar quando caixa 2 vazia
  • bomba2 liga quando caixa 1 vazia e rua sem agua
  • bomba2 desliga quando caixa 2 esta cheia
  • agua da rua fecha quando caixa 1 esta cheia

    Pressupostos
  • cano do poço pode intupir
  • agua da rua pode faltar
  • bombas podem quebrar
  • boias pode estragar

Tabela de decisão

cx 1 vazia ?
|||||| cx 2 vazia ?
|||||||||||| rua não tem agua ?
||||||||||||||||| bomba quebrou ou cano entupiu ?
S - S N . boia 1 deixa entrar agua da rua
N S - N . boia 2 liga bomba 1
- - S N . ligar bomba 2
- - - S . chamar manutenção






3.Aplicativo
Entrada
Caixa 1 Caixa 2 Agua da Rua bomba quebrada Cano entupido
Vazia . Vazia entrando não não
Vazia Vazia não tem não não
- - - sim sim

Saida
Bomba 1 Bomba 2 Manutenção
ligar - -
- ligar -
desligar desligar chamar

Testes
Para cada entrada corresponde uma saida

4.Código de Teste



5.Código do Programa






6.Refatoração .





6.Referencia xxxxxxxxxxxx - programa de teste
xxxxxxxxxxxxx- programa do aplicativo
xxxxxxxxxxxxx xxxxxxxxxxx xxxxxxxxxxxx- programas do ambiente