Quando (e atualização das cartas)

O quando costuma causar dúvidas porque as pessoas interpretam a frase com o sentido de se em vez de no momento de. Em geral quando você se pega usando como se, aquilo na verdade é uma pré-condição.

Por exemplo,  “Quando a pessoa for pessoa física”.  A pessoa não está se tornando física no momento de disparo (“Quando/no momento da pessoa ser física”), ela já era física desde o início. E a gente não quer verificar se a pessoa é física, e sim verificar alguma rotina que envolva a validação do tipo de pessoa. Ou seja, algo como:

Dado uma pessoa física
Quando o tipo de pessoa for validado  ou  Quando a pessoa for salva
Então…. etc, etc.

Pensando nisso, revisei as cartas que falavam em dia e noite para ficarem com o texto “Quando chegar o dia” e “Quando chegar a noite”, para que fique claro que a ação está ocorrendo naquele momento.

Anúncios

Competição ou Colaboração

Quem já me ouviu exaltando jogos cooperativos como Hanabi ou Ilha Proibida costuma assumir que BDD Warriors também é coop.

Não é.

É cada um por si, então use bem aquela carta de bloquear outro jogador.

Já pensei em fazer uma versão com dois ou três times de duas pessoas jogando uns contra os outros (alguém quer tentar e me dizer como foi?), mas não penso em fazer completamente cooperativo.

No princípio isso foi para fazer algo diferente do meu outro projeto de jogo, o Agile Life. Porém depois de algumas sessões de BDD Warriors, eu percebi o seguinte: os cenários dos jogadores saem melhores quando são questionados e isso é exatamente o que acontece na vida real com cenários de BDD onde a equipe trabalha em conjunto. Trabalho colaborativo não quer dizer que as pessoas nunca discordam umas das outras.

Então voltando ao BDD Warriors, se todo mundo estivesse no mesmo time, a forma óbvia de ganhar o jogo seria aceitar todo e qualquer cenário, fazendo um monte de pontos – o jogo em si não teria nenhuma mecânica para dificultar a vida dos jogadores. E isso além de não ter graça, não ia demonstrar nada sobre a construção de cenários na prática.

(E não, Gabriel, também não penso em mudar a regra para que Chuck Norris ganhe automaticamente o jogo…)

 

 

Oficina de BDD na Semana da Mulher na Tecnologia

Ontem realizamos um workshop de jogos na DBServer, primeiro com o Hanabi e depois com uma dinâmica de introdução ao BDD, que consistiu em 30 minutos de palestra para explicar os fundamentos e vantagens da técnica, seguida de 1 hora de BDD Warriors.

Duas mesas de jogadores de BDD Warriors
Jogadores concentrados

Tivemos um feedback bastante positivo de pessoas que não estavam familiarizadas com o uso do BDD — mas talvez o maior elogio tenha sido as pessoas seguirem jogando mesmo com o horário do almoço próximo!

Cartas de cenário com fichas
Exemplo de cenário

Dado um detetive amador
E seu cãozinho
Quando o suspeito passar de bicicleta
Então o cãozinho deve perseguí-lo

Cartas seguradas pelo jogador
Carta de Ação em destaque

O ideal é ter alguém com conhecimento de BDD apoiando o jogo para manter o foco em cenários e não apenas em contar uma historinha.

Jogadores em volta da mesa
Tenho certeza que a facilitadora ganhar foi total coincidência…

Introducing BDD…. Warriors

O que é BDD?

BDD[1] (Behaviour-Driven Development) é uma técnica colaborativa para implementar uma aplicação através da descrição do seu comportamento. Utilizada juntamente com automação de testes funcionais e TDD, ela permite a geração de uma documentação viva, onde mudanças tanto na especificações como na aplicação são detectadas pelos testes automatizados.

Um cenário de BDD segue o formato:

Dado que…. [pré-condições]
Quanto …. [evento sendo testado]
Então … [resultado esperado]

O que é BDD Warriors?

BDD Warriors é um jogo de cartas print&play projetado para auxiliar iniciantes a pensar em termos de cenários e questionar a lógica da especificação, além de fixar a sintaxe básica.

(E também é uma desculpa para criar cenários com alienígenas zumbis invadindo a Terra.)

Baixe aqui o PDF com as regras em formato de BDD e as cartas para impressão.

 

[1] Introducing BDD, Dan North, 2006.