I have been working with BDoc for almost two years now. The characteristics of the work is that of R&D, small steps, all the time gaining more insight. The first public appearance of BDoc was on The Server Side 2008, in the article BDoc – Supporting Behavior-Driven Development. Since then I have developed BDoc further, and also getting valuable help from the community.
Micael Vesterlund joined the project after a while and has been the driving force behind the scenario support in BDoc. Espen Dalløkken had a dive in the codebase and changed the navigation principals from something that worked on paper to something that would work on the web.
After answering on a CfP at this years JavaZone I had a go with presentation driven development, promising a demonstration of BDoc with an application that should calculate pension for Norwegian citizens.
To view your work as a product that should be sold to an audience changes your mindset. Gone are the love of technical challenges buried in the code, features are the new vine, and I wanted them ready for the presentation. It kind of reminded me of a project several years back, where the customer announced that the software would be presented for its users, three months from the current date. They would be flown in from all over the country, and the airport hotel was already booked, the deadline was set.
Just like my older project I had to take up some deliberate technical debt to meet the deadline, prioritizing only functionality part of the demo. The debt is now paid and BDoc is again ready for new features, and also ready with it’s second demo, the game of yatzy. A snapshot is given below:
Just like Micael and Espen have joined the project, with comments and code, I would like to hear your opinion about BDoc. Code are always welcome, but comments are also something I value.
BDoc is installed as a maven plugin, if you are new to maven, all you have to do is to download it from http://maven.apache.org, and install it. To make it real easy to test BDoc I have made a zip out of the yatzy example. Download it, write mvn install in the project directory, and you will have the bdoc report generated in the directory target/site/bdoc.
There are some hidden links in the bdoc report, left overs from the presentation. Find them and you will see the code behind the documentation, just like in the snapshot.
My spam-filter is currently not working on my blog, but I appreciate any comments sent to firstname.lastname@example.org.