bdd tutta questione di comunicazione
DESCRIPTION
Abbiamo sperimentato BDD sul campo e c’è piaciuto parecchio, per motivi del tutto inaspettati. Spesso il fallimento dei progetti è dato da questioni umane, di comprensione, di comunicazione, non da difficoltà tecniche. Capire cosa si deve fare e quando non è così semplice come sembra. Seguendo il Behaviour Driven Development abbiamo migliorato la comunicazione tra di noi, aumentato la comprensione del dominio e messo a fuoco le priorità. Il talk racconta la nostra esperienza diretta.TRANSCRIPT
![Page 1: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/1.jpg)
MILAN november 28th/29th 2014
Riccardo Franconi e Francesco Tassi !BDD Tutta questione di comunicazione Raccontiamo il BDD in un progetto reale [email protected] [email protected] - ideato
![Page 2: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/2.jpg)
MILAN november 28th/29th 2014 @ftassi
Francesco Tassi@ricfrank
Riccardo Franconi
![Page 3: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/3.jpg)
MILAN november 28th/29th 2014
![Page 4: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/4.jpg)
MILAN november 28th/29th 2014
BDD• Vediamo cos’è
• La nostra esperienza
• Cosa abbiamo imparato
![Page 5: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/5.jpg)
MILAN november 28th/29th 2014
– Wikipedia
“behavior-driven development (abbreviato in BDD e traducibile in Sviluppo guidato dal
comportamento) è una metodologia di sviluppo del software basata sul test-driven development
(TDD)”
![Page 6: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/6.jpg)
MILAN november 28th/29th 2014
– “BDD in Action” John Ferguson Smart
“Non basta scrivere software correttamente, bisogna anche scrivere il software corretto”
![Page 7: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/7.jpg)
MILAN november 28th/29th 2014
BDD in breve• Esempi non test
• Linguaggio condiviso
• Business Value
![Page 8: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/8.jpg)
MILAN november 28th/29th 2014
Esempi non test
![Page 9: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/9.jpg)
MILAN november 28th/29th 2014
public function testSomma(){ //... }
Esempi non test
![Page 10: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/10.jpg)
MILAN november 28th/29th 2014
Scenario: Somma Dato che inserisco due numeri Allora Ottengo la loro somma public function testOperazioneSommaDovrebbeSommareDueNumeri(){ //... }
Esempi non test
![Page 11: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/11.jpg)
MILAN november 28th/29th 2014
Linguaggio condiviso
![Page 12: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/12.jpg)
MILAN november 28th/29th 2014
![Page 13: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/13.jpg)
MILAN november 28th/29th 2014
![Page 14: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/14.jpg)
MILAN november 28th/29th 2014
![Page 15: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/15.jpg)
MILAN november 28th/29th 2014
![Page 16: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/16.jpg)
MILAN november 28th/29th 2014
– Moretti“Le parole sono importanti”
![Page 17: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/17.jpg)
MILAN november 28th/29th 2014
Scenario: Guest deve confermare la data prima di continuare con la prenotazione
Linguaggio condiviso
![Page 18: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/18.jpg)
MILAN november 28th/29th 2014
Scenario: Guest deve confermare la data prima di continuare con la prenotazione
Linguaggio condiviso
WTF!?!
![Page 19: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/19.jpg)
MILAN november 28th/29th 2014
Scenario: Il giocatore deve confermare la data prima di continuare con la prenotazione
Linguaggio condiviso
![Page 20: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/20.jpg)
MILAN november 28th/29th 2014
Business value
![Page 21: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/21.jpg)
MILAN november 28th/29th 2014
Business valuedelive
ring
![Page 22: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/22.jpg)
MILAN november 28th/29th 2014
Come
![Page 23: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/23.jpg)
MILAN november 28th/29th 2014
ComeDiscussione
Obiettivo FeaturesFeaturesFeaturesEsempiEsempiEsempi Specifiche
EseguibiliSpecifiche Eseguibili
Specifiche Eseguibili
![Page 24: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/24.jpg)
MILAN november 28th/29th 2014
Obiettivo(SMART)
![Page 25: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/25.jpg)
MILAN november 28th/29th 2014
“Voglio aumentare il fatturato del 5% entro fine anno ricevendo più prenotazioni”
Obiettivo
![Page 26: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/26.jpg)
MILAN november 28th/29th 2014
FeaturesGherkin
![Page 27: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/27.jpg)
MILAN november 28th/29th 2014
Gli strumenti che permettono di raggiungere l’obiettivo
Features
![Page 28: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/28.jpg)
MILAN november 28th/29th 2014
EsempiGherkin
![Page 29: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/29.jpg)
MILAN november 28th/29th 2014
Descrive come l’utente utilizza la feature
Esempi
![Page 30: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/30.jpg)
MILAN november 28th/29th 2014
Specifiche eseguibiliBehat - PHPSpec
![Page 31: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/31.jpg)
MILAN november 28th/29th 2014
Specifiche eseguibiliScenario: Prenotazione con email non valida! Dato che un giocatore ha scelto di prenotare un campo per "domani"! Quando completa la prenotazione con una mail non valida! Allora visualizza che deve inserire una mail valida!!!/**! * @Given /^che un ospite ha scelto di prenotare un campo per "domani"$/! */!public function haSceltoDiPrenotarePerIl($bookingDate = null){…}
![Page 32: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/32.jpg)
MILAN november 28th/29th 2014
Bola
![Page 33: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/33.jpg)
MILAN november 28th/29th 2014
Per avere un vantaggio competitivo rispetto ai miei concorrenti Voglio avere un sistema di prenotazione onlineChe permetta ai miei clienti di prenotare da computer o smartphone
Obiettivo
![Page 34: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/34.jpg)
MILAN november 28th/29th 2014
Feature: Prenotazione campo Per rendere più semplice e aumentare il numero delle prenotazioni ricevute Come giocatore Voglio poter prenotare online un campo
Features
![Page 35: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/35.jpg)
MILAN november 28th/29th 2014
Scenario: Visualizzazione dei campi disponibili Scenario: Prenotazione di un campo Scenario: Mail di conferma della prenotazione Scenario: Prenotazione ricorrente ....
Esempi
![Page 36: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/36.jpg)
MILAN november 28th/29th 2014
Esempi
Scenario: Visualizzazione dei campi disponibili! Quando l'utente autenticato visita la pagina dei campi! Allora può vedere i campi divisi per sport
![Page 37: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/37.jpg)
MILAN november 28th/29th 2014
Scenario: Visualizzazione dei campi disponibili! Quando l'utente autenticato visita la pagina dei campi! Allora può vedere i campi divisi per sport
Esempi
Autenticato!
?!
![Page 38: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/38.jpg)
MILAN november 28th/29th 2014
Scenario: Visualizzazione dei campi disponibili! Quando l'utente autenticato visita la pagina dei campi! Allora può vedere i campi divisi per sport
Esempi
-Q: “Ma l’utente quindi è un utente registrato?”
- A: “Si” - Q: “Perché?” - A: “Perché così lo posso rintracciare” - Q: “Ma, non basta il numero di telefono?”
-A: “Beh, si”
Autenticato!
?!
![Page 39: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/39.jpg)
MILAN november 28th/29th 2014
Scenario: Visualizzazione dei campi disponibili! Quando l'utente autenticato il giocatore visita la pagina dei campi! Allora può vedere i campi divisi per sport
Esempi
![Page 40: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/40.jpg)
MILAN november 28th/29th 2014
Esempi
Scenario: Visualizzazione dei campi disponibili! Quando il giocatore visita la pagina dei campi! Allora può vedere i campi divisi per sport
—- spreco
![Page 41: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/41.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione ricorrente!Quando l’admin sceglie un campo!E seleziona il prossimo martedì!E seleziona la data di fine ripetizione tra 4 martedì!E la ripetizione "settimanale"!E completa la prenotazione!Allora ha prenotato quel campo per i prossimi 4 martedì
Esempi
![Page 42: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/42.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione ricorrente!Quando l’admin sceglie un campo!E seleziona il prossimo martedì!E seleziona la data di fine ripetizione tra 4 martedì!E la ripetizione "settimanale"!E completa la prenotazione!Allora ha prenotato quel campo per i prossimi 4 martedì
Esempi
se non è disp
onibile!?!
![Page 43: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/43.jpg)
MILAN november 28th/29th 2014
Esempi
Scenario: Prenotazione ricorrente!Quando l’admin sceglie un campo!E seleziona il prossimo martedì!E seleziona la data di fine ripetizione tra 4 martedì!E la ripetizione "settimanale"!E completa la prenotazione!Allora ha prenotato quel campo per i prossimi 4 martedì
se non è disp
onibile!?!
- Q: “cosa succede?”- A: “Salviamo solo le valide”
- Q: “E delle altre come tieni traccia?” - A: “Inviami un elenco di quelle
sovrapposte”
![Page 44: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/44.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione ricorrente sovrapposta!Dato che il giocatore ha completato una prenotazione!Quando l'admin crea una prenotazione ricorrente che si sovrappone a quella esistente!Allora ha prenotato quel campo solo per le giornate disponibili!E riceve un riepilogo delle prenotazioni sovrapposte
Esempi
![Page 45: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/45.jpg)
MILAN november 28th/29th 2014
Esempi++ conoscenza del dominio
Scenario: Prenotazione ricorrente sovrapposta!Dato che il giocatore ha completato una prenotazione!Quando l'admin crea una prenotazione ricorrente che si sovrappone a quella esistente!Allora ha prenotato quel campo solo per le giornate disponibili!E riceve un riepilogo delle prenotazioni sovrapposte
![Page 46: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/46.jpg)
MILAN november 28th/29th 2014
Specifiche eseguibiliScenari espressivi - Outside in - Page Object pattern
![Page 47: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/47.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona il giorno dalla select "booking_day"! E seleziona il mese dalla select "booking_month"! E seleziona l'anno dalla select "booking_year"! ...
Scenari espressivi
![Page 48: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/48.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona il giorno dalla select "booking_day"! E seleziona il mese dalla select "booking_month"! E seleziona l'anno dalla select "booking_year"! ...
Scenari espressivi
![Page 49: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/49.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona la data! ...
Scenari espressivi
![Page 50: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/50.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione con email non valida!! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona la data! E completa la prenotazione con una mail non valida! Allora visualizza che deve inserire una mail valida
Scenari espressivi
![Page 51: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/51.jpg)
MILAN november 28th/29th 2014
Scenario: Prenotazione con email non valida!! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona la data! E completa la prenotazione con una mail non valida! Allora visualizza che deve inserire una mail valida
Scenari espressivi
![Page 52: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/52.jpg)
MILAN november 28th/29th 2014
Background:! Quando un giocatore visita la pagina dei campi! E ne sceglie uno! E seleziona la data!!Scenario: Prenotazione con email non valida! E completa la prenotazione con una mail non valida! Allora visualizza che deve inserire una mail valida
Scenari espressivi
![Page 53: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/53.jpg)
MILAN november 28th/29th 2014
/**!* @Given /^completa la prenotazione con una mail non valida$/!*/!public function completaLaPrenotazioneConUnaMailNonValida()!{!! $page = $this->mink->getSession()->getPage();!!! $this->player = $this->createPlayer();!! $this->player->email = 'fooinvalidemail';!! $page->fillField('firstName', $this->player->firstName);!! $page->fillField('lastName', $this->player->lastName);!! $page->fillField('email', $this->player->email);!! $page->fillField('phone', $this->player->phoneNumber);!!! $page->pressButton('book');!}
Codice espressivo
![Page 54: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/54.jpg)
MILAN november 28th/29th 2014
/**!* @Given /^completa la prenotazione con una mail non valida$/!*/!public function completaLaPrenotazioneConUnaMailNonValida()!{!! $page = $this->mink->getSession()->getPage();!!! $this->player = $this->createPlayer();!! $this->player->email = 'fooinvalidemail';!! $page->fillField('firstName', $this->player->firstName);!! $page->fillField('lastName', $this->player->lastName);!! $page->fillField('email', $this->player->email);!! $page->fillField('phone', $this->player->phoneNumber);!!! $page->pressButton('book');!}
Codice espressivo
![Page 55: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/55.jpg)
MILAN november 28th/29th 2014
/**! * @Given /^completa la prenotazione con una mail non valida$/!*/!public function completaLaPrenotazioneConUnaMailNonValida()!{!! $bookingPage = $this->getBookingPage();!!! $this->player = $this->createPlayer();!! $this->player->email = 'fooinvalidemail';!! $this->bookingPage->book($this->player);!}
Codice espressivo
![Page 56: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/56.jpg)
MILAN november 28th/29th 2014
class BookingPage !{!! public function book($player)!! {!
! ! $this->page->fillField('firstName', $player->firstName);!! $this->page->fillField('lastName', $player->lastName);!! $this->page->fillField('email', $player->email);!! $this->page->fillField('phone', $player->phoneNumber);!!! $this->page->pressButton('book');!}!
}
Codice espressivo
![Page 57: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/57.jpg)
MILAN november 28th/29th 2014
Outside in
Behat
phpspec
1
2
3
45
6
7
1 - Discussione di uno scenario
2 - Step rosso
3 - Spec rossa
4 - Implementazione
5 - Refactoring
6 - Step verde
7 - Refactoring
![Page 58: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/58.jpg)
MILAN november 28th/29th 2014
Cosa abbiamo imparato
![Page 59: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/59.jpg)
MILAN november 28th/29th 2014
ComunicazioneMigliore verso il cliente
![Page 60: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/60.jpg)
MILAN november 28th/29th 2014
ComunicazioneMigliore nel team
![Page 61: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/61.jpg)
MILAN november 28th/29th 2014
Comprendi la funzionalità tramite esempi
![Page 62: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/62.jpg)
MILAN november 28th/29th 2014
Non sviluppare oggi quello che puoi sviluppare domani
![Page 63: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/63.jpg)
MILAN november 28th/29th 2014
Fai emergere problematiche impreviste
![Page 64: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/64.jpg)
MILAN november 28th/29th 2014
Non dare niente per scontato
![Page 65: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/65.jpg)
MILAN november 28th/29th 2014
Documentazione
![Page 66: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/66.jpg)
MILAN november 28th/29th 2014
Comprensibileanche per non tecnici
![Page 67: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/67.jpg)
MILAN november 28th/29th 2014
CompilabileNon obsoleta
![Page 68: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/68.jpg)
MILAN november 28th/29th 2014
Ostacoli
![Page 69: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/69.jpg)
MILAN november 28th/29th 2014
Cliente non partecipa
![Page 70: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/70.jpg)
MILAN november 28th/29th 2014
È già tutto deciso
![Page 71: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/71.jpg)
MILAN november 28th/29th 2014
Se lo sai descrivere l’hai capito
![Page 72: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/72.jpg)
MILAN november 28th/29th 2014
Thanks
![Page 74: BDD tutta questione di comunicazione](https://reader033.vdocuments.us/reader033/viewer/2022042715/559976fb1a28ab1e528b45f1/html5/thumbnails/74.jpg)
MILAN november 28th/29th 2014
Risorse• http://www.ideato.it/tag/bdd!
• Bdd in Action: Behavior-driven Development for the Whole Software Lifecycle di John
Ferguson Smart!
• Specification by Example: How Successful Teams Deliver the Right Software di Gojko
Adzic!
• The RSpec Book: Behaviour Driven Development di Dave Astels, Bryan Helmkamp, Dan
North, Zac David Chelimsky