[rspec-users] workflow: user => stories/features => spec => code => user

Matt Wynne matt at mattwynne.net
Fri Sep 19 03:58:23 EDT 2008


On 19 Sep 2008, at 02:00, DyingToLearn wrote:

> Hi,
>
> I am still trying to learn how to effectively use BDD. I would like to
> know if there is a typical BDD workflow or if it is really just a
> question of personal preference.
>
> So far I see the following steps being fairly common:
>
> 1. talk with user to establish a few stories and features
> 2. write plaintext stories or cucumber features (with the user?)
> 3. write specs for whatever step needs to be wnitten
> 4. code until specs pass
> 5. write story/feature steps
> 6. repeat steps 3-5 until the story/feature passes
> 7. show the user to confirm that it works the way the user want (and
> go back to step 2 if it doesn't)
> 8. go back to step 1 for new stories/features

This seems to be pretty much the workflow that's evolving for us,  
though I tend to write the step implementations before I start coding  
the views, controller, models. (i.e. 5 before 3)/

It's the 'outside-in' model of development that Dan North talks about  
- driving out all your changes to the code from a real user goal.

> Is that how you do things? Should I do it this way? How flexible
> should this process be? For example, if the user wants a tiny change,
> should I always be so disciplined as to update the story first, then
> the specs, and then code?

IMO, you have to be pragmatic - maybe you can just change the spec of  
a controller to listen for another querystring parameter value and do  
something different - I don't think that necessarily needs the full  
ceremony of another feature scenario.

>
> Thanks!
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users

cheers,
Matt
----
http://blog.mattwynne.net
http://songkick.com

In case you wondered: The opinions expressed in this email are my own  
and do not necessarily reflect the views of any former, current or  
future employers of mine.





More information about the rspec-users mailing list