'How I did Agile Day'
The BBC has invited me to talk at their: 'How I did Agile Day' on the 24th April at Broadcast House, London (W1)
Talk Outline:
Title: Behaviour Driven Development, An Archaeology?
An Archaeology? Foucault, does not see history as a consensus, but in disruptions and fissures. TDD/BDD is not something that is agreed upon.
The Sign: A mental construct relating to something that can be communicated as a message. "We think only in signs". Saussare divides the sign into two...
The Signifier and Signified:
The Signifier: the form or substance which the sign takes,
The Signified: the concept it represents:
The word 'Open' (on a shop doorway) is a sign consisting of:
A signifier: the word open;
A signified concept: that the shop is open for business.
The same signifier (the word 'open') could stand for a different signified (and thus be a different sign) if it were on a push-button inside a lift ('push to open door').
The Death of the Author: Roland Barthes is most famously known for pronouncing ‘The Death of the Author’
The reader becomes the writer and thus a piece of text can have multiple meanings
"A text is not a line of words releasing a single ‘theological’ meaning (the ‘message’ of an ‘Author-God’) but a multi-dimensional space which cannot be ‘deciphered’, only ‘disentangled’."
Stories and Metaphors: Kent Beck says we use the term 'Story' instead of 'requirement', as the aforementioned term means 'something mandatory or obligatory.‘
We are unable to accurately or truthfully describe reality so we use Stories
We also use Metaphors for similar purposes to describe the ‘common vision’ of the project.
Test Driven Development: TDD may be a way to describe an object by writing a test first.
The post-implementation connotation of "test" means developers aren't doing test-first. (but does this matter?)
A test could be at the unit and the Acceptance Test level.
Ubiquitous Language: Ubiquitous "existing or being everywhere, esp. at the same time; omnipresent"
The Domain Model should form a common language given by domain experts for describing system requirements, but used by both developers and the business\users.
Behaviour Driven Development: Describing the behaviour of an object or a system.
It embraces the metaphor of describing behaviour the way we might express it if we were talking to a customer, or another developer.
An Example of Rspec and Cucumber in conversation
