CodeKata #3: Restaurante [Resultado]

Tempo de leitura: menos de 1 minuto

Fala galera, após 15 dias de muito desenvolvimento, chega ao fim o CodeKata #3: Restaurante.

Mortheus (Matrix) em posição de lutaResultado

Nesta edição tivemos 5 participantes (novo record, kkkk), são eles:

  • Darian Beluzzo;
  • Flávio Pimenta;
  • Lucas Angelino do Santos;
  • Débora Adorni;
  • Junior Capra.

Agradeço mais uma vez à participação de vocês.

Foram criados 19 cenários de teste, sendo que os seguintes itens foram avaliados:

  • Máximo de pessoas simultâneas em algum instante de tempo;
  • Restrições da catraca.

Abaixo segue resultado dos participantes:

Resultado CodeKata #3: Restaurante
Nenhum dos participantes conseguiu 100% de assertividade.

Falhas de execução implementação do Lucas:

[code language=”java”]
Cenario 3 falhou: Esperado (6), mas retornado (5)
Cenario 4 falhou: Esperado (6), mas retornado (5)
Cenario 14 falhou: Esperado (5), mas retornado (3)
Cenario 15 falhou: pois um erro era esperado (Dados no cenario: |15|1;2;3;4;5|2;4;6;8;10|ERRO|)
Cenario 17 falhou: Esperado (6), mas retornado (5)
[/code]

Apenas 5 cenários falharam, percebemos que 3 falhas foram por ter contato uma pessoa a menos que o esperado.

Falhas de execução implementação do Darian:

[code language=”java”]
Cenario 3 falhou: Esperado (6), mas retornado (3)
Cenario 4 falhou: Esperado (6), mas retornado (3)
Cenario 13 falhou: Esperado (4), mas retornado (7)
Cenario 14 falhou: Esperado (5), mas retornado (2)
Cenario 17 falhou: Esperado (6), mas retornado (3)
Cenario 18 falhou: Esperado (3), mas retornado (144)
Cenario 19 falhou: Esperado (2501), mas retornado (3)
[/code]

A implementação da Darian, foi a mais resumida, se contarmos o número de linhas, também ele usou Groovy na implementação. Parabéns pela iniciativa Darian. No entanto a execução do cenário  maior (19), com 5000 pessoas, foi o que teve pior performance, demorou aproximadamente 45 segundos para dar a resposta.

Falhas de execução implementação do Pimenta:

[code language=”java”]
Cenario 3 falhou: Esperado (6), mas retornado (5)
Cenario 4 falhou: Esperado (6), mas retornado (5)
Cenario 9 falhou: pois um erro era esperado (Dados no cenario: |9|||ERRO|)
Cenario 10 falhou: pois um erro era esperado (Dados no cenario: |10|20|20|ERRO|)
Cenario 11 falhou: pois um erro era esperado (Dados no cenario: |11|20;20|21;22|ERRO|)
Cenario 14 falhou: Esperado (5), mas retornado (3)
Cenario 15 falhou: pois um erro era esperado (Dados no cenario: |15|1;2;3;4;5|2;4;6;8;10|ERRO|)
Cenario 17 falhou: Esperado (6), mas retornado (5)
[/code]

Na implementação do Pimenta, como ele mesmo disse, as restrições não foram foco da implementação, sendo assim, metade dos cenários que falharam foram pela não implementação das restrições.

Falhas de execução implementação do Junior:

[code language=”java”]
Cenario 4 falhou: Esperado (6), mas retornado (5)
Cenario 5 falhou: Esperado (2), mas retornado (1)
Cenario 7 falhou: pois um erro era esperado (Dados no cenario: |7|1;3|20|ERRO|)
Cenario 8 falhou: pois um erro era esperado (Dados no cenario: |8|1|20;21|ERRO|)
Cenario 9 falhou: pois um erro era esperado (Dados no cenario: |9|||ERRO|)
Cenario 10 falhou: pois um erro era esperado (Dados no cenario: |10|20|20|ERRO|)
Cenario 11 falhou: pois um erro era esperado (Dados no cenario: |11|20;20|21;22|ERRO|)
Cenario 12 falhou: pois um erro era esperado (Dados no cenario: |12|15000|15001|ERRO|)
Cenario 13 falhou: Esperado (4), mas retornado (2)
Cenario 15 falhou: pois um erro era esperado (Dados no cenario: |15|1;2;3;4;5|2;4;6;8;10|ERRO|)
Cenario 17 falhou: Esperado (6), mas retornado (5)
[/code]

Na implementação do Junior, as restrições também não foram foco, sendo que 7 cenários que falharam por esse motivo.

Falhas de execução implementação do Débora:

[code language=”java”]
Cenario 3 falhou: Esperado (6), mas retornado (8)
Cenario 4 falhou: Esperado (6), mas retornado (1)
Cenario 9 falhou: pois um erro era esperado (Dados no cenario: |9|||ERRO|)
Cenario 10 falhou: pois um erro era esperado (Dados no cenario: |10|20|20|ERRO|)
Cenario 11 falhou: pois um erro era esperado (Dados no cenario: |11|20;20|21;22|ERRO|)
Cenario 12 falhou: pois um erro era esperado (Dados no cenario: |12|15000|15001|ERRO|)
Cenario 13 falhou: Esperado (4), mas retornado (5)
Cenario 14 falhou: Esperado (5), mas retornado (1)
Cenario 15 falhou: pois um erro era esperado (Dados no cenario: |15|1;2;3;4;5|2;4;6;8;10|ERRO|)
Cenario 17 falhou: Esperado (6), mas retornado (1)
Cenario 18 falhou: Esperado (3), mas retornado (99)
Cenario 19 falhou: Esperado (2501), mas retornado (4878)
[/code]

A Débora me reportou que o erro dela, foi somar a quantidade de pessoas simultâneas, se duas pessoas tivessem simultâneas no tempo x e 3 no tempo y, a implementação dele retorna 5 e não 3 como o esperado.

Conclusão

Parabéns Lucas, você foi o melhor no desafio!

Todas as implementações e cenários de testes estão disponíveis no Github todas as implementações junto com os cenários de teste.

Ranking

Como prometido, estou disponibilizando o ranking com os participantes de todas as edições. A pontuação refere-se a soma das porcentagens de acertos obtidos em todos os CodeKatas que participaram.

O ranking considerá a pontuação apenas o últimos 5 edições, assim existirá a oportunidade de um participante que começou na 3° edição, chegar a liderança do ranking na 8° edição por exemplo.

Ranking até o codekata #3

Pessoal, leia a ERRATA do resultado aqui.

Valeu pessoal, até o próximo CodeKata!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *