David Chelimsky wrote:
On Fri, Nov 7, 2008 at 9:58 AM, David Chelimsky <[EMAIL PROTECTED]> wrote:
On Fri, Nov 7, 2008 at 9:54 AM, Matt Wynne <[EMAIL PROTECTED]> wrote:
One technique is to have a single noisy 'declarative' scenario that
explicitly walks around filling things in, then all the rest use more
'imperative' style steps where most of the detail is buried away.
You've got those backwards :)
declarative: when I fill in the form correctly
imperative: when I enter "David" in the "Name" field ....
Although - maybe we need to reconsider this naming, because you could
argue that either are declarative, whereas imperative, meaning
important/urgent, doesn't really convey the explicit nature. I think
abstract/concrete could work. Maybe general/specific.
Other ideas?
To me the words imperative and declarative make sense in the programming
language context... and we are just applying it to roles instead of
computers. For example, this is the explanation given in my programming
languages book[1]:
...declarative languages, in which the focus is on *what* the computer
is to do, and the imperative languages, in which the focus is on *how*
the computer should do it.
Now swap out languages with scenarios and computer with user role:
...declarative scenarios, in which the focus is on *what* the role is to
do, and the imperative scenarios, in which the focus is on *how* the
role should do it.
So, I don't see the word imperative meaning urgent, I see it meaning
explicit. While declarative means the scenario is at a higher level and
not concerned with exactly how the scenario is implemented (much like
use cases.)
That said these terms are programming terms so probably aren't the best
if they are to be customer facing. I like general/specific.
-Ben
[1] Programming Language Pragmatics by Michael L. Scott
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users