Liz,

Thanks for the thoughtful reply.  I *think* I'm starting to "get" it.  I'll
let you know how my efforts at adopting jBehave go.

The primary difference for me is going to be that I don't have a Java GUI;
I'm working strictly in the web app space, so I need to adapt things
slightly.  Any recommendations / experiences that anyone has working with
jBehave in that environment would be greatly appreciated.

Thanks,
Andy

On 4/10/07, Elizabeth Keogh <[EMAIL PROTECTED]> wrote:


Hi Andy,

This is how I think of Stories and Behaviour.

- A Story provides value to a Customer.

- Behaviour provides value to other code, or to the Story / Customer
directly (eg: the Gui).

So, what I normally do is:

- Get the story from the customer
- Describe the story in code.
- Work out the first class which will give value to the Story (eg: the
Gui)
- Describe the behaviour for that class, mocking or stubbing any
dependencies, and perhaps creating some domain objects
- If I create any domain objects, I will describe their behaviour too -
even if the behaviour methods are empty for now in which case I can just add
"todo()" in their body.
- Implement the behaviour
- Create behaviours for any dependencies I've mocked out, or domain
objects, mocking out any of *their* dependencies
- Implement the behaviour
etc.

Eventually I will get to a point at which the Story executes correctly.
Then I can take on the next Story.

A few notes about how this works in reality:

- I only work on 1 Story at a time, but I may have many stories waiting.
- I often have 3 behaviours on which I'm working at a time; todo() really
helps here.
- I usually concentrate on one piece of value at a time, so if I need the
Game to respond to the Down button, I'll worry about the Left and Right
buttons later.
- Whenever I can't remember how far I've got, I'll run the Story.

The first Story usually requires a bit of up-front design, which I
discover as I start to write the behaviour for the Gui, then the engine
behind it, etc. This is kind of like the first application spike. Last time
I wrote a story like this - the first glyph is displayed in the pit - I
deleted it as soon as I had a second story that required it. It now exists
only as a GivenScenario.

Cheers,
Liz.

--
Elizabeth Keogh
[EMAIL PROTECTED]
http://sirenian.livejournal.com
http://jbehave.org


Reply via email to