Alt.Net conference and Behavior Driven Design

Today at the Alt.Net conference we discussed Behavior Driven Design. The debate was heated and there were varying opinions on “What is BDD?” and how to implement it. What I am worried about is that I think we did more harm than good with this session in bringing awareness to the .Net community regarding BDD.

The discussion on BDD utilized a Fish Bowl style forum. The issue that I saw from the onset is the bowl was too small for the amount of people that wanted to jump in.

What I wanted to get out of the meeting was consensus on what does BDD mean to the .Net community. I think one of my mistakes in this discussion was to introduce NBehave at the beginning of the discussion and not focus on what BDD is and why you should use it over TDD.

The NBehave framework introduces a Narrator assembly that exposes a Story type for the collection of Agile stories. The contention point is should you do this? Don’t get me wrong debate is a wonderful medium to bring change and churn new ideas but it comes at a cost. The cost in this scenario was focus. I feel that a majority of the participants in this forum left confused and well frankly unimpressed, I can’t blame them.

NBehave brings about a radical evolution of TDD and blurs the line between Acceptance Testing and traditional TDD. The inclusion of the Story Narrative was looked at as a high contention point and not applicable to all development contexts. This was the cultivating reason why we decided to break up the project into these 3 discrete assemblies.

  • NBehave.Spec <This contains the specification assertion framework a.k.a. NSpec>
  • NBehave.Narrator <This contains the fluent Story type constructs >
  • NBehave.Runner <One console runner to run them all>

So if the Story types aren’t applicable to your given development context don’t use them. Use the NBehave.Spec instead. But it doesn’t have to stop there. You can apply a BDD mindset to your current test fixtures now as I have explained here.

My passion for BDD isn’t gone it is simply bruised. I think given the right facilitation, that the ideas and constructs of BDD can make a huge impact in the .Net community. And for those that attended the Alt.Net conference I apologize for the lack of clarity on the subject.

About Joe Ocampo

My personal philosophy is simple: "Have a good strategy that sets the environment for success through the enablement of the whole. Be agile but with a mind towards pragmatism. Delegate to the best qualified individuals, but don’t be afraid to involve yourself in all parts of a job. Treat everyone with respect, humility, and with a genuine pursuit towards excellence." Respected business and technical leader with expertise in directing organization towards effective results driven outcomes. Proven ability to perform and communicate from both technical and business perspectives. Strong technical and business acumen developed through experience, education and training. Provides the ability to utilize technology, harness business intelligence and execute strategically by optimizing systems, tools and process. Passionate about building people, companies and software by containing cost, maximizing operational throughput and capitalize on revenue. Looks to leverage the strengths of individuals and grow the organization to their maximum potential by harnessing the power of their collective whole and deliver results. Co-Founder of
This entry was posted in altnetconf, BDD (Behavior Driven Development). Bookmark the permalink. Follow any comments here with the RSS feed for this post.

3 Responses to Alt.Net conference and Behavior Driven Design

  1. Dru says:

    Hey Joe,

    Keep the NBehave stuff rocking. I am going to try it on a new project so keep the faith buddy!


  2. Joe Ocampo says:

    Thanks for the words of encouragement. I am working on a follow up post based on what came out of the executable requirements discussion.

  3. Colin Jack says:

    “I feel that a majority of the participants in this forum left confused and well frankly unimpressed, I can’t blame them.”

    To be honest as I read more more about BDD the more I can recognize this sentiment.

    Far far too much focus on syntax without necessarily good discussion of how to really apply BDD, no good online discussion forums and every blogger seems to contradict every other blogger.

    Not to say BDD isn’t a great idea, or that NBehave itself isn’t great, but trying to get your head around how to use BDD in practice is quite frustrating at the moment.